[Python-ideas] feature to make traceback objects usable without references to frame locals and globals
Terry Reedy
tjreedy at udel.edu
Tue Jun 29 03:26:52 CEST 2010
On 6/28/2010 8:39 AM, Antoine Pitrou wrote:
> However, as the OP argued, most often you need the traceback in order
> to display file names and line numbers, but you don't need the attached
> variables (locals and globals).
It then seems to me that one should extract the file name and line
number info one wants to save before exiting the exception clause and
let the traceback exception and traceback go on exit. Is a library
function needed to make extraction easier?
Perhaps this "The reason for this [deletion on exit] is that with the
traceback attached to them, exceptions will form a reference cycle with
the stack frame, keeping all locals in that frame alive until the next
garbage collection occurs." could be strengthened into a better warning
that this "That means that you have to assign the exception to a
different name if you want to be able to refer to it after the except
clause. " may really, really not be a good idea.
--
Terry Jan Reedy
More information about the Python-ideas
mailing list