What is PyDev?
PyDev is a Python IDE for Eclipse, which may be used in Python, Jython and IronPython development.
It comes with many goodies such as:
For more details on the provided features, check the Features Matrix.
First time users are strongly advised to read the Getting started guide which explains how to properly configure PyDev.
The recommended way of using PyDev is bundled in LiClipse, which provides PyDev builtin as well as
LiClipse you directly support the development of PyDev).
If you'd like to analyze the performance of your programs, check PyVmMonitor.
Release 9.3.0 (2022-03-05)
- Fixed issue where the variable children wouldn't expand correctly.
- Fixed some case where automatic connection to subprocesses wouldn't work.
- Debugging with Pandas is much improved with the addition of some custom converters.
- Opt-in support to show paused greenlets by setting GEVENT_SHOW_PAUSED_GREENLETS=1.
- Support for newer versions of gevent.
- Information on user settings paths is cached to fix issue with slow debugging using pipenv project.
- A warning is shown if getting some attribute / getting its repr is slow.
- Interactively inspect matplotlib plots when the QtAgg backend is used.
- Support for PySide2.
- Better error messages in case Python 3.11 frozen modules are being used.
- Note: this will be the last debugger version supporting Python 2.7.
- Newer releases will target only Python 3.6 onwards.
- Fix for case where indexing could fail to account for namespace folders.
Release 9.2.0 (2021-10-31)
- Code completion
- Code-completion is provided for TypedDict (when requested inside of string -- i.e.: dct['|']). (#PyDev-1167)
- super completion on method with classmethod properly adds cls instead of self. (#PyDev-201)
- Assigns after class definition are added to completions. (#PyDev-326)
- Terminate remote debugger without any process attached no longer throws an exception.
- PyDev debugger threads are hidden in the threading module.
- Line validation is made for django/jinja2 templates.
- Fixed regression from 9.1.0 so that Jython works properly again (start_new not available in threading). (#PyDev-1182)
- Don't complain if self is not in parameters for zope.Interface. (#PyDev-646)
- Fix issue loading test unit run.
- Validation in new project wizard no longer takes too much time if a folder with lots of contents is set.
- Add #noqa: <error_code> as quickfix for flake8 errors. (#PyDev-1146)
- flake8 error code is shown in message description. (#PyDev-1146)
Release 9.1.0 (2021-10-03)
- Python 3.10
- The debugger now provides cython and frame evaluation mode for Python 3.10.
- Code completion
- Support for values returned by context manager. (#PyDev-1155)
- Support for Union and | for Python 3.10. (#PyDev-1175)
- Support for subclassing with generic types. (#PyDev-1174)
- Fixed issue loading environment variables from conda. (#PyDev-1173)
- Fixed issue which could lead to infinite recursion.
- The code formatter page is properly updated when loading formatter info.
- Assign to variables takes into account type declaration. (#PyDev-1172)
Release 9.0.1 (2021-08-19)
- Added missing binaries in debugger for Linux and Mac.
Release 9.0.0 (2021-08-15)
- Python 3.10
- Support for pattern matching.
- Support for (multiple) parenthesized context managers.
- Note: Python 3.10 support is still a work in progress, and is provided as an early release.
- Java 16
- Java 16 can now be used to run PyDev
- When using Java 16, this update is required as older versions don't run smoothly on it due to backward-incompatible changes.
- Java 11 is still the minimun required version to run PyDev (and Java 15 is the recommended version).
- PyDev can now use typeshed (a collection of stubs for Python libraries) for type inference.
- Albeit already usable, it's still considered experimental, so, it's opt-in.
- To opt-in select "Use Typeshed for type inference (EXPERIMENTAL)" in "Preferences > PyDev > Interpreters".
- Preliminary support for Python 3.10.
- Debugger properly handles case where return value name has the same value as another variable.
- wxPyton event loop activation works for newer versions of wxPython.
- Notifies when a required stdlib module required by the debugger is shadowed by a user module.
- Reload deals with relative imports.
- Auto-attach to subprocess with a __future__ import with python -c works.
- Other minor issues.
- Performance improvement: traversing files to compute the PYTHONPATH contents is much faster.
- It's now possible to use the Python installed from the Microsoft Store.
- Updated Lucene.
- Typing numbers and symbols in console properly moves cursor to edit position. (#PyDev-237)
- --format=default is always set for Flake8. (#PyDev-1143)
- Traceback is properly shown after failing test with nosetest and Python3. (#PyDev-1160)
- Invalid django project names are properly dealt with. (#PyDev-1162)
- Transform is properly disposed (resource leakage reported by Eclipse 4.20).
- Type inference now works with typing.cast. (#PyDev-1158)
View release notes for previous releases