@jupyterlab/debugger
A JupyterLab debugger UI extension. This extension is under active development.
Prerequisites
- JupyterLab 2.0+
- xeus-python 0.8.0+
- notebook 6+
Installation
A kernel with support for debugging is required to be able to use the debugger.
It is generally recommended to create a new conda environment to install the dependencies:
conda create -n jupyterlab-debugger -c conda-forge xeus-python=0.8.0 notebook=6 jupyterlab=2 ptvsd nodejs
conda activate jupyterlab-debuggerThen, run the following command to install the extension:
jupyter labextension install @jupyterlab/debuggerUsage
For now xeus-python is the only Jupyter kernel that supports debugging. xeus-python can be selected from the JupyterLab launcher:
Alternatively, it is also possible to switch to the xpython kernel using the kernel selection dialog:
Enable the debugger, set breakpoints and step into the code:
Development
# Create a new conda environment
conda create -n jupyterlab-debugger -c conda-forge nodejs xeus-python=0.8.0 ptvsd jupyterlab=2
# Activate the conda environment
conda activate jupyterlab-debugger
# Install dependencies
jlpm
# Build TypeScript source
jlpm build
# Link your development version of the extension with JupyterLab
jupyter labextension link .
# Rebuild TypeScript source after making changes
jlpm build
# Rebuild JupyterLab after making any changes
jupyter lab build
# Start JupyterLab with the kernel logs enabled and watch mode enabled
XEUS_LOG=1 jupyter lab --no-browser --watchTests
To run the tests:
# [Optional] to enable the logs for xeus-python
export XEUS_LOG=1
jlpm run testTo run tests for a specific test suite name:
jlpm run test --testNamePattern=<regex>To run tests for a specific test module name:
jlpm run test --testPathPattern=<regex>Inspecting debug messages
The kernelspy extension for JupyterLab can be used to inspect the debug messages sent between the debugger UI and the kernel.
To install it:
jupyter labextension install jupyterlab-kernelspy


