[Twisted-Python] UncatchableExceptions

Glyph Lefkowitz glyph at divmod.com
Fri Oct 29 23:06:53 MDT 2004


On Fri, 2004-10-29 at 23:52 +0200, Andrew Bennetts wrote:
> <foom> exarkun: I suspect we should introduce a UncatchableExceptions
>        constant somewhere
> <foom> exarkun: and require that all except:'s are preceded by except
>        UncatchableExceptions: raise
> <exarkun> foom: It's possible that is a good idea.
> <exarkun> foom: I'm not really sure, though.
> <spiv> foom: With (KeyboardInterrupt, SystemExit, MemoryError, SystemError) ?
> <foom> spiv: yes
> 
> I guess this would live in twisted.python somewhere, and the coding standard
> would be updated to require its use instead of bare "except:"
> 
> Python-dev have discussed a similar measure for the python standard library
> (in the exceptions module), but hadn't come to any consensus last time I
> looked.
> 
> Thoughts?  Objections?

Not an objection *per se*, but I think it would be better to see how the
debate on python-dev turns out; I am pretty sure there are a lot of
subtle issues to consider.  For example, I could go either way on
including SystemExit in that list; there have been many times, when
working with Manhole or similar, that I've imported a script that wasn't
intended for use as a module and had it attempt to exit the interpreter
with a sys.exit; I was glad that except: really was a catch-all in those
cases.

I also ponder what a Deferred with a Failure whose value is MemoryError
would mean :).

In general, though, I think that the Throwable/Exception distinction, as
in Java, is a pretty good idea.





More information about the Twisted-Python mailing list