I'm not sure we actually want to be using `debug-info=unpacked` and then
running `dsymutil` with `--flat`, but for now the minimal change to get
this working is to manually specify the flattened, uncompressed debug
info file for upload, which in turn will cause `sentry-cli` to pick up
on source-info for the zed binary.
I think in the future we should switch to `packed` debug info, both for
the zed binary _and_ the remote server, and then we can tar up the
better supported `dSYM` folder format rather than the flat dwarf
version.
Release Notes:
- N/A
Julia Ryan
created
4e97968
zeta: Update data collection eligibility when license file contents change + add Apache 2.0 (#35900)
Click to expand commit body
Closes #35070
Release Notes:
- Edit Prediction: Made license detection update eligibility for data
collection when license files change.
- Edit Prediction: Added Apache 2.0 license to opensource licenses
eligible for data collection.
- Edit Prediction: Made license detection less sensitive to whitespace
differences and check more files.
Michael Sloan
created
c053923
thread_view: Trim only trailing whitespace from last chunk of user message (#35902)
Click to expand commit body
This fixes internal whitespace after the last @mention going missing
from the user message as displayed in history.
Release Notes:
- N/A
Cole Miller
created
aedf195
Use distinct user agents in agent eval and zeta-cli (#35897)
Click to expand commit body
Agent eval now also uses a proper Zed version
Release Notes:
- N/A
Michael Sloan
created
9443c93
Make One Dark's `ansi.*magenta` colors more magenta-y (#35423)
Click to expand commit body
Tweak the `ansi.*magenta` colours so they are not confused with
`ansi.*red`. This matches how "One Light" behaves, where `ansi.*magenta`
uses the same purple as for keyword.
This change helps distinguish anything that the terminal might use
magenta for from errors, and helps make more readable the output of
certain tools.
For maintainers: The color for `ansi.magenta` is the same as for
`syntax.keyword`. The others are modifications on that colour to taste.
If you have some specific shades that need to be used please tell me, or
feel free to take over the PR.
Before: `jj log` and `difftastic` output
<img width="863" height="592" alt="Screenshot 2025-07-31 at 19 32 11"
src="https://github.com/user-attachments/assets/994b1cbd-ff64-4620-bd51-a5073fd6eb2a"
/>
After:
<img width="862" height="558" alt="Screenshot 2025-07-31 at 19 35 33"
src="https://github.com/user-attachments/assets/49dfb856-6b63-4498-8779-b8624230d6a3"
/>
Release Notes:
- N/A
---------
Co-authored-by: Danilo Leal <daniloleal09@gmail.com>
Alejandro Fernández Gómez
and
Danilo Leal
created
a1bc6ee
zeta: Only send outline and diagnostics when data collection is enabled (#35896)
Click to expand commit body
This data is not currently used by edit predictions - it is only useful
when `can_collect_data == true`.
Release Notes:
- N/A
Michael Sloan
created
a4f7747
Improve extension development docs (#33646)
Click to expand commit body
I'm installing an extension for the first time from source and assumed
that the sentence
> If you already have a published extension with the same name
installed, your dev extension will override it.
also means that it would override the already installed extension.
Besides that I've had to use `--foreground` mode to also get more
meaningful error messages under NixOS without using
`programs.nix-ld.enabled = true;`.
Release Notes:
- Improved Zed documentation for extension development
---------
Co-authored-by: Peter Tripp <peter@zed.dev>
Phileas Lebada
and
Peter Tripp
created
d7db034
Upload debug info for preview/stable builds (#35895)
Click to expand commit body
This should fix all the unsymbolicated backtraces we're seeing on
preview builds
Release Notes:
- N/A
Julia Ryan
created
f3399da
file_finder: Fix right border not rendering (#35684)
2be6f9d
theme: Add support for per-theme overrides (#30860)
Click to expand commit body
Closes #14050
Release Notes:
- Added the ability to set theme-specific overrides via the
`theme_overrides` setting.
---------
Co-authored-by: Peter Tripp <peter@zed.dev>
Co-authored-by: Marshall Bowers <git@maxdeviant.com>
Aleksei Gusev
,
Peter Tripp
, and
Marshall Bowers
created
c6ef35b
Disable edit predictions in Zed settings by default (#34401)
Click to expand commit body
In Zed settings, json schema based LSP autocomplete is very good, edit
predictions are not.
Disable the latter by default.
Release Notes:
- N/A
Peter Tripp
created
91474e2
Make close tab and pin tab buttons slightly larger for better usability (#34428)
Click to expand commit body
Closes #6817
Increases the size of tab buttons from 16px to 18px so they're easier to
click.
For comparison, tab buttons in VSCode have a click target size of 20px,
so we're still a bit smaller than that.
Before:
<img width="261" height="33" alt="before_tab_buttons"
src="https://github.com/user-attachments/assets/7a43f8e1-da84-4981-b2c8-ca77f12ef279"
/>
After:
<img width="265" height="33" alt="after_tab_buttons"
src="https://github.com/user-attachments/assets/c64a98dd-c6bc-480b-be10-f7fa467074c4"
/>
VSCode (for comparison):
<img width="242" height="34" alt="Screenshot 2025-07-14 at 1 43 03 PM"
src="https://github.com/user-attachments/assets/2fafeb2f-75e6-45d1-83da-8601c22474bd"
/>
Release Notes:
- Improve usability of close tab and pin tab buttons by making them
slightly larger
---------
Co-authored-by: Danilo Leal <daniloleal09@gmail.com>
Daniel Sauble
and
Danilo Leal
created
fd1beed
Prevent scrollbar from covering bottom right text in terminal (#33636)
Click to expand commit body
Closes https://github.com/zed-industries/zed/issues/27241
Release Notes:
- Fixed terminal scrollbar covering bottom right text by adding proper
content padding when scrollbar is visible
---------
Co-authored-by: Danilo Leal <daniloleal09@gmail.com>
ddoemonn
and
Danilo Leal
created
e0fc320
Fill capabilities on project (re)join (#35892)
Switch our Linux aarch_64 release builds from Linux on Graviton (32
vCPU, 64GB) to Linux running on Apple M4 Pro (8vCPU, 32GB). Builds are
faster (20mins vs 30mins) for the same cost (960 unit minutes;
~$0.96/ea).
<img width="763" height="285" alt="Screenshot 2025-08-08 at 13 14 41"
src="https://github.com/user-attachments/assets/12c45c8b-59f3-40d8-974c-1003b5080287"
/>
Release Notes:
- N/A
Peter Tripp
created
f3a58b5
Handle drag and drop in new agent threads (#35879)
Click to expand commit body
This is a bit simpler than for the original agent thread view, since we
don't have to deal with opening buffers or a context store.
Release Notes:
- N/A
Cole Miller
created
2cde6da
Redesign and clean up all icons across Zed (#35856)
Click to expand commit body
- [x] Clean up unused and old icons
- [x] Swap SVG for all in-use icons with the redesigned version
- [x] Document guidelines
Release Notes:
- N/A
Danilo Leal
created
530f507
ui: Fix switch field info tooltip (#35882)
Click to expand commit body
Passing an empty on_click handler so that clicking on the info icon
doesn't actually trigger the switch itself, which happens if you click
anywhere in the general switch field surface area.
Release Notes:
- N/A
Danilo Leal
created
315a920
Ensure Edit Prediction provider is properly assigned on sign-in (#35885)
Click to expand commit body
This PR fixes an issue where Edit Predictions would not be available in
buffers that were opened when the workspace loaded.
The issue was that there was a race condition between fetching/setting
the authenticated user state and when we assigned the Edit Prediction
provider to buffers that were already opened.
We now wait for the event that we emit when we have successfully loaded
the user in order to assign the Edit Prediction provider, as we'll know
the user has been loaded into the `UserStore` by that point.
Closes https://github.com/zed-industries/zed/issues/35883
Release Notes:
- Fixed an issue where Edit Predictions were not working in buffers that
were open when the workspace initially loaded.
Co-authored-by: Richard Feldman <oss@rtfeldman.com>
Marshall Bowers
and
Richard Feldman
created
f2435f7
onboarding: Fix a double lease panic caused by Onboarding::clone_on_split (#35815)
Click to expand commit body
Release Notes:
- N/A
Anthony Eid
created
327456d
context menu: Fix go to first element on context menu (#35875)
Click to expand commit body
Closes #35873
Release Notes:
- Fixed bug where context menu doesn't circle back to the first item
when the last item is not selectable
Alvaro Parker
created
2a310d7
windows: Fix the issue where `ags.dll` couldn’t be replaced during update (#35877)
db90127
Lay the groundwork to create terminals in `AcpThread` (#35872)
Click to expand commit body
This just prepares the types so that it will be easy later to update a
tool call with a terminal entity. We paused because we realized we want
to simplify how terminals are created in zed, and so that warrants a
dedicated pull request that can be reviewed in isolation.
Release Notes:
- N/A
---------
Co-authored-by: Ben Brandt <benjamin.j.brandt@gmail.com>
Antonio Scandurra
and
Ben Brandt
created
51298b6
Use `Project`'s EntityId as the "window id" for Alacritty PTYs (#35876)
Click to expand commit body
It's unfortunate to need to have access to a GPUI window in order to
create a terminal, because it forces to take a `Window` parameter in
entities that otherwise would have been pure models.
This pull request changes it so that we pass the `Project`'s entity id,
which is equally stable as the window id.
Release Notes:
- N/A
Co-authored-by: Ben Brandt <benjamin.j.brandt@gmail.com>
Antonio Scandurra
and
Ben Brandt
created
95547f0
Add release_channel data to request child spans (#35874)
Click to expand commit body
Follow-up of https://github.com/zed-industries/zed/pull/35729
Release Notes:
- N/A
Kirill Bulatov
created
f0782aa
agent: Don't error when the agent navigation history hasn't been persisted (#35863)
Click to expand commit body
This causes us to log an unrecognizable error on every startup otherwise
Release Notes:
- N/A
- **Use a struct instead of a thruple for visible worktree entries**
- **Try some telemetry**
Closes #ISSUE
Release Notes:
- N/A
---------
Co-authored-by: Piotr Osiewicz <24362066+osiewicz@users.noreply.github.com>
Conrad Irwin
and
Piotr Osiewicz
created
0097d89
language: Fix rust completion labels with `fullFunctionSignature` config (#35823)
Click to expand commit body
Release Notes:
- N/A
Lukas Wirth
created
eb22639
cli: Use existing release channel name (#34771)
Click to expand commit body
Remove the local `RELEASE_CHANNEL` source that seems to be used only for
Linux as opposed to `channel_release::CHANNEL_RELEASE_NAME` for other
platform
Windows:
https://github.com/zed-industries/zed/blob/eee1b1f8a8ba47a14efc524a21b63d896b03feff/crates/cli/src/main.rs#L681-L685
Release Notes:
- N/A
Jakub Panek
created
738968e
editor: Consider mixed hover link kinds when navigating to multibuffer (#35828)
Click to expand commit body
Previously when handling multiple hover links we filtered non-location
links out which may end up with a single location entry only, resulting
in us opening a multi buffer for a single location. This changes the
logic to do the filtering first, then deciding on whether to open a
single buffer or multi buffer.
Closes https://github.com/zed-industries/zed/issues/6730
Release Notes:
- N/A
Lukas Wirth
created
edef1f1
Fix acp generating status after stop (#35852)
Click to expand commit body
Release Notes:
- N/A
Agus Zubiaga
created
3bee803
Use TMPDIR environment variable in install script (#35636)
Click to expand commit body
## Summary
This PR updates the install script to respect the `TMPDIR` environment
variable when creating temporary directories.
## Motivation
Some environments have non-standard temporary directory locations or
restrictions on `/tmp`. This change allows users to specify an
alternative temporary directory by setting the `TMPDIR` environment
variable.
## Changes
- Check if `TMPDIR` is set and points to a valid directory
- Use `$TMPDIR` for temporary files if available
- Fall back to `/tmp` if `TMPDIR` is not set or invalid
## Testing
Tested the script with:
- `TMPDIR` unset (uses `/tmp` as before)
- `TMPDIR` set to a valid directory (uses specified directory)
- `TMPDIR` set to an invalid path (falls back to `/tmp`)
This change maintains backward compatibility while adding flexibility
for environments with non-standard temporary directory requirements.
Release Notes:
- N/A
Anne Schuth
created
2c7251e
Add setting to hide active language button in the status bar (#33977)
Click to expand commit body
Release Notes:
- Added settings status_bar.show_active_language_button to show/hide the
language button in the status bar.
The motivation for this is visual, I have had zero issues with its
functionality.
The language switcher can still be accessed by the command palette,
menu, or a keyboard shortcut.
------
This is my first Zed and first Rust PR, so criticism is very welcome.
I know there has been discussion around how the status bar settings are
structured and named, and I am happy to change it to whatever is best. I
was also not sure what order to put it in in the settings default.json.
Feedback welcome.
Here is a picture of it in action:

---------
Co-authored-by: zumbalogy <3770982+zumbalogy@users.noreply.github.com>
Co-authored-by: Kirill Bulatov <kirill@zed.dev>
zumbalogy
,
zumbalogy
, and
Kirill Bulatov
created
0169bdd
project panel: Add setting to disable auto opening project panel (#34752)
Click to expand commit body
Release Notes:
- Add `project_panel.starts_open` to control opening project panel in
new projects.
Resolves part of #34337
Actually I need also to add:
```
"languages": {
"Vue.js": {
"language_servers": [
"vue-language-server",
"emmet-language-server",
"..."
]
}
},
```
not sure how to resolve fully, happy to continue only little guidance
needed.
Release Notes:
- allow emmet in Vue.js files
---------
Co-authored-by: Marshall Bowers <git@maxdeviant.com>
Samuel
and
Marshall Bowers
created
0dd480d
Add spread operator to the @operator list for ECMAScript languages (#35360)
Click to expand commit body
Previously, this was the one thing that could not be styled properly in
ecmascript languages in the zed config, because it was not able to be
targeted.
Now, it is added alongside other operators. This has been tested and
works as expected.
Release Notes:
- N/A
00701b5
git_hosting_providers: Extract Bitbucket pull request number (#34584)
Click to expand commit body
git: Extract Bitbucket pull request number
Release Notes:
- git: Extract Bitbucket pull request number
---------
Co-authored-by: Peter Tripp <peter@zed.dev>
Neo Nie
and
Peter Tripp
created
cdfb334
git: Make inline blame padding configurable (#33631)
Click to expand commit body
Just like with diagnostics, adding a configurable padding to inline
blame
Release Notes:
- Added configurable padding to inline blame
---------
Co-authored-by: Cole Miller <cole@zed.dev>
Co-authored-by: Peter Tripp <petertripp@gmail.com>
Abdelhakim Qbaich
,
Cole Miller
, and
Peter Tripp
created
35cd1b9
filter out comments in deploy helper env vars (#35847)
Click to expand commit body
Turns out a `.sh` file isn't actually a shell script :(
Release Notes:
- N/A
Mikayla Maki
created
bd402fd
editor: Fix Follow Agent unexpectedly stopping during edits (#35845)
Click to expand commit body
Closes #34881
For horizontal scroll, we weren't keeping track of the `local` bool, so
whenever the agent tries to autoscroll horizontally, it would be seen as
a user scroll event resulting in unfollow.
Release Notes:
- Fixed an issue where the Follow Agent could unexpectedly stop
following during edits.
smit
created
c7d641e
Revert "chore: Bump Rust to 1.89 (#35788)" (#35843)
Click to expand commit body
This reverts commit efba2cbfd371bdd85dc3bfdd6b98d1d405ad9a89.
Unfortunately, the Docker image for 1.89 has not shown up yet. Once it
has, we should re-land this.
Release Notes:
- N/A