Improved IPython-enabled pdb
Python Debugger Improved
pdbi is an improvment on ipdb which is a Python Debugger that exports IPython functionality. The improvements are aimed at more powerful debugging as well as fixing useless commands.
import pdbi; pdbi.set_trace()
- ‘cf’ command (continue forever) will continue execution until the end of the program.
- ‘c’ command argument that allows to decide the number of breakpoints to continue over. ‘c 2’
- ‘n’ command argument that allows to decide the number of lines to execute. ‘n 2’ [Stops when a frame returns]
- New ‘e’ command that will open an editor (Notepad++ on Windows, VIM or VI on Unix) on the current debugger line, then when the editor is closed, the debugger shows the difference and restarts the program (Based on sys.argv).
- Allow the usage of ipython magics like ‘func?’ or ‘func?@’ etc.
- All updated commands allow pythonic arguments for example ‘c len(cmd_list)’ or ‘n abc’.
- ‘l’ command updated to allow giving only one argument that shows that argument amount of lines around the current line.
- ‘ll’ command that is a shortcut to show the current line the debugger is on.
- ‘restart’ command that is used to restart the program based on sys.argv.
- ‘cls/clear’ command that clears the screen.
- Added ability to force ignore commands by prefixing the command with an ‘!’. For example ‘!cls’ or ‘!e’.
linkedin: Amit Assaraf
I’d love to get feedback and suggestions on what I should add/change! Thanks!
- Nothing changed yet.
- More Python 3 compatibility; implies dropping Python 2.5 support. Closes https://github.com/gotcha/ipdb/issues/37 [gotcha]
- IPython 1.0 compatibility. Closes https://github.com/gotcha/ipdb/issues/44 [pgularski]
- Index into version_info in setup.py for Python 2.6 compatibility. [kynan]
- Add Travis CI configuration. [kynan]
- Add launch_ipdb_on_exception context manager. Implies dropping Python 2.4 support. [Psycojoker]
- Wrap sys.excepthook only once. [marciomazza]
- Add GPL file and refer in headers. [stan3]
- Python 3 support. [Piet Delport]
- Basic tests. [msabramo]
- Added the functions runcall, runeval and run. [dimasad]
- State dependency on IPython later or equal to 0.10. [gotcha]
- Add setuptools console_scripts entry point. [akrito, gotcha]
- Nose support. Closes https://github.com/gotcha/ipdb/issues/8 [akaihola, gotcha]
- IPython 0.11 support. [lebedov]
- When used from IPython, use its colors. Closes https://github.com/gotcha/ipdb/issues/1 [gotcha]
- Fixed errors when exiting with “q”. [gotcha]
- Allow use of python -m ipdb mymodule.py. Python 2.7 only. Closes https://github.com/gotcha/ipdb/issues/3 [gotcha]
- Fixed post_mortem when the traceback is None. [maurits]
- Add post_mortem() for Products.PDBDebugMode support. [Jean Jordaan]
- Moved to github.com.
- Added pm(). [Paulo Benedict Ang]
- First “non dev” release.