Skip to content

How notebook debug cell works

Rich Chiodo edited this page Jul 22, 2022 · 16 revisions

Notebook cell debugging is similar to how python debugging works. However it uses a DebugAdapter instead of just a DebugAdapterDescriptor.

There's a number of classes involved. This sequence diagram describes how they interact:

image

These different steps are described in detail below:

Debug cell clicked

Create of Debugger with an attach

Launch attach debug session

Creation of KernelDebugAdapter

Creation of DebugCellController

return DebugAdapter

handleMessage Initialize

Translate file paths

requestDebug - Initialize

onIOPubMessage - Initialize response

willSendEvent?

onDidSendMessage - Initialize response

Clone this wiki locally