Commit log

efa3cc1 keymap_ui: Test keystroke input (#35286)

Click to expand commit body
Closes #ISSUE

Separate out the keystroke input into it's own component and add a bunch
of tests for it's core keystroke+modifier event handling logic

Release Notes:

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

Ben Kunkle created

65250fe cloud provider: Use `CompletionEvent` type from `zed_llm_client` (#35285)

Click to expand commit body
Release Notes:

- N/A

Michael Sloan created

77dc65d collab: Attach `User-Agent` to `handle connection` span (#35282)

Click to expand commit body
This PR makes it so we attach the value from the `User-Agent` header to
the `handle connection` span.

We'll start sending this header in
https://github.com/zed-industries/zed/pull/35280.

Release Notes:

- N/A

Marshall Bowers created

f9224b1 client: Send `User-Agent` header on WebSocket connection requests (#35280)

Click to expand commit body
This PR makes it so we send the `User-Agent` header on the WebSocket
connection requests when connecting to Collab.

We use the user agent set on the parent HTTP client.

Release Notes:

- N/A

Marshall Bowers created

aa3437e Allow installing from an administrator user (#35202)

Click to expand commit body
Release Notes:

- N/A

localcc created

397b5f9 Ensure context servers are spawned in the workspace directory (#35271)

Click to expand commit body
This fixes an issue where we were not setting the context server working
directory at all.

Release Notes:

- Context servers will now be spawned in the currently active project
root.

---------

Co-authored-by: Danilo Leal <danilo@zed.dev>

Finn Evers and Danilo Leal created

d43f464 Fix nightly icon (#35204)

Click to expand commit body
Release Notes:

- N/A

localcc created

511fdae Allow searching Windows paths with forward slash (#35198)

Click to expand commit body
Release Notes:

- Searching windows paths is now possible with a forward slash

localcc created

a8bdf30 client: Fix typo in the error message (#35275)

Click to expand commit body
This PR fixes a typo in the error message for when we fail to parse the
Collab URL.

Release Notes:

- N/A

Marshall Bowers created

2fced60 paths: Fix using relative path as custom_data_dir (#35256)

Click to expand commit body
This PR fixes issue of incorrect LSP path args caused by using a
relative path when customizing data directory.

command:
```bash
.\target\debug\zed.exe --user-data-dir=.\target\data
```

before:
```log
2025-07-29T14:17:18+08:00 INFO  [lsp] starting language server process. binary path: "F:\\nvm\\nodejs\\node.exe", working directory: "F:\\zed\\target\\data\\config", args: [".\\target\\data\\languages\\json-language-server\\node_modules/vscode-langservers-extracted/bin/vscode-json-language-server", "--stdio"]
2025-07-29T14:17:18+08:00 INFO  [project::prettier_store] Installing default prettier and plugins: [("prettier", "3.6.2")]
2025-07-29T14:17:18+08:00 ERROR [lsp] cannot read LSP message headers
2025-07-29T14:17:18+08:00 ERROR [lsp] Shutdown request failure, server json-language-server (id 1): server shut down

2025-07-29T14:17:43+08:00 ERROR [project] Invalid file path provided to LSP request: ".\\target\\data\\config\\settings.json"
Thread "main" panicked with "called `Result::unwrap()` on an `Err` value: ()" at crates\project\src\lsp_store.rs:7203:54
https://github.com/zed-industries/zed/blob/cfd5b8ff10cd88a97988292c964689f67301520b/src/crates\project\src\lsp_store.rs#L7203 (may not be uploaded, line may be incorrect if files modified)
```

after:
```log
2025-07-29T14:24:20+08:00 INFO  [lsp] starting language server process. binary path: "F:\\nvm\\nodejs\\node.exe", working directory: "F:\\zed\\target\\data\\config", args: ["F:\\zed\\target\\data\\languages\\json-language-server\\node_modules/vscode-langservers-extracted/bin/vscode-json-language-server", "--stdio"]
```

Release Notes:

- N/A

devjasperwang created

3fc84f8 Comment on source of ctrl-m in keymaps (#35273)

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

Release Notes:

- N/A

Peter Tripp created

5a218d8 Add more data to see which extension got leaked (#35272)

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

Release Notes:

- N/A

Kirill Bulatov created

9353ba7 Fix remaining agent server integration tests (#35222)

Click to expand commit body
Release Notes:

- N/A

Agus Zubiaga created

8f952f1 gpui: Ensure first tab index is selected on first focus (#35247)

Click to expand commit body
This fixes an issue with tab indices where we would actually focus the
second focus handle on first focus instead of the first one. The test
was updated accordingly.

Release Notes:

- N/A

---------

Co-authored-by: Jason Lee <huacnlee@gmail.com>

Finn Evers and Jason Lee created

6c57915 lsp: Remove Attach enum, default to Shared behaviour (#35248)

Click to expand commit body
This should be a no-op PR, behavior-wise.

Release Notes:

- N/A

Piotr Osiewicz created

691b3ca Cache LSP code lens requests (#35207)

Kirill Bulatov created

cfd5b8f python: Uplift basedpyright support into core (#35250)

Click to expand commit body
This PR adds a built-in adapter for the basedpyright language server.

For now, it's behind the `basedpyright` feature flag, and needs to be
requested explicitly like this for staff:

```
  "languages": {
    "Python": {
      "language_servers": ["basedpyright", "!pylsp", "!pyright"]
    }
  }
```

(After uninstalling the basedpyright extension.)

Release Notes:

- N/A

Cole Miller created

e526921 lsp/python: Temporarily report just a singular workspace folder instead of all of the roots (#35243)

Click to expand commit body
Temporarily fixes #29133

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

Release Notes:

- python: Zed now reports a slightly different set of workspace folders
for Python projects to work around quirks in handling of multi-lsp
projects with virtual environment. This behavior will be revisited in a
near future.

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

Piotr Osiewicz and Cole created

d2ef287 Add runnable support for Deno.test (#34593)

Click to expand commit body
example of detected code:
```ts
Deno.test("t", () => {
  console.log("Hello, World!");
});

Deno.test(function azaz() {
  console.log("Hello, World!");
});
```

I can't build zed locally so I didn't test this, but I think the code is
straightforward enough, hopefully someone else can verify it

Closes #ISSUE

Release Notes:

- N/A

Bedis Nbiba created

109edda docs: Fix link in configuration documentation (#35249)

Click to expand commit body
# Summary

The link "under the configuration page" [on this
page](https://zed.dev/docs/configuring-zed#agent) is broken. It should
be linking to [this page](https://zed.dev/docs/ai/configuration).

## Approach

I noted that all other links in this document begin with "./" where the
ai configuration link does not, I also noticed [this
PR](https://github.com/zed-industries/zed/pull/31119) fixing a link with
the same approach. I don't fully understand why this is the fix.

## Previous Approaches

I have tried writing the following redirect in `docs/book.toml`:
`"/ai/configuration.html" = "/docs/ai/configuration.html"`. However this
broke the `mdbook` build with the below error.

```
2025-07-29 08:49:36 [ERROR] (mdbook::utils): 	Caused By: Not redirecting "/Users/tmonaghan/dev/zed/docs/book/ai/configuration.html" to "/docs/ai/configuration.html" because it already exists. Are you sure it needs to be redirected?
```

Release Notes:

- N/A

Tom Monaghan created

798aa50 Fix tasks leaked despite workspace window close (#35246)

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

Release Notes:

- Fixed tasks leaked despite workspace window close

Kirill Bulatov created

11c7b49 Fix panic feature flag detection (#35245)

Click to expand commit body
The flag was being checked before feature flags were resolved.

Release Notes:

- N/A

Julia Ryan created

ca34ead onboarding: Add proper icon for action (#35241)

Click to expand commit body
This change updates one icon within the onboarding flow to the indended
icon for that entry.

Release Notes:

- N/A

Finn Evers created

158f65f gpui: Ensure tab index handles are properly reused across frames (#35235)

Click to expand commit body
This fixes an issue where focus handles with a tab index would get lost
between rendered frames because the focus handles were not reused for
the following paint cycle.

Release Notes:

- N/A

Finn Evers created

fa6b1a0 keymap_ui: Fix bug introduced in #35208 (#35237)

Click to expand commit body
Closes #ISSUE

Fixes a bug that was cherry picked onto stable and preview branches
introduced in #35208 whereby modifier keys would show up and not be
removable when editing a keybind

Release Notes:

- (preview only) Keymap Editor: Fixed an issue introduced in v0.197.2
whereby modifier keys would show up and not be removable while recording
keystrokes in the keybind edit modal

Ben Kunkle created

f3dc842 keymap editor: Make table denser (#35236)

Click to expand commit body
Hopefully, this will make it a bit easier to parse as a whole.

Release Notes:

- Made the keymap editor denser, improving how easy you can parse it at
a glance.

Danilo Leal created

7ccf8c2 onboarding: Continue work on new flow (#35233)

Click to expand commit body
This PR continues the work on the new and revamped onboarding flow.


Release Notes:

- N/A

Finn Evers created

8207621 Improve JetBrains keymap for dock toggling (#35234)

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

This improves Zed's behavior with the Jetbrains keymap for toggling
specific docks/sidebars with cmd-0 thru cmd-9 (macos) and alt-0 thru
alt-9 (linux). Added in
https://github.com/zed-industries/zed/pull/34641. Additionally, this
also maps `ctrl-b` / `ctrl-alt-`b to their JetBrains equivalents
(`editor::GoToDefinition` and `editor::GoToDefinitionSplit`) instead of
the default vscode-compatable behavior (toggle left / right dock). This
is because we those specific toggles and a default Hide keyboard
shortcut (`shift-escape`) added in
https://github.com/zed-industries/zed/pull/35230.

Thanks to @thomaseizinger for raising this in:
-
https://github.com/zed-industries/zed/discussions/34643#discussioncomment-13856746

Release Notes:

- Improve support keyboard-based dock show/hide in Jetbrains keymap.

Peter Tripp created

ab90ed4 collab: Remove `POST /billing/subscriptions/sync` endpoint (#35232)

Click to expand commit body
This PR removes the `POST /billing/subscriptions/sync` endpoint, as it
has been moved to `cloud.zed.dev`.

Release Notes:

- N/A

Marshall Bowers created

994d400 Map shift-escape in the Jetbrains keymaps (#35230)

Click to expand commit body
Release Notes:

- Added support for closing docks (sidebars) with `shift-escape` in the
Jetbrains keymaps.

Peter Tripp created

cf13a76 editor: Prioritize fuzzy score over sort positions in code completion sort (#35229)

Click to expand commit body
We already prioritize matches that come after separators like `_`: 


https://github.com/zed-industries/zed/blob/cef7d53607381975ea00d6302d8a9aab3c40eb1f/crates/fuzzy/src/matcher.rs#L274

and deprioritize non-consecutive matches using distance penalty:


https://github.com/zed-industries/zed/blob/cef7d53607381975ea00d6302d8a9aab3c40eb1f/crates/fuzzy/src/matcher.rs#L281

In completion sort, letting fuzzy score be the primary sort factor and
sort positions be secondary yields better results upon testing. We still
need sort positions because of this kind of test case:


https://github.com/zed-industries/zed/blob/cef7d53607381975ea00d6302d8a9aab3c40eb1f/crates/editor/src/code_completion_tests.rs#L195-L217

Before/After:

<img height="250" alt="image"
src="https://github.com/user-attachments/assets/38495576-add6-4435-93f0-891f48ec9263"
/>
<img height="250" alt="image"
src="https://github.com/user-attachments/assets/0c73b835-0e23-4e30-a3ff-28bb56294239"
/>


Release Notes:

- N/A

Smit Barmase created

b64977f Use zed settings to detect `.zed` folders (#35224)

Click to expand commit body
Behind-the-scenes enhancement of
https://github.com/zed-industries/zed/pull/35221

Release Notes:

- N/A

Richard Feldman created

c3920b8 editor: Ensure code actions menu doesn't grow beyond its max size (#35211)

Click to expand commit body
This resolves the same issue as fixed by
https://github.com/zed-industries/zed/pull/34939/commits/d295409f0fc9c1ccd5e06e91c1c5365e96f16486
for the code actions menu.

No release notes since this only occurs on Nightly.

Release Notes:

- N/A

Finn Evers created

055a9f2 Fix keybinds and 'No default binding' shown in docs (#35227)

Click to expand commit body
Previously:
<img width="724" height="234" alt="Screenshot 2025-07-28 at 14 49 50"
src="https://github.com/user-attachments/assets/b5203316-221d-4af5-8190-124f9b2b4cdf"
/>


Release Notes:

- N/A

Peter Tripp created

a55bd49 Allow edit tool to access files outside project (with confirmation) (#35221)

Click to expand commit body
Now the edit tool can access files outside the current project (just
like the terminal tool can), but it's behind a prompt (unlike other edit
tool actions).

Release Notes:

- The edit tool can now access files outside the current project, but
only if the user grants it permission to.

Richard Feldman created

a57e4dc Upload debug info to sentry.io in nightly builds (#35089)

Click to expand commit body
This is a preparatory change which will allow us to use sentry for crash
reporting once we start uploading minidumps.

Release Notes:

- N/A

Julia Ryan created

eef15ab keymap_ui: Additional keystroke input polish (#35208)

Click to expand commit body
Closes #ISSUE

Fixed various issues and improved UX around the keystroke input
primarily when used for keystroke search.

Release Notes:

- Keymap Editor: FIxed an issue where the modifiers used to activate
keystroke search would appear in the keystroke search
- Keymap Editor: Made it possible to search for repeat modifiers, such
as a binding with `cmd-shift cmd`
- Keymap Editor: Made keystroke search matches match based on ordered
(not necessarily contiguous) runs. For example, searching for `cmd
shift-j` will match `cmd-k cmd-shift-j alt-q` and `cmd-i g shift-j` but
not `alt-k shift-j` or `cmd-k alt-j`
- Keymap Editor: Fixed the clear keystrokes binding (`delete` by
default) not working in the keystroke input

Ben Kunkle created

5aa8425 Update Nightly app icon (#35215)

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

Release Notes:

- N/A

Danilo Leal created

05d3473 Fix Nushell environment variables (#35166)

Click to expand commit body
- Fixes environment variable ingestion for Nushell.

Closes #35056

Release Notes:

- N/A

Todd L Smith created

3dc36dc git: Touch up amend UX (#35114)

Click to expand commit body
Follow-up to #26114

- Ensure that the previous commit message is filled in when toggling on
amend mode from the context menu
- Fix keybinding flicker in context menu

Release Notes:

- N/A

Cole Miller created

fd68265 Fix integration tests for claude (#35212)

Click to expand commit body
Release Notes:

- N/A

Agus Zubiaga created

5e2da04 debugger: Fix the terminal popping up when the Rust debugger starts on Windows (#35125)

Click to expand commit body
This PR fixs a terminal popping up when debugging Rust on Windows.


Release Notes:

- N/A

---------

Co-authored-by: 张小白 <364772080@qq.com>

devjasperwang and 张小白 created

c2fc70e ACP over MCP server impl (#35196)

Click to expand commit body
Release Notes:

- N/A

---------

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

Agus Zubiaga and Ben Brandt created

b02ae77 ai onboarding: Add first-open upsell card (#35199)

Click to expand commit body
Release Notes:

- N/A

Danilo Leal created

3a1b184 Fix debugger on Windows (#35180)

Click to expand commit body
Closes #33429

Release Notes:

- N/A

张小白 created

4aae7ae debugger: Fix not being able to stop a Go debug session when no breakpoints were ever hit (#35190)

Click to expand commit body
Fixes #35030

Release Notes:

- debugger: Fixed a bug where a Go debug session could not be stopped if
no breakpoint was ever hit.

Piotr Osiewicz created

cef7d53 collab: Refine call buttons design (#35007)

Click to expand commit body
Making icons consistent, adjusting spacing, and moving the "Leave Call"
button to be the very last, which makes more sense to me than the
"Share" button being the last. Sharing your project is still part of the
call, so in the left edge of the button strip is where, conceptually,
the option to end the call should be, I think!

Release Notes:

- N/A

Danilo Leal created

3ad0546 Re-add `TestScreenCaptureStream` implementation for `mock_client` to fix FreeBSD and MinGW builds (#35191)

Click to expand commit body
The implementation was removed in #31506. re-added it to match the
current implementation from `gpui::test`

Closes #35189

Release Notes:

- N/A

Maksim Bondarenkov created

e38f575 ci: Use cargo update --locked instead of --frozen (#35192)

Click to expand commit body
This fixes false positives when e.g. bumping git deps

Release Notes:

- N/A

Piotr Osiewicz created

2566acc go: Support benchmarks named "Benchmark" (#35167)

Click to expand commit body
The regular expression for benchmarks was enforcing using a suffix
(e.g., `BenchmarkFoo`), but `Benchmark` is a valid benchmark name, just
as `Test` is a valid test name, and `Fuzz` is a valid fuzz test name.

Release Notes:

- Add support for running Go benchmarks named "Benchmark"

Robert Fratto created