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 __Vano
Recipients __Vano
Date 2010-07-12.03:56:26
SpamBayes Score 6.640843e-06
Marked as misclassified No
Message-id <1278906990.65.0.476539166106.issue9230@psf.upfronthosting.co.za>
In-reply-to
Content
pdb.Pdb.checkline() throws AttributeError at pdb.py:470 if invoked before starting a debugging session because self.curframe doesn't exist at that time.

This breaks IPython's %run magic command (v0.10, Magic.py:1663). The command sets a breakpoint before running the script and scans the file before that to make sure the breakpoint is set on an executable line. 

This is a reasonable thing to do: setting a breakpoint and making sure it is set correctly shouldn't require a running debug session. So i conclude it is pdb, not IPython, that shall be fixed.

The patch attached gives linecache.getline() None as module_globals if self.curframe doesn't exist.

The rationale is: even if the script does use PEP302 import stuff, we can't know or use that before running it. So it's ok if we stay limited with usual paths.
History
Date User Action Args
2010-07-12 03:56:30__Vanosetrecipients: + __Vano
2010-07-12 03:56:30__Vanosetmessageid: <1278906990.65.0.476539166106.issue9230@psf.upfronthosting.co.za>
2010-07-12 03:56:28__Vanolinkissue9230 messages
2010-07-12 03:56:27__Vanocreate