This issue tracker has been migrated to GitHub, and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

Author xdegaye
Recipients akl, amaury.forgeotdarc, asvetlov, meador.inge, xdegaye
Date 2012-12-05.17:22:55
SpamBayes Score -1.0
Marked as misclassified Yes
Message-id <1354728176.18.0.264894260866.issue13044@psf.upfronthosting.co.za>
In-reply-to
Content
> On finalizing pdb can stop working at some time, but debugging on
> finalization stage can be still useful in certain cases.

Agreed that debugging on finalization stage is useful. Debugging on
finalization stage does not seem to work though:

===============================
class C:
    def __del__(self):
        print('deleted')

c = C()
import pdb; pdb.set_trace()
x = 1
===============================
$ python3 bar.py
> /tmp/bar.py(7)<module>()
-> x = 1
(Pdb) step
--Return--
> /tmp/bar.py(7)<module>()->None
-> x = 1
(Pdb) step
deleted
$
===============================


Maybe this is another issue.


> Xavier, your proposition noticeably changes current behavior as I understand
> it.  For now set_trace() works as breakpoint set up by program, you can go
> out of debugged function and it's very convenient from my perspective.

This proposition only sets the global trace function to None on
returning from the bottom frame, i.e. the oldest frame in the stack. So you can
still use  set_trace() as a hard-coded breakpoint and continue the debugging
session out of the debugged function.
History
Date User Action Args
2012-12-05 17:22:56xdegayesetrecipients: + xdegaye, amaury.forgeotdarc, asvetlov, meador.inge, akl
2012-12-05 17:22:56xdegayesetmessageid: <1354728176.18.0.264894260866.issue13044@psf.upfronthosting.co.za>
2012-12-05 17:22:56xdegayelinkissue13044 messages
2012-12-05 17:22:55xdegayecreate