9abfbdf
Fix `test_peers_following_each_other` for Windows (#28008)
Click to expand commit body
Release Notes: - N/A
张小白 created
9abfbdf
Fix `test_peers_following_each_other` for Windows (#28008)
Release Notes: - N/A
张小白 created
cd85b43
assistant_eval: Add ACE framework (#27181)
Release Notes: - N/A --------- Co-authored-by: Michael Sloan <michael@zed.dev>
Thomas Mickley-Doyle and Michael Sloan created
d3e4de7
workspace-hack: remove openssl from remote_server (#27990)
This was accidentally getting added due to increased feature unification. We've manually excluded reqwest to go back to the desired behavior: remote_server, doesn't depend on openssl. Release Notes: - N/A Co-authored-by: Mikayla Maki <mikayla.c.maki@gmail.com>
Julia Ryan and Mikayla Maki created
ee950f5
Debugger: Add pretty printers for Cargo-located tasks (#27979)
Closes #ISSUE Release Notes: - N/A
Piotr Osiewicz created
501b539
gpui: Fix background for WrappedLine (#27980)
https://github.com/zed-industries/zed/pull/26454 In this PR, we separated painting for text line into two parts: `paint` and `paint_background`. This allows selections to appear in front of the text background but behind the text itself in the editor. The `paint_background` method was implemented for `ShapedLine` but not for `WrappedLine`. This PR adds that, fixing the background rendering for inline code blocks in Markdown, as they use `WrappedLine`. Before: <img width="160" alt="image" src="https://github.com/user-attachments/assets/81466c63-6835-4128-ba22-1b63f5fd7b1f" /> After: <img width="160" alt="image" src="https://github.com/user-attachments/assets/3b7044d7-265b-45db-904c-3b70fdf421fe" /> Release Notes: - Fixed missing background for inline code blocks in the editor hover tooltip.
Smit Barmase created
444b7b8
renovate: Ignore `Cargo.toml` for `workspace-hack` (#27976)
This PR adds the `Cargo.toml` for the `workspace-hack` crate to the ignore list for Renovate, as it is opening a number of PRs against it that will interfere with it. Release Notes: - N/A
Marshall Bowers created
8a6ed4a
Use new multibuffer excerpts in project search (#27893)
Follow-up of https://github.com/zed-industries/zed/pull/27876 Closes https://github.com/zed-industries/zed/issues/13513 Release Notes: - Improved multi buffer excerpts to merge when expanded --------- Co-authored-by: Conrad Irwin <conrad.irwin@gmail.com>
Kirill Bulatov and Conrad Irwin created
b4af5b2
agent: Update thread label to use plural form (#27971)
Update thread label to match the other contexts. |Before|After| |--|--| ||| Release Notes: - N/A
5brian created
ee33d31
agent: Allow editing previous messages (#27965)
This PR adds the ability to edit previous user messages in the thread. Release Notes: - Agent: Added the ability to edit previous user messages (Preview-only).
Marshall Bowers created
0a13277
agent: Change loading label if command is waiting on permission (#27955)
If there's a command pending confirmation, the label changes from "Generating" to "Waiting for confirmation". <img src="https://github.com/user-attachments/assets/d804e382-5315-40b0-9588-c257cca2430c" width="600"/> Release Notes: - N/A
Danilo Leal created
d23c2d4
agent: Refine feedback message input (#27948)
<img src="https://github.com/user-attachments/assets/cde37a88-9973-4c27-80b7-459f5e986c74" width="650" /> Release Notes: - N/A --------- Co-authored-by: Bennet Bo Fenner <bennetbo@gmx.de>
Danilo Leal and Bennet Bo Fenner created
b9f10c0
Fix redundant FS file watches due to LSP path watching (#27957)
Release Notes: - Fixed a bug where Zed sometimes added multiple redundant FS watchers when language servers requested to watch paths. This could cause saves and git operations to fail if Zed exceeded the file descriptor limit. --------- Co-authored-by: Piotr <piotr@zed.dev>
Max Brunsfeld and Piotr created
9f97468
editor: Fix typing closing bracket skips it even when `use_autoclose` is disabled (#27960)
Closes #27769 When adding snippet we were not respecting autoclose setting, before creating AutocloseRegion. This leads to cursor to skip over instead of typing that character. This PR fixes it. Release Notes: - Fixed certain case where typing closing bracket would skip it when auto close setting is turned off.
Smit Barmase created
01ec6e0
Add workspace-hack (#27277)
This adds a "workspace-hack" crate, see [mozilla's](https://hg.mozilla.org/mozilla-central/file/3a265fdc9f33e5946f0ca0a04af73acd7e6d1a39/build/workspace-hack/Cargo.toml#l7) for a concise explanation of why this is useful. For us in practice this means that if I were to run all the tests (`cargo nextest r --workspace`) and then `cargo r`, all the deps from the previous cargo command will be reused. Before this PR it would rebuild many deps due to resolving different sets of features for them. For me this frequently caused long rebuilds when things "should" already be cached. To avoid manually maintaining our workspace-hack crate, we will use [cargo hakari](https://docs.rs/cargo-hakari) to update the build files when there's a necessary change. I've added a step to CI that checks whether the workspace-hack crate is up to date, and instructs you to re-run `script/update-workspace-hack` when it fails. Finally, to make sure that people can still depend on crates in our workspace without pulling in all the workspace deps, we use a `[patch]` section following [hakari's instructions](https://docs.rs/cargo-hakari/0.9.36/cargo_hakari/patch_directive/index.html) One possible followup task would be making guppy use our `rust-toolchain.toml` instead of having to duplicate that list in its config, I opened an issue for that upstream: guppy-rs/guppy#481. TODO: - [x] Fix the extension test failure - [x] Ensure the dev dependencies aren't being unified by Hakari into the main dependencies - [x] Ensure that the remote-server binary continues to not depend on LibSSL Release Notes: - N/A --------- Co-authored-by: Mikayla <mikayla@zed.dev> Co-authored-by: Mikayla Maki <mikayla.c.maki@gmail.com>
Julia Ryan , Mikayla , and Mikayla Maki created
07a7779
Add `completions.lsp_insert_mode` setting to control what ranges are replaced when a completion is inserted (#27453)
This PR adds `completions.lsp_insert_mode` and effectively changes the default from `"replace"` to `"replace_suffix"`, which automatically detects whether to use the LSP `replace` range instead of `insert` range. `"replace_suffix"` was chosen as a default because it's more conservative than `"replace_subsequence"`, considering that deleting text is usually faster and less disruptive than having to rewrite a long replaced word. Fixes #27197 Fixes #23395 (again) Fixes #4816 (again) Release Notes: - Added new setting `completions.lsp_insert_mode` that changes what will be replaced when an LSP completion is accepted. The default is `"replace_suffix"`, but it accepts 4 values: `"insert"` for replacing only the text before the cursor, `"replace"` for replacing the whole text, `"replace_suffix"` that acts like `"replace"` when the text after the cursor is a suffix of the completion, and `"replace_subsequence"` that acts like `"replace"` when the text around your cursor is a subsequence of the completion (similiar to a fuzzy match). Check [the documentation](https://zed.dev/docs/configuring-zed#LSP-Insert-Mode) for more information. --------- Co-authored-by: João Marcos <marcospb19@hotmail.com> Co-authored-by: Max Brunsfeld <maxbrunsfeld@gmail.com>
frederik-uni , João Marcos , and Max Brunsfeld created
108ae0b
debugger: Add args argument to debugger launch config (#27953)
This also fixes a bug where debug cargo test code actions would debug all tests in a mod instead of a specific test Release Notes: - N/A
Anthony Eid created
500964a
docs: Add example of Ruby plain minitest task (#27607)
Via https://github.com/zed-industries/zed/issues/12579#issuecomment-2143972765 Release Notes: - N/A
Andy Waite created
0a58e54
aws_http_client: Copy response headers (#27941)
Preemptive fixes required for #26734 Release Notes: - N/A --------- Co-authored-by: Marshall Bowers <git@maxdeviant.com>
Shardul Vaidya and Marshall Bowers created
8539e23
zed: Include full debug info in debug builds (#27924)
Closes #ISSUE Release Notes: - N/A
Ben Kunkle created
c7d2775
agent: Do some cleanup of feedback comments submission (#27940)
This PR does some stylistic cleanup of the feedback comments submission code. Release Notes: - N/A
Marshall Bowers created
b7b7f1c
Use worktree qualified paths in agent file context + some code cleanup (#27943)
Release Notes: - N/A
Michael Sloan created
142f991
Fix clippy lints that don't currently appear in CI (#27944)
I may have a newer version of clippy than CI. Also removes some unused code in `livekit_client.rs` Release Notes: - N/A
Michael Sloan created
f8092bf
Bump Zed to v0.182 (#27945)
Release Notes: -N/A
Joseph T. Lyons created
0ba8432
Debugger: Add stop on entry support to debug adapter configs (#27942)
This PR adds passing in `stop_on_entry` to debug configs in debug.json instead of going through initialization args. This has two benefits: 1. It's more streamlined to a user since every internal adapter supports `stop_on_entry` for launch requests and Go's adapter supports it for attach requests too. 2. It will allow @osiewicz `NewSesssionModal` PR to use this field for the stop on entry checkbox. Release Notes: - N/A
Anthony Eid created
e1a8a31
Fix flickering when staging and unstaging files (#27931)
This fixes a bug in #27568 that caused flickering in the git panel's checkbox state when staging and unstaging entire files. The problem is that that stage/unstage action first saves the target path (if it's open as a buffer), and we do a targeted git status scan in response to that filesystem event, which makes its way to the git panel and causes it to clear its pending state before the actual stage or unstage has gone through. The fix is to not clear the panel's pending state for git repository events that originated from a targeted scan (i.e. one that was triggered by FS events for repo paths, as opposed to events inside `.git` which cause all statuses to be recomputed). Release Notes: - N/A
Cole Miller created
0be8bf1
agent: Improve action confirmation UX (#27932)
This PR makes the command permission prompt part of the tool card and allow users to straight away change the `always_allow_tool_actions` setting via the "Always Allow" button from that card. If that button is clicked, that setting is turned on, and any command that requires permission from that point on will auto-run. Additionally, if a bash command spans multiple lines, we show the line count at the end of the command string. (Note: this is not perfect yet because it can likely be not visible by default, but we didn't think this was a major blocker for now. We'll work on improving this next). ### Thread View <img src="https://github.com/user-attachments/assets/00f93c39-990f-4b79-84ec-0427b997167f" width="500"/> ### Settings View <img src="https://github.com/user-attachments/assets/52d32435-7c8d-4ab4-a319-6cabc007267b" width="500"/> Release Notes: - N/A --------- Co-authored-by: Thomas Mickley-Doyle <tmickleydoyle@gmail.com> Co-authored-by: Bennet Bo Fenner <bennetbo@gmx.de> Co-authored-by: Nathan Sobo <nathan@zed.dev> Co-authored-by: Antonio Scandurra <me@as-cii.com>
Danilo Leal , Thomas Mickley-Doyle , Bennet Bo Fenner , Nathan Sobo , and Antonio Scandurra created
3e2ac3e
Log error and proceed when failing to load repo environment (#27938)
Closes #ISSUE Release Notes: - N/A
Cole Miller created
646f655
agent: Add newtype for profile IDs (#27939)
This PR adds an `AgentProfileId` newtype for profile IDs that we can use instead of `Arc<str>` everywhere. Release Notes: - N/A
Marshall Bowers created
b2904e5
file_finder: Prioritize file name matches over path matches (#27937)
Closes https://github.com/zed-industries/zed/issues/27936 Adds additional comparison after the existing history-based comparison. This comparison checks whether the first position matched via fuzzy search is in the file name. If so, we prioritize this match over one in the path. If both items match either the file name or the path, the existing comparison logic is used. - [x] Tests Before: <img width="580" alt="image" src="https://github.com/user-attachments/assets/011fdd01-3dfa-4950-abb1-dfda10885664" /> After: <img width="614" alt="image" src="https://github.com/user-attachments/assets/9c4944b0-83dc-4611-94bb-aae1758fab23" /> Release Notes: - Fixed an issue where fuzzy matching in file finder did not properly prioritize matches in file names.
Smit Barmase created
45e7cd1
Add comment box to negative feedback reaction (#27934)
Release Notes: - N/A
Thomas Mickley-Doyle created
889bc13
language_model: Remove `use_any_tool` method from `LanguageModel` (#27930)
This PR removes the `use_any_tool` method from the `LanguageModel` trait. It was not being used anywhere, and doesn't really fit in our new tool use story. Release Notes: - N/A
Marshall Bowers created
da3383b
agent: Fix thinking step showing up as pending even though it is completed (#27926)
Release Notes: - N/A
Bennet Bo Fenner created
9c4e61e
agent: Add more guidelines to system prompt (#27927)
Release Notes: - N/A
Agus Zubiaga created
b413605
Fix bug that prevented deletion-only hunks from being kept correctly (#27921)
Release Notes: - N/A
Antonio Scandurra created
961bfad
agent: Return an error to the model when trying to use a tool that is disabled (#27928)
This PR makes it so we return an error to the model if it tries to use a tool that is not currently enabled: <img width="628" alt="Screenshot 2025-04-02 at 11 10 55 AM" src="https://github.com/user-attachments/assets/e4bdf01c-f0ea-4c9c-805a-11868bd9c771" /> This allows the model to adapt based on that: <img width="637" alt="Screenshot 2025-04-02 at 11 08 38 AM" src="https://github.com/user-attachments/assets/41016b47-933c-4dcb-b791-847be0548c8a" /> Release Notes: - N/A
Marshall Bowers created
2eed94f
agent: Include context with first message that introduced it (#27925)
We were including the context at the end which meant it never got cached. We'll now include it with the first message that introduced it so it's cached as long as it doesn't change. This is an improvement, but we probably still need to think of ways to optimize caching for cases where files in context change. Release Notes: - N/A
Agus Zubiaga created
7a54dd7
Avoid requiring confirmation for tools that edit buffers (#27923)
It's super easy to undo those changes. In a future PR, we should also avoid requiring confirmation in the batch tool if all the underlying tools don't require confirmation. Release Notes: - N/A
Antonio Scandurra created
8ac4cbc
Don't create repos for invisible worktrees (#27894)
Closes #ISSUE Release Notes: - Fixed git repositories being added for files outside the project
Cole Miller created
d82bf13
agent: Remove unneeded branch in `use_pending_tools` (#27922)
This PR removes an unneeded `else if` branch that was the same as the previous branch in the conditional. Doesn't seem necessary to run this twice. Release Notes: - N/A
Marshall Bowers created
0f58d4f
agent: Remove duplicate `OpenConfiguration` action registration (#27918)
I had introduced the same thing a few days ago without noticing there was one in place already! Release Notes: - N/A
Danilo Leal created
d340670
Ensure rejecting a hunk dismisses the diff (#27919)
Release Notes: - N/A
Antonio Scandurra created
ad42a8a
agent: Adjust permission card design (#27911)
<img src="https://github.com/user-attachments/assets/76ae380c-6d5b-4ed6-9b47-9a4c44b00042" width="500" /> Release Notes: - N/A
Danilo Leal created
2846c55
agent: Account for tool use messages without any corresponding text (#27917)
This PR makes it so if we receive a tool use from the model without any corresponding text, we'll insert some placeholder text to keep the conversation in a well-structured format. This aims to fix an error that Antonio was seeing:  Release Notes: - N/A
Marshall Bowers created
5dcd0d3
language_models: Denote Copilot Chat as not supporting tools (#27909)
This PR updates the Copilot Chat language model to indicate it does not yet support tool use in Zed. Release Notes: - N/A
Marshall Bowers created
a70daa4
agent: Update tool names in default profiles to reflect snake_cased rename (#27907)
This PR updates the tool names in the default profiles, as they were not updated after the tool names were changed to snake_case in #27903. Release Notes: - N/A
Marshall Bowers created
b158ee6
Fix Gemini function calling (#27905)
This seems to improve the performance of `gemini-2.5-pro-exp-03-25`
significantly.
We know define a single `Tool` that has multiple `FunctionDeclaration`s,
instead of defining multiple `Tool`s with a single
`FunctionDeclaration`.
Oddly enough the `flash` models seemed to work perfectly fine with the
multiple `Tool { ... }` definitions
Release Notes:
- N/A
Bennet Bo Fenner created
9b7b4a9
assistant2: Use snake_case for tool names (#27903)
The [Gemini docs](https://ai.google.dev/gemini-api/docs/function-calling?example=weather#function_declarations) state that function names should be in `snake_case` or `camelCase`. Release Notes: - N/A
Bennet Bo Fenner created
c1d6dfd
Update selection when keeping/rejecting hunks (#27902)
Release Notes: - N/A
Antonio Scandurra created
57d7bc2
vim: Add `g?` convert to `Rot13`/`Rot47` (#27824)
Release Notes: - Added `g?` convert to `Rot13`/`Rot47` --------- Co-authored-by: Conrad Irwin <conrad.irwin@gmail.com>
0x2CA and Conrad Irwin created
7bc0dd1
Don't unwrap on bad zstd data (#27891)
Closes #ISSUE Release Notes: - N/A
Conrad Irwin created