[PATCH 3/4] Re: Catch KeyboardInterrupts and raise them
js at sig21.net
Fri Dec 24 09:32:39 GMT 2010
On Thu, Dec 23, 2010 at 10:04:46PM +0100, Nicolas Sebrecht wrote:
> On Thu, Dec 23, 2010 at 08:43:08PM +0100, Johannes Stezenbach wrote:
> > On Wed, Dec 22, 2010 at 11:45:44PM +0100, Nicolas Sebrecht wrote:
> > > On Wed, Dec 22, 2010 at 03:27:19PM +0100, Sebastian Spaeth wrote:
> > > >
> > > > except:
> > > > + #TODO, we should catch a specific Exception here, not ALL. But which?
> > > > pass
> > >
> > > What do you have in mind? Why do we only catch one specific exception?
> > Instead of "catch all exceptions except KeyboardInterrupt",
> > how about "catch only EnvironmentError"?
> > http://docs.python.org/release/2.6.6/library/exceptions.html#exception-hierarchy
> > (Note that e.g. socket.error is a subclass of IOError).
> > Besides fixing the KeyboardInterrupt issue, it would also
> > give us back the tracebacks on unexpected errors.
> But the IOError would be masked. I think we should have full tracebacks
> every where and only catch errors we are able to fix or workaround for
Well, my understanding of EnvironmentError is that it exceptions
of that class (and subclasses) are usually not caused by errors in
the program, thus a traceback is usually not that interesting.
For example when I get a "connection failed" I need to check
my offlineimaprc and my network connection to the server and
not look at offlineimap sources...
More information about the OfflineIMAP-project