https://github.com/bluebird75/winpdb
Fork of the official winpdb with improvements
https://github.com/bluebird75/winpdb
debugger debugger-visualizer graphical-interface python wxpython
Last synced: 10 months ago
JSON representation
Fork of the official winpdb with improvements
- Host: GitHub
- URL: https://github.com/bluebird75/winpdb
- Owner: bluebird75
- License: other
- Created: 2013-04-01T09:16:17.000Z (almost 13 years ago)
- Default Branch: master
- Last Pushed: 2025-02-25T17:37:04.000Z (12 months ago)
- Last Synced: 2025-04-13T02:09:24.627Z (10 months ago)
- Topics: debugger, debugger-visualizer, graphical-interface, python, wxpython
- Language: Python
- Homepage:
- Size: 12.8 MB
- Stars: 91
- Watchers: 11
- Forks: 25
- Open Issues: 12
-
Metadata Files:
- Readme: README.md
- License: LICENSE.txt
Awesome Lists containing this project
README
--------------------
**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.*
--------------------
[](https://travis-ci.org/bluebird75/winpdb)
*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
**Note:** The original Winpdb was no longer maintained since the v1.4.8 release in
2010. With the agreement of the author (Nir Aides), I (Philippe Fremy) am providing a maintained version with new
functionality under the *Winpdb Reborn* name.
# Requirements
Platform supported:
- Linux
- Windows XP and above
- macOS is probably working but not tested
To run Winpdb Reborn:
- CPython 3.5 or above and wxPython 4
This version is for Python 3 only. A stable version of Winpdb for Python 2 is available on PyPi: https://pypi.org/project/winpdb-reborn/1.5.0/ and in the branch *winpdb-reborn-python2* . You will need Python 2.7 and WxPython 3 to run it.
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
debug, allowing PyPy support
- 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/
*Winpdb Reborn* is not packaged yet by any Linux distro. If your package manager proposes
to install Winpdb, that’s the old unmaintained Winpdb which works neither with Python 2.7 nor with Python 3.
## 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