-
Notifications
You must be signed in to change notification settings - Fork 3.5k
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
Debugger implementation #13433
base: main
Are you sure you want to change the base?
Debugger implementation #13433
Conversation
Add documententation and/or an example on how to configure and/enable this for a specific debugger... if not as part of this PR then to the todo list ? |
What if you have e.g. a monorepo with multiple services written in the same language? |
Uhm, I think most of the debug adapters support multiple threads, but need to look more in to that. Not sure how VS Code handles this, if they allow you to run the same debugger adapter twice or more. |
c71eb06
to
47a5f0c
Compare
I'd love to see another more up-to-date video of the current status of this, if u can find time. :-) |
ac95fbd
to
515122c
Compare
HI, I have started a dlv(go dap server) to debug go program, but i need bring env to the dlv commend. I read the code |
Hey, I think most debug adapters support this already by passing in an |
Ok, understand.... I will test it on js debugger and go delve and study your code. |
7eacd30
to
3f8581a
Compare
8adc489
to
8d99f9b
Compare
for those of us trying to follow-along at home on this PR, it would be helpful of there was a sample tasks.json ( or wherever the debug settings are being stored if not there ) and any relevent settings.json we need enable, as I compiled and ran this PR, but was unable to get the same behaviour as either of the screen recordings. |
Hey @davidbuzz, sorry for not posting any examples of starting a debug adapter. I did this for a reason, because I'm not happy yet with the naming of the fields & structure of the task. But here is an example task to start a debug adapter: If you want to follow a bit more about what we are working on, you can join the following channel: https://zed.dev/channel/zed-debugger-11370. {
"label": "Xdebug debug adapter",
"command": "bun",
"args": [
"/Users/remcosmits/Documents/code/vscode-php-debug/out/phpDebug.js",
"--server=8132"
],
"task_type": "debug",
"cwd": "/Users/remcosmits/Documents/code/symfony_demo",
"debug_adapter": {
"id": "xdebug",
"port": 8132,
"request_args": {
"skipFiles": ["**/vendor/**"],
"pathMappings": {
"/Users/remcosmits/Documents/code/symfony_demo/public": "/Users/remcosmits/Documents/code/symfony_demo/public"
},
"localSourceRoot": "/Users/remcosmits/Documents/code/symfony_demo",
"serverSourceRoot": "/Users/remcosmits/Documents/code/symfony_demo",
"xdebugSettings": {
"show_hidden": 1
}
}
}
} |
d9461c3
to
b6e677e
Compare
i think u mean this discord channel, but u were close.. https://discord.com/channels/869392257814519848/1255246362220691456 ... i pop in to the Zed discord occassionally. :-) |
No, that's not what I mean. What do you mean by I'm close? It sounds a bit disparaging... |
I was just trying to say that the link u gave starting with https://zed.dev doesn't work for me. |
Ahh oké. it seems to work for other people. Also it's the same as the one that i posted in the discord channel. Does it still not work for you? |
... im on linux. :-) |
This comment was marked as duplicate.
This comment was marked as duplicate.
@cla-bot check |
The cla-bot has been summoned, and re-checked this pull request! |
I'm reverting this because it introduced a regression with collab's test variable list & didn't supoort fetching stack frames initiated by a remote user. This reverts commit 945e322.
Futures are once again needed by variable list dued to the lazy stack frame fetching PR revert This reverts commit 26f14fd.
* Reapply "Lazy load stack frame information (scopes & variables) (#106)" This reverts commit 27b6043. * Reapply "Remove futures from debugger ui crate" This reverts commit 3cf9658. * Don't fetch initial variables twice This was introduced by my original PR, because I added the fetch on stack frame select but when the stack frames where updated we would already fetch the initial variables. And when the selectedStackFrameUpdated event was received we would refetch it because it was not done yet. * Remove duplicated method just for testing * Make keep open entries work again The issue was the we used the scope_id, which changes after each debug step. So using the name of the scope instead should be more reliable. * Correctly invalidate variable list information * Comment out collab variable list for now Also commenting out an event that triggers the infinite loop. We want to revisited the collab stuff anyway so we decided to do it this way.
* Move common session fields to struct * Use session entity instead of session id inside UI This is to prepare to move the state to the
…zed-industries#24246) Fixes zed-industries#24184 Release Notes: - Fixed renaming not working with some language servers (e.g. hls)
…pen (zed-industries#24265) This was an leftover from when we were persisting a per-project setting. Release Notes: - N/A
…stries#24272) When you have an edit prediction available, you can now also accept it with `alt-tab` (or `alt-enter` on Linux) even if you don't have an LSP completions menu open. This is meant to lower the mental load when going from one mode to another. Release Notes: - N/A
Release Notes: - N/A --------- Co-authored-by: Mikayla <[email protected]>
Reverts zed-industries#24152 See comment: zed-industries#24152 (comment) Manually confirmed >20k generates error.
This PR sorts the dependency lists in the `Cargo.toml` for the `languages` crate. Release Notes: - N/A
Release Notes: - N/A
…industries#24278) Logging an error in this case isn't super necessary. Release Notes: - N/A Co-authored-by: Bennet Bo Fenner <[email protected]>
Rework of zed-industries#24130 Uses https://github.com/d1y/git_firefly/tree/1033c0b57ec88a002cb68efc64c8d9bf5c212e30 `COMMIT_EDITMSG` language-related definitions (thanks @d1y ) Instead of using real `.git/COMMIT_EDITMSG` file, create a buffer without FS representation, stored in the `Repository` and shared the regular way via the `BufferStore`. Adds a knowledge of what `Git Commit` language is, and uses it in the buffers which are rendered in the git panel. Release Notes: - N/A --------- Co-authored-by: Conrad Irwin <[email protected]> Co-authored-by: d1y <[email protected]> Co-authored-by: Smit <[email protected]>
Go back to a less optimized implementation for now since the custom cursor target seems to have some bugs. Release Notes: - Fixed missing git blame and status output in some projects with multiple git repositories
…erent spellings (zed-industries#24281) Follow-up to zed-industries#24278 This PR ensures we're checking if there's a license-type file in both US & UK English spelling, and fixes the error logging again, treating for when the worktree contains just a single file or multiple. Release Notes: - N/A Co-authored-by: Bennet Bo Fenner <[email protected]>
This PR makes adding icons to the primary and secondary actions, in the `MessageNotification` component, optional. Also took the opportunity to remove a probably unnecessary "third action" from it; streamlining the component API (we had added that for a design that we're not using anymore). I did keep the "more info" possibility, which may be useful in the future, though. Release Notes: - N/A
…completions` (zed-industries#24207) Release Notes: - N/A --------- Co-authored-by: Danilo <[email protected]> Co-authored-by: Danilo Leal <[email protected]>
This reverts commit 31fa414. This reverts commit b9e0aae. `lyon` commit revert: ![image](https://github.com/user-attachments/assets/0243f61c-0713-416d-b8db-47372e04abaa) `MSAA` commit revert: ![image](https://github.com/user-attachments/assets/b1a4a9fe-0192-47ef-be6f-52e03c025724) cc @huacnlee , @\as-cii had decided to revert this PR due to a selection right corner rendering bug. Not sure what to propose for a fix from my side Release Notes: - N/A
Closes #5307
Closes #5065
The current state of the debugger implementation:
Screen.Recording.2024-10-16.at.15.02.20.mov
Screen.Recording.2025-01-19.at.17.45.06.mov
All the todo's are in the following channel, so it's easier to work on this together:
https://zed.dev/channel/zed-debugger-11370
If you are on Linux, you can use the following command to join the channel:
Current Features
Release Notes: