f9c97d2
Bump Zed to v0.212 (#41417)
Click to expand commit body
Release Notes: - N/A
Conrad Irwin created
f9c97d2
Bump Zed to v0.212 (#41417)
Release Notes: - N/A
Conrad Irwin created
5192233
Fix people who use gh instead of env vars (#41418)
Closes #ISSUE Release Notes: - N/A
Conrad Irwin created
d0d7b9c
Update docs to use == instead of = (#41415)
Closes #41219 Release Notes: - Updated docs to use `==` instead of `=` in keymap context. Hopefully I'm not mistaken here, but I think the docs have a bug in them
Callum Tolley created
8b051d6
Revert "Use gh workflow for tests" (#41411)
Reverts zed-industries/zed#41384 The branch-protection rules work much better when there is a Job that runs every time and can be depended on to pass, we no longer have this. Release Notes: - N/A
Ben Kunkle created
16d84a3
Adjust Windows fusion manifests (#41408)
- Declare UAC support. This will prevent Windows from flagging `auto_update_helper.exe` as a legacy setup program that needs to run as administrator. - Declare support for Windows 10. This will stop Windows from applying various application compatibility profiles. The UAC policy is not really appropriate to apply to all GPUI applications (e.g. an installer written in GPUI may want to declare itself as `requireAdministrator` instead of `asInvoker`). I tried splitting this into a Zed.exe-only manifest and enabling manifest file merging, but I ran out of my time-box. We can fix this later if this is flagged by GPUI users. Release Notes: - N/A
John Tur created
4adff4a
Use gh workflow for tests (#41384)
Follow up for: #41304 Splits CI tests (cherry-picks and PRs only for now) into separate workflows using `gh-workflow`. Includes a couple restructures to - run more things in parallel - remove our previous shell script based checking to filter tests based on files changed, instead using the builtin `paths:` workflow filters Splitting the docs/style/rust tests & checks into separate workflows means we lose the complete summary showing all the tests in one view, but it's possible to re-add in the future if we go back to checking what files changed ourselves or always run everything. Release Notes: - N/A *or* Added/Fixed/Improved ... --------- Co-authored-by: Conrad <conrad@zed.dev>
Ben Kunkle and Conrad created
7de3c67
docs: Improve header on mobile (#41404)
Release Notes: - N/A
Danilo Leal created
60bd417
Allow inspection of zeta2's LLM-based context retrieval (#41340)
Release Notes: - N/A --------- Co-authored-by: Agus Zubiaga <agus@zed.dev>
Max Brunsfeld and Agus Zubiaga created
d31194d
docs: Fix keybinding display in /configuring-zed (#41402)
Release Notes: - N/A
Danilo Leal created
4cc6d6a
ci: Notarize in parallel (different flavor) (#41392)
Release Notes: - N/A --------- Co-authored-by: Conrad Irwin <conrad.irwin@gmail.com> Co-authored-by: Ben Kunkle <ben@zed.dev> Co-authored-by: Conrad Irwin <conrad@zed.dev>
Piotr Osiewicz , Conrad Irwin , Ben Kunkle , and Conrad Irwin created
b9eafb8
extensions: Load extension byte repr in background thread (again) (#41398)
Release Notes: - N/A
Piotr Osiewicz created
5e7927f
[WIP] editor: Implement next/prev reference (#41078)
Co-authored-by: Cole <cole@zed.dev> Co-authored-by: Conrad Irwin <conrad.irwin@gmail.com>
Cameron Mcloughlin , Cole , and Conrad Irwin created
b757365
docs: Reorganize introduction (#41387)
Release Notes: - Remove Windows/Linux from Getting Started - Consolidate download & system into new Installation page - Move Remote Dev out of Windows and into Remote Development - Add Uninstall page - Add updates page - Remove addl learning materials from intro
Katie Geer created
360074e
rope: Prevent stack overflows by bumping rayon stack sizes (#41397)
Thread stacks in rust by default have 2 megabytes of stack which for sumtrees (or ropes in this case) can easily be exceeded depending on the workload. Release Notes: - Fixed stack overflows when constructing large ropes
Lukas Wirth created
b1922b7
Move Nightly release to gh-workflow (#41349)
Follow up to #41304 to move nightly release over Release Notes: - N/A --------- Co-authored-by: Ben Kunkle <ben@zed.dev>
Conrad Irwin and Ben Kunkle created
54fd7ea
agent_ui: Don't show root project in path prefix in @-mention menu (#41372)
This PR hides the worktree root name from the path prefix displayed when you @-mention a file or directory in the agent panel. Given the tight UI real state we have, I believe that having the project name in there is redundant—the project you're in is already displayed in the title bar. Not only it was the very first word you'd see after the file's name, but it also made the path longer than it needs to. A bit of a design clean up here :) (PS: We still show the project name if there are more than one in the same workspace.) Release Notes: - N/A
Danilo Leal created
8564602
command palette: Make footer buttons justified to the right (#41382)
Release Notes: - N/A
Danilo Leal created
e604ef3
Add a setting to prevent sharing projects in public channels (#41395)
This PR adds a setting to prevent projects from being shared in public
channels.
This can be enabled by adding the following to the project settings
(`.zed/settings.json`):
```json
{
"prevent_sharing_in_public_channels": true
}
```
This will then disable the "Share" button when not in a private channel:
<img width="380" height="115" alt="Screenshot 2025-10-28 at 2 28 10 PM"
src="https://github.com/user-attachments/assets/6761ac34-c0d5-4451-a443-adf7a1c42bcd"
/>
Release Notes:
- collaboration: Added a `prevent_sharing_in_public_channels` project
setting for preventing projects from being shared in public channels.
Marshall Bowers created
1f5101d
agent_ui: Trim whitespace when submitting message (#41391)
Closes #41017 Release Notes: - N/A
Bennet Fenner created
37540d1
agent: Only include tool guidance in system prompt when profile has tools enabled (#40413)
Was previously sending all of the tools to the LLM on the first message of a conversation regardless of the selected agent profile. This added extra context, and tended to create scenarios where the LLM would attempt to use the tool and it would fail since it was not available. To reproduce, create a new conversation where you ask the Minimal mode which tools it has access to, or try to write to a file. Release Notes: - Fixed an issue in the agent where all tools would be presented as available even when using the `Minimal` profile --------- Co-authored-by: Bennet Bo Fenner <bennetbo@gmx.de>
Christian Durán Carvajal and Bennet Bo Fenner created
d9d2458
lsp: Fix workspace diagnostics when registered statically (#41386)
Closes #41379 Release Notes: - Fixed diagnostics for Ruff and Biome
Piotr Osiewicz created
a4a2acf
gpui: Set initial window title on Wayland (#36844)
Closes #36843 Release Notes: - Fixed: set the initial window title correctly on startup in Wayland.
Sushant Mishra created
55554a8
markdown_preview: Improve nested list item prefix style (#39606)
Release Notes: - Improved nested list item prefix style for Markdown preview. ## Before <img width="667" height="450" alt="SCR-20251006-rtis" src="https://github.com/user-attachments/assets/439160c4-7982-463c-9017-268d47c42c0c" /> ## After <img width="739" height="440" alt="SCR-20251006-rzlb" src="https://github.com/user-attachments/assets/f6c237d9-3ff0-4468-ae9c-6853c5c2946a" /> --------- Co-authored-by: Bennet Bo Fenner <bennetbo@gmx.de>
Jason Lee and Bennet Bo Fenner created
d00ad02
agent_ui: Add file name and line number to symbol completions (#40508)
Symbol completions in the context picker now show "SymbolName filename.txt L123" instead of just "SymbolName". This helps distinguish between symbols with the same name in different files. ## Motivation I noticed that the message prompt editor only showed symbol names without any context, making it hard to use in large projects with many symbols sharing the same name. The inline prompt editor already includes file context for symbol completions, so I brought that same UX improvement to the message prompt editor. I've decided to match the highlighting style with directory completion entries from the message editor. ## Changes - Extract file name from both InProject and OutsideProject symbol locations - Add `build_symbol_label` helper to format labels with file context - Update test expectation for new label format ## Screenshots Inline Prompt Editor <img width="843" height="334" alt="Screenshot 2025-10-17 at 17 47 52" src="https://github.com/user-attachments/assets/16752e1a-0b8c-4f58-a0b2-25ae5130f18c" /> Old Message Editor: <img width="466" height="363" alt="Screenshot 2025-10-17 at 17 31 44" src="https://github.com/user-attachments/assets/900659f3-0632-4dff-bc9a-ab2dad351964" /> New Message Editor: <img width="482" height="359" alt="Screenshot 2025-10-17 at 17 31 23" src="https://github.com/user-attachments/assets/bf382167-f88b-4f3d-ba3e-1e251a8df962" /> Release Notes: - Added file names and line numbers to symbol completions in the agent panel
Paweł Kondzior created
233a1eb
Open keymap editor from command palette entry (#40825)
Release Notes: - Adds footer to the command palette with buttons to add or change the selected actions keybinding. Both open the keymap editor though the add button takes you directly to the modal for recording a new keybind. https://github.com/user-attachments/assets/0ee6b91e-b1dd-4d7f-ad64-cc79689ceeb2 --------- Co-authored-by: Joseph T. Lyons <JosephTLyons@gmail.com> Co-authored-by: Julia Ryan <juliaryan3.14@gmail.com> Co-authored-by: Danilo Leal <daniloleal09@gmail.com>
David Kleingeld , Joseph T. Lyons , Julia Ryan , and Danilo Leal created
c656101
Use gh-workflow for the `run-bundling` aspects of CI.yml (#41304)
To help make our GitHub Actions easier to understand, we're planning to split the existing `ci.yml` into three separate workflows: * run_bundling.yml (this PR) * run_tests.yml * make_release.yml To avoid the duplication that this might otherwise cause, we're planning to write the workflows with gh-workflow, and use rust instead of encoding logic in YAML conditions. Release Notes: - N/A --------- Co-authored-by: Ben Kunkle <ben@zed.dev>
Conrad Irwin and Ben Kunkle created
3248a05
Propagate Jupyter client errors (#40886)
Closes #40884 - Make IOPub task return a `Result` - Create a monitoring task that watches over IOPub, Control, Routing and Shell tasks. - If any of these tasks fail, report the error with `kernel_errored()` (which is already used to report process crashes) https://github.com/user-attachments/assets/3125f6c7-099a-41ca-b668-fe694ecc68b9 This is not perfect. I did not have time to look into this but: - When such errors happen, the kernel should be shut down. - The kernel should no longer appear as online in the UI But at least the user is getting feedback on what went wrong. Release Notes: - Jupyter client errors are now surfaced in the UI (#40884)
Lionel Henry created
baaf87a
Fix `unit_evals.yml` (#41377)
Release Notes: - N/A
Bennet Fenner created
8991f58
ci: Bump target directory size limit for mac runners (#41375)
Release Notes: - N/A
Piotr Osiewicz created
2579f86
acp_thread: Fix @mention file path format (#41310)
After #38882 we were always including file/directory mentions as `zed:///agent/file?path=a/b/c.rs`. However, for most resource links (files/directories/symbols/selections) we want to use a common format, so that ACP servers don't have to implement custom handling for parsing `ResourceLink`s coming from Zed. This is what it looks like now: ``` [@index.js](file:///Users/.../projects/reqwest/examples/wasm_github_fetch/index.js) [@wasm](file:///Users/.../projects/reqwest/src/wasm) [@Error](file:///Users/.../projects/reqwest/src/async_impl/client.rs?symbol=Error#L2661:2661) [@error.rs (23:27)](file:///Users/.../projects/reqwest/src/error.rs#L23:27) ``` Release Notes: - N/A --------- Co-authored-by: Cole Miller <cole@zed.dev>
Bennet Fenner and Cole Miller created
5423faf
Use proper inlay hint range when filtering out hints (#41363)
Follow-up of https://github.com/zed-industries/zed/pull/40183 Release Notes: - N/A --------- Co-authored-by: Lukas Wirth <lukas@zed.dev>
Kirill Bulatov and Lukas Wirth created
8a01e48
ui: Properly update scrollbar track color (#41354)
Closes https://github.com/zed-industries/zed/issues/41334 This comes down to a caching issue.. Release Notes: - Fixed an issue where the scrollbar track color would not update in case the theme was changed.
Finn Evers created
1b43217
Add a jetbrains-like Toggle All Docks action (#40567)
The current Jetbrains keymap has `ctrl-shift-f12` set to `CloseAllDocks`. On Jetbrains IDEs this hotkey actually toggles the docks, which is very convenient: You press it once to hide all docks and just focus on the code, and then you can press it again to toggle your docks right back to how they were. Unlike `CloseAllDocks`, a toggle means the editor needs to remember the previous docks state so this necessitated some code changes. Release Notes: - Added a `Toggle All Docks` editor action and updated the keymaps to use it
Adir Shemesh created
1b6cde7
Revert "Fix ESLint linebreak-style errors by preserving line endings in LSP communication (#38773)" (#41355)
This reverts commit 435eab68968fa11f8a476c78845b13df45498f25. This caused format on save to scroll down to bottom instead of keeping the position. Release Notes: - N/A
Kirill Bulatov created
bd0bcdb
Fix line number settings migration (#41351)
Follow-up to https://github.com/zed-industries/zed/pull/39268 Also updates the documentation. Release Notes: - N/A
Finn Evers created
2b56991
editor: Fix calculate relative line number panic (#41352)
### Reproduction steps 1. Turn on relative line numbers 2. Start a debugging session and hit an active debug line 3. minimize Zed so the editor element with the active debug line has zero visible rows #### Before https://github.com/user-attachments/assets/57cc7a4d-478d-481a-8b70-f14c879bd858 #### After https://github.com/user-attachments/assets/19614104-f9aa-4b76-886b-1ad4a5985403 Release Notes: - debugger: Fix a panic that could occur when minimizing Zed
Anthony Eid created
0857dda
Always delete OpenConsole.exe on Windows uninstall (#41348)
By default, the uninstaller will only delete files that were written by the original installer. When users upgrade Zed, these new OpenConsole.exe files will have been written by auto_upgrade_helper, not the installer. Force them to be deleted on uninstall, so they do not hang around. Release Notes: - N/A
John Tur created
3e3618b
debugger: Add horizontal scrollbar for frame item and tooltip for variables (#41261)
Closes #40360 I first tried to use an horizontal scrollbar also for variables but as it's a List that can be collapsed it didn't feel natural so I ended up adding a tooltip to have to full value of the variable when you hover the item. (cf screenshots). https://github.com/user-attachments/assets/70c4150d-b967-46b0-8720-82bbad9c9cca https://github.com/user-attachments/assets/d0b52189-b090-4824-8eb7-2f455fa58b33 Release Notes: - Added: for debugger UI horizontal scrollbar for frame item and tooltip for variables. Signed-off-by: Benjamin <5719034+bnjjj@users.noreply.github.com>
Coenen Benjamin created
2163580
Fix tab switcher spacing bug (#41329)
The tab switcher render matches calls each workspace item's `Item::tab_content` function that can return an element of variable size. Because the tab switcher was using a uniform list under the hood, this would cause spacing issues when tab_contents elements had different sizes. The fix is by changing the picker to use a material list under the hood. Release Notes: - N/A
Anthony Eid created
4778d61
Fix copy button not working for REPL error output (#40669)
## Description Fixes the copy button functionality in REPL interactive mode error output sections. When executing Python code that produces errors in the REPL (e.g., `NameError`), the copy button in the error output section was unresponsive. The stdout/stderr copy button worked correctly, but the error traceback section copy button had no effect when clicked. Fixes #40207 ## Changes Modified the following: src/outputs.rs: Fixed context issues in render_output_controls by replacing cx.listener() with simple closures, and added custom button implementation for ErrorOutput that copies/opens the complete error (name + message + traceback) src/outputs/plain.rs: Made full_text() method public to allow access from button handlers src/outputs/user_error.rs: Added Clone derive to ErrorView struct and removed a couple pieces of commented code ## Why This Matters The copy button was clearly broken and it is useful to have for REPL workflows. Users could potentially need to copy error messages for a variety of reasons. ## Testing See attached demo for proof that the fix is working as intended. (this is my first ever commit, if there are additional test cases I need to write or run, please let me know!) https://github.com/user-attachments/assets/da158205-4119-47eb-a271-196ef8d196e4 Release Notes: - Fixed copy button not working for REPL error output
h-michaelson20 created
46c5d51
recent_projects: Surface project opening errors to user (#41308)
Release Notes: - N/A *or* Added/Fixed/Improved ...
Lukas Wirth created
73bd12e
editor: Optimize selection overlap checking (#41281)
Replace the binary search approach with a more efficient partition_point method for checking selection overlaps. This eliminates the need to collect and sort selection ranges separately, reducing memory allocation and improving performance when handling multiple selections. Release Notes: - N/A Signed-off-by: Xiaobo Liu <cppcoffee@gmail.com>
Xiaobo Liu created
cc829e7
remote: 60 second timeout on initial connection (#41339)
Closes #41316 Release Notes: - Fixes #41316 > This keeps the 5 second heartbeat behavior for after the connection is made
versecafe created
fdf5bf7
remote: Support building x86_64-linux-musl proxy in nix-darwin (#41291)
This change adds two things to our remote server build
process:
1. It now checks if all required tooling is installed before using it or installing it on demand. This includes checks for `rustup` and `cargo-zigbuild` in your `PATH`.
2. Next, if `ZED_BUILD_REMOTE_SERVER` contains `musl` and `ZED_ZSTD_MUSL_LIB`
is set, we will pass its value (the path) to `cargo-zigbuild` as `-C
link-arg=-L{path}`.
Release Notes:
- N/A
Jakub Konka created
c94536a
Fix Windows updater failing to copy OpenConsole.exe (#41338)
Release Notes: - N/A
John Tur created
9db4740
Reland Windows Arm64 builds in CI (#40855)
Release Notes: - windows: Added builds for Arm64 architecture --------- Co-authored-by: Julia Ryan <juliaryan3.14@gmail.com>
John Tur and Julia Ryan created
1d0bb5a
Make 'wrap selections in tag' work with line selection mode (#41030)
The `wrap selections in tag` action currently did not take line_mode into account, which means when selecting lines with `shift-v`, the start/end tags would be inserted into the middle of the selection (where the cursor sits) https://github.com/user-attachments/assets/a1cbf3da-d52a-42e2-aecf-1a7b6d1dbb32 This PR fixes this behaviour by checking if the selection uses line_mode and then adjusting start and end points accordingly. NOTE: I looked into amending the test cases for this, but I am unsure how to express line mode with range markers. I would appreciate some guidance on this and then I am happy to add test cases. After: https://github.com/user-attachments/assets/a212c41f-b0db-4f50-866f-fced7bc677ca Release Notes: - Fixed `Editor: wrap selection in tags` when in vim visual line mode --------- Co-authored-by: Conrad Irwin <conrad.irwin@gmail.com>
Lukas and Conrad Irwin created
6823847
Add buffer_search_deployed key context (#41193)
Release Notes: - Pane key context now includes 'buffer_search_deployed' identifier The goal of this PR is to add a new identifier in the key context that will let the user target when the BufferSearchBar is deployed even if they are not focused on it. requested in #36930 Same rational as #40454 this will allow users to make more flexible keybindings, by including some additional information higher up the key context tree. i thought adding this context to `Pane` seemed more appropriate than `Editor` since `Terminal` also has a `BufferSearchBar`; however, I ran into some import issues between BufferSearchBar, Search, Pane, and Workspace which made it difficult to implement adding this context directly inside `Pane`'s render function. instead i added a new method called `contributes_context` to `ToolbarItem` which will allow any toolbar item to add additional context to the `Pane` level, which feels like it might come in handy. here are some screen shots of the context being displayed in the Editor and the Terminal <img width="1653" height="1051" alt="Screenshot 2025-10-25 at 14 34 03" src="https://github.com/user-attachments/assets/21c5b07a-8d36-4e0b-ad09-378b12d2ea38" /> <img width="1444" height="1167" alt="Screenshot 2025-10-25 at 12 32 21" src="https://github.com/user-attachments/assets/86afe72f-b238-43cd-8230-9cb59fb93b2c" />
Josh Piasecki created
3a7bdf4
Fix unwrap in branch diff (#41330)
Closes #ISSUE Release Notes: - N/A
Conrad Irwin created
d5e2971
Support relative line number on wrapped lines (#39268)
**Problem:** Current relative line numbering creates a mismatch with vim-style navigation when soft wrap is enabled. Users must mentally calculate whether target lines are wrapped segments or logical lines, making `<n>j/k` navigation unreliable and cognitively demanding. **How things work today:** - Real line navigation (`j/k` moves by logical lines): Requires determining if visible lines are wrapped segments before jumping. Can't jump to wrapped lines directly. - Display line navigation (`j/k` moves by display rows): Line numbers don't correspond to actual row distances for multi-line jumps. **Proposed solution:** Count and number each display line (including wrapped segments) for relative numbering. This creates direct visual-to-navigational correspondence where the relative number shown always matches the `<n>j/k` distance needed. **Benefits:** - Eliminates mental overhead of distinguishing wrapped vs. logical lines - Makes relative line numbers consistently actionable regardless of wrap state - Preserves intuitive "what you see is what you navigate" principle - Maintains vim workflow efficiency in narrow window scenarios Also explained an discussed in https://github.com/zed-industries/zed/discussions/25733. Release Notes: Release Notes: - Added support for counting wrapped lines as relative lines and for displaying line numbers for wrapped segments. Changes `relative_line_numbers` from a boolean to an enum: `enabled`, `disabled`, or `wrapped`. --------- Co-authored-by: Conrad Irwin <conrad.irwin@gmail.com>
Thomas Heartman and Conrad Irwin created