02c8322
zed 0.191.4
Joseph T. Lyons created
02c8322
zed 0.191.4
Joseph T. Lyons created
0853c37
Revert "debugger: Remove feature flag"
This reverts commit 82dfa82ba7c9866153bcd739ee680e6adf4f955f.
Conrad Irwin created
633992f
debugger: Remove feature flag
Conrad Irwin created
b2a1c02
docs: Fix typo in debugger.md (#32867)
A small silly typo :)
Gilles De Mey created
c00bd41
docs: Fix headings in debugger docs (#32641)
Reported by calebmeyer on Discord. Closes #ISSUE Release Notes: - N/A
Piotr Osiewicz created
ec49967
Revert "Bail and signal error when the cwd of a resolved task doesn't exist" (#32866)
Reverts zed-industries/zed#32777
Cole Miller created
7dca400
debugger: Fix connections over SSH (#32834)
Before this change, we would see "connection reset" when sending the initialize request over SSH in the case that the debug adapter was slow to boot. (Although we'd have successfully created a connection to the local SSH port, trying to read/write from it would not work until the remote end of the connection had been established) Fixes #32575 Release Notes: - debugger: Fix connecting to a Python debugger over SSH
Conrad Irwin created
8ded7e5
debugger: Don't spawn unnecessary process (#32827)
Before this change, when spawning a child session we'd launch an extra node process that would immediately die because it couldn't listen on the debugger port Release Notes: - N/A
Conrad Irwin created
11ce128
debugger: Prevent port collision when attaching to existing node debugger (#32862)
We were translating port configuration incorrectly, using it for both attach target and debugger port. This however meant that we were spawning a 2nd process that'd listen on the same port as the existing debugger. Closes #32836 Release Notes: - debugger: Fixed issues with auto-translated Visual Studio Code debug configs for attaching to existing node debugger instances.
Piotr Osiewicz created
d33470b
debuggers: Mark processId as optional field in Delve Attach configurations (#32856)
Closes #32849 Release Notes: - Fixed overly strict validation of Go debugging configurations.
Piotr Osiewicz created
c92acca
debugger: Do not query threads when session is still building (#32852)
This should silence a noisy log we see whenever a debug session is started: `2025-06-17T12:06:12+02:00 ERROR [project] no adapter running to send request: ThreadsCommand` Closes #ISSUE Release Notes: - Fixed debugger logs getting clobbered with internal logs about Threads Command whenever a new debug session is created.
Piotr Osiewicz created
da6f403
extensions: Add "Debug Adapters" category to the extension store (#32845)
Closes #ISSUE Release Notes: - N/A
Piotr Osiewicz created
e485f8a
extensions: Yet another PR for debugger touchups (#32822)
We'll now clean up DAP locators for unloaded extensions and load schemas proper I can now load a custom Ruby extensions with all bells and whistles and use it as my debugger. Release Notes: - N/A
Piotr Osiewicz created
26fe8ba
debugger: Process ANSI color escape codes in console (#32817)
- [x] foreground highlights - [x] background highlights - [x] advertise support in DAP capabilities Closes #31372 Release Notes: - Debugger Beta: added basic support for highlighting in the console based on ANSI escape codes.
Cole Miller created
201c2b5
debugger: Make the remove button easier to click for breakpoint list entries (#32772)
Closes #31574 Move this button a bit to the left so it doesn't get blocked by the hitbox of the scrollbar. Also makes the list entries a bit thicker vertically so that the button can be `XSmall` instead of `Indicator`-sized again. Release Notes: - Debugger Beta: fixed a layout issue that made it hard to click the remove (`X`) button for entries in the breakpoint list.
Cole Miller created
3f28664
Bail and signal error when the cwd of a resolved task doesn't exist (#32777)
Closes #32688 Release Notes: - Fixed tasks (including build tasks for debug configurations) silently using `/` as a working directory when the specified `cwd` didn't exist.
Cole Miller created
4d478fb
extension: Another batch of updates for DAP extension API (#32809)
Closes #ISSUE Release Notes: - N/A
Piotr Osiewicz created
fc26946
extension: Update DAP extension API (#32448)
- DAP schemas will be stored in `debug_adapters_schemas` subdirectory in extension work dir. - Added Debug Config integration and such. Release Notes: - N/A
Piotr Osiewicz created
85dd7d0
Pass project environment to runInTerminal requests (#32720)
Closes #ISSUE Release Notes: - debugger: Pass environment to run in terminal requests
Conrad Irwin created
628873c
Attempt to log error instead of crash in bracket highlighting (cherry-pick #32837) (#32841)
Cherry-picked Attempt to log error instead of crash in bracket
highlighting (#32837)
Crashes look like:
```
Panic `offset 632 is greater than the snapshot.len() 631` on thread 0 (com.apple.main-thread)
<multi_buffer::MultiBufferSnapshot>::innermost_enclosing_bracket_ranges::<usize>
editor::highlight_matching_bracket::refresh_matching_bracket_highlights
<gpui::app::App>::update_window_id::<bool, <gpui::app::context::Context<editor::Editor>>::subscribe_in<multi_buffer::MultiBuffer, multi_buffer::Event, <editor::Editor>::on_buffer_event>::{closure#0}::{closure#0}>::{closure#0}
<gpui::app::context::Context<editor::Editor>>::subscribe_in::<multi_buffer::MultiBuffer, multi_buffer::Event, <editor::Editor>::on_buffer_event>::{closure#0}
<gpui::app::App>::flush_effects
<project::lsp_store::LocalLspStore>::format_buffer_locally::{closure#0}
<project::lsp_store::LspStore>::format::{closure#1}::{closure#0}::<i32>
```
Though `format_buffer_locally` is not always present. Both issue reports
mention usage of the agent. I suspect this is somehow a result of agent
format-on-save combined with the user's cursor being at the end of the
buffer as it's getting edited by the agent.
The offsets are always off-by-one in the error, so at first I thought
the issue was the condition `head < snapshot.buffer_snapshot.len()`
before setting `tail` to be `head + 1`, but an offset equal to len is
valid. Seems like to get a `to_offset` crash, `head` must be greater
than `len`. Which is quite weird, a selection's offset should never be
out of bounds.
Since this code is just about highlighting brackets, this PR logs an
error instead of crashing in the `head > len` case.
Closes #32732, #32171
Release Notes:
- N/A
Co-authored-by: Michael Sloan <michael@zed.dev>
gcp-cherry-pick-bot[bot] and Michael Sloan created
f1ddd33
Cherry-pick "linux: Add mouse cursor icon name synonyms #32820" (#32833)
Most of the default icon sets on Ubuntu do not use the names that were there. To fix, using the icon synonyms from the chromium source. This will probably fix some of the linux mouse cursor issues tracked in https://github.com/zed-industries/zed/issues/26141 Also adds a note in the load failure logs mentioning that misconfigured XCURSOR_PATH may be the issue. I ran into this because https://github.com/snapcrafters/alacritty/issues/21. On X11 also adds: Caching of load errors to log once for missing cursor icons. Fallback on default cursor icon. This way if there was a transition from a non-default icon to a missing icon it doesn't get stuck showing the non-default icon. Leaving release notes blank as I have other mouse cursor fixes and would prefer to just have one entry in the release notes. Release Notes: Linux: Fixed a couple bugs that can cause the mouse cursor to not appear or only appear as an arrow
Michael Sloan created
44a31e2
Use a proper snapshot version when resolving for utf16 points (cherry-pick #32815) (#32826)
Cherry-picked Use a proper snapshot version when resolving for utf16 points (#32815) Release Notes: - Fixed a panic when merging pull and (newer) push diagnostics Co-authored-by: Conrad Irwin <conrad@zed.dev> Co-authored-by: Kirill Bulatov <kirill@zed.dev> Co-authored-by: Conrad Irwin <conrad@zed.dev>
gcp-cherry-pick-bot[bot] , Kirill Bulatov , and Conrad Irwin created
587da10
Deploy code runner menu from correct display row (cherry-pick #32594) (#32825)
Cherry-picked Deploy code runner menu from correct display row (#32594) This fixes a bug introduced in #32579 where the code runner menu would be deployed from the most recent cursor position instead of the row that the runner icon was rendered on. Release Notes: - N/A Co-authored-by: Anthony Eid <56899983+Anthony-Eid@users.noreply.github.com>
gcp-cherry-pick-bot[bot] and Anthony Eid created
71e0df8
inline assistant: Do not dismiss while generating when hitting enter (#32810)
Closes #32798 Release Notes: - Fixed an issue where the inline assistant would be dismissed when hitting enter while generating code
Bennet Bo Fenner created
80d56e2
zed 0.191.3
Joseph T. Lyons created
657247e
debugger: Fix module list getting queried when not shown (#32761)
Closes #ISSUE Release Notes: - N/A
Piotr Osiewicz created
82c1ae5
debugger: Select first stack frame with valid path (#32724)
This PR addresses an issue where we could get a stack frame list and automatically select a stack frame that didn't have a valid path. Causing a failure on Zed's end to select/update the active debug line. The fix for this is selecting the first non-subtle stack frame that has the optional path parameter. We also made subtle stack frames move into their own collapsable list as well. Release Notes: - debugger: Fix edge case where hitting a breakpoint wouldn't take you to the active debug line Co-authored-by: Remco Smits <djsmits12@gmail.com>
Anthony Eid and Remco Smits created
d5fe212
debugger: Use the right adapter for `type: node-terminal` (#32723)
Closes #32690 Release Notes: - Debugger Beta: fixed `node-terminal` JavaScript configurations from launch.json not working.
Cole Miller created
b1b247d
debugger: Add support for label presentation hints for stack frames (#32719)
Release Notes: - debugger: Add support for `Label` stack frame kinds Co-authored-by: Remco Smits <djsmits12@gmail.com>
Anthony Eid and Remco Smits created
484cc91
debugger: Improve logging of debug sessions (#32718)
This PR fixes a common issue where a debug session won't start up and user's weren't able to get any logs from the debug session. We now do these three things 1. We know store a history of debug sessions 2. We added a new option to only look at the initialization sequence 3. We default to selecting a session in dap log view in stead of none Release Notes: - debugger: Add history to debug session logging --------- Co-authored-by: Cole Miller <cole@zed.dev> Co-authored-by: Remco Smits <djsmits12@gmail.com>
Anthony Eid , Cole Miller , and Remco Smits created
bb0c932
debugger: Focus child sessions if parent has never stopped (#32693)
Closes #ISSUE Release Notes: - When debugging JavaScript, Zed will now preselect child sessions by default.
Piotr Osiewicz created
42608ef
zed 0.191.2
Joseph T. Lyons created
b217dae
debugger: Mark DapLocator::create_scenario as an async function (#32680)
Paves way for locators in extensions. Release Notes: - N/A
Piotr Osiewicz created
8d40bc6
Fix code actions run confusion (#32579)
Now if you click the triangle you get runnables, if you click the lightning bolt you get code actions, if you trigger the code actions menu with the mouse/keyboard you still get both. Release Notes: - Fixed the run/code actions menu to not duplicate content when opened from the respective icons. --------- Co-authored-by: Anthony Eid <hello@anthonyeid.me>
Conrad Irwin and Anthony Eid created
5170bc3
debugger: Fix regression in rendering of stack frame list (#32682)
Closes #ISSUE Release Notes: - N/A
Piotr Osiewicz created
1b3a5d9
debugger: Show errors loading stack (#32658)
- **TEMP** - **Show errors loading stack frames** - **Stop cloning every DAP response unnecessarily** Closes #ISSUE Release Notes: - debugger: Show errors loading stack frames. <img width="1840" alt="Screenshot 2025-06-12 at 23 53 42" src="https://github.com/user-attachments/assets/310d3046-f34c-4964-acef-f9742441c9db" />
Conrad Irwin created
a5113d8
debugger: Fix running JS tests when worktree root and package root do not coincide (#32644)
- construct the correct path to the test library based on the location of package.json - run scripts from the package root where they were defined - run tests in the directory of the defining file Release Notes: - Debugger Beta: fixed running JS tests when the worktree root is above the location of package.json. --------- Co-authored-by: Anthony <anthony@zed.dev> Co-authored-by: Conrad Irwin <conrad.irwin@gmail.com>
Cole Miller , Anthony , and Conrad Irwin created
66427e5
debugger: Add an action to copy debuggee info and initialization args (#32647)
Release Notes: - Debugger Beta: added the `dev: copy debug adapter arguments` action to help troubleshoot debug configurations.
Cole Miller created
112a11d
debugger: Pass --nocapture to cargo tests when building debug tasks with locator (#32633)
Release Notes: - Add --nocapture as a default argument when debugging rust tests Co-authored-by: Cole Miller <m@cole-miller.net>
Anthony Eid and Cole Miller created
631b643
debugger: Do not swallow `port` property when converting launch.json (#32621)
with JavaScript scenarios. Closes #32187 Release Notes: - Fixed `port` property not being respected in debug scenarios converted from VSC's launch.json Co-authored-by: Ben Kunkle <ben.kunkle@gmail.com>
Piotr Osiewicz and Ben Kunkle created
89f0c72
client: Fix an issue where non-IP proxy URLs didn’t resolve correctly (cherry-pick #32664) (#32679)
Cherry-picked client: Fix an issue where non-IP proxy URLs didn’t resolve correctly (#32664) If the proxy URL is in the form of `example.com` instead of a raw IP address, and `example.com` isn't a well-known domain, then the default URL resolution can fail. The test setup: A Linux machine runs a CoreDNS server with a custom entry: `10.254.7.38 example.com`. On a Windows machine, if the proxy URL is set to `example.com`, the resolved address does **not** end up being `10.254.7.38`. Using `hickory_resolver` for more advanced DNS resolution fixes this issue. Release Notes: - Fixed proxy URL resolution when using custom DNS entries. Co-authored-by: 张小白 <364772080@qq.com>
gcp-cherry-pick-bot[bot] and 张小白 created
85b6ca1
Use `git config --global user.email` for email address in automatic `Co-authored-by` (cherry-pick #32624) (#32639)
Release Notes: - Automatic population of `Co-authored-by` now uses `git config --global user.email` Co-authored-by: Conrad <conrad@zed.dev>
Michael Sloan and Conrad created
2f19e42
zed 0.191.1
Joseph T. Lyons created
8124758
debugger: Allow use of externally-managed Delve for Go debugging (#32613)
Closes #ISSUE Release Notes: - Go debug scenarios can now use an externally-managed Delve instance. Use `tcp_connection` in your debug scenario definition to provide adapter's address.
Piotr Osiewicz created
441d738
debugger: Handle session restart failures instead of hanging (#32595)
I also enabled the `Restart` action even for sessions that don't support restarting because we have a restart fallback now. Closes #31408 Release Notes: - Fix bug where a debugger session would never be shutdown on a failed restart attempt
Anthony Eid created
fa00379
debugger: Don't show VSCode worktree tasks when Zed ones exist (#32589)
Fixes #31699 Eventually we might want to merge the lists and deduplicate based on the command and args that it's running. For now we'll just use the presence of _any_ worktree local zed debug tasks to disable all VSCode ones. Release Notes: - N/A
Julia Ryan created
38e00a7
debugger: Fix DebugAdapterDelegate::worktree_root always using the first visible worktree (#32585)
Closes #32577 Release Notes: - Fixed debugger malfunctioning when using ZED_WORKTREE_ROOT env variable in multi-worktree workspaces.
Piotr Osiewicz created
c14c370
debugger: Special-case `npm` et al. as `program` field for JS debug definitions (#32549)
Send `runtimeExecutable` and `runtimeArgs` instead of `program` and
`args` to avoid the DAP implicitly wrapping the command in `node`.
This means that putting `pnpm vitest <file>` as the command in the
launch modal will work, as will this in debug.json:
```
[
{
"adapter": "JavaScript",
"type": "pwa-node",
"label": "Label",
"request": "launch",
"program": "pnpm",
"args": ["vitest", "<file>"],
"cwd": "/Users/name/project"
}
]
```
Release Notes:
- Debugger Beta: made it possible to use commands like `pnpm
<subcommand> <args>` in the launch modal and debug.json
Cole Miller created
bc6d75b
debugger: Fix issues with launch.json handling (#32563)
After this PR we can run all the in-tree launch.json examples from [this repo](https://github.com/microsoft/vscode-recipes). Things done: - Fill in default cwd at a lower level for all adapters - Update launch.json parsing for DebugScenario changes - Imitate how VS Code normalizes the `type` field for JS debug tasks - Make version field optional - Extend the variable replacer a bit Release Notes: - Debugger Beta: fixed issues preventing loading and running of debug tasks from VS Code's launch.json. --------- Co-authored-by: Anthony Eid <hello@anthonyeid.me> Co-authored-by: Anthony <anthony@zed.dev> Co-authored-by: Conrad Irwin <conrad.irwin@gmail.com>
Cole Miller , Anthony Eid , Anthony , and Conrad Irwin created
55d751a
Hush breakpoint deserialization logs (#32430)
Release Notes: - debugger: Remove "Deserializing N breakpoints" from the Zed log
Conrad Irwin created