Sources for the debugger used in PyDev, PyCharm and VSCode Python
dzh21 and fabioz Update pydev_monkey_qt.py
PyCharm debugger can stop on QThread breakpoints with PySide2
Latest commit dfb3723 Oct 8, 2018
Permalink
Failed to load latest commit information.
.settings Fix issue dealing with zip filenames. Jul 16, 2018
_pydev_bundle Update pydev_monkey_qt.py Oct 9, 2018
_pydev_imps Fix for case when python-future is installed and provides a dummy 'bu… Sep 5, 2017
_pydev_runfiles CI support and fixes for Jython, Python 3.7, pytest with xdist Jul 26, 2018
_pydevd_bundle Allow configuring whether the debugger should stop/print errors when … Oct 4, 2018
_pydevd_frame_eval Updated to latest cython. Sep 1, 2018
build_tools Properly deal with handled/unhandled exceptions on top-level frames o… Sep 20, 2018
gradle/wrapper Add gradle wrapper Feb 4, 2016
jython_test_deps Supporting Jython on CI. Apr 7, 2017
pydev_ipython Merge from PyCharm. Apr 13, 2018
pydev_sitecustomize Fix issue where a library checked if breakpoint() was in the builtins… Aug 23, 2018
pydevd_attach_to_process Add missing type casting Aug 28, 2018
pydevd_concurrency_analyser Moving utilities related to getting the global debugger to pydevd_con… Jul 4, 2018
pydevd_plugins Merge hit condition, logpoints, redirect command, next statement targ… Jun 11, 2018
stubs Moved many modules to _pydevd_bundle. Nov 28, 2015
test_pydevd_reload Doing workaround for debugger on IronPython. May 7, 2017
tests Allow suspending and resuming all threads at once. Aug 23, 2018
tests_mainloop pep8 names Dec 5, 2015
tests_python Allow configuring whether the debugger should stop/print errors when … Oct 4, 2018
tests_runfiles CI support and fixes for Jython, Python 3.7, pytest with xdist Jul 26, 2018
third_party Stop ugly sys reimporting (reloading sys has unintended consequences). Aug 19, 2017
.gitignore By default don't use the frame evaluation as it conflicts with the tr… May 7, 2018
.project Adding things only in pydev. Jul 17, 2014
.pydevproject Fix .pydevproject Oct 9, 2018
.travis.yml Allow suspending and resuming all threads at once. Aug 23, 2018
.travis_install_jython_deps.sh Properly deal with handled/unhandled exceptions on top-level frames o… Sep 20, 2018
.travis_install_python_deps.sh Properly deal with handled/unhandled exceptions on top-level frames o… Sep 20, 2018
LICENSE Initial commit Jul 15, 2014
MANIFEST.in Improving our setup.py. Commiting cython .c file and using it on setu… Jan 2, 2016
README.rst Update readme. Apr 16, 2018
appveyor.yml CI support and fixes for Jython, Python 3.7, pytest with xdist Jul 26, 2018
conftest.py Properly deal with handled/unhandled exceptions on top-level frames o… Sep 20, 2018
gradlew Add gradle wrapper Feb 4, 2016
gradlew.bat Add gradle wrapper Feb 4, 2016
interpreterInfo.py Integrating latest PyDev patches. Nov 19, 2017
pycompletionserver.py Fix for case when python-future is installed and provides a dummy 'bu… Sep 5, 2017
pydev_app_engine_debug_startup.py Adding Python sources from PyDev. Jul 17, 2014
pydev_coverage.py More robust creation of the coverage.xml Aug 15, 2018
pydev_pysrc.py Adding more files which are only in PyDev. Jul 17, 2014
pydev_run_in_console.py Show interactive plots when running "with Python console" (PY-28448) Apr 4, 2018
pydevconsole.py Merge from PyCharm. Apr 13, 2018
pydevd.py Allow configuring whether the debugger should stop/print errors when … Oct 4, 2018
pydevd_file_utils.py Minors Sep 11, 2018
pydevd_tracing.py Set frame.f_trace to None instead of just returning None to disable t… Sep 27, 2018
pytest.ini CI support and fixes for Jython, Python 3.7, pytest with xdist Jul 26, 2018
runfiles.py Remove error message (pytest itself imports unittest now). Jun 13, 2018
setup.py Fix for Python 3.4 Sep 27, 2018
setup_cython.py Support Python 3.7 in build scripts and generate Cython extensions fo… Apr 4, 2018

README.rst

PyDev.Debugger

The sources for the PyDev.Debugger (used in PyDev & PyCharm) 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 or PyCharm).

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') 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).

It should be compatible with Python 2.6 onwards (as well as Jython 2.7, IronPython and PyPy -- and any other variant which properly supports the Python structure for debuggers -- i.e.: sys.settrace/threading.settrace).

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.

To generate a distribution with the precompiled binaries for the IDE, build_binaries_windows.py should be run ( note that the environments must be pre-created as specified in that file).

To generate a distribution to upload to PyPi, python setup.py sdist bdist_wheel should be run for each python version which should have a wheel and afterwards twine upload -s dist/pydevd-* should be run to actually upload the contents to PyPi.

Travis (Linux CI):

travis

Appveyor (Windows CI):

appveyor