[Python-Dev] Revert #12085 fix for del attribute error message (original) (raw)

MRAB python at mrabarnett.plus.com
Tue Sep 24 01:04:28 CEST 2013


On 23/09/2013 22:19, Nick Coghlan wrote:

On 24 Sep 2013 01:24, "Antoine Pitrou" <solipsis at pitrou.net_ _<mailto:solipsis at pitrou.net>> wrote: > > On Mon, 23 Sep 2013 18:51:04 +1000 > Nick Coghlan <ncoghlan at gmail.com <mailto:ncoghlan at gmail.com>> wrote: > > On 23 September 2013 18:45, Antoine Pitrou <solipsis at pitrou.net_ _<mailto:solipsis at pitrou.net>> wrote: > > > Le Mon, 23 Sep 2013 18:17:51 +1000, > > > Nick Coghlan <ncoghlan at gmail.com <mailto:ncoghlan at gmail.com>> a écrit : > > >> > > >> Here's what I suggest changing that error to: > > >> > > >> >>> del x > > >> Unraisable exception suppressed when calling > >> of <_main_.C object at 0x7f98b8b61538>> > > >> Traceback (most recent call last): > > >> File "", line 3, in del > > >> RuntimeError: Going away now > > > > > > Why not simply "Exception automatically caught in > > C.del> [...]" ? > > > > It only answers the "what" (i.e. the exception was automatically > > caught), without addressing the "why" (i.e. because there wasn't > > anything else useful the interpreter could do with it) > > Yes, but I agree with Greg that "unraisable" is wrong. After all, it > was raised, and it can even be caught by the programmer (inside > del). The word doesn't literally mean the exception itself was unraisable. It means it was raised, we caught it and we're writing it to stderr because we can't raise it again. Ah, you mean "unreraisable". :-)

The relevant C API function is just called "PyErrWriteUnraisable", not "PyErrWriteUnraisableButThatIsTechnicallyWrongSinceItWasAlreadyRaisedAndWeJustCaughtItAndAreNowReportingItToStdErr".



More information about the Python-Dev mailing list