-
Notifications
You must be signed in to change notification settings - Fork 27.8k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Investigate an extension contribution point for a notebook type debugger #132014
Comments
@roblourens you said
The "same as editors" part is not true. Here is why: Breakpoints are independent from debuggers and they are not "owned" by a specific debugger; breakpoints don't have a "type" that ties them to a debugger. Editors will have the breakpoint gutter enabled and allow adding breakpoints if there is a
The
The @isidorn is my explanation of the current implementation correct? Introducing a Another problem is the semantic of the extended "breakpoints": [
{
"language": "python",
"notebookType": true
}
], What does this mean? "breakpoints are enabled in python notebook cells" and in "python editors"? or just "breakpoints are enabled in python notebook cells"? This is complicated by the fact that "breakpoint" contributions for the same language can come from different extensions and they have to be merged with predictable semantics. A better approach would be something like this: "breakpoints": [
{
"language": "python",
"target": [ "editor", "notebook" ]
}
], with the additional rule: if |
@weinand your description of the implementation above is correct. We have a bit more use cases, best is to look for references of I like @weinand proposal from above with the |
Thanks @weinand for reminding me how this works. It turns out that for Jupyter at least, we require the Python extension to be installed to run cells, at least in some cases. It's not clear whether debugging will be supported without the Python extension installed. If it is required, then this isn't needed after all because the Python extension will provide the |
@roblourens does this mean that we do not have to introduce a "notebook debugger" contribution point (at least not in September)? |
Possibly - will do, if that's where we land |
For now we are assuming that the Python extension will be installed when debugging Python cells, so we don't need this for now. |
Breakpoints in notebook cells show up when there is a debugger registered for that language, same as editors. This isn't really right for notebooks where the Python DA doesn't work for Python cells, the Jupyter DA is separate. So we should consider a change to the package.json contribution. Have discussed this a little the past couple months but haven't done any work for it.
breakpoints
contribution point which is a list of{ language: string }
. That object could also includenotebookType
language
propertycc @weinand @isidorn does this sound ok?
Something that I don't remember is why the debug adapter has a "languages" property which isn't used for this, and the breakpoints config is separate from the debug adapter. Would there be debug adapters that don't support breakpoints?
The text was updated successfully, but these errors were encountered: