Repository navigation
v1.8.0
This release fixes four crashes where Zed updated a menu, panel or modal from inside that same element's update. Pane and Workspace now call into items, toolbars, panels, modals, pickers and completion providers outside their own updates. Gemini models from Google's model catalog get thinking settings that match each model, and the catalog fetch retries and reports its failures. The fork is up to date with upstream Zed as of 2026-10-14 (zed-industries@c403bc6af6).
Fork changes
Crashes from reentrant updates
GPUI aborts Zed when code reads or updates an element such as a menu, pane or workspace while that element is in the middle of its own update. kjanat/zed-editor#172 tracks the audit of these sites.
- Fixed Enter and Ctrl-Enter on Open Worktrees, Move Up, Move Down and Remove in the sidebar's project header menu crashing Zed. The context menu runs a keyboard-selected entry the way it runs a clicked one (kjanat/zed-editor#218).
- Fixed Open Local Folders in the Recent Projects actions menu crashing Zed when you chose it with Enter and
use_system_path_promptswasfalse(kjanat/zed-editor#218). - Fixed a stash action from a key binding crashing Zed while the Commit modal was open (kjanat/zed-editor#218).
- Fixed
file_finder::OpenWithoutDismisson a channel match crashing Zed (kjanat/zed-editor#218).
Zed now makes these calls with nothing leased:
- Tabs and toolbar. Pane renders tabs, tab tooltips and toolbar key context in
RenderOncechildren after its own render ends. Toolbar items receive the active item in a deferred call (kjanat/zed-editor#218). - Item hooks. The functions of Pane and Workspace that open, save, focus, close, move, split and join items take the entity handle. They call item hooks such as
project_path,is_dirty,capabilityandact_asbefore they update the pane or workspace (kjanat/zed-editor#220). This is the class of the tab double-click crash in kjanat/zed-editor#169. - Modals.
Workspace::toggle_modalbuilds the modal in a deferred update and returnsTask<Option<Entity<V>>>.on_before_dismissruns with only the modal leased. The newModalView::on_dismissedhook runs after the modal layer drops the modal (kjanat/zed-editor#218). - Pickers, panels and completions.
Picker::newcomputes its first matches in a deferred update, and panel activation is deferred. Edit prediction refresh and editor completion providers run in spawned tasks.CompletionProvider::completions,resolve_completionsandapply_additional_edits_for_completiontake&mut App(kjanat/zed-editor#218). - Tests. Every rewritten site has a test whose item, panel, modal or provider reads its container from the hook (kjanat/zed-editor#218, kjanat/zed-editor#220).
SerializableItem::serialize, Item::added_to_workspace and ProjectItem::for_project_item still receive a leased Workspace or Pane (kjanat/zed-editor#172).
Gemini
These changes apply to the Google provider with your own API key unless a line says otherwise (kjanat/zed-editor#224).
- Fixed versioned Gemini 2.5 models such as
gemini-2.5-flash-preview-05-20offering thinking levels and failing onthinkingLevel. Zed reads the version from the model ID to choose the thinking controls and the tool media format. - Fixed Gemini 2.5 Flash-Lite returning no reasoning with thinking on. A Gemini 2.5 request with thinking on and no budget asks for dynamic thinking.
- Thinking levels follow Google's table.
gemini-3-pro-previewoffers Low and High and defaults to High. Gemini 3.1 Flash-Lite defaults to Minimal. - Fixed responses failing to parse when Gemini sent a thought signature on a part without text.
- Fixed Zed-hosted Gemini models failing when the thread's effort level was missing from the model's list, such as Medium for
gemini-3-pro-preview. The request now uses the model's default level. - The model catalog fetch retries transient failures, honours Retry-After and stops after a fixed number of attempts. A permanent failure, such as an invalid key, appears under the API key in settings with a Retry button.
- The default model is the newest by version number, so
gemini-3.10comes beforegemini-3.9.
External agents
- Config options that an agent announces after the session starts now appear in the agent panel in place of the fallback selectors, and receive your configured defaults (kjanat/zed-editor#219).
- Session info updates reach the session list after the thread closes (kjanat/zed-editor#219).
Worktrees
Fixed a deleted file that was opened on its own reporting its deletion again on every change in its folder while an agent thread held the buffer. Zed reports the deletion once and watches the file again when it returns (kjanat/zed-editor#216, kjanat/zed-editor#204).
Builds
- Release builds upload debug symbols only to the fork's Sentry project, and a bundle script stops before building when a Sentry token comes without an organization and project (kjanat/zed-editor#214).
- Windows clippy in fork CI fails when cargo fails, and each platform's tests check reports only its own suites (kjanat/zed-editor#218, kjanat/zed-editor#224).
From upstream
- Added Gemini 4 Argon (zed-industries/zed#65565). The Google provider loads models from Google's model catalog (zed-industries/zed#65572).
- Fixed Gemini models failing after a tool call returned an image (zed-industries/zed#65576).
- Added Claude Sonnet 5.5 and Haiku 5.5 (zed-industries/zed#65555).
- Jumping to a location unfolds the folded sections around it. This covers go to line, go to definition, symbol and outline pickers, multibuffer results and navigation history (zed-industries/zed#65217).
- Added the
tab_switcher.show_file_previewsetting. The tab switcher keeps its selection when the mouse hovers an entry (zed-industries/zed#56235, zed-industries/zed#65546). - Added Open SVG Preview to the project panel context menu. Open Markdown Preview now appears for files opened on their own (zed-industries/zed#65539).
- Fixed the remote server failing to start on a Windows host over SSH (zed-industries/zed#55292).
- Fixed archiving an agent thread doing nothing and keeping a CPU core busy when its worktree folder was deleted (zed-industries/zed#65578).
Full Changelog: v1.7.0...v1.8.0