Latest 3.x version: the PyDev debugger now supports sys.monitoring which enables
really fast tracing on Python 3.12 (so, if speed is an issue, make sure you upgrade).
https://github.com/fabioz/PyDev.Debugger is the main repository
for pydevd and the latest versions can always be used directly in:
-
PyDev for Eclipse: Enables the usage of
pydevdin Eclipse (Open Source). -
Python Debugger (PyDev) for VSCode: Enables the usage of
pydevdin VSCode (note that whilepydevditself is open source, this extension is commercial and helps in the development of the Open Source version. It has a free trial and can be used by acquiring a license forPyDev for VSCodeat: https://www.pydev.org/vscode/index.html).Note that the
Python Debugger (PyDev) for VSCodemay be used as a standalane extension for debuggingPythonby creating the proper configuration in alaunch.jsonand launching it.Alternatively, PyDev for VSCode leverages it to offer additional features such as debugging of test cases.
The PyDev Debugger (pydevd for short) is a Python debugger which historically was created to
work with PyDev (in Eclipse).
Over the years (as it's open source -- EPL) it was adopted by other IDEs/companies
(so, it was integrated into PyCharm and VSCode Python through debugpy, which also bundles pydevd).
Note that although it was adopted by other IDEs (and over the years companies of other commercial IDEs did provide backing), by far most of the work was done without any external backing and the ongoing work on the project relies on community support.
So, if you like using it, please consider becoming a backer of the project (this is
done through the PyDev umbrella, so please see https://www.pydev.org/about.html
for how to contribute to the project).
The sources for the PyDev.Debugger may be seen at:
https://github.com/fabioz/PyDev.Debugger
In general, the debugger backend should NOT be installed separately if you're using an IDE which already
bundles it (such as PyDev for Eclipse, Python Debugger (PyDev) for VSCode,
PyCharm or the Microsoft Python VSCode Extension, which uses debugpy, which is another debug adapter bundling pydevd to be used in the Microsoft
VSCode Python Extension and Visual Studio Python).
It is however available in PyPi so that it can be installed for doing remote debugging with pip -- so, when
debugging a process which runs in another machine, it's possible to pip install pydevd and in the code use
pydevd.settrace(host="10.1.1.1") (in PyDev) or pydevd.settrace(host="10.1.1.1", protocol="dap") (in PyDev for VSCode)
to connect the debugger backend to the debugger UI running in the IDE
(whereas previously the sources had to be manually copied from the IDE installation).
For instructions on how to Remote Debug with PyDev, see: https://www.pydev.org/manual_adv_remote_debugger.html
For instructions on how to Remote Debug with PyDev for VSCode, see: https://marketplace.visualstudio.com/items?itemName=fabioz.vscode-pydev-python-debugger
pydevd is compatible with Python 3.8 onwards and is tested both with CPython as well as PyPy.
For Python 3.3 to 3.7 please keep using pydevd 2.10.0.
For Python 2 please keep using pydevd 2.8.0.
Recent versions contain speedup modules using Cython, which are generated with a few changes in the regular files
to cythonize the files. To update and compile the cython sources (and generate some other auto-generated files),
build_tools/build.py should be run -- note that the resulting .pyx and .c files should be commited.