7261
Comment: Order alphabetically
|
8653
Update Thonny's address
|
Deletions are marked like this. | Additions are marked like this. |
Line 2: | Line 2: |
[[https://wiki.python.org/moin/PythonDebuggers|Merge with PythonDebuggers]]? |
|
Line 9: | Line 7: |
||<tablewidth="100%">'''Name''' ||'''Platform''' ||''' Notes ''' || | ||<tablewidth=""" tablestyle="" & quot; & amp; quot; & amp; amp; quot; & amp; amp; amp; quot; 100%& amp; amp; amp; amp; quot& amp; amp; amp; quot; ; & amp; amp; amp; amp; quot& amp; amp; amp; quot& amp; amp; quot; ; & amp; amp; amp; quot& amp; amp; quot& amp; quot; ; & amp; amp; quot& amp; quot& quot; ; & amp; quot& quot" ;&quot"">'''Name''' ||'''Platform''' ||''' Notes ''' || ||[[https://docs.python.org/2/library/pdb.html|pdb]] ||All ||The standard library debugger, part of all Python installations. || |
Line 11: | Line 10: |
||PdbRcIdea ||All ||A .pdbrc for Pyhon's standard debugger, pdb, which allows you to run arbitrary Python commands on pdb startup. || | ||PdbRcIdea ||All ||A .pdbrc for Python's standard debugger, pdb, which allows you to run arbitrary Python commands on pdb startup. || |
Line 13: | Line 12: |
||[[http://winpdb.org/|Winpdb and Rpdb2]] ||Unix,Linux,Windows ||an advanced python debugger, with support for smart breakpoints, multiple threads, namespace modification, embedded debugging, encrypted communication and speed of up to 20 times that of pdb. || ||[[https://pypi.python.org/pypi/rpdb/|rpdb]] ||Unix, Windows,Mac OS X ||(predecessor of rpdb2 and winpdb) rpdb.py improves pdb.py's usability and adds support for remote debugging, multiple threads debugging, post mortem of unhandled exceptions, and for debugging of embedded scripts. || ||[[http://jpydbg.sourceforge.net/|JpyDbg]] ||Mac OS X, OS/2, Unix, VMS and Windows ||both a CPYTHON and a JPYTHON(JYTHON) debugging framework which has been integrated inside Jedit as a standard jedit pluggin. || ||[[http://bashdb.sourceforge.net/pydb|pydb]] ||Unix, Windows, OS X ||An expanded version of the pdb loosely based on the gdb command set. The debugger supports thread debugging, signal handling, non-interactive tracing, and much more. || |
||[[http://winpdb.org/|Winpdb and Rpdb2]] ||Unix,Linux,Windows ||An advanced python debugger, with support for smart breakpoints, multiple threads, namespace modification, embedded debugging, encrypted communication and speed of up to 20 times that of pdb. || ||[[https://pypi.python.org/pypi/rpdb/|rpdb]] ||Unix, Windows,Mac OS X ||(Predecessor of rpdb2 and winpdb) rpdb.py improves pdb's usability and adds support for remote debugging, multiple threads debugging, post mortem of unhandled exceptions, and for debugging of embedded scripts. || ||[[http://jpydbg.sourceforge.net/|JpyDbg]] ||Mac OS X, OS/2, Unix, VMS and Windows ||Both a CPYTHON and a JPYTHON(JYTHON) debugging framework which has been integrated inside Jedit as a standard jedit pluggin. || ||[[http://bashdb.sourceforge.net/pydb|pydb]] ||Unix, Windows, OS X ||An expanded version of pdb loosely based on the gdb command set. The debugger supports thread debugging, signal handling, non-interactive tracing, and much more. || |
Line 18: | Line 17: |
||[[http://sourceforge.net/projects/ddd/|DDD]] ||Unix ||DDD is a graphical front-end for command-line debuggers such as GDB, DBX, WDB, Ladebug, JDB, XDB, the Perl debugger, the bash debugger, GNU Make debugger, or the Python debugger. DDD displays data structures as graphs and plots. A deprecated version of pydb comes with this package. For GNU make debugging, use [[http://sourceforge.net/project/showfiles.php?group_id=61395&package_id=65341|ddd-test5]] || ||[[http://web.archive.org/web/20040331032128/home.t-online.de/home/Ulrich.Herold/pydebug.py|pyDebug]] ||Unix,Windows ||Debugger for Python programs with a graphical user interface. It is inherited from "bdb" but uses a GUI and has some powerful features like object browser, windows for variables, classes, functions, exceptions, stack, conditional breakpoints, etc. || |
||[[http://sourceforge.net/projects/ddd/|DDD]] ||Unix ||Graphical front-end for command-line debuggers such as GDB, DBX, WDB, Ladebug, JDB, XDB, the Perl debugger, the bash debugger, GNU Make debugger, or the Python debugger. DDD displays data structures as graphs and plots. A deprecated version of pydb comes with this package. For GNU make debugging, use [[http://sourceforge.net/project/showfiles.php?group_id=61395&package_id=65341|ddd-test5]] || ||[[http://web.archive.org/web/20040331032128/home.t-online.de/home/Ulrich.Herold/pydebug.py|pyDebug]] ||Unix,Windows ||Debugger for Python programs with a graphical user interface. It uses bdb (part of stdlib) but adds a GUI and has some powerful features like object browser, windows for variables, classes, functions, exceptions, stack, conditional breakpoints, etc. || |
Line 21: | Line 20: |
||[[http://pyclewn.sourceforge.net/|Pyclewn]] ||*nix, Windows ||Pyclewn allows using [[http://www.vim.org/|Vim]] as a front end to a debugger. Pyclewn currently supports gdb and pdb. || | ||[[http://pyclewn.sourceforge.net/|Pyclewn]] ||*nix, Windows ||Pyclewn allows you to use [[http://www.vim.org/|Vim]] as a front end to a debugger. Pyclewn currently supports gdb and pdb. || ||[[http://code.google.com/p/pydbgr|trepan2]], [[http://code.google.com/p/python-trepan|trepan3k]] ||Unix, Windows, Mac OS X ||A rewrite of pydb with closer compliance to gdb . In addition to the features of pydb, the debugger supports syntax coloring (via pygments), has extensive on-line help (in rendered [[reStructuredText]]), command completion, a smarter eval, debugger macros written in Python, and more. || |
Line 25: | Line 25: |
||[[http://thonny.org|Thonny]] ||Mac OS X, Linux, Windows ||For teaching/learning programming. Focused on program runtime visualization. Provides stepping both in statements and expressions, no-hassle variables view, separate mode for explaining references etc. || | |
Line 26: | Line 27: |
||[[http://wingware.com/|Wing IDE]] ||Mac OS X, Linux, Windows ||An IDE that can debug multiple threads in code launched from the IDE or code launched externally, running under CPython and Stackless Python. The GUI includes a Debug Probe, which is a Python shell running in the context of the paused debug process. The IDE's debugger also features value watching (by symbolic path, object reference, or a combination), conditional breakpoints, debugging of tests running in the integrated unit testing tool, special support for Zope2 and Plone, and How-Tos for debugging Turbogears, Django, Google App Engine, wxWidgets, PyQt, Tkinter, CGIs, and many other packages. || | ||[[http://wingware.com/|Wing IDE]] ||Mac OS X, Linux, Windows ||An IDE that can debug multiple threads and multiple processes, including code launched from the IDE or code launched externally, running under CPython and Stackless Python. The GUI includes a Debug Probe, which is a Python shell running in the context of the paused debug process. The IDE's debugger also features value watching (by symbolic path, object reference, or a combination), conditional breakpoints, move program counter, debugging of tests running in the integrated unit testing tool, special support for Django, and How-Tos for debugging code running under Flask, web3py, Django, Google App Engine, wxPython, PyQt, Tkinter, Blender, Maya, NUKE, and many other packages. || |
Line 31: | Line 32: |
||[[http://pytools.codeplex.com|Python Tools for Visual Studio]] ||Windows ||Supports Python (any implementation w/ sufficient sys.settrace capabilities) and IronPython .NET debugging. Includes MPI cluster debugging, breakpoints, conditional breakpoints, locals, watch, and immediate windows, step into/out/over, break on exception, and break on unhandled exception. || | ||[[http://pytools.codeplex.com|Python Tools for Visual Studio]] ||Windows ||Supports Python (any implementation with sufficient sys.settrace capabilities) and IronPython .NET debugging. Includes MPI cluster debugging, breakpoints, conditional breakpoints, locals, watch, and immediate windows, step into/out/over, break on exception, and break on unhandled exception. || |
Line 35: | Line 36: |
||<15%>'''Name''' ||'''Platform''' ||'''Notes''' || | |
Line 46: | Line 46: |
||[[https://github.com/ionelmc/python-hunter|hunter]] || ||A flexible code tracing toolkit. Can print out code and variables, and filter the events. || |
Add your useful tools here -- editors, debuggers and other utils that really help with the process.
Debuggers
Name |
Platform |
Notes |
All |
The standard library debugger, part of all Python installations. |
|
Unix,Mac OS X |
A visual, console-based, full-screen debugger, designed as a more comfortable drop-in replacement for pdb. (also supports IPython) |
|
All |
A .pdbrc for Python's standard debugger, pdb, which allows you to run arbitrary Python commands on pdb startup. |
|
Windows |
A python IDE with remote debugging capability. |
|
Unix,Linux,Windows |
An advanced python debugger, with support for smart breakpoints, multiple threads, namespace modification, embedded debugging, encrypted communication and speed of up to 20 times that of pdb. |
|
Unix, Windows,Mac OS X |
(Predecessor of rpdb2 and winpdb) rpdb.py improves pdb's usability and adds support for remote debugging, multiple threads debugging, post mortem of unhandled exceptions, and for debugging of embedded scripts. |
|
Mac OS X, OS/2, Unix, VMS and Windows |
Both a CPYTHON and a JPYTHON(JYTHON) debugging framework which has been integrated inside Jedit as a standard jedit pluggin. |
|
Unix, Windows, OS X |
An expanded version of pdb loosely based on the gdb command set. The debugger supports thread debugging, signal handling, non-interactive tracing, and much more. |
|
Unix |
pdb extension with curses module that adds console window with source code. |
|
Unix |
Graphical front-end for command-line debuggers such as GDB, DBX, WDB, Ladebug, JDB, XDB, the Perl debugger, the bash debugger, GNU Make debugger, or the Python debugger. DDD displays data structures as graphs and plots. A deprecated version of pydb comes with this package. For GNU make debugging, use ddd-test5 |
|
Unix,Windows |
Debugger for Python programs with a graphical user interface. It uses bdb (part of stdlib) but adds a GUI and has some powerful features like object browser, windows for variables, classes, functions, exceptions, stack, conditional breakpoints, etc. |
|
gdb |
*nix |
See DebuggingWithGdb |
*nix, Windows |
Pyclewn allows you to use Vim as a front end to a debugger. Pyclewn currently supports gdb and pdb. |
|
Unix, Windows, Mac OS X |
A rewrite of pydb with closer compliance to gdb . In addition to the features of pydb, the debugger supports syntax coloring (via pygments), has extensive on-line help (in rendered reStructuredText), command completion, a smarter eval, debugger macros written in Python, and more. |
IDEs with Debug Capabilities
Mac OS X, Linux, Windows |
For teaching/learning programming. Focused on program runtime visualization. Provides stepping both in statements and expressions, no-hassle variables view, separate mode for explaining references etc. |
|
Mac OS X, Linux, Windows |
Allows debugging multiple threads in Jython and Python (It is featured as a 'Python IDE' plugin for Eclipse). |
|
Mac OS X, Linux, Windows |
An IDE that can debug multiple threads and multiple processes, including code launched from the IDE or code launched externally, running under CPython and Stackless Python. The GUI includes a Debug Probe, which is a Python shell running in the context of the paused debug process. The IDE's debugger also features value watching (by symbolic path, object reference, or a combination), conditional breakpoints, move program counter, debugging of tests running in the integrated unit testing tool, special support for Django, and How-Tos for debugging code running under Flask, web3py, Django, Google App Engine, wxPython, PyQt, Tkinter, Blender, Maya, NUKE, and many other packages. |
|
Mac OS X, Linux, Windows |
|
|
Mac OS X, Linux, Windows |
PyCharm's integrated debugger works for Python and Jython, supports debugging of multiple threads, remote debugging, allows debugging Django, Google App Engine applications and unit tests. The debugger features various breakpoints, stepping modes, frames view, watches, evaluate expression tool and a debug console. Conditional and Exception breakpoint types are available for more precise control. Debug console allows executing any Python statements in the context of the process being debugged while stopped at a breakpoint. |
|
Windows |
|
|
Linux, Windows |
An IDE tool used to edit, debug Python scripts, publish encrypted scripts, build a standalone executable file, and make installation in various forms(.msi, .tar.gz, .rpm, .zip, .tar.bz2). It includes an editor simulating Emacs python-mode, a GUI debugger simulating GDB, a project view used to manage scripts, modules, extensions, packages and platform specific data files. |
|
Windows |
Supports Python (any implementation with sufficient sys.settrace capabilities) and IronPython .NET debugging. Includes MPI cluster debugging, breakpoints, conditional breakpoints, locals, watch, and immediate windows, step into/out/over, break on exception, and break on unhandled exception. |
Special-purpose tools
GoogleAppEngine + Firefox |
"FirePython is a python logger console integrated into Firebug (similar to FirePHP)". See http://appengine-cookbook.appspot.com/recipe/firepython-logger-console-inside-firebug/ |
|
Mac OS X, Linux |
Remote process inspector (using an active component, using a thread or a plain simple signal handler). |
|
|
Remote process inspector. Uses GDB to inject code. |
|
Any |
Trace hook logger which outputs each thread in its own "swimlane" to make multithreaded analysis easier. Can also time calls (naively) and watch variables. |
|
|
Remote process inspector. Uses GDB to inject code. |
|
Mac OS X, Linux |
Library and a set of tools for injecting code into running Python programs to monitor, analyze, introspect, and alter running Python programs easily. Uses GDB to inject code. |
|
|
Remote process inspector. Uses GDB to inject code. |
|
|
Remote process inspector. Uses GDB to inject code. Uses rpyc for communication. |
|
|
|
|
|
Remote process inspector (using an active component, a thread). |
|
|
A flexible code tracing toolkit. Can print out code and variables, and filter the events. |