[Python-Dev] Revert #12085 fix for __del__ attribute error message

Glenn Linderman v+python at g.nevcal.com
Thu Sep 26 03:46:39 CEST 2013


On 9/25/2013 5:17 PM, MRAB wrote:
> On 26/09/2013 00:05, Cameron Simpson wrote:
>> [ I've replied to two messages here: Georg's and Glenn's (supporting 
>> MRAB's).
>>    - Cameron
>> ]
>>
>> On 25Sep2013 08:22, Georg Brandl <g.brandl at gmx.net> wrote:
>> | Am 24.09.2013 00:11, schrieb Greg Ewing:
>> | > How about something like "Uncaught exception in __del__
>> | > method ignored"? It explains fairly clearly what has
>> | > happened, and also indicates what do do about it --
>> | > catch it in the __del__ method.
>> |
>> | "Exception in __del__ caught and not propagated:"
>> | Georg
>>
>>
>> On 24Sep2013 09:33, Glenn Linderman <v+python at g.nevcal.com> wrote:
>> | [MRAB]:
>> | >> Why not just say something like "Cannot propagate exception..."; 
>> it's
>> | >> simpler than "Unpropagatable exception...". [...]
>> |
>> | First one I've heard that accurately and unambiguously and briefly
>> | describes the issue.
>> | +1
>>
>> I'm strongly in favour of Georg's one ("Exception in __del__ caught 
>> and not propagated").
>>
>> Why?
>>
>> It says simply and clearly what has happened.
>> It denotes the relevant context (__del__) in which it happened.
>> The reader can then decide to find out why that decision may have 
>> been made.
>>
>> Why not MRAB's? ("Cannot propagate exception...")
>>
>> While better than "Unpropagatable exception" and "unraisable" and
>> "unreraisable", it has the same flaw that I think underlies Antoine's
>> concerns: it suggests the reason there's an error printed instead
>> of further propagation is a _property of the exception_.
>> It doesn't say it outright, but as an outsider that is definitely
>> what I would at first infer.
>>
>> So: a small +0.1 for "Cannot propagate exception..."
>>
>> And: a big +2 for "Exception in __del__ caught and not propagated:".
>>
> Well, my suggestion was more about eliminating the adjective+noun 
> form; it seemed it just wasn't
> possible to cram the desired meaning into a single word, so it was 
> better not to try!

Georg hadn't suggested his yet when I approved MRAB's, but your 
reasoning is sound, Cameron, unless there is some reason that the 
message can't or shouldn't be as long as what Georg suggested.

In between in length and clarity might be:

__del__ cannot propagate exception ....

All of these are less confusing that the adj+noun form, that MRAB was 
the first to get away from.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/python-dev/attachments/20130925/8c6dff61/attachment-0001.html>


More information about the Python-Dev mailing list