Commit log

ff435e1 v0.187.x stable

Joseph T. Lyons created

339c1d0 Fix project search panic (#31089)

Click to expand commit body
The panic occurred when querying a second search in the project search
multibuffer while there were dirty buffers.

The panic only happened in Nightly so there's no release notes 

Release Notes:

- N/A

Anthony Eid created

2529cc7 Don't pass `-z` flag to git-cat-file (cherry-pick #31053) (#31093)

Click to expand commit body
Cherry-picked Don't pass `-z` flag to git-cat-file (#31053)

Closes #30972 

Release Notes:

- Fixed a bug that prevented the `copy permalink to line` action from
working on systems with older versions of git.

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

gcp-cherry-pick-bot[bot] and Cole Miller created

2c4b30f sublime: Don't map editor::FindNextMatch by default (#31029)

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

Broken in: https://github.com/zed-industries/zed/pull/28559/files

Removes `editor::FindNextMatch` and `editor::FindPreviousMatch` from the
default sublime mappings. If you would like to use this, you will have
to add them to your user keymap. Reverts the previous behavior where
cmd-g / cmd-shift-g relies on the base keymap.

Linux:
```json
  {
    "context": "Editor && mode == full",
    "bindings": {
      "f3": "editor::FindNextMatch",
      "shift-f3": "editor::FindPreviousMatch"
    }
  }
```

MacOS:
```json
  {
    "context": "Editor && mode == full",
    "bindings": {
      "cmd-g": "editor::FindNextMatch",
      "cmd-shift-g": "editor::FindPreviousMatch"
    }
  },
```


Release Notes:

- Fixed a regression in Sublime Text keymap for find next/previous in
the search bar

Peter Tripp created

80651c4 Remove `alt-.` keybinding from terminal on macOS (#30827)

Click to expand commit body
Closes: #30730
It conflicts with the `>` key on the Czech keyboard layout  
If you want the previous behavior, add `"alt-.": ["terminal::SendText",
"\u001b."]` to your keymap under the `Terminal` context.

Release Notes: 

- Improved the default terminal keybind to not conflict on Czech
keyboards

Co-authored-by: Peter Tripp <peter@zed.dev>

Erik Funder Carstensen and Peter Tripp created

a6e579d Fix `ctrl-delete` in terminal (#30720)

Click to expand commit body
Closes #30719

Release Notes:

- Fixed `ctrl-delete` in terminal, now it deletes a word forward

Aleksei Gusev created

a011279 Revert "linux(x11): Add support for pasting images from clipboard (#29387)" (cherry-pick #31033) (#31041)

Click to expand commit body
Cherry-picked Revert "linux(x11): Add support for pasting images from
clipboard (#29387)" (#31033)

Closes: #30523

Release Notes:

- linux: Reverted the ability to paste images on X11, as the change
broke pasting from some external applications

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

gcp-cherry-pick-bot[bot] and Ben Kunkle created

9b75288 Project Search: Don't prompt to save edited buffers in project search results if buffers open elsewhere (cherry-pick #31026) (#31028)

Click to expand commit body
Cherry-picked Project Search: Don't prompt to save edited buffers in
project search results if buffers open elsewhere (#31026)

Closes #ISSUE

Release Notes:

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

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

gcp-cherry-pick-bot[bot] and Ben Kunkle created

b2edefd extension/dap: Add resolve_tcp_template function (#31010)

Click to expand commit body
Extensions cannot look up available port themselves, hence the new API.
With this I'm able to port our Ruby implementation into an extension.

Release Notes:

- N/A

Piotr Osiewicz created

f810584 zed_extension_api: Format `dap.wit` (#30701)

Click to expand commit body
This PR formats the `dap.wit` file.

Release Notes:

- N/A

Marshall Bowers created

ac2afad extension: Add debug_adapters to extension manifest (#30676)

Click to expand commit body
Also pass worktree to the get_dap_binary.

Release Notes:

- N/A

Piotr Osiewicz created

a69b020 debugger: Surface validity of breakpoints (#30380)

Click to expand commit body
We now show on the breakpoint itself whether it can ever be hit.

![image](https://github.com/user-attachments/assets/148d7712-53c9-4a0a-9fc0-4ff80dec5fb1)

Release Notes:

- N/A

---------

Signed-off-by: Umesh Yadav <git@umesh.dev>
Co-authored-by: Anthony <anthony@zed.dev>
Co-authored-by: Cole Miller <cole@zed.dev>
Co-authored-by: Michael Sloan <michael@zed.dev>
Co-authored-by: Marshall Bowers <git@maxdeviant.com>
Co-authored-by: Ben Kunkle <ben@zed.dev>
Co-authored-by: Danilo Leal <67129314+danilo-leal@users.noreply.github.com>
Co-authored-by: Agus Zubiaga <hi@aguz.me>
Co-authored-by: Ben Brandt <benjamin.j.brandt@gmail.com>
Co-authored-by: Agus Zubiaga <agus@zed.dev>
Co-authored-by: Danilo Leal <daniloleal09@gmail.com>
Co-authored-by: Richard Feldman <oss@rtfeldman.com>
Co-authored-by: Max Brunsfeld <maxbrunsfeld@gmail.com>
Co-authored-by: Smit Barmase <heysmitbarmase@gmail.com>
Co-authored-by: peppidesu <bakker.pepijn@gmail.com>
Co-authored-by: Kirill Bulatov <kirill@zed.dev>
Co-authored-by: Ben Kunkle <ben.kunkle@gmail.com>
Co-authored-by: Jens Krause <47693+sectore@users.noreply.github.com>
Co-authored-by: Bennet Bo Fenner <bennet@zed.dev>
Co-authored-by: Max Nordlund <max.nordlund@gmail.com>
Co-authored-by: Finn Evers <dev@bahn.sh>
Co-authored-by: tidely <43219534+tidely@users.noreply.github.com>
Co-authored-by: Sergei Kartsev <kartsevsb@gmail.com>
Co-authored-by: Shardul Vaidya <31039336+5herlocked@users.noreply.github.com>
Co-authored-by: Chris Kelly <amateurhuman@gmail.com>
Co-authored-by: Peter Tripp <peter@zed.dev>
Co-authored-by: Umesh Yadav <23421535+imumesh18@users.noreply.github.com>
Co-authored-by: Julia Ryan <juliaryan3.14@gmail.com>
Co-authored-by: Cole Miller <m@cole-miller.net>
Co-authored-by: Conrad Irwin <conrad.irwin@gmail.com>
Co-authored-by: william341 <wwokwilliam@gmail.com>
Co-authored-by: Liam <33645555+lj3954@users.noreply.github.com>
Co-authored-by: AidanV <aidanvanduyne@gmail.com>
Co-authored-by: imumesh18 <umesh4257@gmail.com>
Co-authored-by: d1y <chenhonzhou@gmail.com>
Co-authored-by: AidanV <84053180+AidanV@users.noreply.github.com>
Co-authored-by: Anthony Eid <56899983+Anthony-Eid@users.noreply.github.com>
Co-authored-by: 张小白 <364772080@qq.com>
Co-authored-by: THELOSTSOUL <1095533751@qq.com>
Co-authored-by: Ron Harel <55725807+ronharel02@users.noreply.github.com>
Co-authored-by: Tristan Hume <tristan@anthropic.com>
Co-authored-by: Stanislav Alekseev <43210583+WeetHet@users.noreply.github.com>
Co-authored-by: Joseph T. Lyons <JosephTLyons@gmail.com>
Co-authored-by: Remco Smits <djsmits12@gmail.com>
Co-authored-by: Anthony Eid <hello@anthonyeid.me>
Co-authored-by: Oleksiy Syvokon <oleksiy@zed.dev>
Co-authored-by: Thomas David Baker <bakert@gmail.com>
Co-authored-by: Nate Butler <iamnbutler@gmail.com>
Co-authored-by: Mikayla Maki <mikayla@zed.dev>
Co-authored-by: Rob McBroom <github@skurfer.com>
Co-authored-by: CharlesChen0823 <yongchen0823@gmail.com>

Piotr Osiewicz , Anthony , Cole Miller , Michael Sloan , Marshall Bowers , Ben Kunkle , Danilo Leal , Agus Zubiaga , Ben Brandt , Agus Zubiaga , Danilo Leal , Richard Feldman , Max Brunsfeld , Smit Barmase , peppidesu , Kirill Bulatov , Ben Kunkle , Jens Krause , Bennet Bo Fenner , Max Nordlund , Finn Evers , tidely , Sergei Kartsev , Shardul Vaidya , Chris Kelly , Peter Tripp , Umesh Yadav , Julia Ryan , Cole Miller , Conrad Irwin , william341 , Liam , AidanV , imumesh18 , d1y , AidanV , Anthony Eid , 张小白 , THELOSTSOUL , Ron Harel , Tristan Hume , Stanislav Alekseev , Joseph T. Lyons , Remco Smits , Anthony Eid , Oleksiy Syvokon , Thomas David Baker , Nate Butler , Mikayla Maki , Rob McBroom , and CharlesChen0823 created

5570248 debugger: Remember focused item (#30722)

Click to expand commit body
Release Notes:

- Debugger Beta: the `debug panel: toggle focus` action now preserves
the debug panel's focused item.

Cole Miller created

1c99928 Add minimap vscode settings import (cherry-pick #30997) (#30999)

Click to expand commit body
Cherry-picked Add minimap vscode settings import (#30997)

Looks like we missed these when adding the minimap.

Release Notes:

- N/A

Co-authored-by: Kirill Bulatov <mail4score@gmail.com>

Co-authored-by: Julia Ryan <juliaryan3.14@gmail.com>
Co-authored-by: Kirill Bulatov <mail4score@gmail.com>

gcp-cherry-pick-bot[bot] , Julia Ryan , and Kirill Bulatov created

31e3cd3 title_bar: Fix config merging to respect priority (#30980)

Click to expand commit body
This is a follow-up to #30450 so that _global_ `title_bar` configs
shadow _defaults_. The way `SettingsSources::json_merge` works is by
considering non-json-nulls as values to propagate. So it's important
that configs be `Option<T>` so any intent in overriding values is
captured.

This PR follows the same `*Settings<FileContent = *SettingsContent>`
pattern used throughout to keep the `Option`s in the "settings content"
type with the finalized values in the "settings" type.

Release Notes:

- N/A

Andres Suarez created

96c3fb7 zed 0.187.4

Mikayla Maki created

af4d39e Add end of service notifications (#30982)

Click to expand commit body
Release Notes:

- N/A

---------

Co-authored-by: Max Brunsfeld <maxbrunsfeld@gmail.com>
Co-authored-by: Marshall Bowers <git@maxdeviant.com>

Mikayla Maki , Max Brunsfeld , and Marshall Bowers created

b2f32c5 agent: Fix OpenAI models not getting first message (#30941)

Click to expand commit body
Closes #30733

Release Notes:

- N/A

Oleksiy Syvokon created

186660e agent: Fix path checks in edit_file (#30909)

Click to expand commit body
- Fixed bug where creating a file failed when the root path wasn't
provided

- Many new checks for the edit_file path

Closes #30706

Release Notes:

- N/A

Oleksiy Syvokon created

6b0d58d agent: Fix unnecessary "tool result too long" (#30798)

Click to expand commit body
Release Notes:

- N/A

Oleksiy Syvokon created

853b706 project_settings: Fix default settings values for `DiagnosticsSettings` (cherry-pick #30686) (#30879)

gcp-cherry-pick-bot[bot] created

75b8203 Fix project search unsaved edits (cherry-pick #30864) (#30865)

Click to expand commit body
Cherry-picked Fix project search unsaved edits (#30864)

Closes #30820

Release Notes:

- Fixed an issue where entering a new search in the project search would
drop unsaved edits in the project search buffer

---------

Co-authored-by: Mark Janssen <20283+praseodym@users.noreply.github.com>

Co-authored-by: Ben Kunkle <ben@zed.dev>
Co-authored-by: Mark Janssen <20283+praseodym@users.noreply.github.com>

gcp-cherry-pick-bot[bot] , Ben Kunkle , and Mark Janssen created

1d0b4df zed 0.187.3

Joseph T. Lyons created

2c86118 debugger: Prevent pane context menu from showing on secondary mouse click in list entries (#30781)

Click to expand commit body
This PR prevents the debug panel pane context menu from showing when you
click your secondary mouse button in **stackframe**, **breakpoint** and
**module** list entries.

Release Notes:

- N/A

Remco Smits created

7c0c5bd debugger: Fix inline values panic when selecting stack frames (#30821)

Click to expand commit body
Release Notes:

- debugger beta: Fix panic that could occur when selecting a stack frame
- debugger beta: Fix inline values not showing in stack trace view

Co-authored-by: Bennet Bo Fenner <bennetbo@gmx.de>
Co-authored-by: Remco Smits <djsmits12@gmail.com>

Anthony Eid , Bennet Bo Fenner , and Remco Smits created

8f9b217 zed 0.187.2

Joseph T. Lyons created

de30643 debugger: Make the stack frame list and module list keyboard-navigable (#30682)

Click to expand commit body
- Switch stack frame list and module list to `UniformList` to access
scrolling behavior
- Implement `menu::` navigation actions

Release Notes:

- Debugger Beta: Added support for menu navigation actions (`ctrl-n`,
`ctrl-p`, etc.) in the stack frame list and module list.

Cole Miller created

235fd06 workspace: Remove default keybindings for close active dock (cherry-pick #30691) (#30736)

Click to expand commit body
Cherry-picked workspace: Remove default keybindings for close active
dock (#30691)

Release Notes:

- N/A

Co-authored-by: Ben Brandt <benjamin.j.brandt@gmail.com>

gcp-cherry-pick-bot[bot] and Ben Brandt created

c408200 Fix rejecting overwritten files if the agent previously edited them (cherry-pick #30744) (#30745)

Click to expand commit body
Cherry-picked Fix rejecting overwritten files if the agent previously
edited them (#30744)

Release Notes:

- Fixed rejecting overwritten files if the agent had previously edited
them.

Co-authored-by: Antonio Scandurra <me@as-cii.com>

gcp-cherry-pick-bot[bot] and Antonio Scandurra created

53faf0d zed 0.187.1

Joseph T. Lyons created

f2050df debugger: Tidy up dropdown menus (#30679)

Click to expand commit body
Before
![CleanShot 2025-05-14 at 13 22
44@2x](https://github.com/user-attachments/assets/c6c06c5c-571d-4913-a691-161f44bba27c)

After
![CleanShot 2025-05-14 at 13 22
17@2x](https://github.com/user-attachments/assets/0a25a053-81a3-4b96-8963-4b770b1e5b45)

Release Notes:

- N/A

Nate Butler created

4cfc49e agent: Fix Markdown codeblock header buttons (#30645)

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

Release Notes:

- agent: Fixed Markdown codeblock header buttons being pushed by long
paths/file names.

Danilo Leal created

72426a9 agent: Fix tool use in Gemini (#30689)

Click to expand commit body
Thread doesn't run pending tools when `stop_reason` is not `ToolUse`.
Perhaps we should change that so that it always runs pending tools if
there are some, but for now this change just fixes setting `stop_reason`
for Google models.

Release Notes:

- N/A

Oleksiy Syvokon created

1c638a1 agent: Don't duplicate recommended models in all models list (#30692)

Click to expand commit body
Release Notes:

- N/A

Oleksiy Syvokon created

249597a v0.187.x preview

Joseph T. Lyons created

1077f27 debugger: Fix launch picker program arg not using relative paths (#30680)

Click to expand commit body
Release Notes:

- N/A

Anthony Eid created

f4eea0d debugger: Fix panics when debugging with inline values or confirming in console (#30677)

Click to expand commit body
The first panic was caused by an unwrap that assumed a file would always
have a root syntax node.

The second was caused by a double lease panic when clicking enter in the
debug console while there was a completion menu open

Release Notes:

- N/A

Anthony Eid created

ed361ff Rename debug: commands to dev: (#30675)

Click to expand commit body
Closes #ISSUE

Release Notes:

- Breaking change: The actions used while developing Zed have been
renamed from `debug:` to `dev:` to avoid confusion with the new debugger
feature:
- - `dev::OpenDebugAdapterLogs`
- - `dev::OpenSyntaxTreeView`
- - `dev::OpenThemePreview`
- - `dev::OpenLanguageServerLogs`
- - `dev::OpenKeyContextView`

Conrad Irwin created

7f9a365 docs: Fix shfmt github url (#30667)

Click to expand commit body
Closes #30661 

Release Notes:

- N/A

Umesh Yadav created

255d8f7 agent: Overwrite files more cautiously (#30649)

Click to expand commit body
1. The `edit_file` tool tended to use `create_or_overwrite` a bit too
often, leading to corruption of long files. This change replaces the
boolean flag with an `EditFileMode` enum, which helps Agent make a more
deliberate choice when overwriting files.

With this change, the pass rate of the new eval increased from 10% to
100%.

2. eval: Added ability to run eval on top of an existing thread. Threads
can now be loaded from JSON files in the `SerializedThread` format,
which makes it easy to use real threads as starting points for
tests/evals.

3. Don't try to restore tool cards when running in headless or eval mode
-- we don't have a window to properly do this.

Release Notes:

- N/A

Oleksiy Syvokon created

22f76ac windows: Remove unneeded ranges for `replace_and_mark_text_in_range` (#30668)

Click to expand commit body
Release Notes:

- N/A

张小白 created

25cc05b Use `Vec` instead of `SmallVec` for `glyphs` field of `ShapedRun` (#30664)

Click to expand commit body
This glyphs field is usually larger than 8 elements, and SmallVec is not
efficient when it cannot store the value inline.

This change also adds precise glyphs run preallocation in some places
`ShapedRun` is constructed.

Release Notes:

- N/A

Michael Sloan created

a4766e2 Add tool result image support to Gemini models (#30647)

Click to expand commit body
Release Notes:

- Add tool result image support to Gemini models

Agus Zubiaga created

2f26a86 debugger: Fix focus nits (#30547)

Click to expand commit body
- Focus the console's query bar (if it exists) when focusing the console
- Fix incorrect focus handles used for the console and terminal at the
`Subview` level

Release Notes:

- N/A

Co-authored-by: Piotr <piotr@zed.dev>
Co-authored-by: Anthony <anthony@zed.dev>

Cole Miller , Piotr , and Anthony created

f1fe505 debugger: Show language icons in debug scenario picker (#30662)

Click to expand commit body
We attempt to resolve the language name in this order

1. Based on debug adapter if they're for a singular language e.g. Delve
2. File extension if it exists
3. If a language name exists within a debug scenario's label

In the future I want to use locators to also determine the language as
well and refresh scenario list when a new scenario has been saved

Release Notes:

- N/A

Anthony Eid created

9826b7b debugger: Add extensions support (#30625)

Click to expand commit body
Closes #ISSUE

Release Notes:

- N/A

---------

Co-authored-by: Anthony <anthony@zed.dev>

Piotr Osiewicz and Anthony created

6fc9036 Multi-glyph text runs on Linux (#30660)

Click to expand commit body
Release Notes:

- N/A

Michael Sloan created

2b74163 context_editor: Allow copying entire line when selection is empty (#30612)

Click to expand commit body
Closes #27879

Release Notes:

- Allow copying entire line when selection is empty in text threads

Bennet Bo Fenner created

71ea7ae Misc optimization/cleanup of use of Cosmic Text on Linux (#30658)

Click to expand commit body
* Use cosmic_text `metadata` attr to write down the `FontId` from the
input run to avoid searching the list of fonts when laying out every
glyph.

* Instead of checking on every glyph if `postscript_name` is an emoji
font, just store `is_known_emoji_font`.

* Clarify why `font_id_for_cosmic_id` is used, and when its use is
valid.

Release Notes:

- N/A

Michael Sloan created

48b376f debugger: Fix nits (#30632)

Click to expand commit body
Release Notes:

- N/A

---------

Co-authored-by: Anthony Eid <hello@anthonyeid.me>

Remco Smits and Anthony Eid created