Commit graph

37427 commits

Author SHA1 Message Date
zed-zippy[bot]
ae752c4aaa
Bump to 1.1.4 for @maxbrunsfeld 2026-05-04 18:38:31 +00:00
zed-zippy[bot]
9d363a8296
Fix handling of git repositories with an external git directory (#55402) (cherry-pick to preview) (#55686)
Cherry-pick of #55402 to preview

----
Closes https://github.com/zed-industries/zed/issues/54824

Previously, we always assumed that `gitdir` was an absolute path. Also,
we did not correctly handle custom gitignore files that were configured
via separate git directories.

Release Notes:

- Fixed failure to recognize git repositories where `gitdir` was
expressed as a relative path.
- Fixed handling of gitignores in git repositories that use a separate
git dir.

Co-authored-by: Max Brunsfeld <maxbrunsfeld@gmail.com>
2026-05-04 18:18:34 +00:00
zed-zippy[bot]
3653b995b0
Respect .git/info/exclude in secondary worktrees (#51536) (cherry-pick to preview) (#55685)
Cherry-pick of #51536 to preview

----
Closes #50880 

When a git worktree linked via a `.git` file (e.g. `gitdir:
/repo/.git/worktrees/my-worktree`) was opened in Zed, entries in
`.git/info/exclude` were not respected. This is now fixed.

Before you mark this PR as ready for review, make sure that you have:
- [x] Added a solid test coverage and/or screenshots from doing manual
testing
- [x] Done a self-review taking into account security and performance
aspects
- [x] Aligned any UI changes with the [UI

checklist](https://github.com/zed-industries/zed/blob/main/CONTRIBUTING.md#uiux-checklist)

Release Notes:

- Fixed `.git/info/exclude` not being respected when opening a secondary
git worktree



https://github.com/user-attachments/assets/f38df5dc-96eb-40a8-a77c-0932a2c8575b

---------

Co-authored-by: Lukas Wirth <lukas@zed.dev>
Co-authored-by: Lukas Wirth <me@lukaswirth.dev>

Co-authored-by: Fanteria <jiri.alexandrovic@gmail.com>
Co-authored-by: Lukas Wirth <lukas@zed.dev>
Co-authored-by: Lukas Wirth <me@lukaswirth.dev>
2026-05-04 17:33:41 +00:00
zed-zippy[bot]
8af115d0aa
Improve bare repo support (#55153) (cherry-pick to preview) (#55680)
Cherry-pick of #55153 to preview

----
Fixes https://github.com/zed-industries/zed/issues/54830

This fixes a bugs where
* when there's no main worktree, we treated the first linked worktree as
main
* the titlebar and sidebar showed two different things when opening a
linked wortree directly

When there's no main worktree, our "project group key" will be the bare
repo path. For displaying this to the user, we try to present something
meaningful:
* If the bare repo is `foo.git`, we'll say "foo"
* If the bare repo is "bar/.bare", we'll "bar"

Release Notes:

- Fixed bugs in Zed's sidebar and titlebar when editing in git worktrees
created from bare repositories.

Co-authored-by: Max Brunsfeld <maxbrunsfeld@gmail.com>
2026-05-04 16:57:48 +00:00
zed-zippy[bot]
fb2df9f123
debugger_ui: Fix debugger tab drop crash (#55667) (cherry-pick to preview) (#55679)
Cherry-pick of #55667 to preview

----
Avoid reading the source debugger pane during SubView drop handling
because it may be the Pane currently being updated. Use the DraggedTab
item handle to validate the drop and capture the item id, leaving
source-pane reads to the deferred move. Add a regression test for a
stale SubView host pane during tab drop.

Fixes ZED-74F

Release Notes:

- N/A or Added/Fixed/Improved ...

Co-authored-by: Lukas Wirth <lukas@zed.dev>
2026-05-04 16:47:01 +00:00
zed-zippy[bot]
29bcbae790
Fix panic in multi_buffer::Anchor::is_valid (#55644) (cherry-pick to preview) (#55647)
Cherry-pick of #55644 to preview

----
We check `is_valid` by seeking to the first excerpt that is `>=` the
anchor, and comparing the anchor to the excerpt's start and end. But we
were missing a check for the case where seeking puts us on an excerpt
for a different buffer, for example when the anchor to be checked is
past the end of the context range for its buffer's last excerpt.

Self-Review Checklist:

- [x] I've reviewed my own diff for quality, security, and reliability
- [x] Unsafe blocks (if any) have justifying comments
- [x] The content is consistent with the [UI/UX

checklist](https://github.com/zed-industries/zed/blob/main/CONTRIBUTING.md#uiux-checklist)
- [x] Tests cover the new/changed behavior
- [x] Performance impact has been considered and is acceptable

Release Notes:

- Fixed a panic in multibuffers.

Co-authored-by: Cole Miller <cole@zed.dev>
2026-05-04 13:00:05 +00:00
zed-zippy[bot]
499a6210d2
Fix mismatched excerpts in split agent diff (#55629) (cherry-pick to preview) (#55638)
Cherry-pick of #55629 to preview

----
Self-Review Checklist:

- [x] I've reviewed my own diff for quality, security, and reliability
- [x] Unsafe blocks (if any) have justifying comments
- [x] The content is consistent with the [UI/UX

checklist](https://github.com/zed-industries/zed/blob/main/CONTRIBUTING.md#uiux-checklist)
- [ ] Tests cover the new/changed behavior
- [x] Performance impact has been considered and is acceptable

Release Notes:

- Fixed excerpts not matching in the agent diff when in the split view.

Co-authored-by: Cole Miller <cole@zed.dev>
2026-05-04 12:15:48 +00:00
zed-zippy[bot]
c6aa035b43
Revert "Enable Vim/Helix keybindings when the base keymap is set to None" (#55144) (cherry-pick to preview) (#55633)
Cherry-pick of #55144 to preview

----
Reverts zed-industries/zed#54899

Release notes:

- Reverted the "none" keymap to be literally nothing

Co-authored-by: Conrad Irwin <conrad.irwin@gmail.com>
2026-05-04 11:58:37 +00:00
zed-zippy[bot]
ad3113b8ff
editor: Fix stale breakpoints when re-opening buffers for a saved file (#55610) (cherry-pick to preview) (#55626)
Cherry-pick of #55610 to preview

----
Fixes ZED-73M

Release Notes:

- N/A or Added/Fixed/Improved ...

Co-authored-by: Lukas Wirth <lukas@zed.dev>
2026-05-04 11:28:34 +00:00
zed-zippy[bot]
4c974545eb
editor: Fix panic in render_edit_prediction_cursor_popover (#55604) (cherry-pick to preview) (#55628)
Cherry-pick of #55604 to preview

----
Fixes ZED-72Z

Release Notes:

- Fixed a panic in edit predictions

Co-authored-by: Lukas Wirth <lukas@zed.dev>
2026-05-04 11:27:31 +00:00
zed-zippy[bot]
f7ed7e39df
vim: Fix panic when pasting in read-only editor (#55608) (cherry-pick to preview) (#55627)
Cherry-pick of #55608 to preview

----
Fixes ZED-73F

Release Notes:

- N/A or Added/Fixed/Improved ...

Co-authored-by: Lukas Wirth <lukas@zed.dev>
2026-05-04 11:21:39 +00:00
zed-zippy[bot]
c85e35c93c
git_graph: Fix search bar Vim key handling (#55510) (cherry-pick to preview) (#55511)
Cherry-pick of #55510 to preview

----
#53609 introduced a regression where Git Graph keybindings could take
precedence over the search bar. As a result, typing characters like `j`
or `k` in the search field could move the table selection instead of
updating the search query.

This PR fixes that regression by scoping Vim table navigation bindings
away from the search bar. It also adds dedicated `tab` and `shift-tab`
handling for Git Graph focus traversal, with the search bar and graph
table participating as separate tab groups.

Self-Review Checklist:

- [x] I've reviewed my own diff for quality, security, and reliability
- [x] Unsafe blocks (if any) have justifying comments
- [x] The content is consistent with the [UI/UX

checklist](https://github.com/zed-industries/zed/blob/main/CONTRIBUTING.md#uiux-checklist)
- [ ] Tests cover the new/changed behavior
- [x] Performance impact has been considered and is acceptable

Release Notes:

- N/A

Co-authored-by: Anthony Eid <56899983+Anthony-Eid@users.noreply.github.com>
2026-05-03 17:59:27 +00:00
zed-zippy[bot]
cd6dd882e4
Bump to 1.1.3 for @bennetbo 2026-05-02 16:41:40 +00:00
zed-zippy[bot]
c454d23798
edit tool: Support stringified mode parameter (#55498) (cherry-pick to preview) (#55499)
Cherry-pick of #55498 to preview

----
Self-Review Checklist:

- [x] I've reviewed my own diff for quality, security, and reliability
- [x] Unsafe blocks (if any) have justifying comments
- [x] The content is consistent with the [UI/UX

checklist](https://github.com/zed-industries/zed/blob/main/CONTRIBUTING.md#uiux-checklist)
- [x] Tests cover the new/changed behavior
- [x] Performance impact has been considered and is acceptable

Release Notes:

- Fixed an issue where agent failed to apply edits in some cases

Co-authored-by: Agus Zubiaga <agus@zed.dev>
2026-05-02 16:23:12 +00:00
zed-zippy[bot]
9df5ab5050
tools: Make time-zones more case-insensitive (#55288) (cherry-pick to preview) (#55410)
Cherry-pick of #55288 to preview

----
gpt-5.5 likes to call the `now` tool with upper-case "UTC", leading to
this error:

> Failed to receive tool input: tool input was not fully received


Release Notes:

- N/A

Co-authored-by: Oleksiy Syvokon <oleksiy@zed.dev>
2026-05-01 10:33:57 +00:00
zed-zippy[bot]
408ed01443
Fix cursor style changes across windows (#55323) (cherry-pick to preview) (#55327)
Cherry-pick of #55323 to preview

----
We were storing a cursor hidden boolean in the window state, but that
state is actually global to the application.

Self-Review Checklist:

- [x] I've reviewed my own diff for quality, security, and reliability
- [x] Unsafe blocks (if any) have justifying comments
- [x] The content is consistent with the [UI/UX

checklist](https://github.com/zed-industries/zed/blob/main/CONTRIBUTING.md#uiux-checklist)
- [ ] Tests cover the new/changed behavior
- [x] Performance impact has been considered and is acceptable


Release Notes:

- N/A

Co-authored-by: Agus Zubiaga <agus@zed.dev>
2026-04-30 14:38:51 +00:00
zed-zippy[bot]
a15106b80f
Bump to 1.1.2 for @JosephTLyons 2026-04-29 13:28:16 +00:00
zed-zippy[bot]
ebadf50ecd
Don't auto-release first preview (even if it's not .0) (#55166) (cherry-pick to preview) (#55196)
Cherry-pick of #55166 to preview

----
Self-Review Checklist:

- [ ] I've reviewed my own diff for quality, security, and reliability
- [ ] Unsafe blocks (if any) have justifying comments
- [ ] The content is consistent with the [UI/UX

checklist](https://github.com/zed-industries/zed/blob/main/CONTRIBUTING.md#uiux-checklist)
- [ ] Tests cover the new/changed behavior
- [ ] Performance impact has been considered and is acceptable

Release Notes:

- N/A

Co-authored-by: Conrad Irwin <conrad.irwin@gmail.com>
2026-04-29 12:51:58 +00:00
zed-zippy[bot]
aa88884ac3
agent: Remove streaming edit feature flag (#55152) (cherry-pick to preview) (#55193)
Cherry-pick of #55152 to preview

----
We already enabled the feature flag, but that only applies to logged in
users. Going to make sure that everyone gets the new tool as long as the
model supports it.

Self-Review Checklist:

- [x] I've reviewed my own diff for quality, security, and reliability
- [x] Unsafe blocks (if any) have justifying comments
- [x] The content is consistent with the [UI/UX

checklist](https://github.com/zed-industries/zed/blob/main/CONTRIBUTING.md#uiux-checklist)
- [x] Tests cover the new/changed behavior
- [x] Performance impact has been considered and is acceptable

Release Notes:

- agent: Improve edit tool performance for models that support streaming
tool calls.

Co-authored-by: Ben Brandt <benjamin.j.brandt@gmail.com>
2026-04-29 12:24:23 +00:00
zed-zippy[bot]
8f39ba752e
ep: Fix moving cursor to a predicted position (#55079) (cherry-pick to preview) (#55192)
Cherry-pick of #55079 to preview

----
Starting ~3 weeks ago, `output` no longer contains the cursor marker,
cloud strips it on parsing. Instead, it should return a cursor offset.


Release Notes:

- Fixed moving the cursor to a predicted position in Zeta 2

Co-authored-by: Oleksiy Syvokon <oleksiy@zed.dev>
2026-04-29 12:22:34 +00:00
Bennet Bo Fenner
7d7e2f1caf
gpui: Restore mouse cursor on window deactivation (#55155) (#55184)
Cherry-pick of #55155 to preview

----
Self-Review Checklist:

- [x] I've reviewed my own diff for quality, security, and reliability
- [x] Unsafe blocks (if any) have justifying comments
- [x] The content is consistent with the [UI/UX

checklist](https://github.com/zed-industries/zed/blob/main/CONTRIBUTING.md#uiux-checklist)
- [ ] Tests cover the new/changed behavior
- [x] Performance impact has been considered and is acceptable


Release Notes:

- N/A

Co-authored-by: Agus Zubiaga <agus@zed.dev>
2026-04-29 10:30:02 +00:00
Joseph T. Lyons
5e40e0ef98
Bump preview to v1.1.1 (#55094)
Release Notes:

- N/A
2026-04-28 15:36:09 +00:00
Kirill Bulatov
8ba77679a0
Fix the test for non-dev test runs (#55089) (#55091)
Cherry-pick of https://github.com/zed-industries/zed/pull/55089 into
Preview

Release Notes:

- N/A
2026-04-28 15:15:02 +00:00
Joseph T. Lyons
4c37250bd8
Update v1.1.x Preview Release Channel (#55080)
Updates `crates/zed/RELEASE_CHANNEL` from `dev` to `preview` to activate
the `v1.1.x` branch as the new preview release channel.

Release Notes:

- N/A
2026-04-28 09:39:34 -04:00
Agus Zubiaga
d010b06a77
Fix macOS mouse cursor flicker (#55068)
#48029 introduced `set_document_path` which is frequently (we are also
working on a PR to make it less frequent) called as tabs and panes
update. Apparently, the AppKit function it uses
(`NSWindow::setRepresentedFilename`) can cause the current cursor style
to be reset, producing flicker as the cursor would change to `Arrow`
temporarily until the right cursor style is set again in the next frame.

This PR reworks how we set the cursor to use AppKit's
`resetCursorRects`, giving us a chance to re-set the cursor when the OS
decides to invalidate it.

Finally, it fixes a separate bug introduced in #50827 where moving the
mouse while typing in an editor would cause to the cursor to flicker
between `None` (hidden) -> `Arrow` -> `IBeam`. This was caused by
incorrectly resetting the cursor to `Arrow` when the last input came
from the keyboard.

Self-Review Checklist:

- [x] I've reviewed my own diff for quality, security, and reliability
- [x] Unsafe blocks (if any) have justifying comments
- [x] The content is consistent with the [UI/UX
checklist](https://github.com/zed-industries/zed/blob/main/CONTRIBUTING.md#uiux-checklist)
- [ ] Tests cover the new/changed behavior
- [x] Performance impact has been considered and is acceptable

Release Notes:

- N/A

---------

Co-authored-by: Bennet Bo Fenner <bennetbo@gmx.de>
2026-04-28 13:12:13 +00:00
Oleksiy Syvokon
095b57bb26
ep: Add option to split datasets by project (#55071)
`ep split --stratify=project` will use the first component of
`cursor_path`, which is a worktree name. This is an alternative to
`--stratify=repo` in absence of `repository_url`


Release Notes:

- N/A
2026-04-28 12:33:48 +00:00
Miguel Raz Guzmán Macedo
e712f3c6df
gpui: Remove naga dependency (#55070)
Self-Review Checklist:

- [x] I've reviewed my own diff for quality, security, and reliability
- [x] Unsafe blocks (if any) have justifying comments
- [x] The content is consistent with the [UI/UX
checklist](https://github.com/zed-industries/zed/blob/main/CONTRIBUTING.md#uiux-checklist)
- [x] Tests cover the new/changed behavior
- [x] Performance impact has been considered and is acceptable

Closes
https://github.com/zed-industries/zed/issues/54981#issuecomment-4333425722

Release Notes:

- N/A or Added/Fixed/Improved ...
2026-04-28 10:00:07 +00:00
Kirill Bulatov
10922d7fad
Avoid flickering when displaying code lens (#55075)
Follow-up to https://github.com/zed-industries/zed/pull/54100
Closes https://github.com/zed-industries/zed/issues/55046

Before:


https://github.com/user-attachments/assets/d4730342-3526-48a8-8050-b398725a2cb9


After:


https://github.com/user-attachments/assets/5493a0a1-3a8e-4215-a10c-8cd9bb04141d


Release Notes:

- Fixed code lens flickering when typing
2026-04-28 09:59:39 +00:00
Ben Kunkle
ff95590233
ep: Add diagnostics teacher format (#54999)
Self-Review Checklist:

- [x] I've reviewed my own diff for quality, security, and reliability
- [x] Unsafe blocks (if any) have justifying comments
- [x] The content is consistent with the [UI/UX
checklist](https://github.com/zed-industries/zed/blob/main/CONTRIBUTING.md#uiux-checklist)
- [x] Tests cover the new/changed behavior
- [x] Performance impact has been considered and is acceptable

Closes #ISSUE

Release Notes:

- N/A or Added/Fixed/Improved ...
2026-04-28 09:53:00 +00:00
feeiyu
dd79ca048e
git_graph: Align CommitDataReader with batched commit processing (#54600)
Self-Review Checklist:

- [X] I've reviewed my own diff for quality, security, and reliability
- [ ] Unsafe blocks (if any) have justifying comments
- [ ] The content is consistent with the [UI/UX
checklist](https://github.com/zed-industries/zed/blob/main/CONTRIBUTING.md#uiux-checklist)
- [ ] Tests cover the new/changed behavior
- [X] Performance impact has been considered and is acceptable

Updated `CommitDataReader::read` from single SHA to batched
input/output.
`run_commit_data_reader` is designed to process requests in batches, but
`CommitDataReader::read` previously only sent one SHA per call. So in
practice, commit data was effectively processed one-by-one from the
caller path.


The temporary debug logs show that batching was not performed
previously.

before:
<img width="607" height="154" alt="image"
src="https://github.com/user-attachments/assets/4f9d9041-6209-426f-be44-f28449504c80"
/>

after:
<img width="632" height="121" alt="image"
src="https://github.com/user-attachments/assets/43b349f3-7685-4786-af1e-2a640cdf8ccd"
/>


Release Notes:

- N/A

---------

Co-authored-by: Anthony Eid <56899983+Anthony-Eid@users.noreply.github.com>
Co-authored-by: Anthony Eid <anthony@zed.dev>
2026-04-28 08:29:21 +00:00
John Tur
067ec60e1a
Fix process teardown deadlock on Windows (#55065)
AWS-LC registers an `atexit` handler that intentionally acquires a lock
without releasing it. AWS-LC also has `thread_local` objects which
acquire this lock in their destructor. Destructors for `thread_local`s
run under the loader lock. So, there is a race condition where, if a
thread exits after `atexit` handlers have run, the TLS destructors will
block indefinitely on this lock while holding the loader lock. Since
`ExitProcess` also requires the loader lock, process teardown will
deadlock.


Closes #54856

Release Notes:

- Fixed an issue where the Zed process wouldn't exit after closing all
windows
2026-04-28 08:19:03 +00:00
Mikayla Maki
562a0e03b5
Query for window instead of capturing (#55059)
This allows us to move entities between windows without breaking all the
callbacks.

Self-Review Checklist:

- [x] I've reviewed my own diff for quality, security, and reliability
- [x] Unsafe blocks (if any) have justifying comments
- [x] The content is consistent with the [UI/UX
checklist](https://github.com/zed-industries/zed/blob/main/CONTRIBUTING.md#uiux-checklist)
- [x] Tests cover the new/changed behavior
- [x] Performance impact has been considered and is acceptable

Release Notes:

- N/A
2026-04-28 08:04:42 +00:00
Ben Kunkle
119f182e51
ep: Remove old experimental provider (#55011)
Self-Review Checklist:

- [x] I've reviewed my own diff for quality, security, and reliability
- [x] Unsafe blocks (if any) have justifying comments
- [x] The content is consistent with the [UI/UX
checklist](https://github.com/zed-industries/zed/blob/main/CONTRIBUTING.md#uiux-checklist)
- [x] Tests cover the new/changed behavior
- [x] Performance impact has been considered and is acceptable

Closes #ISSUE

Release Notes:

- N/A or Added/Fixed/Improved ...
2026-04-28 07:41:38 +00:00
Joseph T. Lyons
0678d61f08
Bump Zed to v1.1.0 (#55035)
Self-Review Checklist:

- [ ] I've reviewed my own diff for quality, security, and reliability
- [ ] Unsafe blocks (if any) have justifying comments
- [ ] The content is consistent with the [UI/UX
checklist](https://github.com/zed-industries/zed/blob/main/CONTRIBUTING.md#uiux-checklist)
- [ ] Tests cover the new/changed behavior
- [ ] Performance impact has been considered and is acceptable

Closes #ISSUE

Release Notes:

- N/A
2026-04-27 22:22:46 +00:00
Finn Evers
80c4c3ec93
terminal_view: Ensure reported size does not change once content becomes scrollable (#46648)
This fixes an issue where due to the scrollbar appearing, the reported
content size would shift, causing issues in the process. We now actually
always reserve space for the scrollbar appropriately as described in
https://github.com/zed-industries/zed/pull/33636 initially.

Release Notes:

- Fixed an issue where the scrollbar could cause a layout shift in the
terminal.

---------

Co-authored-by: Danilo Leal <daniloleal09@gmail.com>
2026-04-27 22:06:01 +00:00
Richard Feldman
d986344da5
gpui_macos: Enable gpui/test-support feature for tests (#54988)
PR #51415 introduced the `PlatformHeadlessRenderer` trait and
`PlatformWindow::render_to_image` method in `gpui`, both gated on
`#[cfg(any(test, feature = "test-support"))]`, plus corresponding impls
in `gpui_macos` (`window.rs` and `metal_renderer.rs`) gated on the same
cfg.

A dependent crate's `cfg(test)` flag does **not** propagate to its
dependencies. So when `cargo test -p gpui_macos` is run in isolation,
`gpui_macos`'s own `cfg(test)` is true (its impls get compiled) but
`gpui` is just a regular dependency without `test-support` enabled (the
trait and method don't exist), and the build fails:

```
error[E0405]: cannot find trait `PlatformHeadlessRenderer` in crate `gpui`
error[E0407]: method `render_to_image` is not a member of trait `PlatformWindow`
```

The fix is to enable `gpui/test-support` as a dev-dependency, so the
feature is on exactly when `gpui_macos`'s tests are being built.

This bug is latent on `main` — workspace-level `cargo test` typically
pulls in `gpui/test-support` transitively from other crates, masking it.
Running `cargo test -p gpui_macos` alone is what surfaces it.

Release Notes:

- N/A
2026-04-27 21:21:03 +00:00
Ben Kunkle
697f5dde3a
ep: Improve copy when showing edit predictions is disabled (#54926)
Self-Review Checklist:

- [x] I've reviewed my own diff for quality, security, and reliability
- [x] Unsafe blocks (if any) have justifying comments
- [x] The content is consistent with the [UI/UX
checklist](https://github.com/zed-industries/zed/blob/main/CONTRIBUTING.md#uiux-checklist)
- [x] Tests cover the new/changed behavior
- [x] Performance impact has been considered and is acceptable

Closes #54809

Release Notes:

- N/A or Added/Fixed/Improved ...
2026-04-27 14:25:22 +00:00
João Soares
b42a6aa28f
cli: Null stdio handles when spawning Zed on Windows (#52583)
Self-Review Checklist:

- [x] I've reviewed my own diff for quality, security, and reliability
- [ ] Unsafe blocks (if any) have justifying comments
- [x] The content is consistent with the [UI/UX
checklist](https://github.com/zed-industries/zed/blob/main/CONTRIBUTING.md#uiux-checklist)
- [ ] Tests cover the new/changed behavior
- [x] Performance impact has been considered and is acceptable

Closes #51101

Release Notes:

- Fixed issue where launching Zed from Git Bash would leave the Ctrl
modifier stuck in the terminal.

## Demo

### Before:


https://github.com/user-attachments/assets/301c73a0-768b-437d-8a88-88d7db320c15

### After:



https://github.com/user-attachments/assets/2ec75f5e-16b9-4551-86d9-d59447712e7a
2026-04-27 14:24:17 +00:00
Finn Evers
d459a3ae55
ci: Fix autofix workflow (#55004)
It also still does too much, but is at least faster while doing so.

Release Notes:

- N/A
2026-04-27 14:10:03 +00:00
Xiaobo Liu
4c27cee963
deepseek: Add deepseek-v4-pro & deepseek-v4-flash (#54731)
reference: https://api-docs.deepseek.com/

Release Notes:

- Added deepseek-v4-pro and deepseek-v4-flash models

---------

Signed-off-by: Xiaobo Liu <cppcoffee@gmail.com>
Co-authored-by: Ben Brandt <benjamin.j.brandt@gmail.com>
Co-authored-by: MrSubidubi <dev@bahn.sh>
2026-04-27 13:50:00 +00:00
Finn Evers
0e5da4cbd4
compliance: Fix futures dependency (#55003)
We need this nowaways outside of the octocrab feature too

Release Notes:

- N/A
2026-04-27 13:30:00 +00:00
Ben Brandt
a8ae1677a3
Implement tool result conversion for anyhow errors (#55001)
Self-Review Checklist:

- [x] I've reviewed my own diff for quality, security, and reliability
- [x] Unsafe blocks (if any) have justifying comments
- [x] The content is consistent with the [UI/UX
checklist](https://github.com/zed-industries/zed/blob/main/CONTRIBUTING.md#uiux-checklist)
- [x] Tests cover the new/changed behavior
- [x] Performance impact has been considered and is acceptable

Release Notes:

- N/A
2026-04-27 13:03:33 +00:00
Bennet Bo Fenner
bf3fc2336d
agent: Allow tools to output multiple content parts (#54518)
Self-Review Checklist:

- [x] I've reviewed my own diff for quality, security, and reliability
- [x] Unsafe blocks (if any) have justifying comments
- [x] The content is consistent with the [UI/UX
checklist](https://github.com/zed-industries/zed/blob/main/CONTRIBUTING.md#uiux-checklist)
- [x] Tests cover the new/changed behavior
- [x] Performance impact has been considered and is acceptable

Closes #ISSUE

Release Notes:

- N/A
2026-04-27 12:36:11 +00:00
Finn Evers
cb9dc8daf1
docs: Prompt extension authors to test their extension before publishing (#54998)
Release Notes:

- N/A
2026-04-27 11:38:33 +00:00
Nihal Kumar
fdbdb1707d
git_graph: Wire up Vim mode navigation (#53609)
Added Vim mode navigation (`j`, `k`, `gg`, `G`) to the Git Graph view.


[gitgraph-vim.webm](https://github.com/user-attachments/assets/b2dd31a5-deb0-48ab-a48d-8721ee500dad)

Self-Review Checklist:

- [x] I've reviewed my own diff for quality, security, and reliability
- [x] Unsafe blocks (if any) have justifying comments
- [x] The content is consistent with the [UI/UX
checklist](https://github.com/zed-industries/zed/blob/main/CONTRIBUTING.md#uiux-checklist)
- [x] Tests cover the new/changed behavior
- [x] Performance impact has been considered and is acceptable

Closes #53525 

Release Notes:

- Added vim mode navigation to git graph

---------

Co-authored-by: Anthony Eid <anthony@zed.dev>
2026-04-27 11:14:33 +00:00
Tristan Phease
eced4eab77
Fix ESLint not starting on Windows (#54945)
Self-Review Checklist:

- [x] I've reviewed my own diff for quality, security, and reliability
- [x] Unsafe blocks (if any) have justifying comments
- [x] The content is consistent with the [UI/UX
checklist](https://github.com/zed-industries/zed/blob/main/CONTRIBUTING.md#uiux-checklist)
- [x] Tests cover the new/changed behavior
- [x] Performance impact has been considered and is acceptable

Closes #54093 (at least the os error 123 in the comments of that
bug)/#54901 (although the diagnosis in that bug is totally wrong)
Used process monitor to work out what that issue was:
<img width="1573" height="94" alt="image"
src="https://github.com/user-attachments/assets/2f82ad1a-8532-465d-9dcd-ba0bd092e9e7"
/>
There's actually a '\n' after node_modules there so it's an invalid
directory. Add trim() to fix.
After adding that change locally, eslint loaded fine

Release Notes:

- Fixed bug where eslint didn't start on Windows
2026-04-27 11:10:58 +00:00
Tim Vermeulen
c079264372
editor: Fix split diff spacer calculation for non-row-aligned patch groups (#53098)
Fixes a bug in the split diff spacer calculation when a patch group
starts mid-row, sometimes causing extra spacers to be inserted.

`spacer_blocks` already explicitly handles the case where `first_point`
isn't at the start of `edit_for_first_point.old`, but the `while let
Some(source_point) = source_points.next()` loop that follows implicitly
assumes that `source_point` is at the start of `current_range`, which in
turn seems to be based on the assumption that `current_range` starts at
the beginning of a row. As it turns out, `current_range` isn't
guaranteed to start at the beginning of a row, which can sometimes lead
to incorrect spacer blocks being inserted.

This addresses that by moving the existing `if
edit_for_first_point.old.start < first_point` logic into the loop body
as `if current_edit.old.start < current_boundary` in order to handle any
non-row-aligned patch groups, not just the first one.

Here's an example of how this bug could manifest:


https://github.com/user-attachments/assets/1d3a5b4c-e4ad-4d87-804b-c4390d25f408

After:


https://github.com/user-attachments/assets/b15acc62-33fe-4154-82e5-5cdf1806ffa7

Self-Review Checklist:

- [x] I've reviewed my own diff for quality, security, and reliability
- [x] Unsafe blocks (if any) have justifying comments
- [x] The content is consistent with the [UI/UX
checklist](https://github.com/zed-industries/zed/blob/main/CONTRIBUTING.md#uiux-checklist)
- [x] Tests cover the new/changed behavior
- [x] Performance impact has been considered and is acceptable

Release Notes:

- Fixed incorrect spacer blocks sometimes appearing in the split diff
view when editing the file.
2026-04-27 10:10:48 +00:00
Austin Cummings
1376130066
git_ui: Replace commit message generation spinner with a cancel button (#49540)
When a model produces poor output during commit message generation,
there was no way to cancel it. This replaces the non-interactive spinner
with a Stop button that cancels the generation task. Partial generated
text is kept in the editor.

Partially addresses #33556


<img width="1200" height="900" alt="2026-02-18-160103_hyprshot"
src="https://github.com/user-attachments/assets/760e9681-b374-4f40-a4b1-0bb6775db17c"
/>

---

Before you mark this PR as ready for review, make sure that you have:
- [x] Added a solid test coverage and/or screenshots from doing manual
testing
- [x] Done a self-review taking into account security and performance
aspects
- [x] Aligned any UI changes with the [UI
checklist](https://github.com/zed-industries/zed/blob/main/CONTRIBUTING.md#uiux-checklist)

Release Notes:

- Added a button to stop commit message generation in the git panel

---------

Co-authored-by: Danilo Leal <daniloleal09@gmail.com>
Co-authored-by: Danilo Leal <67129314+danilo-leal@users.noreply.github.com>
2026-04-27 09:54:48 +00:00
Bennet Bo Fenner
83cc2ec054
open_ai: Use responses API for all models (#54910)
From the
[docs](https://developers.openai.com/api/docs/guides/migrate-to-responses#responses-benefits):

> Better performance: Using reasoning models, like GPT-5, with Responses
will result in better model intelligence when compared to Chat
Completions. Our internal evals reveal a 3% improvement in SWE-bench
with same prompt and setup.
Agentic by default: The Responses API is an agentic loop, allowing the
model to call multiple tools, like web_search, image_generation,
file_search, code_interpreter, remote MCP servers, as well as your own
custom functions, within the span of one API request.
Lower costs: Results in lower costs due to improved cache utilization
(40% to 80% improvement when compared to Chat Completions in internal
tests).
Stateful context: Use store: true to maintain state from turn to turn,
preserving reasoning and tool context from turn-to-turn.
Flexible inputs: Pass a string with input or a list of messages; use
instructions for system-level guidance.
Encrypted reasoning: Opt-out of statefulness while still benefiting from
advanced reasoning.
Future-proof: Future-proofed for upcoming models.

Self-Review Checklist:

- [x] I've reviewed my own diff for quality, security, and reliability
- [x] Unsafe blocks (if any) have justifying comments
- [x] The content is consistent with the [UI/UX
checklist](https://github.com/zed-industries/zed/blob/main/CONTRIBUTING.md#uiux-checklist)
- [ ] Tests cover the new/changed behavior
- [x] Performance impact has been considered and is acceptable

Closes #ISSUE

Release Notes:

- Always use Responses API for OpenAI models
2026-04-27 09:52:51 +00:00
Bruna Fernandes
219ea086f2
pane: Fix apply formatting when new file is first created (#52692)
### Description:

Previously, formatting was only applied after manually saving the file,
once it had already been created and saved. After the fix, when creating
a new file from the editor and saving it for the first time with a
filename, formatting is automatically applied if “format on save” is
enabled.

### Self-Review Checklist:

- [X] I've reviewed my own diff for quality, security, and reliability
- [X] Unsafe blocks (if any) have justifying comments
- [X] The content is consistent with the [UI/UX
checklist](https://github.com/zed-industries/zed/blob/main/CONTRIBUTING.md#uiux-checklist)
- [X] Tests cover the new/changed behavior
- [X] Performance impact has been considered and is acceptable

Closes #22534

Release Notes:

- Fixed apply formatting when a new file is first created
2026-04-27 09:33:44 +00:00