-
Notifications
You must be signed in to change notification settings - Fork 28k
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
Breakpoints pane should update when debugger has switched #126608
Comments
In this video i start the JS Debugger with chrome running. I check for "Uncaught Breakpoints". i then start XDebug and the "breakpoints" pane changes (bottom left). However, switching back to Chrome doesn't bring it back, so I'm now stuck on this pane and unable to turn off "Uncaught Breakpoints". Even after turning off XDebug completely the "breakpoints" pane remains the same breakpoints_720.mov |
@jasonwilliams I acknowledge this issue. The fix would be that on focus change the exception breakpoints change. This should be fixed in vscode core thus unassigning @connor4312 |
Yes, exception configurations depend on active session and we need to reflect this in the UI. |
Probably related, but the topic isn't covered in the OP: #147096 If exceptions lived in DebugSession layer as above, that would likely fix my issue as well. |
I've attempted a fix in PR #158355. It does not completely move exception breakpoints to the DebugSession plane, but allows multiple debuggers with different exception breakpoints capabilities to co-exists by showing all exception breakpoints at once. As an added benefit, it also helps with workspaces where multiple debuggers are used frequently as it does not remove the exception breakpoints for other debuggers automatically and keeps the preferences intact. This does not fix the issue #147096, where we need different enablement for different sessions. |
Verification steps
|
@roblourens when I try to debug a python file, it doesn't stay in the view for long enough to actually focus the item debug.mov |
Sure- it ran and completed. You could try hitting a breakpoint 😄 |
I added a breakpoint but it didn't stop there |
Oh, I didn't notice that. I'm a little confused about what's wrong, it looks like it didn't actually start the program (by default I think that button should open a terminal) You could open an issue on vscode-python if you want, you might be able to get it to debug with a typical launch config, or you can leave it for someone else to verify. |
@meganrogge if you stop all of your other processes and run only that python script, does it hit the breakpoint? I notice in your screen capture it is set to debug, so theoretically it should. I noticed that on the live build (I haven't tested this prerelease), if I have another session running in JS or something, it displays an inactive breakpoint for the python script -- but it still hits the breakpoint when I debug using Python 3.11.0. Therefore it's impossible to tell from the screenshot whether the breakpoint is considered mapped to begin with.
|
The python script doesn't hit the breakpoint when all other processes are stopped for me - the output is:
Other note - I've seen it work successfully before, so this not working is new for me Also, the python terminal doesn't get created for me - which is very odd. |
Unfortunately, I'm not really a python dev so I can't provide any useful help here for this PR. For my next steps, I would confirm breakpoints are working using the same python env (2.7.18) in the latest production release of VS code, and that the commands run match what was posted above (except with different paths). I would start with the real production install of VS code, making sure the issue doesn't exist there. (I can set breakpoints in python using Windows, the latest VS Code version and vscode-python extension). If the problem exists there, it's definitely not related to this PR and may be a modified or out of date extension, configuration issue, etc. If it doesn't exist there, I would manually roll back the development vscode build to the latest production release (v1.73.1) and confirm the issue doesn't exist there. Importantly, I'd make sure any extensions that may be installed in the development build are using the production version and not custom or modified versions. If the issue exists after rolling back, the issue could be with the development build configuration and not necessarily the PR. Checking vscode-python for any documentation / open issues re: breakpoints and development builds would also be helpful. If the issue doesn't exist when rolling back, this could indicate a regression on the main branch (or this PR, if this is the commit you have checked out). |
Python 2.7 may not be supported for debugging @meganrogge, in any case, I recommend moving to the latest 3.x @johnrom you seem to think you're commenting on a PR, but this is not a PR |
@roblourens the PR tracked by this issue is #158355 and is what I am referring to by "the PR" and/or mistakenly "this PR" |
It seems like you're trying to be helpful, so thank you, but all this stuff you're saying doesn't really seem relevant to the problem at hand. |
I was under the impression that someone was trying to verify an issue that I'm following, and that individual was not able to because of a likely misconfiguration either in vscode or python itself. I gave steps for ruling out vscode (or at worst, identifying a regression). I'm not sure what is off topic about that, but either way it looks like the situation has resolved itself. I'll avoid commenting on issues that you manage in the future unless I am directly participating in them. |
When using both the JS Debugger and XDebug at the same time I lose control of the JS Debugger (even after switching back) in the breakpoints pane (on the left hand side).
All other panes update: "variables", "watch", "call stack", "loaded scripts" but "breakpoints" remains on the Xdebug options when switching back to the JS Debugger. This means its impossible for me to switch off the "Caught Errors" breakpoint without switching off the JS Debugger altogether.
The text was updated successfully, but these errors were encountered: