278fe91
Skip buffer registration if lsp data should be ignored (#42190)
Click to expand commit body
Release Notes: - N/A
Kirill Bulatov created
278fe91
Skip buffer registration if lsp data should be ignored (#42190)
Release Notes: - N/A
Kirill Bulatov created
39fb89e
workspace: Do not panic when the database is corruped (#42186)
Fixes ZED-1NK Release Notes: - Fixed zed not starting when the database cannot be loaded
Lukas Wirth created
9d52b6c
terminal: Allow configuring conda manager (#40577)
Closes #40576 This PR makes Conda activation configurable and transparent by adding a `terminal.detect_venv.on.conda_manager` setting (`"auto" | "conda" | "mamba" | "micromamba"`, default `"auto"`), updating Python environment activation to honor this preference (or the detected manager executable) and fall back to `conda` when necessary. The preference is passed via `ZED_CONDA_MANAGER` from the terminal settings, and the activation command is built accordingly (with proper quoting for paths). Changes span `zed/crates/terminal/src/terminal_settings.rs` (new `CondaManager` and setting), `zed/crates/project/src/terminals.rs` (inject env var), `zed/crates/languages/src/python.rs` (activation logic), and `zed/assets/settings/default.json` (document the setting). Default behavior remains unchanged for most users while enabling explicit selection of `mamba` or `micromamba`. Release Notes: - Added: terminal.detect_venv.on.conda_manager setting to choose the Conda manager (auto, conda, mamba, micromamba). Default: auto. - Changed: Python Conda environment activation now respects the configured manager, otherwise uses the detected environment manager executable, and falls back to conda. - Reliability: Activation commands quote manager paths to handle spaces across platforms. - Compatibility: No breaking changes; non-Conda environments are unaffected; remote terminals are supported. --------- Co-authored-by: Lukas Wirth <me@lukaswirth.dev> Co-authored-by: Lukas Wirth <lukas@zed.dev>
Casper van Elteren , Lukas Wirth , and Lukas Wirth created
082b80e
gpui: Unify the index_for_x methods (#42162)
Supersedes https://github.com/zed-industries/zed/pull/39910 At some point, these two (`index_for_x` and `closest_index_for_x`) methods where separated out and some code paths used one, while other code paths took the other. That said, their behavior is almost identical: - `index_for_x` computes the index behind the pixel offset, and returns `None` if there's an overshoot - `closest_index_for_x` computes the nearest index to the pixel offset, taking into account whether the offset is over halfway through or not. If there's an overshoot, it returns the length of the line. Given these two behaviors, `closest_index_for_x` seems to be a more useful API than `index_for_x`, and indeed the display map and other core editor features use it extensively. So this PR is an experiment in simply replacing one behavior with the other. Release Notes: - Improved the accuracy of mouse selections in Markdown
Mikayla Maki created
483e31e
Fix telemetry (#42184)
Follow up to #41991 🤦🏻 Release Notes: - N/A
Bennet Bo Fenner created
61c263f
agent_ui: Allow opening thread as markdown in remote projects (#42182)
Release Notes: - Added support for opening thread as markdown in remote projects
Bennet Bo Fenner created
3c19174
diagnostics: Fix diagnostics view no clearing blocks correctly (#42179)
Release Notes: - N/A *or* Added/Fixed/Improved ...
Lukas Wirth created
7e93c17
action_log: Remove unused code (#42177)
Release Notes: - N/A
Bennet Bo Fenner created
88a8e53
editor: Remove buffer and display map fields from SelectionsCollection (#42175)
Release Notes: - N/A *or* Added/Fixed/Improved ...
Lukas Wirth created
c2416d6
Add agent metrics (#41991)
Release Notes: - N/A
Bennet Bo Fenner created
29cc3d0
gpui: Add to support check state to MenuItem (#39876)
Release Notes: - N/A --- https://github.com/user-attachments/assets/d46b77ae-88ba-43da-93ad-3656a7fecaf9 The system menu is only support for macOS, so here just modify the macOS platform special code. The Windows, Linux used `ApplicationMenu`, I have already added `checked` option to Zed's ContextMenu. Then later when this PR merged, we can improve "View" menu to show check state to panels (Project Panel, Outline Panel, ...).
Jason Lee created
760747f
markdown: Add support for `HTML` table captions (#41192)
Thanks to @Angelk90 for pointing out that, we were missing this feature.
So this PR implement the caption feature for HTML tables for the
markdown preview.
**Code example**
```html
<table>
<caption>Revenue by Region</caption>
<tr>
<th rowspan="2">Region</th>
<th colspan="2">Revenue</th>
<th rowspan="2">Growth</th>
</tr>
<tr>
<th>Q2 2024</th>
<th>Q3 2024</th>
</tr>
<tr>
<td>North America</td>
<td>$2.8M</td>
<td>$2.4B</td>
<td>+85,614%</td>
</tr>
<tr>
<td>Europe</td>
<td>$1.2M</td>
<td>$1.9B</td>
<td>+158,233%</td>
</tr>
<tr>
<td>Asia-Pacific</td>
<td>$0.5M</td>
<td>$1.4B</td>
<td>+279,900%</td>
</tr>
</table>
```
**Result**:
<img width="1201" height="774" alt="Screenshot 2025-10-25 at 21 18 01"
src="https://github.com/user-attachments/assets/c2a8c1c2-f861-40df-b5c9-549932818f6e"
/>
Release Notes:
- Markdown preview: Added support for `HTML` table captions
Remco Smits created
d4ec55b
editor: Correctly handle blocks spanning more than 128 rows (#42172)
Release Notes: - Fixed block rendering for blocks spanning more than 128 rows
Lukas Wirth created
f89bb2f
Small zeta cli fixes (#42170)
* Fix a panic that happened because we lost the `ContextRetrievalStarted` debug message, so we didn't assign `t0`. * Write the edit prediction response log file as a markdown file containing the text, not a JSON file. We mostly always want the text content. Release Notes: - N/A
Max Brunsfeld created
e43c436
Create sentry releases in after_release (#42169)
This had been moved to auto-release preview, and was not running for stable. Closes #ISSUE Release Notes: - N/A
Conrad Irwin created
de1bf64
project: Remove unnecessary panic (#42167)
If we are in a remote session with the remote dropped, this path is very much reachable if the call to this function got queued up in a task. Fixes ZED-124 Release Notes: - N/A *or* Added/Fixed/Improved ...
Lukas Wirth created
00eafe6
git: Make long-running git staging snappy in git panel (#42149)
Previously, staging a large file in the git panel would block the UI items until that operation finished. This is due to the fact that staging is a git op that is locked globally by git (per repo) meaning only one op that is modifying the git index can run at any one time. In order to make the UI snappy while letting any pending git staging jobs to finish in the background, we track their progress via `PendingOps` indexed by git entry path. We have already had a concept of pending operations however they existed at the UI layer in the `GitPanel` abstraction. This PR moves and augments `PendingOps` into the model `Repository` in `git_store` which seems like a more natural place for tracking running git jobs/operations. Thanks to this, pending ops are now stored in a `SumTree` indexed by git entry path part of the `Repository` snapshot, which makes for efficient access from the UI. Release Notes: - Improved UI responsiveness when staging/unstaging large files in the git panel
Jakub Konka created
5044e6a
zeta2: Make eval example file format more expressive (#42156)
* Allow expressing alternative possible context fetches in `Expected Context` section * Allow marking a subset of lines as "required" in `Expected Context`. We still need to improve how we display the results. I've removed the context pass/fail pretty printing for now, because it would need to be rethought to work with the new structure, but for now I think we should focus on getting basic predictions to run. But this is progress toward a better structure for eval examples. Release Notes: - N/A --------- Co-authored-by: Oleksiy Syvokon <oleksiy.syvokon@gmail.com> Co-authored-by: Ben Kunkle <ben@zed.dev> Co-authored-by: Agus Zubiaga <agus@zed.dev>
Max Brunsfeld , Oleksiy Syvokon , Ben Kunkle , and Agus Zubiaga created
784fdca
zeta2: Build edit prediction prompt and process model output in client (#41870)
Release Notes: - N/A --------- Co-authored-by: Agus Zubiaga <agus@zed.dev> Co-authored-by: Ben Kunkle <ben@zed.dev> Co-authored-by: Piotr Osiewicz <24362066+osiewicz@users.noreply.github.com>
Max Brunsfeld , Agus Zubiaga , Ben Kunkle , and Piotr Osiewicz created
fb87972
settings_ui: Use any open workspace window when opening settings links (#42106)
Closes #ISSUE Release Notes: - N/A *or* Added/Fixed/Improved ...
Ben Kunkle created
8cccb5d
Use windows runner for publishing winget package (#42144)
Our new linux runners don't have powershell installed which causes the `release-winget` job to fail. This simply runs that step on windows instead. Release Notes: - N/A
Julia Ryan created
2895d31
Fix tab switcher close item using wrong pane (#42138)
Closes #40646 Release Notes: - Fixed `tab_switcher::CloseSelectedItem` doing nothing on tab in inactive pane Co-authored-by: Cole Miller <cole@zed.dev>
Andrew Farkas and Cole Miller created
a112153
Enable image support in remote projects (#39158)
Adds support for opening and displaying images in remote projects. The server streams image data to the client in chunks, where the client then reconstructs the image and displays it. This change includes: - Adding `image` crate as a dependency for remote_server - Implementing `ImageStore` for remote access - Creating proto definitions for image-related messages - Adding handlers for creating images for peers - Computing image metadata from bytes instead of reading from disk for remote images Closes #20430 Closes #39104 Closes #40445 Release Notes: - Added support for image preview in remote sessions. - Fixed #39104 <img width="982" height="551" alt="image" src="https://github.com/user-attachments/assets/575428a3-9144-4c1f-b76f-952019ea14cc" /> <img width="978" height="547" alt="image" src="https://github.com/user-attachments/assets/fb58243a-4856-4e73-bb30-8d5e188b3ac9" /> --------- Co-authored-by: Julia Ryan <juliaryan3.14@gmail.com>
Cave Bats Of Ware and Julia Ryan created
d21184b
Fix ACP extension root dir (#42131)
Agents running in extensions need to have a root directory of the extension's dir for installation and authentication, but *not* for the conversation itself - otherwise the agent is running things like terminal commands in the wrong dir. Release Notes: - Fixed Agent Server extensions having the current working directory of the extension rather than the project
Richard Feldman created
ba136ab
editor: Add action to move between snippet tabstop positions v2 (#42127)
Closes https://github.com/zed-industries/zed/issues/41407 This PR fixes the issues that caused #41407 to be reverted in #42008. Namely that the action context didn't take into account if a snippet could move backwards or forwards, and the action shared the same key mapping as `editor::MoveToPreviousWordStart` and `editor::MoveToNextWordEnd`. I changed the default key mapping for the move to snippet tabstop to tab and shift-tab to match the default behavior of other editors. Release Notes: - Editor: Add actions to move between snippet tabstop positions
Anthony Eid created
2d45c23
remote: Flush to stdin when writing to sftp 2 (#42126)
https://github.com/zed-industries/zed/pull/42103#issuecomment-3498137130 Release Notes: - N/A *or* Added/Fixed/Improved ...
Lukas Wirth created
b78f199
Allow for using config specific `gdb` binaries in gdb adapter (#37193)
I really need this for embedded development in IDF and Zephyr, where the chip vendors sometimes provide there own specialized version of the tools, and I need to direct zed to use these. The current GDB adapter only supports the gdb it find in the normal search path, and it also seems like we where not able to transfer gdb specific startup arguments (only `-i=dap` is set) . In order to fix this I (semi wipe using GPT-4.1) expanded the GDB adapter with 2 new config options : * **gdb_path** holds a full path to the gdb executable, for now only full path or relative to cwd * **gdb_args** an array holding additional arguments given to gdb on startup It seemed to me, like the `env` config did not transferred to gdb, so this is added to. I have tested this locally, and it seems to work not only compile :-) Release Notes: debugger: Adds gdb_path and gdb_args to gdb debug adapter options debugger: Fix bug where gdb debug sessions wouldn't inherit the shell environment from Zed --------- Co-authored-by: Anthony <anthony@zed.dev>
Bo Lorentsen and Anthony created
a7fac65
gpui: Remove unneeded weak Rc cycle in `WindowsWindowInner` (#42119)
Release Notes: - N/A *or* Added/Fixed/Improved ...
Lukas Wirth created
bf8864d
gpui: Remove all (unsound) `ManuallyDrop` usages, panic on device loss (#42114)
Given that when we lose our devices unrecoverably we will panic anyways, might as well do so eagerly which makes it clearer. Additionally this PR replaces all uses of `ManuallyDrop` with `Option`, as otherwise we need to do manual bookkeeping of what is and isn't initialized when we try to recover devices as we can bail out halfway while recovering. In other words, the code prior to this was fairly unsound due to freely using `ManuallyDrop::drop`. Fixes ZED-1SS Release Notes: - N/A *or* Added/Fixed/Improved ...
Lukas Wirth created
08ee4f7
notify: Bump to rebased 8.2.0 fork (#42113)
Hopefully makes progress towards #38109, #39266 Release Notes: - N/A
Nia created
6f6f652
zlog: Add env var to enable line number logging (#41905)
Release Notes: - N/A *or* Added/Fixed/Improved ...
Lukas Wirth created
9c8e37a
clangd: Fix switch source header action on windows (#42105)
Fixes https://github.com/zed-industries/zed/issues/40935 Release Notes: - Fixed clangd's switch source header action not working on windows
Lukas Wirth created
d54c64f
Refresh outline panel on file renames (#42104)
Closes https://github.com/zed-industries/zed/issues/41877 Release Notes: - Fixed outline panel not updating file headers on rename
Kirill Bulatov created
0b53da1
remote: Flush to stdin when writing to sftp (#42103)
https://github.com/zed-industries/zed/issues/42027#issuecomment-3497210172 Release Notes: - Fixed ssh remoting potentially failing due to not flushing stdin to sftp
Lukas Wirth created
5ced3ef
editor: Improve multibuffer header spacing (#42071)
BEFORE: <img width="1751" height="629" alt="image" src="https://github.com/user-attachments/assets/f88464d3-5daa-4d53-b394-f92db8b0fd8c" /> AFTER: <img width="1714" height="493" alt="image" src="https://github.com/user-attachments/assets/022c883b-b219-40a3-aa5f-0c16d23e8abf" /> Release Notes: - N/A --------- Co-authored-by: Danilo Leal <daniloleal09@gmail.com>
Libon and Danilo Leal created
7a37dd9
Do not serialize buffers containing bundled files (#38102)
Fix bundled file persistence by introducing SerializationMode enum
Closes: #38094
What's the issue?
Opening bundled files like Default Key Bindings
(zed://settings/keymap-default.json) was causing SQLite foreign key
constraint errors. The editor was trying to save state for these
read-only assets just like regular files, but since bundled files don't
have database entries, the foreign key constraint would fail.
The fix
Replaced the boolean serialize_dirty_buffers flag with a type-safe
SerializationMode enum:
```rust
pub enum SerializationMode {
Enabled, // Regular files persist across sessions
Disabled, // Bundled files don't persist
}
```
This prevents serialization at the source: workspace_id() returns None
for disabled editors, serialize() bails early, and should_serialize()
returns false. When opening bundled files, we set the mode to Disabled
from the start, so they're treated as transient views that never
interact with the persistence layer.
Changes
- editor.rs: Added SerializationMode enum and updated serialization
methods to respect it
- items.rs: Guarded should_serialize() to prevent disabled editors from
being serialized
- zed.rs: Set SerializationMode::Disabled in open_bundled_file()
Result
Bundled files open cleanly without SQLite errors and don't persist
across workspace reloads (expected behavior). Regular file persistence
remains unaffected.
Release Notes: Fixed SQLite foreign key constraint errors when opening
bundled files like Default Key Bindings.
---------
Co-authored-by: MrSubidubi <finn@zed.dev>
ʟᴜɴᴇx and MrSubidubi created
a716362
agent_ui: Make "add more agents" menu item take to extensions (#42098)
Now that agent servers are a thing, this is the primary and easiest way to quickly add more agents to Zed, without touching any settings JSON file. :) Release Notes: - N/A
Danilo Leal created
f080686
agent_ui: Do not show Codex wsl warning on wsl take 2 (#42096)
https://github.com/zed-industries/zed/pull/42079#discussion_r2498472887 Release Notes: - N/A *or* Added/Fixed/Improved ...
Lukas Wirth created
a951e41
util: Fix shell environment fetching with `cmd` (#42093)
Release Notes: - Fixed shell environment fetching failing when having `cmd` configured as terminal shell
Lukas Wirth created
e75c6b1
remote: Fix `detect_can_exec` detection (#42087)
Closes https://github.com/zed-industries/zed/issues/42036 Release Notes: - Fixed an issuer with wsl exec detection eagerly failing, breaking remote connections
Lukas Wirth created
149eedb
Fix scroll position restoration (#42088)
Follow-up of https://github.com/zed-industries/zed/pull/42035 Scroll position needs to be stored immediately, otherwise editor close may not register that. Release Notes: - N/A
Kirill Bulatov created
fb46bae
remote: Add missing quotation in `extract_server_binary` (#42085)
Also respect the shell env for various commands again Should close https://github.com/zed-industries/zed/issues/42027 Release Notes: - Fixed remote server installation failing on some setups
Lukas Wirth created
28d7c37
recent_projects: Improve user facing error messages on connection failure (#42083)
cc https://github.com/zed-industries/zed/issues/42004 Release Notes: - N/A *or* Added/Fixed/Improved ...
Lukas Wirth created
f6da987
agent_ui: Do not show Codex wsl warning on wsl (#42079)
Release Notes: - Fixed the codex wsl warning being shown on wsl itself
Lukas Wirth created
efc71f3
Tone down extension errors (#42080)
Before: <img width="2032" height="1161" alt="before" src="https://github.com/user-attachments/assets/5c497b47-87e8-4167-bc28-93e34556ea4d" /> After: <img width="2032" height="1161" alt="after" src="https://github.com/user-attachments/assets/4a87803f-67df-4bf8-ade0-306f3c9ca81e" /> Release Notes: - N/A
Kirill Bulatov created
3b7ee58
zed: Attach console to parent process before processing `--printenv` (#42075)
Otherwise the `--printenv` flag will simply not work on windows Release Notes: - N/A *or* Added/Fixed/Improved ...
Lukas Wirth created
32047be
text: Improve panic messages with more information (#42072)
Release Notes: - N/A *or* Added/Fixed/Improved ...
Lukas Wirth created
4003287
vim: Downgrade user config error from panic to log (#42070)
Fixes ZED-2W3 Release Notes: - Fixed panic due to invalid vim keycap
Lukas Wirth created
001a47c
gpui: Inline some hot recursive scope functions (#42069)
This reduces stack usage in prepainting slightly as we stack less references to window/app. Release Notes: - N/A *or* Added/Fixed/Improved ...
Lukas Wirth created
113f078
agent_ui: Fix string slicing panic in message editor (#42068)
Fixes ZED-302 Release Notes: - Fixed a panic in agent message editor when using multibyte whitespace characters
Lukas Wirth created