Commit graph

23408 commits

Author SHA1 Message Date
Finn Evers
aeb68cd84a
Ensure context servers are spawned in the workspace directory (#35271)
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>
2025-08-23 10:36:05 -04:00
localcc
c25c677c86
Allow searching Windows paths with forward slash (#35198)
Release Notes:

- Searching windows paths is now possible with a forward slash
2025-08-23 10:36:05 -04:00
Marshall Bowers
bbeadfdb48
client: Fix typo in the error message (#35275)
This PR fixes a typo in the error message for when we fail to parse the
Collab URL.

Release Notes:

- N/A
2025-08-23 10:36:05 -04:00
devjasperwang
14095ae20a
paths: Fix using relative path as custom_data_dir (#35256)
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
cfd5b8ff10/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
2025-08-23 10:36:05 -04:00
Kirill Bulatov
48186c39fa
Add more data to see which extension got leaked (#35272)
Part of https://github.com/zed-industries/zed/issues/35185

Release Notes:

- N/A
2025-08-23 10:36:05 -04:00
Agus Zubiaga
a9ef9e10bd
Fix remaining agent server integration tests (#35222)
Release Notes:

- N/A
2025-08-23 10:36:05 -04:00
Finn Evers
789f4e0024
gpui: Ensure first tab index is selected on first focus (#35247)
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>
2025-08-23 10:36:05 -04:00
Piotr Osiewicz
c121b01a18
lsp: Remove Attach enum, default to Shared behaviour (#35248)
This should be a no-op PR, behavior-wise.

Release Notes:

- N/A
2025-08-23 10:36:05 -04:00
Kirill Bulatov
8ffcd9f6e3
Cache LSP code lens requests (#35207) 2025-08-23 10:36:05 -04:00
Cole Miller
1ee96458be
python: Uplift basedpyright support into core (#35250)
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
2025-08-23 10:36:05 -04:00
Piotr Osiewicz
de5ee44ac9
lsp/python: Temporarily report just a singular workspace folder instead of all of the roots (#35243)
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>
2025-08-23 10:36:04 -04:00
Bedis Nbiba
0e52f36c2a
Add runnable support for Deno.test (#34593)
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
2025-08-23 10:36:04 -04:00
Kirill Bulatov
a302ec75b8
Fix tasks leaked despite workspace window close (#35246)
Closes https://github.com/zed-industries/zed/issues/34932

Release Notes:

- Fixed tasks leaked despite workspace window close
2025-08-23 10:36:04 -04:00
Julia Ryan
9dc6b01770
Fix panic feature flag detection (#35245)
The flag was being checked before feature flags were resolved.

Release Notes:

- N/A
2025-08-23 10:36:04 -04:00
Finn Evers
54b52bb636
onboarding: Add proper icon for action (#35241)
This change updates one icon within the onboarding flow to the indended
icon for that entry.

Release Notes:

- N/A
2025-08-23 10:36:04 -04:00
Finn Evers
a92c1f188a
gpui: Ensure tab index handles are properly reused across frames (#35235)
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
2025-08-23 10:36:04 -04:00
Ben Kunkle
6406f2dea6
keymap_ui: Fix bug introduced in #35208 (#35237)
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
2025-08-23 10:36:04 -04:00
Danilo Leal
16ab8963e3
keymap editor: Make table denser (#35236)
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.
2025-08-23 10:36:04 -04:00
Finn Evers
c233ada4be
onboarding: Continue work on new flow (#35233)
This PR continues the work on the new and revamped onboarding flow.


Release Notes:

- N/A
2025-08-23 10:36:04 -04:00
Marshall Bowers
430b3598cc
collab: Remove POST /billing/subscriptions/sync endpoint (#35232)
This PR removes the `POST /billing/subscriptions/sync` endpoint, as it
has been moved to `cloud.zed.dev`.

Release Notes:

- N/A
2025-08-23 10:36:04 -04:00
Smit Barmase
67b6c9a02f
editor: Prioritize fuzzy score over sort positions in code completion sort (#35229)
We already prioritize matches that come after separators like `_`: 


cef7d53607/crates/fuzzy/src/matcher.rs (L274)

and deprioritize non-consecutive matches using distance penalty:


cef7d53607/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:


cef7d53607/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
2025-08-23 10:36:04 -04:00
Richard Feldman
7fcc708a39
Use zed settings to detect .zed folders (#35224)
Behind-the-scenes enhancement of
https://github.com/zed-industries/zed/pull/35221

Release Notes:

- N/A
2025-08-23 10:36:04 -04:00
Finn Evers
7d6223cc21
editor: Ensure code actions menu doesn't grow beyond its max size (#35211)
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
2025-08-23 10:36:04 -04:00
Richard Feldman
121be153d1
Allow edit tool to access files outside project (with confirmation) (#35221)
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.
2025-08-23 10:36:04 -04:00
Ben Kunkle
44695aa867
keymap_ui: Additional keystroke input polish (#35208)
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
2025-08-23 10:36:03 -04:00
Danilo Leal
c780003ec5
Update Nightly app icon (#35215)
Follow-up to https://github.com/zed-industries/zed/pull/35119.

Release Notes:

- N/A
2025-08-23 10:36:03 -04:00
Todd L Smith
72b5245ef6
Fix Nushell environment variables (#35166)
- Fixes environment variable ingestion for Nushell.

Closes #35056

Release Notes:

- N/A
2025-08-23 10:36:03 -04:00
Cole Miller
d6941a10a7
git: Touch up amend UX (#35114)
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
2025-08-23 10:36:03 -04:00
Agus Zubiaga
deaa91cc93
Fix integration tests for claude (#35212)
Release Notes:

- N/A
2025-08-23 10:36:03 -04:00
devjasperwang
a94da75d87
debugger: Fix the terminal popping up when the Rust debugger starts on Windows (#35125)
This PR fixs a terminal popping up when debugging Rust on Windows.


Release Notes:

- N/A

---------

Co-authored-by: 张小白 <364772080@qq.com>
2025-08-23 10:36:03 -04:00
Agus Zubiaga
44812542d5
ACP over MCP server impl (#35196)
Release Notes:

- N/A

---------

Co-authored-by: Ben Brandt <benjamin.j.brandt@gmail.com>
2025-08-23 10:36:03 -04:00
Danilo Leal
8cade22682
ai onboarding: Add first-open upsell card (#35199)
Release Notes:

- N/A
2025-08-23 10:36:03 -04:00
张小白
5384770992
Fix debugger on Windows (#35180)
Closes #33429

Release Notes:

- N/A
2025-08-23 10:36:03 -04:00
Piotr Osiewicz
ddfbdb7513
debugger: Fix not being able to stop a Go debug session when no breakpoints were ever hit (#35190)
Fixes #35030

Release Notes:

- debugger: Fixed a bug where a Go debug session could not be stopped if
no breakpoint was ever hit.
2025-08-23 10:36:03 -04:00
Danilo Leal
bffb115d44
collab: Refine call buttons design (#35007)
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
2025-08-23 10:36:03 -04:00
Maksim Bondarenkov
745f8f05b7
Re-add TestScreenCaptureStream implementation for mock_client to fix FreeBSD and MinGW builds (#35191)
The implementation was removed in #31506. re-added it to match the
current implementation from `gpui::test`

Closes #35189

Release Notes:

- N/A
2025-08-23 10:36:03 -04:00
Robert Fratto
52b510294e
go: Support benchmarks named "Benchmark" (#35167)
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"
2025-08-23 10:36:03 -04:00
marius851000
f51b4ecd1c
gpui: Fix inset being used in SSD on Wayland (#35151)
Closes #31330

Second parts of https://github.com/zed-industries/zed/pull/31335

While the initial fix set the inset during drawing, that was after the
window was resized, resulting in needing to manually resize the window
for the change to properly take effect.

I updated the code to not make the Wayland renderer rely on
`client_inset` being updated by the API user to match with the
decoration mode (given it is supposed to only be used when using CSD).

I might later try to generalize that, and eventually make the
client_inset only defined on window creation (instead of inside
`client_side_decorations`, that would need testing on X) (and maybe also
allow configuration for shadow, but it’s not something I need).

Release Notes:

- Fixed switching from client side decoration to server side decoration
on Wayland
2025-08-23 10:36:03 -04:00
Ben Brandt
2f95f939d7
agent_servers: Include result text in Claude error messages (#35156)
This will better surfaces issues that are classified as "success" but
actually have a more meaningful error message attached.

Release Notes:

- N/A
2025-08-23 10:36:02 -04:00
Ben Brandt
846cdc9ea7
agent_servers: Use built-in interrupt handling for Claude sessions (#35154)
We no longer have to stop and restart the entire process. 
I left in the Start/Resume mode handling since we will likely need to
handle restarting Claude in other situations.

Release Notes:

- N/A
2025-08-23 10:36:02 -04:00
Marshall Bowers
e329e38c6a
extension_host: Add npm:install capability (#35144)
This PR adds a new `npm:install` capability for installing npm packges
in extensions.

Currently all npm packages are allowed.

Release Notes:

- N/A
2025-08-23 10:36:02 -04:00
Marshall Bowers
23cf3c20d8
extension: Reorganize capabilities (#35143)
This PR reorganizes the capabilities within the `extension` crate to
make it easier to add more.

Release Notes:

- N/A
2025-08-23 10:36:02 -04:00
Marshall Bowers
074a9fb0d7
extension_host: Add capability for downloading files (#35141)
This PR adds a new capability for downloading files in extensions.

Currently all file downloads are allowed.

Release Notes:

- N/A
2025-08-23 10:36:02 -04:00
Marshall Bowers
34a7625742
extension_host: Refactor capability checks (#35139)
This PR refactors the extension capability checks to be centralized in
the `CapabilityGranter`.

Release Notes:

- N/A
2025-08-23 10:36:02 -04:00
Finn Evers
641a6c7853
ui: Fix scrollbar mouse down handler (#35131)
Follow-up to https://github.com/zed-industries/zed/pull/35121 - in the
process of adding the check for the left mouse button to the guard
(which was practically already there before, just not in the mouse-down
listener), I accidentally removed the negation for the bounds check.
This PR fixes this.

Release Notes:

- N/A
2025-08-23 10:36:02 -04:00
Finn Evers
4025f186a2
ui: Clean up scrollbar component (#35121)
This PR does some minor cleanup to the scrollbar component. Namely, it
removes some clones, reduces the amount of unnecessary notifies and
ensures the scrollbar hover state is more accurately updated.

Release Notes:

- N/A
2025-08-23 10:36:02 -04:00
Danilo Leal
d71de86f58
agent: Fix settings view switch field about permissions for running commands (#35120)
Follow-up to https://github.com/zed-industries/zed/pull/34866, where I
mistakenly didn't update the copy and id for this item.

Closes https://github.com/zed-industries/zed/issues/34850 — that's
because the edit tool runs by default, but the terminal tool does not. I
updated the original copy to reflect this, which should be enough to
close the issue, given that in terms of behavior, it is working
correctly.

Release Notes:

- agent: Fixed duplicated settings item in the agent panel as well as
improve copy for the setting to allow running commands without
permission.
2025-08-23 10:36:02 -04:00
Danilo Leal
e99c588429
ui: Add ToggleButtonGroup component (#35118)
<img width="600" height="704" alt="CleanShot 2025-07-25 at 8  03 04@2x"
src="https://github.com/user-attachments/assets/3d2b29ba-e0fd-4231-bb80-746903d61481"
/>

Release Notes:

- N/A

---------

Co-authored-by: MrSubidubi <dev@bahn.sh>
2025-08-23 10:36:02 -04:00
Danilo Leal
8ae2981f7a
Update the new Nightly app icon (#35119)
Follow-up to https://github.com/zed-industries/zed/pull/35104, with some
tiny design updates.

Release Notes:

- N/A
2025-08-23 10:36:02 -04:00
Smit Barmase
43d59814de
languages: Fix Bash indentation issues with multi-cursors, newlines, and keyword outdenting (#35116)
Closes #34390

This PR fixes several Bash indentation issues:

- Adding indentation or comment using multi cursors no longer breaks
relative indentation
- Adding newline now places the cursor at the correct indent
- Typing a valid keyword triggers context-aware auto outdent

It also adds tests for all of them.

Release Notes:

- Fixed various issues with handling indentation in Bash.
2025-08-23 10:36:02 -04:00