Sources for the debugger used in PyDev, PyCharm and VSCode Python
Permalink
Failed to load latest commit information.
.settings Provide a single notification when a breakpoint is hit. ptvsd:805 Oct 16, 2018
_pydev_bundle Re-enable frame eval mode in the debugger. ptvsd:768 Nov 6, 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 Fixed issue finding PyDBAdditionalThreadInfo from frame eval in cython. Nov 8, 2018
_pydevd_frame_eval Re-enable frame eval mode in the debugger. ptvsd:768 Nov 6, 2018
build_tools Re-enable frame eval mode in the debugger. ptvsd:768 Nov 6, 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 Re-enable frame eval mode in the debugger. ptvsd:768 Nov 6, 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 Skip flaky test on Jython Nov 8, 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 Re-enable frame eval mode in the debugger. ptvsd:768 Nov 6, 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 Minor Nov 6, 2018
pydevd_file_utils.py Fix issue launching module with -m. ptvsd:991 Nov 8, 2018
pydevd_tracing.py Re-enable frame eval mode in the debugger. ptvsd:768 Nov 6, 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 Fix in building binaries (pxd was not being included). Nov 7, 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