d8d6866
v0.191.x preview
Joseph T. Lyons created
d8d6866
v0.191.x preview
Joseph T. Lyons created
06f7d79
debugger: Fix a couple of issues with vitest (#32543)
- Pass the right test name filter - Limit the number of forks used by the testing pool in the spirit of #32473 Release Notes: - Debugger Beta: switched to running vitest tests serially when debugging.
Cole Miller created
2ecc24e
eval: Add jitter to retry attempts (#32542)
Adds some jitter to avoid the issue that all requests will retry at roughly the same time in eval where we have a lot of concurrent requests. Release Notes: - N/A
Ben Brandt created
6c4728f
debugger: Mark DebugAdapterBinary::program as optional (#32534)
This allows us to support debugging with a debug adapter not managed by Zed. Note that this is not a user facing change, as DebugAdapterBinary is used to determine how to spawn a debugger. Thus, this should not break any configs or anything like that. Closes #ISSUE Release Notes: - N/A
Piotr Osiewicz created
a3cc063
windows: Show error messages when zed failed to lanuch (#32537)
Now, if either `WindowsPlatform` or `BladeRenderer` fails to initialize, a window will pop up to notify the user.  Release Notes: - N/A
张小白 created
7d5a5d0
Make minimum width for line numbers in gutter configurable (#31959)
Closes #7334 # Changes This PR makes the minimum width allocated for line numbers in the side gutter configurable in units of character width via the `"line_number_base_width"` attribute in `gutter` settings. Set the previously hard coded value of `4` as default. Together with other settings (`"folds"`, `"breakpoints"`,...) this gives the user control over the gutter width. If the number of lines exceedes the base width, the number of digits in the largest line number is chosen instead. This is consistent with previous behaviour. Screenshot for reference: <img width="1104" alt="Screenshot 2025-06-03 at 12 15 29" src="https://github.com/user-attachments/assets/77c869ad-164b-4b74-8e39-8be43d740ad4" /> P.S.: This is my first time contributing to zed (yay!🎉). Let me know if i'm missing something. Release Notes: - Make minimum line number width in gutter configurable
Max Mynter created
4c3ada5
windows: Add back `hide_title_bar` checks (#32427)
These `if` condition checks were removed in #30828, and this PR adds them back. This is especially important in the handling of `WM_NCHITTEST`, where all the calculations are based on the assumption that `hide_title_bar = true`. Release Notes: - N/A
张小白 created
b3a8816
agent: Add completion cancellation when editing messages (#32533)
When editing a message, cancel any in-progress completion before starting a new request to prevent overlapping model responses. Release Notes: - agent: Fixed previous completion not cancelling when editing a previous message
Ben Brandt created
6d9bcdb
editor: Fix certain unwanted pre-emptive keys been shown in buffer (#32528)
Closes #32456 https://github.com/zed-industries/zed/pull/32007 added showing pre-emptive keys for multi-key bindings. But for certain keys like "control", "backspace", "escape", "shift", "f1", etc., shouldn't be shown as these keys would not end up in buffer after pending input delay. This PR changes it to use just `key_char`, as it represents actual text that will end up in buffer and is `None` for all mentioned keys. https://github.com/zed-industries/zed/blob/fad4c17c97927626792228bfbf92494b4cd35c40/crates/gpui/src/platform/keystroke.rs#L14-L21 cc @ConradIrwin Release Notes: - Fixed issue where triggering multi-key binding like "shift", "control", etc. would write them to the buffer for a short time.
Smit Barmase created
0852912
language_models: Add image support to OpenRouter models (#32012)
- [x] Manual Testing(Tested this with Qwen2.5 VL 32B Instruct (free) and Llama 4 Scout (free), Llama 4 Maverick (free). Llama models have some issues in write profile due to one of the in built tools schema, so I tested it with minimal profile. Closes #ISSUE Release Notes: - Add image support to OpenRouter models --------- Signed-off-by: Umesh Yadav <umesh4257@gmail.com> Co-authored-by: Ben Brandt <benjamin.j.brandt@gmail.com>
Umesh Yadav and Ben Brandt created
47ac018
ci: Fix cachix secrets (#32259)
Julia Ryan created
5b22994
Log error instead of panics in `InlineAssistant::scroll_to_assist` (#32519)
Leaving release notes blank as it's not very actionable to know that a rare crash might be fixed. Release Notes: - N/A
Michael Sloan created
6c0ea88
debugger: Make sure debuggees are killed when quitting Zed (#32186)
Closes #31373 We kill the DAP process in our `on_app_quit` handler, but the debuggee might not be killed. Try to make this more reliable by making the DAP process its own process group leader, and killing that entire process group when quitting Zed. I also considered going through the normal DAP shutdown sequence here, but that seems dicey in a quit handler. There's also the DAP `ProcessEvent` but it seems we can't rely on that as e.g. the JS DAP doesn't send it. Release Notes: - Debugger Beta: Fixed debuggee processes not getting cleaned up when quitting Zed.
Cole Miller created
fc4ca34
editor: Adjust scope for prefer label for snippet workaround (#32515)
Closes #32159 This PR refines the scope to match just the function name with **the type argument** instead of the whole call expression. Matching to whole call expression prevented methods from expanding inside the function argument. For example, `const foo = bar(someMethod(2)^);` instead of `const foo = bar(someMethod^)`; Follow-up for https://github.com/zed-industries/zed/pull/30312, https://github.com/zed-industries/zed/pull/30351. Mistakenly regressed since https://github.com/zed-industries/zed/pull/31872 when we stopped receiving `insert_range` for this particular case and fallback to `replace_range`. Release Notes: - Fixed issue where code completion in TypeScript function arguments sometimes omitted the dot separator, for example resulting in `NumberparseInt` instead of `Number.parseInt(string)`. --------- Co-authored-by: Michael Sloan <michael@zed.dev> Co-authored-by: Michael Sloan <mgsloan@gmail.com>
Smit Barmase , Michael Sloan , and Michael Sloan created
e9570ee
Fix go stop on panic (#32512)
Release Notes: - debugger: Fix stopping on a panic
Conrad Irwin created
72de314
Add a test demonstrating ERB language loading bug (#32278)
Fixes https://github.com/zed-industries/zed/issues/12174 Release Notes: - Fixed a bug where ERB files were not parsed correctly when the languages were initially loaded.
Max Brunsfeld created
ad206a6
Recenter current stack frame on click (#32508)
Release Notes: - debugger: Recenter current stack frame on click
Conrad Irwin created
1e1bc7c
Fix detach (#32506)
Release Notes: - debugger: Fix detach to not terminate debuggee (and only be available when detaching makes sense)
Conrad Irwin created
84eca53
Add ANSI C quoting to export env parsing (#32404)
Follow up to #31799 to support ansi-c quoting. This is used by nix/direnv Release Notes: - N/A
Stanislav Alekseev created
b4e558c
Add more keymaps from helix (#32453)
I added three additional keymaps to simulate helix behavior. Release Notes: - N/A
fantacell created
00a8101
Add a run menu (#32505)
As part of this I refactored the logic that enabled/disabled actions in the debugger to happen at action registration time instead of using command palette filters. This allows the menu to grey out actions correctly. Release Notes: - Add a "Run" menu to contain tasks and debugger
Conrad Irwin created
444f797
debugger beta: Improve resolve debug scenario error message (#32504)
When no locator or valid config is found we expose the invalid config error message to the user now. Closes #32067 Release Notes: - debugger beta: Improve error message when starting a debugger session with an invalid configuration
Anthony Eid created
7a14987
debugger beta: Fix inline value provider panic (#32502)
Closes #32143 Release Notes: - debugger beta: Fix panic that could occur when generating inline values
Anthony Eid created
5eb68f0
debugger: Fix panic when handling invalid `RunInTerminal` request (#32500)
The new dap-types version has a default to cwd for the RunInTerminalRequest Closes #31695 Release Notes: - debugger beta: Fix panic that occurred when a debug adapter sent an invalid `RunInTerminal` request
Anthony Eid created
9c51322
Add initial `package.json` scripts task autodetection (#32497)
Now, every JS/TS-related file will get their package.json script contents added as tasks: <img width="1020" alt="image" src="https://github.com/user-attachments/assets/5bf80f80-fd72-4ba8-8ccf-418872895a25" /> To achieve that, `fn associated_tasks` from the `ContextProvider` was made asynchronous and the related code adjusted. Release Notes: - Added initial `package.json` scripts task autodetection --------- Co-authored-by: Piotr Osiewicz <piotr@zed.dev>
Kirill Bulatov and Piotr Osiewicz created
0c0933d
debugger: Ungate locator for JS tasks (#32495)
Closes #ISSUE Release Notes: - N/A Co-authored-by: Anthony Eid <hello@anthonyeid.me>
Cole Miller and Anthony Eid created
a4c5a2d
debugger: Add 'open docs' button in the panel and mention onboarding in the docs (#32496)
Closes #ISSUE Release Notes: - N/A
Piotr Osiewicz created
311e136
debugger: Reuse parent's debug terminal for child sessions (#32493)
Closes #ISSUE Release Notes: - Debugger Beta: fixed an issue where the terminal pane of the debug panel would be empty when debugging JavaScript. Co-authored-by: Conrad Irwin <conrad.irwin@gmail.com> Co-authored-by: Anthony Eid <hello@anthonyeid.me>
Cole Miller , Conrad Irwin , and Anthony Eid created
4f5433a
Filter language server completions even when `is_incomplete: true` (#32491)
In #31872 I changed the behavior of completions to not filter instead of requerying completions when `is_incomplete: false`. Unfortunately this also stopped filtering completions when `is_incomplete: true` - we still want to filter the incomplete completions so that the menu updates quickly even when completions are slow. This does mean that the completions menu will display partial results, hopefully only briefly while waiting for fresh completions. Thanks to @mikayla-maki for noticing the regression. Thankfully just in time to fix it before this makes it into a stable release. Leaving off release notes since I will cherry-pick this to the current preview version, 190.x, and there probably won't be a preview release before the next stable. Release Notes: - N/A
Michael Sloan created
295db79
debugger: Fix phantom JavaScript frames (#32469)
JavaScript debugger is using a phantom stack frame to delineate await points; that frame reuses a frame ID of 0, which collides with other frames returned from that adapter. https://github.com/microsoft/vscode-js-debug/blob/934075df8c3c9726ead99aa8ee6815b36d835c34/src/adapter/stackTrace.ts#L287 The bug has since been fixed in https://github.com/microsoft/vscode-js-debug/issues/2234, but we'll need to wait for a new release of node debugger for that to make a difference. Until then.. Release Notes: - Fixed a bug with JavaScript debugging which led to stack trace list containing excessive amount of `await` entries. --------- Co-authored-by: Conrad Irwin <conrad@zed.dev> Co-authored-by: Conrad Irwin <conrad.irwin@gmail.com>
Piotr Osiewicz , Conrad Irwin , and Conrad Irwin created
71d5c57
debugger: Specify runtimeExecutable in output of node locator (#32464)
This appears to fix some cases where we fail to launch JS tests under the debugger. Release Notes: - N/A (node locator is still gated) --------- Co-authored-by: Anthony Eid <hello@anthonyeid.me> Co-authored-by: Conrad Irwin <conrad.irwin@gmail.com>
Cole Miller , Anthony Eid , and Conrad Irwin created
dd17fd3
debug: Launch custom commands from start modal (#32484)
Release Notes: - Add custom command launching from the `debug: start` modal --------- Co-authored-by: Anthony Eid <hello@anthonyeid.me>
Julia Ryan and Anthony Eid created
e4f8c4f
debugger: Don't spin forever when adapter disconnects unexpectedly (#32489)
Closes #ISSUE Release Notes: - Debugger Beta: made the debug panel UI more helpful when an invalid configuration is sent to the debug adapter. --------- Co-authored-by: Anthony Eid <hello@anthonyeid.me> Co-authored-by: Conrad Irwin <conrad.irwin@gmail.com>
Cole Miller , Anthony Eid , and Conrad Irwin created
e62e9fa
docs: Condense Ruby test framework docs (#32472)
Since `tldr` and `quickdraw` use the same kind of task syntax as RSpec, I don't think it's necessary to have separate examples. cc @joeldrapper @vitallium Release Notes: - N/A
Andy Waite created
3f419b3
docs: Update Ruby docs about `args` syntax in tasks (#32471)
Due to https://github.com/zed-industries/zed/pull/32345 cc @vitallium Release Notes: - N/A
Andy Waite created
5270844
Revert "Preserve selection direction when running `editor: open selections in multibuffer`" (#32483)
Reverts zed-industries/zed#31399 I found that in some cases, Zed will panic when using `editor: open selections in multibuffer` if the selection is reversed. It doesn't happen in most cases that I've tested, but in some strange edge cases (that I dont fully understand ATM), it does. I'm reverting for now, as the previous behavior is better than a panic, but will re-implement this fix to preserving selection directions in a new PR with comprehensive testing Release Notes: - N/A
Joseph T. Lyons created
f567bb5
gpui: Simplify uniform list API by removing entity param (#32480)
This PR also introduces `Context::processor`, a sibling of `Context::listener` that takes a strong pointer to entity and allows for a return result. Release Notes: - N/A Co-authored-by: Mikayla <mikayla@zed.dev>
Ben Kunkle and Mikayla created
c556308
debugger: Run jest tests serially (#32473)
Pass `--runInBand` to jest when debugging. This prevents jest from creating a bunch of child processes that clutter the session list. It might be a bit more natural to add this argument in the test templates themselves, but I don't think we want to give up parallelism when running via `task: spawn`. Release Notes: - N/A (JS locator is still gated)
Cole Miller created
e0ca427
debugger: Use JS adapter's suggested names for child sessions (#32474)
Also introduces an extension point for other adapters to do this if it turns out they also send this information. Release Notes: - N/A (JS locator is still gated)
Cole Miller created
02dfaf7
ci: Suppress evals on forks (#32479)
Be kind to those with Zed forks. Example [action run on fork](https://github.com/G36maid/freebsd-ports-zed/actions/runs/15525942275) where [this job](https://github.com/G36maid/freebsd-ports-zed/actions/runs/15549650437/job/43777665341) will wait forever. Sorry @G36maid Release Notes: - N/A
Peter Tripp created
c9972ca
docs: Consolidate and improve organization of Linux GPU issue documentation (#32468)
Closes #ISSUE Release Notes: - N/A *or* Added/Fixed/Improved ...
Ben Kunkle created
9334e15
Allow identifiers in TypeScript/JavaScript test names (#32467)
Current behavior (not detected as runnable): <img width="1105" alt="image" src="https://github.com/user-attachments/assets/7d3b7936-43d8-4645-bbbb-e81ed5f9b35a" /> New behavior: https://github.com/user-attachments/assets/524e2a56-cb30-4dc0-98ec-b34b510015e0 Release Notes: - Improved detection of runnable TypeScript/JavaScript test cases when they contain identifier
Alexander created
9c47c52
ci: Restore lychee link check. Only validate internal links (#32463)
Follow-up to: https://github.com/zed-industries/zed/pull/32460 Follow-up to: https://github.com/zed-industries/zed/pull/30844 Release Notes: - N/A
Peter Tripp created
286b97c
agent: Fix agent panel model selector layout pushing send button off screen (#32251)
| Before | After | |--------|-------| | <video src="https://github.com/user-attachments/assets/db4dcc91-9a32-4621-be78-87fe9d80b801" controls width="400"></video> | <video src="https://github.com/user-attachments/assets/8ee31d6d-5150-4239-a4af-eeca112d56d5" controls width="400"></video> | While working on something else I found this weird behaviour in message editor of agent panel. When model names are too long, the model selector would expand and push the send button outside the visible area. This change fixes the flex layout to ensure the send button always remains accessible while properly truncating long model names. Closes #ISSUE Release Notes: - Fix agent panel model selector layout pushing send button off screen --------- Co-authored-by: Danilo Leal <daniloleal09@gmail.com> Co-authored-by: Danilo Leal <67129314+danilo-leal@users.noreply.github.com>
Umesh Yadav , Danilo Leal , and Danilo Leal created
415d482
agent: Only show the MCP configuration modal in the active window (#32450)
We were previously displaying this modal in all open Zed windows if triggered. That was a bit annoying because I had to go to each window individually to close it, which meant doing it multiple times. 😅 Release Notes: - agent: Fixed the MCP configuration modal to show only in the active window.
Danilo Leal created
a9d0eee
docs: Add link to MCP extensions in the overview page (#32458)
Follow up to https://github.com/zed-industries/zed/pull/32422. Missed this one in this latest round of MCP-related docs changes. Release Notes: - N/A Co-authored-by: Peter Tripp <peter@zed.dev>
Danilo Leal and Peter Tripp created
e4e3409
extension_host: Fix SSH reconnect breaks language server (#32457)
Closes #29032 This PR fixes an issue where reconnecting to SSH Remote would result in a broken language server. This was caused by SSH clients not registering because the `ssh_clients` map would still contain an entry from a previously killed SSH server. For fix, now we also check if its value has been dropped. Release Notes: - Fixed issue where reconnecting to SSH Remote would result in broken code completions and diagnostics.
Smit Barmase created
46f98b6
ci: Move lychee link check to script/check-links (#32460)
Follow-up to: https://github.com/zed-industries/zed/pull/30844 Transient link failure was blocking PR tests passing. [Example run](https://github.com/zed-industries/zed/actions/runs/15560960788/job/43812878693?pr=32458). Release Notes: - N/A
Peter Tripp created
c1a4a24
Ensure pull diagnostics do not happen for non-full mode editors (#32449)
Follow-up of https://github.com/zed-industries/zed/pull/19230 Release Notes: - N/A
Kirill Bulatov created
eb5f595
editor: Dismiss drag selection when dropped outside editor (#32382)
This PR fixes two issues: 1. On macOS, using Alt to copy the selection instead of cutting it. 2. Dropping the drag selection outside the editor dismisses it. https://github.com/user-attachments/assets/341e21c3-3eca-4e58-9bcc-8ec1de18e999 Release Notes: - N/A --------- Co-authored-by: Smit Barmase <heysmitbarmase@gmail.com>
CharlesChen0823 and Smit Barmase created