Commit log

75b1da0 Fix Gruvbox accent colors (#41470)

Click to expand commit body
In #11503, the "accents" option was incorrectly at the top level. This
moves it under the "style" key so it takes effect.

### Before/After
<img width="872" height="499" alt="1761750444_screenshot"
src="https://github.com/user-attachments/assets/2720d576-33b7-42df-9290-7b6a56f5b6a6"
/>
<img width="901" height="501" alt="1761750448_screenshot"
src="https://github.com/user-attachments/assets/bd6b7ccb-77ef-467c-b7cc-a5107b093db5"
/>

Release Notes:

- N/A

skewb1k created

207a202 bedrock: Add support for Claude Haiku 4.5 model (#41045)

Click to expand commit body
Release Notes:

- bedrock: Added support for Claude Haiku 4.5

---------

Co-authored-by: Ona <no-reply@ona.com>

Shardul Vaidya and Ona created

0871c53 acp_tools: Add button to clear messages (#41206)

Click to expand commit body
Added a "Clear Messages" button to the ACP logs toolbar that removes all
messages.

## Motivation

When debugging ACP protocol implementations, the message list can become
cluttered with old messages. This feature allows clearing all messages
with a single click to start fresh, making it easier to focus on new
interactions without closing and reopening the ACP logs view.

Release Notes:

- N/A

Yordis Prieto created

b92664c gpui: Implement support for wlr layer shell (#35610)

Click to expand commit body
This reintroduces `layer_shell` support after #32651 was reverted. On
top of that, it allows setting options for the created surface,
restricts the enum variant to the `wayland` feature, and adds an example
that renders a clock widget using the protocol.

I've renamed the `WindowKind` variant to `LayerShell` from `Overlay`,
since the protocol can also be used to render wallpapers and such, which
doesn't really fit with the word.

Things I'm still unsure of:
- We need to get the layer options types to the user somehow, but
nothing from the `platform::linux` crate was exported, I'm assuming
intentionally. I've kept the types inside the module (instead of doing
`pub use layer_shell::*` to not pollute the global namespace with
generic words like `Anchor` or `Layer` Let me know if you want to do
this differently.
- I've added the options to the `WindowKind` variant. That's the only
clean way I see to supply them when the window is created. This makes
the kind no longer implement `Copy`.
- The options don't have setter methods yet and can only be defined on
window creation. We'd have to make fallible functions for setting them,
which only work if the underlying surface is a `layer_shell` surface.
That feels un-rust-y.

CC @zeroeightysix  
Thanks to @wuliuqii, whose layer-shell implementation I've also looked
at while putting this together.

Release Notes:

- Add support for the `layer_shell` protocol on wayland

---------

Co-authored-by: Ridan Vandenbergh <ridanvandenbergh@gmail.com>

Hilmar Wiegand and Ridan Vandenbergh created

19099e8 editor: Add action to move between snippet tabstop positions (#41466)

Click to expand commit body
Closes #41407

This solves a problem where users couldn't navigate between snippet
tabstops while the completion menu was open.

I named the action {Next, Previous}SnippetTabstop instead of Placeholder
to be more inline with the LSP spec naming convention and our codebase
names.

Release Notes:

- Editor: Add actions to move between snippet tabstop positions

Anthony Eid created

f29ac79 Add myself as a docs reviewer (#41463)

Click to expand commit body
Closes #ISSUE

Release Notes:

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

Ben Kunkle created

797ac5e docs: Update docs for using ESLint as the only formatter (#40679)

Click to expand commit body
Closes #ISSUE

Release Notes:

- N/A

---------

Co-authored-by: Ben Kunkle <Ben.kunkle@gmail.com>

Angelo Verlain and Ben Kunkle created

37c6cd4 project: Fix inlay hints duplicatig on chunk start (#41461)

Click to expand commit body
Release Notes:

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

Lukas Wirth created

01a1b9b Document Go hard tabs in default settings (#41459)

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

This is already present in the code but missing from the default
settings, which is confusing.

Release Notes:

- N/A

Justin Su created

d44437d display map: Fix left shift debug panic (#38656)

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

The bug occurred because TabStopCursor chunk_position.1 is bounded
between 0 and 128. The fix for this was changing the bound to 0 and 127.

This also allowed me to simplify some of the tab stop cursor code to be
a bit faster (less branches and unbounded shifts).

Release Notes:

- N/A

Anthony Eid created

6be029f Document plain text soft wrap in default settings (#41456)

Click to expand commit body
Closes #41169

This was alredy present in code before, but not documented in the
default settings, which could lead to confusion,

Release Notes:

- N/A

Finn Evers created

d59ecf7 ui: Don't show scrollbar track in too many cases (#41455)

Click to expand commit body
Follow-up to https://github.com/zed-industries/zed/pull/41354 which
introduced a small regression.

Release Notes:

- N/A

Finn Evers created

bde7e55 editor: Render diagnostic popover even if the source is out of view (#41449)

Click to expand commit body
This happens quite often with cargo based diagnostics which may spawn
several lines (sometimes the entire screen), forcing the user to scroll
up to the start of the diagnostic just to see the hover message is not
great.

Release Notes:

- Fixed diagnostics hovers not working if the diagnostic spans out of
view

Lukas Wirth created

b7d31fa vim: Add helix mode toggle (#41454)

Click to expand commit body
Just for parity with vim. Also prevents these toggles from having both
enabled at the same time as that is a buggy state.

Release Notes:

- Added command to toggle helix mode

Lukas Wirth created

1a223e2 Revert "Support relative line number on wrapped lines (#39268)" (#41450)

Click to expand commit body
Closes #41422

This completely broke line numbering as described in the linked issue
and scrolling up does not have the correct numbers any more.

Release Notes:

- NOTE: The `relative_line_numbers` change
(https://github.com/zed-industries/zed/pull/39268) was reverted and did
not make the release cut!

Finn Evers created

f2c03d0 gpui: Fix typo in `ForegroundExecutor` documentation (#41446)

Click to expand commit body
Release Notes:

- N/A

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

Xiaobo Liu created

6fa8234 editor: When expanding first excerpt up, scroll it into view (#41445)

Click to expand commit body
Before

https://github.com/user-attachments/assets/2390e924-112a-43fa-8ab8-429a55456d12

After

https://github.com/user-attachments/assets/b47c95f0-ccd9-40a6-ab04-28295158102e

Release Notes:

- Fixed an issue where expanding the first excerpt upwards would expand
it out of view

Lukas Wirth created

8725a2d go_to_line: Fix scroll position restore on dismiss (#41234)

Click to expand commit body
Closes #35347

Release Notes:

- Fixed Go To Line jumping back to previous position on dismiss

Mayank Verma created

f9c97d2 Bump Zed to v0.212 (#41417)

Click to expand commit body
Release Notes:

- N/A

Conrad Irwin created

5192233 Fix people who use gh instead of env vars (#41418)

Click to expand commit body
Closes #ISSUE

Release Notes:

- N/A

Conrad Irwin created

d0d7b9c Update docs to use == instead of = (#41415)

Click to expand commit body
Closes #41219

Release Notes:

- Updated docs to use `==` instead of `=` in keymap context.

Hopefully I'm not mistaken here, but I think the docs have a bug in them

Callum Tolley created

8b051d6 Revert "Use gh workflow for tests" (#41411)

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

The branch-protection rules work much better when there is a Job that
runs every time and can be depended on to pass, we no longer have this.

Release Notes:

- N/A

Ben Kunkle created

16d84a3 Adjust Windows fusion manifests (#41408)

Click to expand commit body
- Declare UAC support. This will prevent Windows from flagging
`auto_update_helper.exe` as a legacy setup program that needs to run as
administrator.
- Declare support for Windows 10. This will stop Windows from applying
various application compatibility profiles.

The UAC policy is not really appropriate to apply to all GPUI
applications (e.g. an installer written in GPUI may want to declare
itself as `requireAdministrator` instead of `asInvoker`). I tried
splitting this into a Zed.exe-only manifest and enabling manifest file
merging, but I ran out of my time-box. We can fix this later if this is
flagged by GPUI users.

Release Notes:

- N/A

John Tur created

4adff4a Use gh workflow for tests (#41384)

Click to expand commit body
Follow up for: #41304

Splits CI tests (cherry-picks and PRs only for now) into separate
workflows using `gh-workflow`. Includes a couple restructures to
- run more things in parallel
- remove our previous shell script based checking to filter tests based
on files changed, instead using the builtin `paths:` workflow filters


Splitting the docs/style/rust tests & checks into separate workflows
means we lose the complete summary showing all the tests in one view,
but it's possible to re-add in the future if we go back to checking what
files changed ourselves or always run everything.

Release Notes:

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

---------

Co-authored-by: Conrad <conrad@zed.dev>

Ben Kunkle and Conrad created

7de3c67 docs: Improve header on mobile (#41404)

Click to expand commit body
Release Notes:

- N/A

Danilo Leal created

60bd417 Allow inspection of zeta2's LLM-based context retrieval (#41340)

Click to expand commit body
Release Notes:

- N/A

---------

Co-authored-by: Agus Zubiaga <agus@zed.dev>

Max Brunsfeld and Agus Zubiaga created

d31194d docs: Fix keybinding display in /configuring-zed (#41402)

Click to expand commit body
Release Notes:

- N/A

Danilo Leal created

4cc6d6a ci: Notarize in parallel (different flavor) (#41392)

Click to expand commit body
Release Notes:

- N/A

---------

Co-authored-by: Conrad Irwin <conrad.irwin@gmail.com>
Co-authored-by: Ben Kunkle <ben@zed.dev>
Co-authored-by: Conrad Irwin <conrad@zed.dev>

Piotr Osiewicz , Conrad Irwin , Ben Kunkle , and Conrad Irwin created

b9eafb8 extensions: Load extension byte repr in background thread (again) (#41398)

Click to expand commit body
Release Notes:

- N/A

Piotr Osiewicz created

5e7927f [WIP] editor: Implement next/prev reference (#41078)

Click to expand commit body
Co-authored-by: Cole <cole@zed.dev>
Co-authored-by: Conrad Irwin <conrad.irwin@gmail.com>

Cameron Mcloughlin , Cole , and Conrad Irwin created

b757365 docs: Reorganize introduction (#41387)

Click to expand commit body
Release Notes:
- Remove Windows/Linux from Getting Started
- Consolidate download & system into new Installation page
- Move Remote Dev out of Windows and into Remote Development
- Add Uninstall page
- Add updates page
- Remove addl learning materials from intro

Katie Geer created

360074e rope: Prevent stack overflows by bumping rayon stack sizes (#41397)

Click to expand commit body
Thread stacks in rust by default have 2 megabytes of stack which for
sumtrees (or ropes in this case) can easily be exceeded depending on the
workload.

Release Notes:

- Fixed stack overflows when constructing large ropes

Lukas Wirth created

b1922b7 Move Nightly release to gh-workflow (#41349)

Click to expand commit body
Follow up to #41304 to move nightly release over

Release Notes:

- N/A

---------

Co-authored-by: Ben Kunkle <ben@zed.dev>

Conrad Irwin and Ben Kunkle created

54fd7ea agent_ui: Don't show root project in path prefix in @-mention menu (#41372)

Click to expand commit body
This PR hides the worktree root name from the path prefix displayed when
you @-mention a file or directory in the agent panel. Given the tight UI
real state we have, I believe that having the project name in there is
redundant—the project you're in is already displayed in the title bar.
Not only it was the very first word you'd see after the file's name, but
it also made the path longer than it needs to. A bit of a design clean
up here :)

(PS: We still show the project name if there are more than one in the
same workspace.)

Release Notes:

- N/A

Danilo Leal created

8564602 command palette: Make footer buttons justified to the right (#41382)

Click to expand commit body
Release Notes:

- N/A

Danilo Leal created

e604ef3 Add a setting to prevent sharing projects in public channels (#41395)

Click to expand commit body
This PR adds a setting to prevent projects from being shared in public
channels.

This can be enabled by adding the following to the project settings
(`.zed/settings.json`):

```json
{
  "prevent_sharing_in_public_channels": true
}
```

This will then disable the "Share" button when not in a private channel:

<img width="380" height="115" alt="Screenshot 2025-10-28 at 2 28 10 PM"
src="https://github.com/user-attachments/assets/6761ac34-c0d5-4451-a443-adf7a1c42bcd"
/>

Release Notes:

- collaboration: Added a `prevent_sharing_in_public_channels` project
setting for preventing projects from being shared in public channels.

Marshall Bowers created

1f5101d agent_ui: Trim whitespace when submitting message (#41391)

Click to expand commit body
Closes #41017

Release Notes:

- N/A

Bennet Fenner created

37540d1 agent: Only include tool guidance in system prompt when profile has tools enabled (#40413)

Click to expand commit body
Was previously sending all of the tools to the LLM on the first message
of a conversation regardless of the selected agent profile. This added
extra context, and tended to create scenarios where the LLM would
attempt to use the tool and it would fail since it was not available.

To reproduce, create a new conversation where you ask the Minimal mode
which tools it has access to, or try to write to a file.

Release Notes:

- Fixed an issue in the agent where all tools would be presented as
available even when using the `Minimal` profile

---------

Co-authored-by: Bennet Bo Fenner <bennetbo@gmx.de>

Christian Durán Carvajal and Bennet Bo Fenner created

d9d2458 lsp: Fix workspace diagnostics when registered statically (#41386)

Click to expand commit body
Closes #41379

Release Notes:

- Fixed diagnostics for Ruff and Biome

Piotr Osiewicz created

a4a2acf gpui: Set initial window title on Wayland (#36844)

Click to expand commit body
Closes #36843 

Release Notes:

- Fixed: set the initial window title correctly on startup in Wayland.

Sushant Mishra created

55554a8 markdown_preview: Improve nested list item prefix style (#39606)

Click to expand commit body
Release Notes:

- Improved nested list item prefix style for Markdown preview.


## Before

<img width="667" height="450" alt="SCR-20251006-rtis"
src="https://github.com/user-attachments/assets/439160c4-7982-463c-9017-268d47c42c0c"
/>

## After

<img width="739" height="440" alt="SCR-20251006-rzlb"
src="https://github.com/user-attachments/assets/f6c237d9-3ff0-4468-ae9c-6853c5c2946a"
/>

---------

Co-authored-by: Bennet Bo Fenner <bennetbo@gmx.de>

Jason Lee and Bennet Bo Fenner created

d00ad02 agent_ui: Add file name and line number to symbol completions (#40508)

Click to expand commit body
Symbol completions in the context picker now show "SymbolName
filename.txt L123" instead of just "SymbolName". This helps distinguish
between symbols with the same name in different files.

## Motivation

I noticed that the message prompt editor only showed symbol names
without any context, making it hard to use in large projects with many
symbols sharing the same name. The inline prompt editor already includes
file context for symbol completions, so I brought that same UX
improvement to the message prompt editor. I've decided to match the
highlighting style with directory completion entries from the message
editor.

## Changes

- Extract file name from both InProject and OutsideProject symbol
locations
- Add `build_symbol_label` helper to format labels with file context
- Update test expectation for new label format

## Screenshots
Inline Prompt Editor
<img width="843" height="334" alt="Screenshot 2025-10-17 at 17 47 52"
src="https://github.com/user-attachments/assets/16752e1a-0b8c-4f58-a0b2-25ae5130f18c"
/>
Old Message Editor:
<img width="466" height="363" alt="Screenshot 2025-10-17 at 17 31 44"
src="https://github.com/user-attachments/assets/900659f3-0632-4dff-bc9a-ab2dad351964"
/>
New Message Editor:
<img width="482" height="359" alt="Screenshot 2025-10-17 at 17 31 23"
src="https://github.com/user-attachments/assets/bf382167-f88b-4f3d-ba3e-1e251a8df962"
/>


Release Notes:

- Added file names and line numbers to symbol completions in the agent
panel

Paweł Kondzior created

233a1eb Open keymap editor from command palette entry (#40825)

Click to expand commit body
Release Notes:

- Adds footer to the command palette with buttons to add or change the
selected actions keybinding. Both open the keymap editor though the add
button takes you directly to the modal for recording a new keybind.


https://github.com/user-attachments/assets/0ee6b91e-b1dd-4d7f-ad64-cc79689ceeb2

---------

Co-authored-by: Joseph T. Lyons <JosephTLyons@gmail.com>
Co-authored-by: Julia Ryan <juliaryan3.14@gmail.com>
Co-authored-by: Danilo Leal <daniloleal09@gmail.com>

David Kleingeld , Joseph T. Lyons , Julia Ryan , and Danilo Leal created

c656101 Use gh-workflow for the `run-bundling` aspects of CI.yml (#41304)

Click to expand commit body
To help make our GitHub Actions easier to understand, we're planning to
split the existing `ci.yml` into three separate workflows:

* run_bundling.yml (this PR)
* run_tests.yml 
* make_release.yml

To avoid the duplication that this might otherwise cause, we're planning
to write the workflows with gh-workflow, and use rust instead of
encoding logic in YAML conditions.

Release Notes:

- N/A

---------

Co-authored-by: Ben Kunkle <ben@zed.dev>

Conrad Irwin and Ben Kunkle created

3248a05 Propagate Jupyter client errors (#40886)

Click to expand commit body
Closes #40884

- Make IOPub task return a `Result`
- Create a monitoring task that watches over IOPub, Control, Routing and
Shell tasks.
- If any of these tasks fail, report the error with `kernel_errored()`
(which is already used to report process crashes)


https://github.com/user-attachments/assets/3125f6c7-099a-41ca-b668-fe694ecc68b9

This is not perfect. I did not have time to look into this but:

- When such errors happen, the kernel should be shut down.
- The kernel should no longer appear as online in the UI

But at least the user is getting feedback on what went wrong.

Release Notes:

- Jupyter client errors are now surfaced in the UI (#40884)

Lionel Henry created

baaf87a Fix `unit_evals.yml` (#41377)

Click to expand commit body
Release Notes:

- N/A

Bennet Fenner created

8991f58 ci: Bump target directory size limit for mac runners (#41375)

Click to expand commit body
Release Notes:

- N/A

Piotr Osiewicz created

2579f86 acp_thread: Fix @mention file path format (#41310)

Click to expand commit body
After #38882 we were always including file/directory mentions as
`zed:///agent/file?path=a/b/c.rs`.
However, for most resource links (files/directories/symbols/selections)
we want to use a common format, so that ACP servers don't have to
implement custom handling for parsing `ResourceLink`s coming from Zed.

This is what it looks like now:
```
[@index.js](file:///Users/.../projects/reqwest/examples/wasm_github_fetch/index.js) 
[@wasm](file:///Users/.../projects/reqwest/src/wasm) 
[@Error](file:///Users/.../projects/reqwest/src/async_impl/client.rs?symbol=Error#L2661:2661) 
[@error.rs (23:27)](file:///Users/.../projects/reqwest/src/error.rs#L23:27) 
```

Release Notes:

- N/A

---------

Co-authored-by: Cole Miller <cole@zed.dev>

Bennet Fenner and Cole Miller created

5423faf Use proper inlay hint range when filtering out hints (#41363)

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

Release Notes:

- N/A

---------

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

Kirill Bulatov and Lukas Wirth created

8a01e48 ui: Properly update scrollbar track color (#41354)

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

This comes down to a caching issue..

Release Notes:

- Fixed an issue where the scrollbar track color would not update in
case the theme was changed.

Finn Evers created