2772db8
Remove zeta2 feature flag (#50618)
Click to expand commit body
Release Notes: - N/A
Max Brunsfeld created
2772db8
Remove zeta2 feature flag (#50618)
Release Notes: - N/A
Max Brunsfeld created
dc7cbd3
zeta2: Hashlines prompt format (#50623)
Closes #ISSUE Before you mark this PR as ready for review, make sure that you have: - [ ] Added a solid test coverage and/or screenshots from doing manual testing - [ ] Done a self-review taking into account security and performance aspects - [ ] Aligned any UI changes with the [UI checklist](https://github.com/zed-industries/zed/blob/main/CONTRIBUTING.md#uiux-checklist) Release Notes: - N/A *or* Added/Fixed/Improved ...
Ben Kunkle created
a5a1977
ep: API keys for OpenAI compatible (#50615)
Closes #ISSUE Before you mark this PR as ready for review, make sure that you have: - [ ] Added a solid test coverage and/or screenshots from doing manual testing - [ ] Done a self-review taking into account security and performance aspects - [ ] Aligned any UI changes with the [UI checklist](https://github.com/zed-industries/zed/blob/main/CONTRIBUTING.md#uiux-checklist) Release Notes: - Added support for providing an API key to OpenAI-compatible edit prediction providers
Ben Kunkle created
3d3a66d
collab: Fix unable to rejoin shared project after leaving a call (#50630)
When a downstream project was disconnected from the host (e.g. the guest
left the call), `disconnected_from_host_internal` did not clear
`client_subscriptions`. These subscriptions hold entries in the
`Client`'s entity subscription map, so a subsequent
`join_remote_project` with the same project ID would fail with "already
subscribed to entity".
The fix adds `self.client_subscriptions.clear()` to
`disconnected_from_host_internal`, matching what `unshare_internal`
already does for the host side.
Before you mark this PR as ready for review, make sure that you have:
- [x] Added a solid test coverage and/or screenshots from doing manual
testing
- [x] Done a self-review taking into account security and performance
aspects
Release Notes:
- collab: Fix unable to rejoin project bug ("already subscribed to
entity")
Anthony Eid created
09e178d
ep: Predict by querying Baseten directly (#50626)
This can be used like `ep predict --provider baseten:V0131GitMergeMarkersPrefix`. Since it doesn't require load_project, it can be used with captured requests. Release Notes: - N/A
Oleksiy Syvokon created
0a1a921
git: Fix remote worktree support (#50614)
The main issue is that we weren't forwarding the proto messages through the collab server to the host. After fixing that I added integration tests to cover local worktrees, remote worktrees, and ssh worktrees. I also fixed a bug with FakeRepository where it wouldn't name its current branch as a worktree when calling git worktree, which doesn't match the behavior of the git binary. Before you mark this PR as ready for review, make sure that you have: - [x] Added a solid test coverage and/or screenshots from doing manual testing - [x] Done a self-review taking into account security and performance aspects Release Notes: - git: Fix bug that caused the git worktree picker from displaying and creating worktrees over collab
Anthony Eid created
d312312
Add ctrl-enter keybind (macOS) to type newline in search bars (#50420)
I've been using https://github.com/zed-industries/zed/issues/15046#issuecomment-3259286451 for half a year now, and it seems worthy of inclusion in the default keymap. Before you mark this PR as ready for review, make sure that you have: - [ ] Added a solid test coverage and/or screenshots from doing manual testing - [x] Done a self-review taking into account security and performance aspects - [x] Aligned any UI changes with the [UI checklist](https://github.com/zed-industries/zed/blob/main/CONTRIBUTING.md#uiux-checklist) Release Notes: - Added `ctrl-enter` keybind on macOS to type a newline in search bars
Justin Su created
528bf7c
ep: Fix fetching rated-after (#50617)
Release Notes: - N/A
Oleksiy Syvokon created
e20905f
Only use `StreamingEditFileTool` when streaming is available (#50616)
Release Notes: - N/A
Bennet Bo Fenner created
6195b70
Try to fix auto-updates when Explorer.exe holds Zed.exe (#50332)
Release Notes: - Windows: make auto-update more robust in the face of apps holding the Zed.exe handle --------- Co-authored-by: Jakub Konka <kubkon@jakubkonka.com>
Conrad Irwin and Jakub Konka created
d2a71b0
auto_update_helper: Rollback for all errors including FileNotFound (#50607)
We would mark `FileNotFound` as success and progress the update loop which does not make much sense. Release Notes: - Do not skip update roll back in presence of FileNotFound errors on Windows. Co-authored-by: Miguel Raz Guzman Macedo <raz@zed.dev>
Jakub Konka and Miguel Raz Guzman Macedo created
c19cc4c
Fix Linux watcher cleanup for recreated directories (#50412)
## Problem - On Linux, non-recursive watcher registrations remained path-cached after deleting and recreating a directory in the same session. - The recreated directory was not re-watched, so newly created child entries under that path could be missing. ## Summary - Remove directory watcher registrations when worktree paths are removed from snapshot state. - Ensure recreated directories can be watched again on Linux by allowing `scan_dir` to re-add fresh watches. - Add a Linux integration regression test for directory delete/recreate path reuse and child file creation. ## Testing - `cargo test -p project --features test-support --test integration test_recreated_directory_receives_child_events -- --exact` - `cargo test -p project --features test-support --test integration test_rescan_and_remote_updates -- --exact` ## Related - #46709 Release Notes: - Fixed Linux worktree file watching so child entries appear after deleting and recreating a directory at the same path.
Chriss4123 created
38c7e63
git: Fix commit message buffer header not being disabled after cloning commit view (#50606)
Release Notes: - Fixed extraneous buffer header when splitting the commit view.
Cole Miller created
7c9a9d4
Add "Start Thread in New Worktree" (#49141)
Add the thread target selector in the agent panel behind the `agent-git-worktrees` flag: <img width="590" height="121" alt="Screenshot 2026-03-02 at 11 50 47 PM" src="https://github.com/user-attachments/assets/17ee3303-7e01-4e40-bb84-1e7e748a3196" /> - Add a "Start Thread In..." dropdown to the agent panel toolbar, gated behind `AgentV2FeatureFlag` - Options: "Local Project" (default) and "New Worktree" - The "New Worktree" option is disabled when there's no git repository or in collab mode Closes AI-34 Release Notes: - N/A --------- Signed-off-by: Xiaobo Liu <cppcoffee@gmail.com> Co-authored-by: Oleksiy Syvokon <oleksiy@zed.dev> Co-authored-by: Ben Brandt <benjamin.j.brandt@gmail.com> Co-authored-by: Anthony Eid <56899983+Anthony-Eid@users.noreply.github.com> Co-authored-by: Remco Smits <djsmits12@gmail.com> Co-authored-by: morgankrey <morgan@zed.dev> Co-authored-by: Danilo Leal <67129314+danilo-leal@users.noreply.github.com> Co-authored-by: Ben Kunkle <ben@zed.dev> Co-authored-by: Finn Evers <finn@zed.dev> Co-authored-by: Bennet Bo Fenner <bennet@zed.dev> Co-authored-by: Zed Zippy <234243425+zed-zippy[bot]@users.noreply.github.com> Co-authored-by: MostlyK <135974627+MostlyKIGuess@users.noreply.github.com> Co-authored-by: cameron <cameron.studdstreet@gmail.com> Co-authored-by: Max Brunsfeld <maxbrunsfeld@gmail.com> Co-authored-by: John Tur <john-tur@outlook.com> Co-authored-by: Conrad Irwin <conrad.irwin@gmail.com> Co-authored-by: Wuji Chen <chenwuji2000@gmail.com> Co-authored-by: Claude <noreply@anthropic.com> Co-authored-by: Smit Barmase <heysmitbarmase@gmail.com> Co-authored-by: Cole Miller <cole@zed.dev> Co-authored-by: Kasper Nyhus <kanyhus@gmail.com> Co-authored-by: dino <dinojoaocosta@gmail.com> Co-authored-by: Anthony Eid <hello@anthonyeid.me> Co-authored-by: Josh Robson Chase <josh@robsonchase.com> Co-authored-by: ozacod <47009516+ozacod@users.noreply.github.com> Co-authored-by: ozacod <ozacod@users.noreply.github.com> Co-authored-by: Xiaobo Liu <cppcoffee@gmail.com> Co-authored-by: Lena <241371603+zelenenka@users.noreply.github.com> Co-authored-by: 0x2CA <2478557459@qq.com> Co-authored-by: Joseph T. Lyons <JosephTLyons@gmail.com> Co-authored-by: Albab Hasan <155961300+Albab-Hasan@users.noreply.github.com> Co-authored-by: KyleBarton <kjb@initialcapacity.io> Co-authored-by: Kunall Banerjee <hey@kimchiii.space> Co-authored-by: Lukas Wirth <lukas@zed.dev> Co-authored-by: Tom Houlé <13155277+tomhoule@users.noreply.github.com> Co-authored-by: Nikhil Pandey <nikhil@nikhil.com.np> Co-authored-by: Mikayla Maki <mikayla@zed.dev> Co-authored-by: dancer <144584931+dancer@users.noreply.github.com> Co-authored-by: Kirill Bulatov <kirill@zed.dev> Co-authored-by: Danilo Leal <daniloleal09@gmail.com>
Richard Feldman , Oleksiy Syvokon , Ben Brandt , Anthony Eid , Remco Smits , morgankrey , Danilo Leal , Ben Kunkle , Finn Evers , Bennet Bo Fenner , Zed Zippy , MostlyK , cameron , Max Brunsfeld , John Tur , Conrad Irwin , Wuji Chen , Claude , Smit Barmase , Cole Miller , Kasper Nyhus , dino , Anthony Eid , Josh Robson Chase , ozacod , ozacod , Xiaobo Liu , Lena , 0x2CA , Joseph T. Lyons , Albab Hasan , KyleBarton , Kunall Banerjee , Lukas Wirth , Tom Houlé , Nikhil Pandey , Mikayla Maki , dancer , Kirill Bulatov , and Danilo Leal created
62b9a98
agent_ui: Make file mention chips clickable to open files (#46751)
### Summary Makes file mention chips in the AI chat input clickable to open the referenced files. Previously, chips like `@README.md` were purely visual indicators with no interaction. ### Changes - **Clickable mention chips**: Users can now click on file mentions in the chat input to open those files in the editor - **Support for all mention types**: - Files → Opens in editor - Files with line numbers → Opens and scrolls to line - Directories → Reveals in project panel - Threads → Navigates to thread - Rules → Opens rules library - URLs → Opens in browser - **Handles files outside workspace**: Falls back to `open_abs_path()` for files not in the current workspace ### Implementation Threads `MentionUri` and `WeakEntity<Workspace>` through the crease rendering pipeline: 1. Updated `insert_crease_for_mention()` to accept mention URI and workspace references 2. Added click handler to `MentionCrease` component using `.when()` for conditional attachment 3. Implemented file opening helpers that mirror the existing `thread_view.rs::open_link()` logic ### Demo https://github.com/user-attachments/assets/21b2afb7-7a86-4a0a-aba1-e24bb1b650c2 ### Testing Manually tested: - [x] Clicking `@README.md` opens file - [x] Clicking file with line numbers navigates correctly - [x] Clicking directory reveals in project panel - [x] Files outside workspace open via absolute path ### Files Changed - `crates/agent_ui/src/mention_set.rs` - Thread URI/workspace through pipeline - `crates/agent_ui/src/ui/mention_crease.rs` - Add click handler and file opening logic - `crates/agent_ui/src/acp/message_editor.rs` - Update call sites ### Review feedback addressed - Replaced `.when()` + `unwrap()` with `.when_some()` + `Option::zip()` (`0e36efb4eb`) - De-duplicated `open_file` and `open_file_at_line` into a single function with `Option<RangeInclusive<u32>>` (`dbcbb69a4b`) - Rebased onto latest `main` and resolved conflicts Also update item 2 under Implementation from: _Added click handler to MentionCrease component using `.when()` for conditional attachment_ to: _Added click handler to MentionCrease component using `.when_some()` with `Option::zip()` for conditional attachment_ ### Release Notes: - agent: File mention chips in the chat input are now clickable and will open the referenced files in the editor. Closes #46746 --------- Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
Daniel Llamas and Claude Opus 4.6 created
e652d96
Add CSV preview with live table view and interactive features (#48207)
## **Description:** **Context:** This PR introduces an initial CSV preview feature for Zed, building upon two previously merged infrastructure PRs: - [#46341](https://github.com/zed-industries/zed/pull/46341) - Data table dynamic column support (removed const generics) - [#46190](https://github.com/zed-industries/zed/pull/46190) - Variable row height mode for data tables This implementation is based on the [original draft PR #44344](https://github.com/zed-industries/zed/pull/44344), which has been carefully decomposed into smaller, reviewable pieces. --- #### **Features Included:** **Core Infrastructure:** - Live CSV parsing with smart debouncing (200ms cooldown) - Performance monitoring with built-in timing metrics (not displayed in UI yet) - Automatic file change detection and re-parsing - Support for quoted fields, multiline cells, and escaped characters **Table Display:** - Variable row height rendering with fallback to uniform mode (switchable via settings) - Draggable column resizing (reusing existing data table infrastructure) - Row identifiers supporting both source line numbers and sequential row numbers - Configurable font rendering (UI font vs monospace) - Tooltips showing full cell content on hover **Interactive Features:** - Column sorting (ascending/descending) with visual indicators **Settings Panel:** - Toggle between variable/uniform row rendering - Font type selection (UI/monospace) - Row identifier type configuration - Debug information display - Multiline cell rendering options --- #### **Features Intentionally Removed for This PR:** To reduce complexity and review scope, the following features were temporarily reverted and will be reintroduced in subsequent PRs: - ❌ Settings pannel with performance metrics overlay - ❌ Cell selection (single, multiple, and range selections) - ❌ Keyboard navigation with arrow keys and selection extension - ❌ Copy functionality supporting CSV, TSV, and Markdown table formats - ❌ Inline cell editing with file persistence - ❌ Viewport following for large datasets - ❌ Column filtering and search capabilities These removals were done via "time-machine" commits that cleanly nuked vertical slices of functionality from the complete implementation. --- **Technical Implementation:** The feature is organized into a dedicated `csv_preview` crate with the following structure: ``` crates/csv_preview/ ├── src/ │ ├── csv_preview.rs # Main view and coordination logic │ ├── parser.rs # CSV parsing and editor integration │ ├── settings.rs # Configuration types and defaults │ ├── table_data_engine.rs # Data transformation logic │ ├── renderer/ # UI rendering modules │ │ ├── preview_view.rs # Main render implementation │ │ ├── render_table.rs # Table component assembly │ │ ├── table_cell.rs # Individual cell rendering │ │ ├── table_header.rs # Header with sorting controls │ │ └── row_identifiers.rs # Line number column │ └── types/ # Core data structures │ ├── table_like_content.rs │ ├── coordinates.rs # Display vs data coordinate systems │ └── table_cell.rs ``` **Key architectural decisions:** - **Dual coordinate system**: Separates data indices from display indices to support sorting/filtering - **Component reuse**: Leverages existing `data_table` infrastructure from the keymap editor --- **Integration:** - Registers `csv::OpenPreview` action (currently without default keybindings) - Follows the same workspace integration pattern as `markdown_preview` and `svg_preview` - Automatically detects `.csv` file extensions - Tab integration with appropriate icons and naming --- **Code Structure Note:** Some code structures, types, and documentation may appear redundant or over-engineered in this initial implementation. This is intentional - the feature was developed as a complete system and then decomposed by functionality rather than being built incrementally. The "extra" infrastructure supports features that were removed for this PR but will be reintroduced in subsequent ones. This approach was chosen over extensive refactoring because: 1. The complete feature took 200+ commits to develop with significant rewrites 2. Clean extraction of vertical slices was more feasible than rebuilding incrementally 3. The end state will utilize all these components, making current "redundancy" temporary I apologize for any inconvenience this may cause during review, but the alternative would have required significant refactoring effort just to make intermediate states "prettier," which seemed counterproductive. --- **Future Work:** This lays the groundwork for upcoming PRs that will reintroduce the removed features: - Cell selection and keyboard navigation - Copy functionality with multiple output formats - Inline editing capabilities with undo/redo - Column filtering and search - TSV and other delimiter support - Improved horizontal scrolling behavior - Settings persistence **Testing:** Includes test fixtures demonstrating multiline cell handling, various column counts, and edge cases. --- **Release Notes:** - N/A This is feature flagged --------- Co-authored-by: Anthony Eid <anthony@zed.dev>
Oleksandr Kholiavko and Anthony Eid created
83fd8fa
language_models: Handle usage-only events with empty choices in OpenRouter (#50603)
Closes #50569 Before you mark this PR as ready for review, make sure that you have: - [x] Added a solid test coverage and/or screenshots from doing manual testing - [x] Done a self-review taking into account security and performance aspects - [x] Aligned any UI changes with the [UI checklist](https://github.com/zed-industries/zed/blob/main/CONTRIBUTING.md#uiux-checklist) Previously, OpenRouter responses containing only usage data (without any choices) would cause an error. Now the mapper properly emits usage updates for these events without failing. Release Notes: - Fixed an error when OpenRouter returns a usage-only event with empty choices.
Umesh Yadav created
58ad0ff
Add file icons for YAML, Helm and GitLab (#50529)
Before you mark this PR as ready for review, make sure that you have: - [ ] Added a solid test coverage and/or screenshots from doing manual testing - [x] Done a self-review taking into account security and performance aspects - [x] Aligned any UI changes with the [UI checklist](https://github.com/zed-industries/zed/blob/main/CONTRIBUTING.md#uiux-checklist) I used the icons from here: - GitLab: https://about.gitlab.com/press/press-kit/ - Helm: https://www.svgrepo.com/svg/330624/helm - Yaml: https://icons.getbootstrap.com/icons/filetype-yml/ FYI: I'm not familiar with Rust please review the rust code. Release Notes: - Added file icons for YAML, Helm and GitLab files, and used the Docker icon for `Containerfile`. --------- Co-authored-by: Danilo Leal <daniloleal09@gmail.com>
Tom Zaspel and Danilo Leal created
197cf60
agent_ui: Refresh ACP history after thread create/load (#49796)
Moves loading of the history connection to once we have a new connection, not on every thread view. Release Notes: - N/A --------- Signed-off-by: rabi <ramishra@redhat.com> Co-authored-by: Ben Brandt <benjamin.j.brandt@gmail.com>
Rabi Mishra and Ben Brandt created
906f5a6
agent: Cancel retries when the turn is cancelled (#50580)
When a completion request fails with a retryable error (e.g. a 500 from the upstream provider), the retry loop waits on a timer before trying again. This timer did not race with the cancellation signal, so if the user switched models and submitted a new message during the retry delay, the old turn would continue retrying with the stale model for up to 15 seconds — making requests to the wrong provider and corrupting the thread's message list with spurious Resume entries. Now the retry delay races with the cancellation receiver, so the old turn exits immediately when cancelled. Release Notes: - Fixed cancelled turns in a conversation that failed (e.g. 500 from the LLM provider) bein retried even after cancellation
Tom Houlé created
9ba6594
livekit: Correctly handle runtime deps: libva and libva-drm (#50527)
Release Notes: - N/A
Jakub Konka created
3bb5aec
agent: Remove unused `edit_agent_output` from edit file tool (#50576)
Removes unused `edit_agent_output` from `EditFileTool`. This makes it easier to maintain compatibility between the `EditFileTool` and `StreamingEditFileTool`. Release Notes: - N/A
Bennet Bo Fenner created
502460a
zlog: Fix log file rotation never truncating original file (#50571)
Release Notes: - Fixed an issue where the log file and log file backup would keep grow indefinitely
Lukas Wirth created
6808acc
Fix a few cases where we weren't escaping shell vars correctly (#50562)
Release Notes: - N/A
Conrad Irwin created
880b2e5
Remove Zeta1 logic, allow choosing zeta2 experiment (#50560)
Release Notes: - N/A
Max Brunsfeld created
815c6f5
Add small alloc and lookup optimizations (#49041)
A vector was being instantiated when the callsite only required an iterable. Another part of the code was performing multiple `contains()` lookups on a vector, and now it does it on a hashed set. This change has required some extra modifications across the codebase, but the affected sites are minimal and have been adjusted without major issues. The changes include some `Hash` derived implementations, which were proposed in the original `lsp-types` in [[1]], and maybe could be merged into Zed's fork. I went ahead and used a newtype with a custom `Hash` implementation that simply called on the structure's public members' implementations of `Hash`. The next change includes the removal of a check of the request capabilities after having already checked the same thing in the call to `to_lsp_params_or_response()` right before. The result of the `match` expression should already have returned a `Task::ready()` if the above mentioned function failed in performing the check that was later repeated and now removed. Finally, in the `edits_from_lsp()` method, stable sorting was being performed when only unstable sorting would suffice. The method can only sort with respect to the key data, and not the satellite data, as the latter are the literal strings of the edit. It matters not which one of a sequence of overlapping edits (with same ranges that thus resolve the edits for equivalence) should come before the other. [1]: https://github.com/gluon-lang/lsp-types/pull/295/changes#diff-b1a35a68f14e696205874893c07fd24fdb88882b47c23cc0e0c80a30c7d53759R540 - [ ] Tests or screenshots needed? - [ ] Code Reviewed - [ ] Manual QA Release Notes: - Removed a vector allocation where the callsite only required an iterable. - Improved multiple lookup operations when deserializing LSP edit operations. - Removed a double-check of capabilities after requesting and thus determining LSP capabilities. - Replaced stable sorting with unstable sorting of edits returned by the LSP.
dybucc created
3f6a6cf
Truncate tabs in filenames (#50550)
Closes #19208 Authored-By: @ngauder Release Notes: - Editor: truncate long file names in tab titles --------- Co-authored-by: Nikolas Gauder <nikolas.gauder@tum.de> Co-authored-by: Zed Zippy <234243425+zed-zippy[bot]@users.noreply.github.com>
Conrad Irwin , Nikolas Gauder , and Zed Zippy created
42ba961
Persist unsent draft prompt across Zed restarts (#49541)
Store the user's unsent message editor text in DbThread so it survives quitting and reloading Zed. The draft flows through Thread → AcpThread → AcpThreadView on load, and back via a debounced observer on the message editor for saves. Currently works for native Zed agents only; external ACP agents will pick this up once general ACP history persistence lands. ## Changes - **`DbThread`** / **`Thread`**: New `draft_prompt: Option<String>` field, included in `to_db()`/`from_db()` - **`AcpThread`**: Bridge field with getter/setter, populated during `register_session()` - **`NativeAgent::save_thread()`**: Copies draft from `AcpThread` → `Thread` before persisting - **`AcpThreadView`**: Restores draft into `MessageEditor` on load; syncs editor text → `AcpThread` via observer; debounced (500ms) Thread notify triggers DB save Co-authored-by: Anthony Eid <anthony@zed.dev> Co-authored-by: Mikayla Maki <mikayla@zed.dev>
Eric Holk , Anthony Eid , and Mikayla Maki created
4392e3a
workspace: Fix scrolling to active tab when pinned tabs are present (#50538)
When pinned tabs are present, activating an unpinned tab passed the absolute tab index to the scroll handle, which only contains unpinned tabs. This caused the scroll-into-view to silently fail. Subtract `pinned_tab_count` from the index so it maps to the correct child in the unpinned tabs scroll container. Release Notes: - Fixed tab bar not reliably scrolling to the active tab when pinned tabs are present.
Sergei Zharinov created
67b375c
Restore accidental change (#50543)
I'm not sure why, but my dev builds on linux don't output to stdout Release Notes: - N/A *or* Added/Fixed/Improved ...
Conrad Irwin created
1d443f6
Add error handling to keep Zed running in the face of transient wgpu errors (#50539)
Release Notes: - linux: Reduce crashes in the face of transient GPU errors
Conrad Irwin created
465e2b5
editor: Avoid autoscroll in SplitSelectionIntoLines (#49399)
Closes #48812 ## Summary `editor::SplitSelectionIntoLines` currently triggers autoscroll and can jump to the end of a long file. This PR makes the action explicitly no-scroll. ## What changed - Disabled autoscroll in the `unfold_ranges` call inside `split_selection_into_lines`. - Switched selection update to `SelectionEffects::no_scroll()`. ## Testing - Added `test_split_selection_into_lines_does_not_scroll`. ### Screenshots: - Before: see issue video - After: <img width="2486" height="1299" alt="image" src="https://github.com/user-attachments/assets/8408a2f1-7dd7-4984-aa89-927d5a588322" /> Before you mark this PR as ready for review, make sure that you have: - [x] Added a solid test coverage and/or screenshots from doing manual testing - [x] Done a self-review taking into account security and performance aspects - [x] Aligned any UI changes with the [UI checklist](https://github.com/zed-industries/zed/blob/main/CONTRIBUTING.md#uiux-checklist) Release Notes: - Stop scrolling on `editor::SplitSelectionIntoLines` called in the long files
it-education-md created
ed35534
ep: Include more context (#50533)
Closes #ISSUE Before you mark this PR as ready for review, make sure that you have: - [ ] Added a solid test coverage and/or screenshots from doing manual testing - [ ] Done a self-review taking into account security and performance aspects - [ ] Aligned any UI changes with the [UI checklist](https://github.com/zed-industries/zed/blob/main/CONTRIBUTING.md#uiux-checklist) Release Notes: - N/A *or* Added/Fixed/Improved ... --------- Co-authored-by: Max <max@zed.dev>
Ben Kunkle and Max created
7ad5246
Remove Supermaven-related code from Zed (#50537)
Follow-up of https://github.com/zed-industries/zed/pull/49317 See also https://supermaven.com/blog/sunsetting-supermaven - N/A
Kirill Bulatov created
1f11592
editor: Remove folded buffer ID on all excerpts removed (#50525)
Fix a bug in the editor's handling of the `multi_buffer::Event::ExcerptsRemoved` event, where the display map's `folded_buffers` set was not updated according to the list of removed buffer ids. Since the `ProjectSearchView` now relies on the `Editor.has_any_buffer_folded` method in order to decide the state of the expand/collapse all excerpts button this could lead to a bug where, after an initial project search, all excerpts would be collapsed, and performing a new search would leave the button in a wrong state, as all excerpts from the new search result would be expanded, but the button would still consider that there were folded excerpts for the buffers. Closes #50521 Release Notes: - Fixed bug in project search where collapsing a single buffer then performing a new search in the same view, would break the expand/collapse all button behavior
Dino created
f0620c6
editor: Preserve compound emojis (#50082)
Closes #45466 Emojis like 🧑✈️ are grapheme clusters formed using zero-width joiners and variation selectors. Iterating over the string by individual chars in `highlight_invisibles` breaks these clusters, even though they represent a single visible character. Before you mark this PR as ready for review, make sure that you have: - [ ] Added a solid test coverage and/or screenshots from doing manual testing - [x] Done a self-review taking into account security and performance aspects - [ ] Aligned any UI changes with the [UI checklist](https://github.com/zed-industries/zed/blob/main/CONTRIBUTING.md#uiux-checklist) Release Notes: - Zed now supports compound emojis
Marco Mihai Condrache created
0d79f44
Update legal docs to reflect new terms of service (#50530)
Before you mark this PR as ready for review, make sure that you have: - [x] Added a solid test coverage and/or screenshots from doing manual testing - [x] Done a self-review taking into account security and performance aspects - [x] Aligned any UI changes with the [UI checklist](https://github.com/zed-industries/zed/blob/main/CONTRIBUTING.md#uiux-checklist) Release Notes: - Update legal docs to reflect new Terms, Privacy Policy, Subprocessors, and Acceptable Use Policies (fka Third Party Terms)
Lucas White created
4be8544
wGPU: Select more specifically (#50528)
This uses the compositor hints if available to pick the best GPU. If none is available, it tries each GPU in turn, and the first that actually works is chosen Release Notes: - Linux: Select a more appropriate GPU --------- Co-authored-by: John Tur <john-tur@outlook.com>
Conrad Irwin and John Tur created
b47b353
Docs/privacy documentation refresh (#50522)
Before you mark this PR as ready for review, make sure that you have: - [x] Added a solid test coverage and/or screenshots from doing manual testing - [x] Done a self-review taking into account security and performance aspects - [x] Aligned any UI changes with the [UI checklist](https://github.com/zed-industries/zed/blob/main/CONTRIBUTING.md#uiux-checklist) Release Notes: - Updated Privacy and Telemetry docs for improved clarity --------- Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com> Co-authored-by: Zed Zippy <234243425+zed-zippy[bot]@users.noreply.github.com>
Lucas White , Claude Sonnet 4.6 , and Zed Zippy created
2879349
agent: Fix review experience for `StreamingEditFileTool` (#50518)
Release Notes: - N/A
Bennet Bo Fenner created
56ae095
agent: Use correct subagent thread entity to get the entries list (#50515)
Was grabbing off the Thread not the AcpThead :facepalm: Release Notes: - N/A
Ben Brandt created
41a0c63
agent: Add linked action log support for subagent threads (#50500)
Subagents now forward buffer reads/writes/edits to a parent action log, allowing the parent's review experience to track all file changes made by subagents alongside its own. Release Notes: - N/A --------- Co-authored-by: Bennet Bo Fenner <bennetbo@gmx.de>
Ben Brandt and Bennet Bo Fenner created
db8f649
remote_server: Don't panic when forwarding stderr (#50505)
Closes ZED-5B7 Release Notes: - N/A
Cole Miller created
a6106d2
agent: Add back in discouragement of useless subagents (#50512)
Release Notes: - N/A
Ben Brandt created
c6319d3
agent: Propagate model settings to running subagents (#50510)
When the model, summarization model, thinking settings, speed, or profile are updated on a thread, apply the same settings to any currently running subagents. Release Notes: - N/A Co-authored-by: Bennet Bo Fenner <bennetbo@gmx.de>
Ben Brandt and Bennet Bo Fenner created
f9895c5
devcontainer: Fix git output (#49230)
Closes #48434 In Dev Containers, failed git operations were surfaced with a generic failure message, while the useful git output (stderr/stdout) was not reliably available to users. This happened because in devcontainers the git operation errors go through an RPC layer and then got wrapped with `anyhow::Context` (e.g. “sending pull request”); the toast displayed only that outer context via `to_string()`, masking the underlying git stderr message. This change ensures the full git operation output is preserved and surfaced via Zed’s “See logs” flow in Dev Containers, matching the information you get when running the same git command in a terminal. ### What you should expect in the UI - You will see a generic toast like “git pull failed” / “git push failed”. - When clicking on the toast’s “See logs”, the log tab now contains the full git error output (e.g. non-fast-forward hints, merge conflict details, “local changes would be overwritten”, etc.), which previously could be missing/too generic. --- ## Manual testing Run inside a Dev Container and ensure git auth works (SSH keys/agent or HTTPS credentials). 1. **Dirty-tree pull failure** - Make remote ahead by 1 commit (push from another clone). - Locally modify the same file without committing. - In Zed: **Pull** - **Expect:** toast “git pull failed” + **See logs** shows “local changes would be overwritten…” (or equivalent). 2. **Non-fast-forward push failure** - Ensure remote ahead. - Locally create 1 commit. - In Zed: **Push** - **Expect:** toast “git push failed” + **See logs** shows “rejected (non-fast-forward)” + hint to pull first. 3. **Merge-conflict pull failure** - Create conflicting commits on the same lines (one local commit, one remote commit). - In Zed: **Pull** - **Expect:** toast “git pull failed” + **See logs** shows conflict output (“CONFLICT…”, “Automatic merge failed…”). Release Notes: - Fixed devcontainer git failure toasts so they show the actual git error --------- Co-authored-by: KyleBarton <kjb@initialcapacity.io>
Oliver Azevedo Barnes and KyleBarton created
2b774e5
extension_host: Allow extensions to define semantic highlighting rules (#49282)
for their given language via a `semantic_token_rules.json` file Release Notes: - N/A *or* Added/Fixed/Improved ...
Lukas Wirth created
04fc31f
Fix another case where we could apply highlights with wrong indices (#50367)
Closes #ISSUE Release Notes: - N/A
Conrad Irwin created
2d3c05e
Add `libva-devel` as required deps for `dnf` section (#50476)
If I follow the steps outlined in https://zed.dev/docs/development/linux then `cargo run` on my Fedora workstation fails because the install script is missing `libva-devel` as a required dependency under `dnf` / `yum` sections. Before you mark this PR as ready for review, make sure that you have: - [ ] Added a solid test coverage and/or screenshots from doing manual testing - [ ] Done a self-review taking into account security and performance aspects - [ ] Aligned any UI changes with the [UI checklist](https://github.com/zed-industries/zed/blob/main/CONTRIBUTING.md#uiux-checklist) Release Notes: - N/A
Kunall Banerjee created
9ca695d
Remove `dbg!` from tests (#50506)
Removes a bunch of `dbg!`'s from strings in test code. It's annoying cause these show up in project search, when you are removing `dbg!(...)`'s after debugging something Release Notes: - N/A
Bennet Bo Fenner created