6e77c6a
onboarding: Adjust the welcome page a bit (#35600)
Click to expand commit body
Release Notes: - N/A
Danilo Leal created
6e77c6a
onboarding: Adjust the welcome page a bit (#35600)
Release Notes: - N/A
Danilo Leal created
1325bf1
Update to acp 0.0.18 (#35595)
Release Notes: - N/A
Agus Zubiaga created
f3f2dba
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
Max Brunsfeld created
0ea4016
onboarding: Adjust skip button as flow progresses (#35596)
Release Notes: - N/A
Danilo Leal created
9fa634f
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>
Anthony Eid and Cole Miller created
fa8dd1c
agent: Adjust full screen menu item label and background color (#35592)
Release Notes: - N/A
Danilo Leal created
2c8f144
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>
Smit Barmase and Lukas Wirth created
bf361c3
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>
Piotr Osiewicz and Remco created
65018c2
Rename remaining mentions of "inline completion" to "edit prediction" (#35512)
Release Notes: - N/A
Michael Sloan created
8588572
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
Danilo Leal created
899bc8a
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.
Michael Sloan created
d577ef5
thread view: Scroll to the bottom when sending new messages + adjust controls display (#35586)
Release Notes: - N/A
Danilo Leal created
bb5af6f
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
Peter Tripp created
a6a34da
Fix gemini e2e tests (#35583)
Release Notes: - N/A
Agus Zubiaga created
5f77c6a
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>
Joshua Byrd and Danilo Leal created
0609c8b
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
Danilo Leal created
8b573d4
evals: Retry on Anthropic's internal and transient I/O errors (#35395)
Release Notes: - N/A
Oleksiy Syvokon created
f17943e
Update to new agent schema (#35578)
Release Notes: - N/A --------- Co-authored-by: Agus Zubiaga <agus@zed.dev>
Ben Brandt and Agus Zubiaga created
dea64d3
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
Kainoa Kanter created
7217439
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
Antonio Scandurra created
5ca5d90
Use a better type for language IDs field (#35566)
Part of the preparation for proto capabilities. Release Notes: - N/A
Kirill Bulatov created
1b3d613
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... ```
Ahmed ElSayed created
2db19e1
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.
Mikayla Maki created
ea7c3a2
Add option to open settings profile selector in user menu (#35556)
Release Notes: - N/A
Joseph T. Lyons created
f14f0c2
Fix false positive for editing status in agent panel (#35554)
Release Notes: - N/A
Ben Brandt created
1b9302d
Reuse `is_tab_pinned` method (#35551)
Release Notes: - N/A
Joseph T. Lyons created
4417bfe
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
Joseph T. Lyons created
986e3e7
agent_ui: Improve message editor history navigation (#35532)
- We no longer move through history if a message has been edited by the user - It is possible to navigate back down to an empty message Co-authored-by: Cole Miller <cole@zed.dev> Release Notes: - N/A Co-authored-by: Cole Miller <cole@zed.dev>
Ben Brandt and Cole Miller created
f4391ed
Cleanup `editor.rs` imports (#35509)
Release Notes: - N/A
Michael Sloan created
a50d0f2
Make `editor::AcceptPartialCopilotSuggestion` a deprecated alias (#35507)
This is consistent with there being no copilot expecific variant of `editor::AcceptEditPrediction`. It also fixes a case where the `disable_ai: true` has effects at init time that aren't undone when changed, added in #35327. Release Notes: - N/A
Michael Sloan created
a8422d4
Fix showing/hiding copilot actions when `disable_ai` setting is changed (#35506)
Release Notes: - N/A
Michael Sloan created
4d79edc
project: Fix extra } at the end of import on completion accept (#35494)
Closes #34094
Bug in https://github.com/zed-industries/zed/pull/11157
**Context:**
In https://github.com/zed-industries/zed/pull/31872, we added logic to
avoid re-querying language server completions
(`textDocument/completion`) when possible. This means the list of
`lsp::CompletionItem` objects we have might be stale and not contain
accurate data like `text_edit`, which is only valid for the buffer at
the initial position when these completions were requested. We don't
really care about this because we already extract all the useful data we
need (like insert/replace ranges) into `Completion`, which converts
`text_edit` to anchors. This means further user edits simply push/move
those anchors, and our insert/replace ranges persist for completion
accept.
```jsonc
// on initial textDocument/completion
"textEdit":{"insert":{"start":{"line":2,"character":0},"end":{"line":2,"character":11}},"replace":{"start":{"line":2,"character":0},"end":{"line":2,"character":11}}
```
However, for showing documentation of visible `Completion` items, we
need to call resolve (`completionItem/resolve`) with the existing
`lsp::CompletionItem`, which returns the same `text_edit` and other
existing data along with additional new data that was previously
optional, like `documentation` and `detail`.
**Problem:**
This new data like `documentation` and `detail` doesn't really change on
buffer edits for a given completion item, so we can use it. But
`text_edit` from this resolved `lsp::CompletionItem` was valid when the
the initial (`textDocument/completion`) was queried but now the
underlying buffer is different. Hence, creating anchors from this ends
up creating them in wrong places.
```jsonc
// calling completionItem/resolve on cached lsp::CompletionItem results into same textEdit, despite buffer edits
"textEdit":{"insert":{"start":{"line":2,"character":0},"end":{"line":2,"character":11}},"replace":{"start":{"line":2,"character":0},"end":{"line":2,"character":11}}
```
It looks like the only reason to override the new text and these ranges
was to handle an edge case with `typescript-language-server`, as
mentioned in the code comment. However, according to the LSP
specification for [Completion
Request](https://microsoft.github.io/language-server-protocol/specifications/lsp/3.17/specification/#textDocument_completion):
> All other properties (usually sortText, filterText, insertText and
textEdit) must be provided in the textDocument/completion response and
**must not be changed during resolve.**
If any language server responds with different `textEdit`, `insertText`,
etc. in `completionItem/resolve` than in `textDocument/completion`, they
should fix that. Bug in this case in `typescript-language-server`:
https://github.com/typescript-language-server/typescript-language-server/pull/303#discussion_r869102064
We don't really need to override these at all. Keeping the existing
Anchors results in correct replacement.
Release Notes:
- Fixed issue where in some cases there would be an extra `}` at the end
of imports when accepting completions.
Smit Barmase created
edac6e4
Add font ligatures and format on save buttons to onboarding UI (#35487)
Release Notes: - N/A
Anthony Eid created
6052115
zeta: Add CLI tool for querying edit predictions and related context (#35491)
Release Notes: - N/A --------- Co-authored-by: Marshall Bowers <git@maxdeviant.com>
Michael Sloan and Marshall Bowers created
561ccf8
onboarding: Serialize onboarding page (#35490)
Closes #ISSUE Serializes the onboarding page to the database to ensure that if Zed is closed during onboarding, re-opening Zed restores the onboarding state and the most recently active page (Basics, Editing, etc) restored. Also has the nice side effect of making dev a bit nicer as it removes the need to re-open onboarding and navigate to the correct page on each build. Release Notes: - N/A *or* Added/Fixed/Improved ...
Ben Kunkle created
ac75593
onboarding: Actions for page navigation (#35484)
Closes #ISSUE Release Notes: - N/A *or* Added/Fixed/Improved ...
Ben Kunkle created
a3a3f11
zeta: Rename binding back to `user_store` (#35486)
This PR renames a binding from `cloud_user_store` to `user_store` now that we've consolidated the two into the `UserStore`. Release Notes: - N/A
Marshall Bowers created
faa45c5
onboarding: Add design adjustments (#35480)
Release Notes: - N/A --------- Co-authored-by: Anthony <anthony@zed.dev>
Danilo Leal and Anthony created
b31f893
Rasterize glyphs without D2D (#35376)
This allows debugging Zed with Renderdoc, and also fixes an issue where glyphs' bounds were miscalculated for certain sizes and scale factors. Release Notes: - N/A --------- Co-authored-by: Kate <kate@zed.dev> Co-authored-by: Julia <julia@zed.dev> Co-authored-by: Junkui Zhang <364772080@qq.com>
Max Brunsfeld , Kate , Julia , and Junkui Zhang created
f888f3f
Start separating authentication from connection to collab (#35471)
This pull request should be idempotent, but lays the groundwork for avoiding to connect to collab in order to interact with AI features provided by Zed. Release Notes: - N/A --------- Co-authored-by: Marshall Bowers <git@maxdeviant.com> Co-authored-by: Richard Feldman <oss@rtfeldman.com>
Antonio Scandurra , Marshall Bowers , and Richard Feldman created
b01d187
onboarding: Add the AI page (#35351)
This PR starts the work on the AI onboarding page as well as the configuration modal Release Notes: - N/A --------- Co-authored-by: Danilo Leal <daniloleal09@gmail.com> Co-authored-by: Anthony <anthony@zed.dev>
Finn Evers , Danilo Leal , and Anthony created
e5c6a59
agent_ui: More agent notifications (#35441)
Release Notes: - N/A
Ben Brandt created
106aa0d
Add default binding to open settings profile selector (#35459)
Release Notes: - N/A
Joseph T. Lyons created
f7f9059
inline_completion_button: Replace `UserStore` with `CloudUserStore` (#35456)
This PR replaces usages of the `UserStore` in the inline completion button with the `CloudUserStore`. Release Notes: - N/A
Marshall Bowers created
8be3f48
client: Remove unused `subscription_period` from `UserStore` (#35454)
This PR removes the `subscription_period` field from the `UserStore`, as its usage has been replaced by the `CloudUserStore`. Release Notes: - N/A
Marshall Bowers created
76a8293
editor_tests: Fix for potential race loading editor languages (#35453)
Fix for potential race when loading HTML and JS languages (JS is
slower). Wait for both to load before continue tests.
Observed failure on linux:
[job](https://github.com/zed-industries/zed/actions/runs/16662438526/job/47162345259)
as part of https://github.com/zed-industries/zed/pull/35436
```
thread 'editor_tests::test_autoclose_with_embedded_language' panicked at crates/editor/src/editor_tests.rs:8724:8:
assertion failed: `(left == right)`: unexpected buffer text
Diff < left / right > :
<body><>
<script>
< var x = 1;<>
> var x = 1;<
</script>
</body><>
```
Inserted `<` incorrect gets paired bracket inserted `>`.
I believe because the JS language injection hasn't fully loaded.
Release Notes:
- N/A
Peter Tripp created
2315962
cloud_api_client: Add `accept_terms_of_service` method (#35452)
This PR adds an `accept_terms_of_service` method to the `CloudApiClient`. Release Notes: - N/A
Marshall Bowers created
f8673da
ai_onboarding: Read the plan from the `CloudUserStore` (#35451)
This PR updates the AI onboarding to read the plan from the `CloudUserStore` so that we don't need to connect to Collab. Release Notes: - N/A
Marshall Bowers created
72d354d
Update Agent panel to work with `CloudUserStore` (#35436)
This PR updates the Agent panel to work with the `CloudUserStore` instead of the `UserStore`, reducing its reliance on being connected to Collab to function. Release Notes: - N/A --------- Co-authored-by: Richard Feldman <oss@rtfeldman.com>
Marshall Bowers and Richard Feldman created
09b93ca
Rework authentication for local Cloud/Collab development (#35450)
This PR reworks authentication for developing Zed against a local version of Cloud and/or Collab. You will still connect the same way—using the `zed-local` script—but will need to be running an instance of Cloud locally. Release Notes: - N/A
Marshall Bowers created