You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Context: this issue came out of a discussion in #python on the Libera.chat IRC network, where a user wanted to peek into importlib._bootstrap with pdb while chasing a bug.
pdb is capable of stepping into function calls into frozen modules, but the list command cannot locate the source code necessary to display the source being stepped through.
# repro.pyimportimportlib._bootstrap# some function call that we want to step into with pdbimportlib._bootstrap._resolve_name("os", ".", 1)
$ python3 -m pdb repro.py
> /home/snoopjedi/repro.py(2)<module>()
-> import importlib._bootstrap
(Pdb) n
> /home/snoopjedi/repro.py(5)<module>()
-> importlib._bootstrap._resolve_name("os", ".", 1)
(Pdb) s
--Call--
> <frozen importlib._bootstrap>(883)_resolve_name()
(Pdb) l
[EOF]
Note that executing source importlib._bootstrap from the frame that calls into this module does successfully locate the source, but this isn't very useful to a user of pdb.
I believe that bringing the frame's co_filename into agreement with the module's __file__ would fix this issue without changes to pdb (see #89815), but thought it would be good to track the issue with pdb in a separate ticket since that fix is more nuanced and I think I have an interim patch for the debugger.
Your environment
CPython versions tested on: 3.9.4, 3.11.0b3
Operating system and architecture: Ubuntu 20.04, x86_64
Bug report
Context: this issue came out of a discussion in #python on the Libera.chat IRC network, where a user wanted to peek into
importlib._bootstrapwithpdbwhile chasing a bug.pdbis capable of stepping into function calls into frozen modules, but thelistcommand cannot locate the source code necessary to display the source being stepped through.Note that executing
source importlib._bootstrapfrom the frame that calls into this module does successfully locate the source, but this isn't very useful to a user ofpdb.I believe that bringing the frame's
co_filenameinto agreement with the module's__file__would fix this issue without changes topdb(see #89815), but thought it would be good to track the issue withpdbin a separate ticket since that fix is more nuanced and I think I have an interim patch for the debugger.Your environment
Linked PRs