-
Notifications
You must be signed in to change notification settings - Fork 50
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
Improve debug configuration providers #256
Conversation
createDebugConfiguration is silently failing returning an empty list of debug configurations.
We are incorrectly registering a single debug provider that provides `cppdbg` and `cppvsdbg` configurations using the `cppdbg` type. Split the cppdb and cppvsdbg debug providers into 2 different providers and register them based on the current operating system following the same approach as the `ms-vscode.cpptools` extension. Also simplify the debug providers into a single MesonDebugProvider class.
5184bc5
to
fb4d6a8
Compare
4e34352
to
fb4d6a8
Compare
I am not sure how to handle the case of a missing debugger extension:
|
What line does the undefined come from? |
Debuggers are registered by extensions like CodeLLDB here registering a new debugger with |
Does this mean that we should check for the existence of the debugger before registering the provider? |
This is what this PR does here: fb4d6a8 My doubt is whether to do that check when registering the provider or when listing configurations in |
Providing debug configurations if the debugger extension is not installed has 2 problems: * The debug configuration is listed in a menu item named "undefined" * The launch configuration will not work because the debugger does not exists
We shouldn't infer what debugger to use based on the compiler command. Instead we use the defaults based on the OS: https://code.visualstudio.com/docs/cpp/launch-json-reference#_mimode
641eaba
to
37278d5
Compare
I don't think we need to solve the corner case. I like what you have. Are you ready for me to merge it? |
It's ready to be merged :) Thanks for the review |
The following improves the debug configuration providers:
cppdbg
andcppvsdbg
cppdbg
andcppvsdbg
providers separetly