Commit log

5e41ce1 Do not pull diagnostics when those are disabled (#41865)

Click to expand commit body
Based on 

[hang.log](https://github.com/user-attachments/files/23319081/hang.log)


Release Notes:

- N/A

Kirill Bulatov created

5ed4584 Copy outline improvements from typescript over to tsx as well (#41862)

Click to expand commit body
Closes #4483 

Release Notes:

- Interprets outline of tsx files with the same grammar as typescript,
including improvements from #39797

KyleBarton created

9ecf257 Fix incorrect search ranges when rendering search matches in the outline panel (#41859)

Click to expand commit body
Closes https://github.com/zed-industries/zed/issues/41792

Release Notes:

- Fixed outline panel panicking when rendering certain search matches

Kirill Bulatov created

2eeb023 editor: Add a setting to show a scrollbar in completion menu (#41849)

Click to expand commit body
A user on Discord requested this feature:
https://discord.com/channels/869392257814519848/1434188637389717556/1434188637389717556

I added a scrollbar setting called `completion_menu_scrollbar` to the
completion menu and defaulted it to "Never" to match past behavior.

Release Notes:

- editor: Add `editor.completion_menu_scrollbar` setting to show a
scrollbar in the completion menu

Anthony Eid created

c2b3e60 settings: Change "remove trailing whitespace on save" to default false for Markdown (#41658)

Click to expand commit body
Closes #ISSUE: reported on X by user. 

Release Notes:

- Made it so that the default value for the "remove trailing whitespace
on save" setting in Markdown is false, to fix cases where the removed
trailing whitespace had syntactic meaning

Katie Geer created

d075a56 Fix merge conflict (#41853)

Click to expand commit body
Closes #ISSUE

Release Notes:

- N/A

Conrad Irwin created

8217e57 ci: Enable namespace caching for Linux workers (#41652)

Click to expand commit body
Release Notes:

- N/A

Piotr Osiewicz created

08daedd editor: Add support for no scroll margin in full mode (#41838)

Click to expand commit body
Noticed this whilst testing the Docker debugger. I randomly scrolled the
console off screen and was confused briefly as to why this was the case.

Release Notes:

- The debugger query console will no longer needlessly overscroll.

Finn Evers created

4da5675 Re-use the existing bundle steps for nightly too (#41699)

Click to expand commit body
One of the reasons we didn't spot that we were missing the telemetry env
vars for the production builds was that nightly (which was working) had
its own set of build steps. This re-uses those and pushes the env vars
down from the workflow to the job.

It also fixes nightly releases to upload all-in-one go so that all
platforms update in sync.

Closes #41655

Release Notes:

- N/A

Conrad Irwin created

5fc5498 Revert "sum_tree: Replace rayon with futures (#41586) (#41846)

Click to expand commit body
This causes the background executor to hang

Release Notes:

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

Lukas Wirth created

cb5055a agent_ui: Fix expand message editor button not always working (#41845)

Click to expand commit body
The button could not be clicked whenever the editor was currently not
focused. This PR fixes this and also registers the action on a more
global level, similar to how this is done for all the other agent
actions.

Release Notes:

- Fixed an issue where the `Expand message editor` button would not work
in agent threads if the message editor was not focused.

Finn Evers created

454d649 docs: Mark macOS 26.x as being supported (#41777)

Click to expand commit body
Add "Tahoe" to list of supported macOS versions.

Closes #ISSUE

Release Notes:

- N/A

warrenjokinen created

222767e ruby: Disable Ruby LSP for ERB files (#41754)

Click to expand commit body
The Ruby extension uses the `solargraph`
language server by default for Ruby files.
However, when a user opens any ERB file,
the extension automatically starts the Ruby LSP.
This affects developers because
they do not expect the Ruby LSP to be running.

Closes https://github.com/zed-extensions/ruby/issues/172

Release Notes:

- N/A

Vitaly Slobodin created

d7b7fa3 agent: Add XML escaping for TextThreadContext title attribute (#39734)

Click to expand commit body
Escape special characters (&, <, >, ", ') in the title attribute of
TextThreadContext's XML output to prevent malformed XML when titles
contain these characters.

Resolves TODO at context.rs:629

Release Notes:

- N/A

Signed-off-by: Xiaobo Liu <cppcoffee@gmail.com>
Co-authored-by: Bennet Bo Fenner <bennetbo@gmx.de>

Xiaobo Liu and Bennet Bo Fenner created

7cfce60 project_search: Add button to collapse/expand all excerpts (#41654)

Click to expand commit body
<img width="500" height="834" alt="Screenshot 2025-11-03 at 12  59@2x"
src="https://github.com/user-attachments/assets/15c5e1fc-2291-41b4-9eec-a8cfa5a446c7"
/>

Releases Note:

- Added a button that allows to expand/collapse all project search
excerpts at once.

---------

Co-authored-by: Danilo Leal <daniloleal09@gmail.com>

Dylan and Danilo Leal created

45b7848 perf: Fixup Hyperfine finding (#41837)

Click to expand commit body
Release Notes:

- N/A

Nia created

71f1f37 windows: Remove null terminator from keyboard ID (#41785)

Click to expand commit body
Closes #41486, closes #35862 

It is unnecessary, and it broke the `uses_altgr` function.

Also add Slovenian layout as using AltGr.

This should fix:
-
https://github.com/zed-industries/zed/pull/40536#issuecomment-3477121224
- https://github.com/zed-industries/zed/issues/41486
- https://github.com/zed-industries/zed/issues/35862

As the current strategy relies on manually adding layouts that have
AltGr, it's brittle and not very elegant. It also has other issues (it
requests the current layout on every kesytroke and mouse movement).

**A potentially better and more comprehensive solution is at
https://github.com/zed-industries/zed/pull/41259**
This is just to fix the immediate issues while that gets reviewed.

Release Notes:

- windows: Fix AltGr handling on non-US layouts again.

Antal Szabó created

8b560cd Fix bug with uninstalled agent extensions (#41836)

Click to expand commit body
Previously, uninstalled agent extensions didn't immediately disappear
from the menu. Now, they do!

Release Notes:

- N/A

Richard Feldman created

38e1e3f project: Use user configured shells for project env fetching (#41288)

Click to expand commit body
Closes https://github.com/zed-industries/zed/issues/40464

Release Notes:

- Fix shell environment sourcing not respecting users remote shells

Lukas Wirth created

a6b177d Update open buffers with newly registered completion trigger characters (#41243)

Click to expand commit body
Closes https://github.com/zed-extensions/java/issues/108

Previously, when language servers dynamically register completion
capabilities with trigger characters for completions (hello JDTLS), this
would not get updated in buffers for that language server that were
already open. This change is to find open buffers for the language
server and update the trigger characters in each of them when the new
capability is being registered.

Release Notes:

- N/A

Karl-Erik Enkelmann created

73366be diagnostics: Live update diagnostics view on edits while focused (#41829)

Click to expand commit body
Prior we were only updating the diagnostics pane when it is either
unfocued, saved or when a disk based diagnostic run finishes (aka cargo
check). The reason for this is simple, we do not want to take away the
excerpt under the users cursor while they are typing if they manage to
fix the diagnostic. Additionally we need to prevent dropping the changed
buffer before it is saved.

Delaying updates was a simple way to work around these kind of issues,
but comes at a huge annoyance that the diagnostics pane is not actually
reflecting the current state of the world but some snapshot of it
instead making it less than ideal to work within it for languages that
do not leverage disk based diagnostics (that is not rust-analyzer, and
even for rust-analyzer its annoying).

This PR changes this. We now always live update the view but take care
to retain unsaved buffers as well as buffers that contain a cursor in
them (as well as some other "checkpoint" properties).

Release Notes:

- Improved diagnostics pane to live update when editing within its
editor

Lukas Wirth created

48bd253 Adds instructions on how to use Perf & Flamegraph without debug symbols (#41831)

Click to expand commit body
Release Notes:

- N/A

David Kleingeld created

2131d88 Add `center_on_match` option for search (#40523)

Click to expand commit body
[Closes discussion
#28943](https://github.com/zed-industries/zed/discussions/28943)

Release Notes:

- Added `center_on_match` option to center matched text in view during buffer or project search.

---------

Co-authored-by: Smit Barmase <heysmitbarmase@gmail.com>

Bob Mannino and Smit Barmase created

42149df Show modal hover for one-off tasks (#41824)

Click to expand commit body
Before, one-off commands did not show anything on hover at all, now they
show their command:

<img width="657" height="527" alt="after"
src="https://github.com/user-attachments/assets/d43292ca-9101-4a6a-b689-828277e8cfeb"
/>

Release Notes:

- Show modal hover for one-off tasks

Kirill Bulatov created

379bdb2 languages: Add ignore keyword for gomod (#41520)

Click to expand commit body
go 1.25 introduce ignore directive in go.mod to specify directories the
go command should ignore.

ref: https://tip.golang.org/doc/go1.25#go-command


Release Notes:

- Added syntax highlighting support for the new [`ignore`
directive](https://tip.golang.org/doc/go1.25#go-command) in `go.mod`
files

Bing Wang created

04e53bf Move @punctuation.delimiter before @operator capture (#41663)

Click to expand commit body
Closes #41593

From what I understand the order of captures inside tree-sitter query
files matters, and the last capture will win. `?` and `:` are captured
by both `@operator` and `@punctuation.delimiter`.So in order for the
ternary operator to win it should live after `@punctuation.delimiter`.

Before:
<img width="298" height="32" alt="Screenshot 2025-10-31 at 17 41 21"
src="https://github.com/user-attachments/assets/af376e52-88be-4f62-9e2b-a106731f8145"
/>


After:
<img width="303" height="39" alt="Screenshot 2025-10-31 at 17 41 33"
src="https://github.com/user-attachments/assets/9a754ae9-0521-4c70-9adb-90a562404ce8"
/>


Release Notes:

- Fixed an issue where the ternary operator symbols in TypeScript would
not be highlighted as operators.

Dijana Pavlovic created

28f30fc Fix racy inlay hints queries (#41816)

Click to expand commit body
Follow-up of https://github.com/zed-industries/zed/pull/40183

Release Notes:

- (Preview only) Fixed inlay hints duplicating when multiple editors are
open for the same buffer

---------

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

Kirill Bulatov and Lukas Wirth created

f8b414c zed: Reduce number of rayon threads, spawn with bigger stacks (#41812)

Click to expand commit body
We already do this for the cli and remote server but forgot to do so for
the main binary

Release Notes:

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

Lukas Wirth created

5050479 file_finder: Fix highlighting panic in open path prompt (#41808)

Click to expand commit body
Closes https://github.com/zed-industries/zed/issues/41249

Couldn't quite come up with a test case here but verified it works.

Release Notes:

- Fixed a panic in file finder when deleting characters

Lukas Wirth created

b625263 remote: Close window when SSH connection fails (#41782)

Click to expand commit body
## Context 

This PR closes issue https://github.com/zed-industries/zed/issues/41781

It essentially `matches` the result of opening the connection here
https://github.com/zed-industries/zed/blob/f7153bbe8a869d0e2b25efed64fd7e4217899b63/crates/recent_projects/src/remote_connections.rs#L650

and adds a Close / Retry alert that upon 'Close' closes the new window
if the result is an error

kallyaleksiev created

c8f9db2 remote: Fix more quoting issues with nushell (#41547)

Click to expand commit body
https://github.com/zed-industries/zed/pull/40084#issuecomment-3464159871
Closes https://github.com/zed-industries/zed/pull/41547

Release Notes:

- Fixed remoting not working when the remote has nu set as its shell

Lukas Wirth created

bc3c88e Revert "windows: Don't flood windows message queue with gpui messages" (#41803)

Click to expand commit body
Reverts zed-industries/zed#41595

Closes #41704

Lukas Wirth created

3a05813 Fix Sonnet's regression with inserting `</parameter></invoke>` (#41800)

Click to expand commit body
Sometimes, inside the edit agent, Sonnet thinks that it's doing a tool
call and closes its response with `</parameter></invoke>` instead of
properly closing </new_text>.

A better but more labor-intensive way of fixing this would be switching
to streaming tool calls for LLMs that support it.

Closes #39921

Release Notes:

- Fixed Sonnet's regression with inserting `</parameter></invoke>`
sometimes

Oleksiy Syvokon created

f2b5395 sum_tree: Spawn less tasks in `SumTree::from_iter_async` (#41793)

Click to expand commit body
Release Notes:

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

Lukas Wirth created

dc503e9 Support GitLab and self-hosted GitLab avatars in git blame (#41747)

Click to expand commit body
Part of #11043.

Release Notes:

- Added Support for showing GitLab and self-hosted GitLab avatars in git
blame

ᴀᴍᴛᴏᴀᴇʀ created

73b75a7 Support Gitee avatars in git blame (#41783)

Click to expand commit body
Part of https://github.com/zed-industries/zed/issues/11043.

<img width="3596" height="1894" alt="CleanShot 2025-11-03 at 10 39
08@2x"
src="https://github.com/user-attachments/assets/68d16c32-fd23-4f54-9973-6cbda9685a8f"
/>


Release Notes:

- Added Support for showing Gitee avatars in git blame

ᴀᴍᴛᴏᴀᴇʀ created

deacd3e extension_ui: Fix card label truncation (#41784)

Click to expand commit body
Closes https://github.com/zed-industries/zed/issues/41763

Release Notes:

- N/A

Danilo Leal created

f7153bb agent_ui: Add delete button for compatible API-based LLM providers (#41739)

Click to expand commit body
Discussion: https://github.com/zed-industries/zed/discussions/41736

Release Notes:

- agent panel: Added the ability to remove OpenAI-compatible LLM
providers directly from the UI.

---------

Co-authored-by: Danilo Leal <daniloleal09@gmail.com>

Aero and Danilo Leal created

4e7ba8e acp_tools: Add vertical scrollbar to ACP logs (#41740)

Click to expand commit body
Release Notes:

- N/A

---------

Signed-off-by: Xiaobo Liu <cppcoffee@gmail.com>
Co-authored-by: Danilo Leal <daniloleal09@gmail.com>

Xiaobo Liu and Danilo Leal created

9909b59 agent_ui: Improve the "go to file" affordance in the edit bar (#41762)

Click to expand commit body
This PR makes it clearer that you can click on the file path to open the
corresponding file in the agent panel's "edit bar", which is the element
that shows up in the panel as soon as agent-made edits happen.

Release Notes:

- agent panel: Improved the "go to file" affordance in the edit bar.

Danilo Leal created

00ff89f agent_ui: Make single file review actions match panel (#41718)

Click to expand commit body
When we introduced the ACP-based agent panel, the condition that the
"review" | "reject" | "keep" buttons observed to be displayed got
mismatched between the panel and the pane (when in the single file
review scenario). In the panel, the buttons appear as soon as there are
changed buffers, whereas in the pane, they appear when response
generation is done.

I believe that making them appear at the same time, observing the same
condition, is the desired behavior. Thus, I think the panel behavior is
more correct, because there are loads of times where agent response
generation isn't technically done (e.g., when there's a command waiting
for permission to be run) but the _file edit_ has already been performed
and is in a good state to be already accepted or rejected.

So, this is what this PR is doing; effectively removing the "generating"
state from the agent diff, and switching to `EditorState::Reviewing`
when there are changed buffers.

Release Notes:

- Improved agent edit single file reviews by making the "reject" and
"accept" buttons appear at the same time.

Danilo Leal created

12fe12b docs: Update theme, icon theme, and visual customization pages (#41761)

Click to expand commit body
Some housekeeping updates:

- Update hardcoded actions/keybindings so they're pulled from the repo
- Mention settings window when useful
- Add more info about agent panel's font size
- Break sentences in individual lines

Release Notes:

- N/A

Danilo Leal created

a9bc890 ui: Fix popover menu not restoring focus to the previously focused element (#41751)

Click to expand commit body
Closes #26548

Here's a before/after comparison:


https://github.com/user-attachments/assets/21d49db7-28bb-4fe2-bdaf-e86b6400ae7a

Release Notes:

- Fixed popover menus not restoring focus to the previously focused
element

Mayank Verma created

d887e20 windows: Hide background helpers behind CREATE_NO_WINDOW (#41737)

Click to expand commit body
Close https://github.com/zed-industries/zed/issues/41538

Release Notes:

- Fixed some processes on windows not spawning with CREATE_NO_WINDOW

---------

Signed-off-by: Xiaobo Liu <cppcoffee@gmail.com>

Xiaobo Liu created

d5421ba windows: Fix click bleeding through collab follow (#41726)

Click to expand commit body
On Windows, clicking on a collab user icon in the title bar would
minimize/expand Zed because the click would bleed through to the title
bar. This PR fixes this by stopping propagation.

#### Before (On MacOS with double clicks to mimic the same behavior)

https://github.com/user-attachments/assets/5a91f7ff-265a-4575-aa23-00b8d30daeed
#### After (On MacOS with double clicks to mimic the same behavior)

https://github.com/user-attachments/assets/e9fcb98f-4855-4f21-8926-2d306d256f1c

Release Notes:

- Windows: Fix clicking on user icon in title bar to follow
minimizing/expanding Zed

Co-authored-by: Remco Smits <djsmits12@gmail.com>

Anthony Eid and Remco Smits created

548cdfd Delete release process docs (#41733)

Click to expand commit body
These have been migrated to the README.md
[here](https://github.com/zed-industries/release_notes). These don't
need to be public. Putting them in the same repo where we draft
(`release_notes`) means less jumping around and allows us to include
additional information we might not want to make public.

Release Notes:

- N/A

Joseph T. Lyons created

2408f76 gh-workflow unit evals (#41637)

Click to expand commit body
Closes #ISSUE

Release Notes:

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

Ben Kunkle created

df15d2d Fix doc typos (#41727)

Click to expand commit body
Release Notes:

- N/A

Haojian Wu created

07dcb8f debugger: Add program and module path fallbacks for debugpy toolchain (#40975)

Click to expand commit body
Fixes the Debugpy toolchain detection bug in #40324 

When detecting what toolchain (venv) to use in the Debugpy configuration
stage, we used to only base it off of the current working directory
argument passed to the config. This is wrong behavior for cases like
mono repos, where the correct virtual environment to use is nested in
another folder.

This PR fixes this issue by adding the program and module fields as
fallbacks to check for virtual environments. We also added support for
program/module relative paths as well when cwd is not None.

Release Notes:

- debugger: Improve mono repo virtual environment detection with Debugpy

---------

Co-authored-by: Remco Smits <djsmits12@gmail.com>

Anthony Eid and Remco Smits created

06bdb28 zeta cli: Add convert-example command (#41608)

Click to expand commit body
Adds a `convert-example` subcommand to the zeta cli that converts eval
examples from/to `json`, `toml`, and `md` formats.

Release Notes:

- N/A

---------

Co-authored-by: Max Brunsfeld <maxbrunsfeld@gmail.com>

Agus Zubiaga and Max Brunsfeld created