Fork of the official winpdb with improvements
Note from Philippe Fremy
The port of winpdb-reborn to Python 3 / WxPython 4 is unfortunately not working very well. So Winpdb for Python 3 does not really work. Feel free to submit Pull Requests to improve the situation. At the moment, this project is stopped.
*Winpdb Reborn - A GPL Python Debugger, reborn from the unmaintained Winpdb*
by Philippe Fremy as maintainer, and Nir Aides as initial author
Website: https://github.com/bluebird75/winpdb
Description
Winpdb Reborn is a portable (Windows / Linux / macOS) standalone graphical debugger for Python. It focuses on making debugging easy and does not include any IDE features. It has very little dependencies (only wxPython for the GUI).
Features:
- graphical interface with stack/variable inspection, breakpoints and more
- breakpoints: on lines or functions, with possible conditions, load/save breakpoint info
- multi-threaded debugging
- smart handling of fork, follow parent or child
- remote debugging: GUI on one computer, program to debug on another computer with encrypted communication
- up to 20 times quicker than pdb, the default Python debugger (on which many other debuggers are built)
- debug PyPy scripts
- With the agreement of the author (Nir Aides), I (Philippe Fremy) am providing a maintained version with new
Requirements
Platform supported:
- Linux
- Windows XP and above
- macOS is probably working but not tested
- CPython 3.5 or above and wxPython 4
Note that running Winpdb with PyPy is possible, by launching rpdb2.py with `pypy and using the Winpdb GUI to connect to it.
Winpdb Reborn is NOT compatible with Jython or IronPython.
Release history
Version 2.0.0.1
- fix packaging mistake which prevented winpdb to run
Version 2.0.0
- port Winpdb to wxPython 4 / Python 3
- the effort is still in progress
Version 1.5.0
- First official release by Philippe Fremy
- Add support for Python 3 GUI (using wxPython Phoenix)
- Allow installation of all dependencies with pip
- Add support for Python 2.7, 3.5 and 3.6
- Drop support for Python 2.5 and wxPython 2.6, min versions are now Python 2.6 and wxPython 3.0
- rpdb2.py is now compatible with Python 3
- Add support for PyPy to Rpdb2
- Can now specify a different Python interpreter for the program under
- Avoid crash on Windows when closing debugger
- Support dragβn drop of files to load source code
- Add unit-tests and a functional test suite
- Add a Continuous Integration server with travis CI
- Can adjust behavior of debugger to activate/deactivate the breakpoint before exit
- fix for launching Gnome Terminal properly
Version 1.4.8
Last stable version released by Nir Aides.
Installation
(not working yet until the new version is released).
The standard way to install Winpdb Reborn is with pip, as administrator/root::
# python -m pip install winpdb-reborn
You must also install the wxPython for your version of Python:
- for Python 3, wxPython is automatically installed as a dependency with pip
- for Python 2, check https://sourceforge.net/projects/wxpython/files/wxPython/
Additional installation methods
To install from a checkout or from an archive::
# python setup.py install -f
No install mode
If you donβt want to install Winpdb Reborn, you can still try it by calling it explicitly with your program to debug::
$ python /the/path/to/winpdb.py my_program.py
Where do the files go ?
The setup script copies rpdb2.py and winpdb.py modules to the Python site-packages folder. The scripts rpdb2 and winpdb are copied to the Python binaries (scripts) folder. On Linux, this folder is usually /usr/bin and is in the path by default. On Windows, this folder is %PYTHONHOME%\Scripts, where you should see a winpdb.exe and rpdb2.exe .
Usage
If you have installed Winpdb Reborn, the simplest way to launch it is::
$ python -m winpdb my_program.py
or even::
$ winpdb my_program.py
Find out about the other command-line options with β-help .
Documentation
Use the -h or --help command-line flag for command-line help.
Inside Winpdb/Rpdb2 console, use the help` command for detailed description of debugger commands.
Online documentation is available at: https://web.archive.org/web/20180724122042/http://www.winpdb.org/docs
An introduction to Winpdb usage, by Pr Norm Matloff: http://heather.cs.ucdavis.edu/%7Ematloff/winpdb.html
A detailed Winpdb tutorial is also available at: https://code.google.com/archive/p/winpdb/wikis/DebuggingTutorial.wiki
Community
You can ask questions about Winpdb Reborn on the dedicated Google group: https://groups.google.com/forum/#!forum/winpdb
Feel free to raise issues or propose improvements on the GitHub repository: https://github.com/bluebird75/winpdb/issues