Issue31121
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.
Created on 2017-08-04 14:03 by jaraco, last changed 2022-04-11 14:58 by admin.
| Messages (2) | |||
|---|---|---|---|
| msg299748 - (view) | Author: Jason R. Coombs (jaraco) * ![]() | Date: 2017-08-04 14:03 | |
Similar to #16180 and possible a duplicate of #14743, if the script being run under pdb becomes invalid such as through a chdir operation, pdb will get trapped in a loop, catching its own exception. $ mkdir foo $ cat > foo/script.py import os os.chdir('foo') $ python -m pdb foo/script.py > /Users/jaraco/Dropbox/code/privacymate/harvester/foo/script.py(1)<module>() -> import os (Pdb) c The program finished and will be restarted Traceback (most recent call last): File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/pdb.py", line 1667, in main pdb._runscript(mainpyfile) File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/pdb.py", line 1545, in _runscript with open(filename, "rb") as fp: FileNotFoundError: [Errno 2] No such file or directory: 'foo/script.py' Uncaught exception. Entering post mortem debugging Running 'cont' or 'step' will restart the program > /Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/pdb.py(1545)_runscript() -> with open(filename, "rb") as fp: (Pdb) q Post mortem debugger finished. The foo/script.py will be restarted Traceback (most recent call last): File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/pdb.py", line 1667, in main pdb._runscript(mainpyfile) File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/pdb.py", line 1545, in _runscript with open(filename, "rb") as fp: FileNotFoundError: [Errno 2] No such file or directory: 'foo/script.py' Uncaught exception. Entering post mortem debugging Running 'cont' or 'step' will restart the program > /Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/pdb.py(1545)_runscript() -> with open(filename, "rb") as fp: (Pdb) q Post mortem debugger finished. The foo/script.py will be restarted Traceback (most recent call last): File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/pdb.py", line 1667, in main pdb._runscript(mainpyfile) File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/pdb.py", line 1545, in _runscript with open(filename, "rb") as fp: FileNotFoundError: [Errno 2] No such file or directory: 'foo/script.py' Uncaught exception. Entering post mortem debugging Running 'cont' or 'step' will restart the program > /Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/pdb.py(1545)_runscript() -> with open(filename, "rb") as fp: (Pdb) I suggest PDB should always pass exceptions when the stack trace terminates in the pdb module. | |||
| msg381214 - (view) | Author: Andrey Bienkowski (hexagonrecursion) * | Date: 2020-11-17 07:28 | |
Another way to reproduce this that will continue to work once #42383 is fixed is to delete or move the script while it's being debugged. | |||
| History | |||
|---|---|---|---|
| Date | User | Action | Args |
| 2022-04-11 14:58:49 | admin | set | github: 75304 |
| 2020-11-17 07:28:13 | hexagonrecursion | set | nosy: + hexagonrecursion messages: + msg381214 |
| 2017-08-05 21:22:40 | xdegaye | set | nosy: + xdegaye |
| 2017-08-04 14:03:56 | jaraco | create | |
