Back to Intellij Community

Preamble

python/helpers/pydev/pydevd_plugins/extensions/README.md

2025.3-rc-21.1 KB
Original Source

Extensions allow extending the debugger without modifying the debugger code. This is implemented with explicit namespace packages.

To implement your own extension ...

  1. Ensure that the root folder of your extension is in sys.path (add it to PYTHONPATH)
  2. Ensure that your module follows the directory structure below
  3. The __init__.py files inside the pydevd_plugin and extension folder must contain the preamble below, and nothing else
  4. Your plugin name inside the extensions folder must start with pydevd_plugin
  5. Implement one or more of the abstract base classes defined in _pydevd_bundle.pydevd_extension_api, this can be done by either inheriting from them or registering with the abstract base class

Preamble

python
import pkgutil
__path__ = pkgutil.extend_path(__path__, __name__)

Directory Structure

|--  root_directory-> must be on python path
|    |-- pydevd_plugins
|    |   |-- __init__.py -> must contain preamble
|    |   |-- extensions
|    |   |   |-- __init__.py -> must contain preamble
|    |   |   |-- pydevd_plugin_plugin_name.py