Login Sign up

Tuesday Oct. 13, 2020, 5:15 p.m.–Oct. 13, 2020, 5:45 p.m. in Jupyter Community: Practices

Debugging notebooks and python scripts in JupyterLab

Karla Spuldaro

Audience level:

Brief Summary

While programming in JupyterLab can be simple and easy, sometimes developers require helper tools, in particular for debugging code. This talk will demonstrate the main features of the JupyterLab debugger extension, also walk you through how to setup and use this essential and powerful tool. Future enhancements such as integration with python editor extension will be coming soon.


This talk is targeted to beginner developers and data scientists using JupyterLab programming functionalities. It will describe the advantages and main features of the debugger extension, as well as explain how to set it up, get started, and how to contribute to the project. JupyterLab provides a great web environment for coding in various languages, with a simple and easy user interface. Even if you are not a developer but have used Jupyter notebooks to perform any kind of data research and analysis, you might be familiar with some basic programming principles. When running code in notebook code cells, the selected kernel processes the code and displays the output either as expected or as some kind of error message, in case the execution went wrong. Sometimes the error messages are not so clear, or we want to investigate what may have caused the “bug”. That is a task for a debugger tool. With the JupyterLab debugger extension for notebooks and consoles, currently supporting xeus-python, developers and data scientists are then able to track the operations of their python code in progress and monitor changes in a controlled manner. It is an essential tool that allows user to stop the program execution in specific breakpoints, investigate code states and navigate through the stack trace. Future enhancements will include conditional breakpoints, more kernels support, and enhanced python editor integration. If you have python files and don’t want to convert them into notebooks, the debugger will also become accessible in the Python Editor extension available in the Elyra toolkit, a set of AI-centric JupyterLab extensions. Attendees are expected to have basic knowledge of JupyterLab and python.

JupyterLab Debugger Extension Github page: https://github.com/jupyterlab/debugger Elyra Project Github page: https://github.com/elyra-ai/elyra