Commit Graph
29996 Commits
Author SHA1 Message Date
Max Brunsfeld f017ffdffc Fix minidump endpoint configuration (#35646)
Release Notes:

- N/A
2025-08-05 10:07:30 -07:00
Finn Evers 19c1504c8f ui: Wire up tab indices within buttons (#35368)
This change adds the current tab index functionality to buttons and
implements a proof of concept for the new welcome page.

Primarily blocked on https://github.com/zed-industries/zed/pull/34804,
secondarily on https://github.com/zed-industries/zed/pull/35075 so we
can ensure navigation always works as intended.

Another thing to consider here is whether we want to assign the tab
order more implicitly / "automatically" based on the current layout
ordering. This would generally enable us to add a default order to
focusable elements if we want this. See [the
specification](https://html.spec.whatwg.org/multipage/interaction.html#flattened-tabindex-ordered-focus-navigation-scope)
on some more context on how the web usually handles this for focusable
elements.

Release Notes:

- N/A
2025-08-05 13:05:18 -04:00
Danilo Leal 5940ed979f onboarding: Use a picker for the font dropdowns (#35638)
Release Notes:

- N/A
2025-08-05 11:38:08 -03:00
localcc 351e8c4cd9 Fix LiveKit audio for devices with different sample formats (#35604)
Release Notes:

- N/A
2025-08-05 16:36:08 +02:00
Peter Tripp 064c5daa99 docs: Fix incorrect reference to JSX language (#35639)
Closes: https://github.com/zed-industries/zed/issues/35633

Release Notes:

- N/A
2025-08-05 14:35:54 +00:00
Kirill Bulatov 22473fc611 Stop sending redundant LSP proto requests (#35581)
Before, each time any LSP feature was used on client remote, it always
produced a `proto::` request that always had been sent to the host, from
where returned as an empty response.

Instead, propagate more language server-related data to the client,
`lsp::ServerCapability`, so Zed client can omit certain requests if
those are not supported.

On top of that, rework the approach Zed uses to query for the data
refreshes: before, editors tried to fetch the data when the server start
was reported (locally and remotely).
Now, a later event is selected: on each `textDocument/didOpen` for the
buffer contained in this editor, we will query for new LSP data, reusing
the cache if needed.

Before, servers could reject unregistered files' LSP queries, or process
them slowly when starting up.
Now, such refreshes are happening later and should be cached.

This requires a collab DB change, to restore server data on rejoin.

Release Notes:

- Fixed excessive LSP requests sent during remote sessions
2025-08-05 13:36:05 +00:00
Peter Tripp 5b40b3618f Add workspace::ToggleEditPrediction for toggling inline completions globally (#35418)
Closes: https://github.com/zed-industries/zed/issues/23704

Existing action is `editor::ToggleEditPrediction` ("This Buffer").
This action is `workspace::ToggleEditPredction` ("All Files").

You can add a custom keybind wi shortcut with:
```json
  { "context": "Workspace", "bindings": { "ctrl-alt-cmd-e": "workspace::ToggleEditPrediction" } },
```

<img width="212" height="439" alt="Screenshot 2025-07-31 at 12 52 19"
src="https://github.com/user-attachments/assets/15879daa-7d4d-4308-ab2b-5e78507f2fa5"
/>


Release Notes:

- Added `workspace::ToggleEditPrediction` action for toggling
`show_edit_predictions` in settings (Edit Predictions menu -> All
Files).
2025-08-05 09:35:52 -04:00
Danilo Leal 497252480c agent: Update link to OpenAI compatible docs (#35620)
Release Notes:

- N/A
2025-08-05 13:05:05 +00:00
Piotr Osiewicz 919b888387 ruff: Bump to 0.1.1 (#35635)
We want Ruff to be built with newer Rust version (as it was built
pre-1.84 where we've fixed a bug in std).

Closes #35627

Release Notes:

- N/A
2025-08-05 12:56:49 +00:00
Antonio Scandurra efba4364fd Ensure client reconnects if an error occurs during authentication (#35629)
In #35471, we added a new `AuthenticationError` variant to the client
enum `Status`, but the reconnection logic was ignoring it when
determining whether to reconnect.

This pull request fixes that regression and introduces test coverage for
this case.

Release Notes:

- N/A
2025-08-05 09:33:33 +00:00
Mikayla MakiandMax Brunsfeld 6c83a3bcde Add more information to our logs (#35557)
Add more logging to collab in order to help diagnose throughput issues.

IMPORTANT: Do not deploy this PR without pinging me.

Release Notes:

- N/A

---------

Co-authored-by: Max Brunsfeld <maxbrunsfeld@gmail.com>
2025-08-05 01:37:10 +00:00
Julia RyanandMax Brunsfeld 669c57b45f Add minidump crash reporting (#35263)
- [x] Handle uploading minidumps from the remote_server
- [x] Associate minidumps with panics with some sort of ID (we don't use
session_id on the remote)
  - [x] Update the protobufs and client/server code to request panics
- [x] Upload minidumps with no corresponding panic
- [x] Fill in panic info when there _is_ a corresponding panic
- [x] Use an env var for the sentry endpoint instead of hardcoding it

Release Notes:

- Zed now generates minidumps for crash reporting

---------

Co-authored-by: Max Brunsfeld <maxbrunsfeld@gmail.com>
2025-08-04 18:19:42 -07:00
Piotr Osiewicz 07e3d53d58 sum_tree: Do not implement Dimension on tuples, use new Dimensions wrapper instead (#35482)
This is a bit of a readability improvement IMHO; I often find myself
confused when dealing when dimension pairs, as there's no easy way to
jump to the implementation of a dimension for tuples to remind myself
for the n-th time how exactly that impl works. Now it should be possible
to jump directly to that impl.

Another bonus is that Dimension supports 3-ary tuples as well - by using
a () as a default value of a 3rd dimension.


Release Notes:

- N/A
2025-08-05 00:37:22 +00:00
Danilo Leal be2f54b233 agent: Update pieces of copy in the settings view (#35621)
Some tiny updates to make the agent panel's copywriting sharper.

Release Notes:

- N/A
2025-08-05 00:36:43 +00:00
Smit Barmase a9c44ac551 assistant_tool: Fix rejecting edits deletes newly created and accepted files (#35622)
Closes #34108
Closes #33234

This PR fixes a bug where a file remained in a Created state after
accept, causing following reject actions to incorrectly delete the file
instead of reverting back to previous state. Now it changes it to
Modified state upon "Accept All" and "Accept Hunk" (when all edits are
accepted).

- [x] Tests

Release Notes:

- Fixed issue where rejecting AI edits on newly created files would
delete the file instead of reverting to previous accepted state.
2025-08-05 06:02:42 +05:30
06226e1cbd onboarding: Show indication that settings have already been imported (#35615)
Co-Authored-By: Danilo <danilo@zed.dev>
Co-Authored-By: Anthony <anthony@zed.dev>

Release Notes:

- N/A
2025-08-04 20:01:53 -04:00
Danilo Leal e1d0e3fc34 onboarding: Add explainer tooltips for the editing and AI section (#35619)
Includes the ability to add a tooltip for both the badge and switch
field components.

Release Notes:

- N/A
2025-08-04 20:52:22 -03:00
Piotr Osiewicz afc4f50300 debugger: Ensure that Python's adapter work dir exists (#35618)
Closes #ISSUE

cc @Sansui233 who triaged this in
https://github.com/zed-industries/zed/issues/35388#issuecomment-3146977431
Release Notes:

- debugger: Fixed an issue where a Python debug adapter could not be
installed when debugging Python projects for the first time.
2025-08-04 22:51:40 +00:00
Piotr Osiewicz 91bbdb7002 debugger: Install debugpy into user's venv if there's one selected (#35617)
Closes #35388


Release Notes:

- debugger: Fixed Python debug sessions failing to launch due to a
missing debugpy installation. Debugpy is now installed into user's venv
if there's one available.
2025-08-05 00:37:06 +02:00
Guillaume LaunayandPeter Tripp 182edbf526 git_panel: Improve toast messages for push/pull/fetch (#35092)
On GitLab, when pushing a branch and a MR already existing the remote
log contains "View merge request" and the link to the MR.

Fixed `Already up to date` stdout check on pull (was `Everything up to
date` on stderr)
Fixed `Everything up-to-date` check on push (was `Everything up to
date`)
Improved messaging for up-to-date for fetch/push/pull
Fixed tests introduced in
https://github.com/zed-industries/zed/pull/33833.

<img width="470" height="111" alt="Screenshot 2025-07-31 at 18 37 05"
src="https://github.com/user-attachments/assets/2a5dcc4c-6f53-4a85-b983-8e25149efcc0"
/>

Release Notes:

- Git UI: Add "View Pull Request" when pushing to Gitlab remotes
- git: Improved toast messages on fetch/push/pull

---------

Co-authored-by: Peter Tripp <peter@zed.dev>
2025-08-04 18:20:20 -04:00
24e7f868ad onboarding: Go back to not having system be separate (#35499)
Going back to having system be mutually exclusive with light/dark to
simplify the system. We instead just show both light and dark when
system is selected

Release Notes:

- N/A

---------

Co-authored-by: Danilo Leal <daniloleal09@gmail.com>
Co-authored-by: Anthony Eid <hello@anthonyeid.me>
2025-08-04 17:56:56 -04:00
Michael Sloan 68c24655e9 zeta: Collect git sha / remote urls when data collection from OSS is enabled (#35514)
Release Notes:

- Edit Prediction: Added Git info to edit predictions requests (only
sent for opensource projects when data collection is enabled). The sent
Git info is the SHA of the current commit and the URLs for the `origin`
and `upstream` remotes.
2025-08-04 14:18:06 -06:00
Peter Tripp 3df5394a8c linux: Make desktop file executable (#35597)
Closes https://github.com/zed-industries/zed/issues/35545

Release Notes:

- linux: Improved support for `zed://` urls on Linux
2025-08-04 15:35:19 -04:00
Danilo Leal 6e77c6a5ef onboarding: Adjust the welcome page a bit (#35600)
Release Notes:

- N/A
2025-08-04 19:02:29 +00:00
Agus Zubiaga 1325bf1420 Update to acp 0.0.18 (#35595)
Release Notes:

- N/A
2025-08-04 18:45:17 +00:00
Max Brunsfeld f3f2dba606 Minor stylistic cleanup in Windows platform (#35503)
This PR doesn't change any logic, it just cleans up some naming and
style in the windows platform layer.

* Rename `WindowsWindowStatePtr` to `WindowsWindowInner`, since it isn't
a pointer type.
* Move window event handler methods into an impl on this type, so that
all of the `state_ptr: &Rc<WindowsWindowInner>` parameters can just be
replaced with `&self`.
* In window creation, use a `match` instead of a conditional followed by
an unwrap

There's a lot of whitespace in the diff, so view it with `w=1`.

Release Notes:

- N/A
2025-08-04 11:22:49 -07:00
Danilo Leal 0ea4016e66 onboarding: Adjust skip button as flow progresses (#35596)
Release Notes:

- N/A
2025-08-04 15:16:52 -03:00
Anthony EidandCole Miller 9fa634f02f git: Add option to branch from default branch in branch picker (#34663)
Closes #33700

The option shows up as an icon that appears on entries that would create
a new branch. You can also branch from the default by secondary
confirming, which the icon has a tooltip for as well.

We based the default branch on the results from this command: `git
symbolic-ref refs/remotes/upstream/HEAD` and fallback to `git
symbolic-ref refs/remotes/origin/HEAD`

Release Notes:

- Add option to create a branch from a default branch in git branch
picker

---------

Co-authored-by: Cole Miller <cole@zed.dev>
2025-08-04 18:08:00 +00:00
Danilo Leal fa8dd1c547 agent: Adjust full screen menu item label and background color (#35592)
Release Notes:

- N/A
2025-08-04 15:01:32 -03:00
Smit BarmaseandLukas Wirth 2c8f144e6b workspace: Fix not able to close tab when buffer save fails (#35589)
Closes #26216, Closes #35517

Now we prompt user if buffer save failed, asking them to close without
saving or cancel the action.

Release Notes:

- Fixed issue where closing read-only or deleted buffer would not close
that tab.

Co-authored-by: Lukas Wirth <lukas@zed.dev>
2025-08-04 23:08:22 +05:30
Piotr OsiewiczandRemco bf361c316d search: Update results multi-buffer before search is finished (#35470)
I'm not sure when we've lost that notify, but it's causing the time to
first search result equal to the time to run the whole search, which is
not great.

Co-authored-by: Remco <djsmits12@gmail.com>

This discussion has originally started in #35444

Release Notes:

- Improved project search speed.

Co-authored-by: Remco <djsmits12@gmail.com>
2025-08-04 18:25:42 +02:00
Michael Sloan 65018c28c0 Rename remaining mentions of "inline completion" to "edit prediction" (#35512)
Release Notes:

- N/A
2025-08-04 16:22:18 +00:00
Danilo Leal 85885723a9 agent: Fix scrolling in the "Add LLM Provider" modal (#35584)
Closes https://github.com/zed-industries/zed/issues/35402

Release Notes:

- agent: Fix scrolling in the "Add LLM Provider" modal
2025-08-04 12:55:19 -03:00
Michael Sloan 899bc8a8fd Fix edit prediction disablement with "disable_ai": true setting (#35513)
Even after #35327 edit predictions were still being queried and shown
after setting `"disable_ai": true`

Also moves `DisableAiSettings` to the `project` crate so that it gets
included in tests via existing use of `Project::init_settings(cx)`.

Release Notes:

- Fixed `"disable_ai": true` setting disabling edit predictions.
2025-08-04 15:45:11 +00:00
Danilo Leal d577ef52cb thread view: Scroll to the bottom when sending new messages + adjust controls display (#35586)
Release Notes:

- N/A
2025-08-04 12:44:29 -03:00
Peter Tripp bb5af6f76d Fix escape in terminal with JetBrains keymap (#35585)
Closes https://github.com/zed-industries/zed/issues/35429
Closes https://github.com/zed-industries/zed/issues/35091
Follow-up to: https://github.com/zed-industries/zed/pull/35230

Release Notes:

- Fix `escape` in Terminal broken in JetBrains compatability keymaps
2025-08-04 15:37:34 +00:00
Agus Zubiaga a6a34dad0f Fix gemini e2e tests (#35583)
Release Notes:

- N/A
2025-08-04 15:02:22 +00:00
Joshua ByrdandDanilo Leal 5f77c6a68f docs: Rewrite the OpenAI compatible API section (#35558)
This PR updates the OpenAI compatible API section clarifying that API
keys aren't stored in the `settings.json`. It also updates the JSON as
some fields are not available anymore.

Release Notes:

- docs: Updated the OpenAI compatible API section to clarify API keys
aren't stored in your `settings.json`.

---------

Co-authored-by: Danilo Leal <daniloleal09@gmail.com>
2025-08-04 11:58:41 -03:00
Danilo Leal 0609c8b953 Revise and clean up some icons (#35582)
This is really just a small beginning, as there are many other icons to
be revised and cleaned up. Our current set is a bit of a mess in terms
of dimension, spacing, stroke width, and terminology. I'm sure there are
more non-used icons I'm not covering here, too. We'll hopefully tackle
it all soon leading up to 1.0.

Closes https://github.com/zed-industries/zed/issues/35576

Release Notes:

- N/A
2025-08-04 11:58:31 -03:00
Oleksiy Syvokon 8b573d4395 evals: Retry on Anthropic's internal and transient I/O errors (#35395)
Release Notes:

- N/A
2025-08-04 13:56:56 +00:00
Ben BrandtandAgus Zubiaga f17943e4a3 Update to new agent schema (#35578)
Release Notes:

- N/A

---------

Co-authored-by: Agus Zubiaga <agus@zed.dev>
2025-08-04 13:49:41 +00:00
Kainoa Kanter dea64d3373 Add icon for KDL files (#35377)
<img width="191" height="83" alt="1753920601"
src="https://github.com/user-attachments/assets/6bf057b0-2f10-4cc7-bab1-2d4aa8675701"
/>

Release Notes:

- Added icon for KDL (`.kdl`) files
2025-08-04 09:49:51 -03:00
Antonio Scandurra 7217439c97 Don't trigger authentication flow unless credentials expired (#35570)
This fixes a regression introduced in
https://github.com/zed-industries/zed/pull/35471, where we treated
stored credentials as invalid when failing to retrieve the authenticated
user for any reason. This had the side effect of triggering the auth
flow even when e.g. the client/server had temporary networking issues.

This pull request changes the logic to only trigger authentication when
getting a 401 from the server.

Release Notes:

- N/A
2025-08-04 08:41:23 +00:00
Kirill Bulatov 5ca5d90234 Use a better type for language IDs field (#35566)
Part of the preparation for proto capabilities.

Release Notes:

- N/A
2025-08-04 07:12:02 +00:00
Ahmed ElSayed 1b3d6139b8 Add libx11 to openSUSE build dependencies (#35553)
building on opensuse fails without `libx11-devel`

**Repro:**

```bash
$ cd $(mktemp -d)
$ git clone https://github.com/zed-industries/zed .
$ docker run --rm -it -v $(pwd):/zed -w /zed opensuse/tumbleweed

(opensuse) $ curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
(opensuse) $ ./script/linux
(opensuse) $ cargo build --release
```

**Expected:** to work

**Actual:** 

```
thread 'main' panicked at /root/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/x11-2.21.0/build.rs:42:14:
  called `Result::unwrap()` on an `Err` value:
  pkg-config exited with status code 1
  > PKG_CONFIG_ALLOW_SYSTEM_LIBS=1 PKG_CONFIG_ALLOW_SYSTEM_CFLAGS=1 pkg-config --libs --cflags x11 'x11 >= 1.4.99.1'

  The system library `x11` required by crate `x11` was not found.
  The file `x11.pc` needs to be installed and the PKG_CONFIG_PATH environment variable must contain its parent directory.
  The PKG_CONFIG_PATH environment variable is not set.

  HINT: if you have installed the library, try setting PKG_CONFIG_PATH to the directory containing `x11.pc`.

  note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
warning: build failed, waiting for other jobs to finish...
```
2025-08-04 06:17:42 +00:00
Mikayla Maki 2db19e19a5 Improve the yaml outline to show the key value if it's a simple string (#35562)
Before:

<img width="753" height="890" alt="Screenshot 2025-08-03 at 8 58 16 PM"
src="https://github.com/user-attachments/assets/a3816acd-66b2-4042-8181-fbc15881bd4b"
/>

After:

<img width="648" height="634" alt="Screenshot 2025-08-03 at 8 59 30 PM"
src="https://github.com/user-attachments/assets/0ab35f3e-36d6-42b5-bb5f-09431985878e"
/>

Release Notes:

- Improved the yaml outline to include the key's value if it's a simple
string.
2025-08-04 04:17:56 +00:00
Joseph T. Lyons ea7c3a23fb Add option to open settings profile selector in user menu (#35556)
Release Notes:

- N/A
2025-08-03 23:25:23 +00:00
Ben Brandt f14f0c24d6 Fix false positive for editing status in agent panel (#35554)
Release Notes:

- N/A
2025-08-03 20:50:25 +00:00
Joseph T. Lyons 1b9302d452 Reuse is_tab_pinned method (#35551)
Release Notes:

- N/A
2025-08-03 19:45:26 +00:00
Joseph T. Lyons 4417bfe30b Fix pinned tab becoming unpinned when dragged onto unpinned tab (#35539)
Case A - Correct:


https://github.com/user-attachments/assets/2ab943ea-ca5b-4b6b-a8ca-a0b02072293e

Case B - Incorrect:


https://github.com/user-attachments/assets/912be46a-73b2-48a8-b490-277a1e89d17d

Case B - Fixed:


https://github.com/user-attachments/assets/98c2311d-eebc-4091-ad7a-6cf857fda9c3

Release Notes:

- Fixed a bug where dragging a pinned tab onto an unpinned tab wouldn't
decrease the pinned tab count
2025-08-03 05:56:33 +00:00