Skip to content

Releases: zed-industries/zed

v0.153.2-pre

12 Sep 14:30
Compare
Choose a tag to compare
v0.153.2-pre Pre-release
Pre-release

Bug Fixes

  • Fixed sorting of files with YYYYmmddHHMMSS prefix (#17752).
  • Increased memory limit for eslint to reduce crashes (#17724).

v0.153.1-pre

10 Sep 23:08
Compare
Choose a tag to compare
v0.153.1-pre Pre-release
Pre-release

Bug fixes

  • Fixed tabs staying pinned after closing unrelated tabs. Preview only (#17666).
  • Fixed tokenizers for OpenAI API compatible assistant providers. Preview only (#17660).
  • Fixed vtsls initialization_options in project settings files. Preview only (#17657).

v0.153.0-pre

10 Sep 20:08
Compare
Choose a tag to compare
v0.153.0-pre Pre-release
Pre-release

Enhancements

General

  • Added "Pin/Unpin Tab" action to the workspace, assistant and terminal panes (#17426).
  • Added ability to select and act upon intermediate auto-folded project entries (remove, rename, cut, paste) (#17520).
  • Improved DeleteToPreviousWordStart and DeleteToNextWordEnd interactions around newlines. You can opt-in into the previous behavior by adding {"ignore_newlines": true} to either action's binds in your keymap (#16848; thanks kjzl).
  • Improved language server reliability in multi-worktree projects and monorepo. We now notify the language server more reliably about which files have changed (#17499).
  • Improved popup menu margins (#17159; thanks huacnlee).
  • Updated Markdown code blocks to use the buffer font (#17351; thanks matubu).
  • Added support for display_name for custom models in OpenAI and Google Gemini AI providers (#17508).
  • Added search settings section to configure default options enabled in buffer and project searches (#17179; thanks thataboy).
  • Added yaml-language-server configuration via settings. See: zed.dev/docs/languages/yaml (#17479).
  • Increased the default memory limit for vtsls from 3GiB to 8GiB
    (#17354).
  • Linux (X11): Added Drag and Drop support (#17491; thanks XDeme1).

Vim

  • Added vim-style smart case option for search patterns (#16932; thanks 0x2CA).
  • Added :y[ank] (#17448).
  • Project Panel: Added s keybind to open with default app (#17231; thanks KorigamiK).
  • Added :diff and :revert (that work with '<,'>) to open the selected diff and revert it (#17456).
  • Added d o to open the diff and d p to revert (spiritually similar to vim's do/dp, though obviously not the same) (#17456).
  • Added ctrl-p and ctrl-n to summon the autocomplete menu in insert mode (#17456).
  • Added ( and ) for sentence motion (#17425).

AI

  • Added support for using the configured UI font size in the inline assistant (#17542; thanks haasn).
  • Added support for adding multiple files in a single /file command when pressing tab (#17652).
  • Added support for copying and pasting slash commands in the assistant panel (#17490).
  • Added context_size for "yi-coder" model in Ollama (#17409; thanks rauberdaniel). More information about the model on ollama.
  • Added ability to configure environment variables for context servers through settings. These variables are passed to the server process when launched (#17356; thanks dsp-ant).
  • Improved "Assistant::NewContext" quote selection behavior (#17589).
  • Improved "Assistant::QuoteSelection" to handle multicursor selections (#17589).

Bug Fixes

  • Fixed an issue where a failed inline assistant prompt could not be restarted (#17651).
  • Fixed an issue where commands generated by the terminal command could sometimes be executed without confirmation (#17647).
  • Fixed JSON Schema for tabs.file_icons default value (#17629; thanks kachick).
  • Fixed parenthesis matching for file links in terminal (#17512; thanks saahityaedams).
  • Fixed an issue when using Google Gemini models, where the setting low_speed_timeout_in_seconds was not respected (#17423).
  • Go: Fixed regression by restoring regex to match tests (#17645).
  • Vim: Fixed the behavior of surrounding a text object (#17603; thanks emandres).
  • Vim: Fixed s// to act on current line only (#17234; thanks Horam-Zarri).
  • Vim: Fixed "_ register writes overwriting " register (#17419).
  • Vim: Reverted Y to vim behavior. If you want the neovim version (as a built in mapping to y$) you must configure it in your settings (#17563; thanks vbhavsar).
  • Vim: Fixed parsing of commands with ranges :3 d (#17474).
  • Linux: Fixed blurry mouse cursor on wayland when the screen scale is other than 100% (#17496; thanks senonide).

v0.152.3

10 Sep 19:17
Compare
Choose a tag to compare

Enhancements

General

  • Added ability to perform project search only in opened files (#16580; thanks CharlesChen0823).
  • REPL: Added a readonly buffer for viewing large outputs (#17121).

REPL: Added a readonly buffer for viewing large outputs

  • REPL: Added button to open full text output in a separate buffer (#16971).

  • Improved the Zed CLI zed to pass along the environment as it was on the CLI to the opened Zed project. That environment is then used when opening new terminals, spawning tasks, or language servers (#17075). Specifically:

    • If Zed was started via zed my-folder, a terminal spawned with workspace: new terminal will inherit these environment variables that existed on the CLI
    • Specific language servers that allow looking up the language server binary in the environments $PATH (such as gopls, zls, rust-analyzer if configured, ...) will look up the language server binary in the CLI environment too and use that environment when starting the process.
    • Language servers that are not found in the CLI environment (or configured to not be found in there), will be spawned with the CLI environment in case that's set. That means users can do something like RA_LOG=info zed . and it will be picked up by the rust-analyzer that was spawned.
    • Check the demo here.
  • Added multiuser support for up to 100 users on the same machine (#14143; thanks samsonjs).

  • Linux: Added an editor setting to toggle middle-click pasting (enabled by default) (#16572; thanks micahscopes).

  • Linux: Improved GPU detection (#17022).

Languages

parameters are colored pink

attributes are colored yellow

  • Improved Rust syntax highlighting queries (#17097; thanks everdrone).
  • Improved syntax highlighting of Rust methods in completions menu (#17184).
  • Improved language server reliability in multi-worktree projects and monorepo. We now notify the language server more reliably about which files have changed (#17173).

Performance

  • Improved editor performance in presence of many runnable indicators in the gutter (#17250).
  • Improved outline panel performance (#17183).

AI

  • Added a way to accept terminal inline assist suggestions without executing them (#17299).
  • Improved Assistant Configuration to make links clickable (#17011).
  • Improved UX of tab slash command completions (#17296).
  • Added support for argument completions for context server prompts. These show up as regular completions to slash commands (#17085; thanks dsp-ant).
  • Added ability for context servers to provide optional descriptions in prompts/get responses, displayed as slash command labels (#17077; thanks dsp-ant).

Bug Fixes

  • Fixed outline panel filter not working for certain Vim bindings (#17293; thanks CharlesChen0823).
  • Fixed inlay hints not being enabled for JavaScript when using the vtsls language server (#17334; thanks matubu).
  • Fixed an issue where the inline assist would be dismissed even when instructed to regenerate the transformation after an error (#17301).
  • Fixed a bug where "Paste" wasn't always shown in project panel context menu (#17262).
  • Assistant: Fixed New Context opening a new file when focused in the editor pane (#17106; thanks ramipellumbi).
  • Fixed GPT-4 breakage (incorrect max_output_tokens handling) (#17168).
  • Fixed a bug where save replaced the existing open file, using the new pane to replace the old pane (#17123; thanks CharlesChen0823).
  • Fixed a bug where inline completions (Copilot or Supermaven) were showing up in Vim's normal mode (#17154).
  • Fixed an issue where workspace::ActivatePaneInDirection could not activate the center pane (i.e. one couldn't navigate from terminal or assistant panel to the center pane) after loading Zed (#17140).
  • Fixed an issue where context servers returning a carriage return character would result in a panic (#17112; thanks dsp-ant).
  • Fixed a panic opening a file in ~/ with use_system_prompts: false (#17027).
  • Fixed an issue with dangling disk images during macOS auto-updates by implementing automatic unmounting (#17019; thanks vitallium).
  • Fixed an issue where toggling inline completions in a markdown file did not work correctly (#17104).
  • Fixed Go tests not being able to run in case the package (and the go.mod) was in a nested folder (#17108; thanks glaudiston). Pre-defined Go tasks now run in the package's directory. That means go test ./package -run MyTest will run in ./package and execute go test -run MyTest. Also, go test ./... will run in the package directory, not at the root of the Zed project, which is a small breaking change. In case one wants to run go test ./... from the root, one can spawn a manual task that does this.
  • Linux: Fixed the prompt library not closing on Wayland (#16850; thanks apricotbucket28).
  • Linux: Fixed copy/paste shortcuts in context menus (#17103).
  • Linux: Zed will no longer be marked as the default file browser (#16940; thanks valaphee).
  • Linux: ARM binaries now require glibc >= 2.35; was >= 2.29 (#17643).

v0.152.3-pre

10 Sep 17:42
Compare
Choose a tag to compare
v0.152.3-pre Pre-release
Pre-release

Bug fixes

  • Linux: Fixed crash when closing windows on Wayland (#17510; thanks apricotbucket28).
  • Linux ARM binaries now require glibc >= 2.35; was >= 2.29 (#17643).

v0.152.2-pre

10 Sep 18:33
Compare
Choose a tag to compare
v0.152.2-pre Pre-release
Pre-release

Unreleased.

Bug Fixes

v0.152.1-pre

06 Sep 14:53
Compare
Choose a tag to compare
v0.152.1-pre Pre-release
Pre-release

Bug Fixes

  • Removed the recently-added FPS counter since the changes it made to the Metal renderer on macOS could lead to performance regressions on Intel MacBooks (#17485).
  • Fixed a possible memory leak when closing Zed windows that wouldn't lead to associated resources being cleaned up correctly. (#17497)

v0.151.2

06 Sep 15:15
Compare
Choose a tag to compare

Bug Fixes

  • Linux: Fixed crash when closing windows on Wayland (#17319).
  • Removed the recently-added FPS counter since the changes it made to the Metal renderer on macOS could lead to performance regressions on Intel MacBooks (#17485).
  • Fixed a possible memory leak when closing Zed windows that wouldn't lead to associated resources being cleaned up correctly. (#17497).

v0.152.0-pre

04 Sep 16:47
Compare
Choose a tag to compare
v0.152.0-pre Pre-release
Pre-release

Enhancements

General

  • Added ability to perform project search only in opened files (#16580; thanks CharlesChen0823).
  • REPL: Added a readonly buffer for viewing large outputs (#17121).

REPL: Added a readonly buffer for viewing large outputs

  • REPL: Added button to open full text output in a separate buffer (#16971).

  • Improved the Zed CLI zed to pass along the environment as it was on the CLI to the opened Zed project. That environment is then used when opening new terminals, spawning tasks, or language servers (#17075). Specifically:

    • If Zed was started via zed my-folder, a terminal spawned with workspace: new terminal will inherit these environment variables that existed on the CLI
    • Specific language servers that allow looking up the language server binary in the environments $PATH (such as gopls, zls, rust-analyzer if configured, ...) will look up the language server binary in the CLI environment too and use that environment when starting the process.
    • Language servers that are not found in the CLI environment (or configured to not be found in there), will be spawned with the CLI environment in case that's set. That means users can do something like RA_LOG=info zed . and it will be picked up by the rust-analyzer that was spawned.
    • Check the demo here.
  • Added multiuser support for up to 100 users on the same machine (#14143; thanks samsonjs).

  • Linux: Added an editor setting to toggle middle-click pasting (enabled by default) (#16572; thanks micahscopes).

  • Linux: Improved GPU detection (#17022).

Languages

  • Added @variable.parameter highlight scope for Rust (#16747; thanks everdrone).

parameters are colored pink

attributes are colored yellow

  • Added markdown injection inside Rust doc_comments (#16747; thanks everdrone).

markdown highlighting

  • Improved syntax highlighting of Rust methods in completions menu (#17184).
  • Improved language server reliability in multi-worktree projects and monorepo. We now notify the language server more reliably about which files have changed (#17173).
  • Improved Rust syntax highlighting queries (#17097; thanks everdrone).

Performance

  • Improved editor performance in presence of many runnable indicators in the gutter (#17250).
  • Improved outline panel performance (#17183).

AI

  • Added a way to accept terminal inline assist suggestions without executing them (#17299).
  • Improved Assistant Configuration to make links clickable (#17011).
  • Improved UX of tab slash command completions (#17296).
  • Added support for argument completions for context server prompts. These show up as regular completions to slash commands (#17085; thanks dsp-ant).
  • Added ability for context servers to provide optional descriptions in prompts/get responses, displayed as slash command labels (#17077; thanks dsp-ant).

Bug Fixes

  • Fixed outline panel filter not working for certain Vim bindings (#17293; thanks CharlesChen0823).
  • Fixed inlay hints not being enabled for JavaScript when using the vtsls language server (#17334; thanks matubu).
  • Fixed an issue where the inline assist would be dismissed even when instructed to regenerate the transformation after an error (#17301).
  • Fixed a bug where "Paste" wasn't always shown in project panel context menu (#17262).
  • Assistant: Fixed New Context opening a new file when focused in the editor pane (#17106; thanks ramipellumbi).
  • Fixed GPT-4 breakage (incorrect max_output_tokens handling) (#17168).
  • Fixed a bug where save replaced the existing open file, using the new pane to replace the old pane (#17123; thanks CharlesChen0823).
  • Fixed a bug where inline completions (Copilot or Supermaven) were showing up in Vim's normal mode (#17154).
  • Fixed an issue where workspace::ActivatePaneInDirection could not activate the center pane (i.e. one couldn't navigate from terminal or assistant panel to the center pane) after loading Zed (#17140).
  • Fixed an issue where context servers returning a carriage return character would result in a panic (#17112; thanks dsp-ant).
  • Fixed a panic opening a file in ~/ with use_system_prompts: false (#17027).
  • Fixed an issue with dangling disk images during macOS auto-updates by implementing automatic unmounting (#17019; thanks vitallium).
  • Fixed an issue where toggling inline completions in a markdown file did not work correctly (#17104).
  • Fixed Go tests not being able to run in case the package (and the go.mod) was in a nested folder (#17108; thanks glaudiston). Pre-defined Go tasks now run in the package's directory. That means go test ./package -run MyTest will run in ./package and execute go test -run MyTest. Also, go test ./... will run in the package directory, not at the root of the Zed project, which is a small breaking change. In case one wants to run go test ./... from the root, one can spawn a manual task that does this.
  • Linux: Fixed the prompt library not closing on Wayland (#16850; thanks apricotbucket28).
  • Linux: Fixed copy/paste shortcuts in context menus (#17103).
  • Linux: Zed will no longer be marked as the default file browser (#16940; thanks valaphee).

v0.151.1

04 Sep 15:22
Compare
Choose a tag to compare

Enhancements

General

  • SSH Remoting: Added project search (#16915).
  • Added a new editor action (editor: toggle inline completions) to allow toggling inline completions (Copilot, Supermaven) on and off for the current buffer, taking precedence over any settings (#16947).
  • Added pane: join into next action (#16077; thanks tcard).
  • Added editor: copy file location command to copy the current file location (FILE:LINE) to the clipboard (#14793; thanks slembcke).
  • Added a default package + overlay to Zed's Nix flake. This is useful for users wanting to pilot nightly builds of Zed on NixOS (#16783).
  • Added buffer/project search entries to the outline panel (#16589).
  • Added Format Buffer action to the right-click menu within a buffer (#16080; thanks terziele).
  • Added clickable URLs with query parameters in the terminal (#16724; thanks musicq).
  • Added support for using file paths ending in a language-specific file extension at the start of markdown code blocks (#12368).
  • Repl: Added button to copy output from the REPL (#16649).
  • Repl: Added restart kernel action (#16609).
  • Added tab/pane closing for files inside folders being deleted/trashed (#15222; thanks Quplet).
  • Added SOCKS proxy for client WebSocket connection (#16051; thanks Congyuwang).
  • Added soft_wrap value bounded, EditorWidth and PreferredLineLength min value (#16586; thanks 0x2CA).
  • Added switch source/header action for clangd language server (#14646; thanks thorbenk).
  • Added unnecessary_code_fade setting to control how strongly to fade unused code (#14442; thanks MatthewScholefield).
  • Added new settings to control split direction for horizontal and vertical splits. Users can now configure whether new splits open to the right/left or top/bottom, similar to Vim's splitright option (#16345; thanks jvanbaarsen).
  • Added support for copying/pasting between different worktrees (#15396; thanks CharlesChen0823).
  • Improved the truncation of long author lists and descriptions in the extensions view (#17007).
  • Improved Sublime keymap: Support for switching to individual tabs with cmd-1 thru cmd-9 (macOS) and alt-1 thru alt-9 (Linux) matching Sublime behavior (#16930; thanks zzulu).
  • Improved support for extended keyboards on Mac (F13-F19, Insert) (#16921).
  • Improved context menu organization (#16773; thanks WeetHet).
  • Improved the Copy Path and Copy Relative Path actions in the project panel's context menu when selecting multiple files. All selected files' paths will now be copied, separated by newlines (#16558; thanks kjzl).
  • Improved error handling when opening files in the workspace pane. An error message will now be displayed if the file cannot be opened (#15613; thanks ssut).
  • Updated project panel scrollbar to respect the scrollbar.track.background from the theme (#16546; thanks eliperkins).
  • Updated filenames to be cmd/ctrl-clickable, opening them when clicked (#16534).
  • Linux: Improved terminal keymap and context menu (#16845).
  • Linux: Improved text rendering by handling subpixel positioning (#16238; thanks apricotbucket28).
  • Linux: Added CLI pipe support (#16084; thanks VitorRamos).

Languages

  • Added support for property tests in runnables for Elixir (#16985; thanks cschmatzler).
  • Added auto-closing for single quotes in YAML files (#16859).
  • Added syntax highlighting for graphql tagged template literals and function calls in javascript, typescript and tsx languages (#16368; thanks affanshahid).
  • Added level filtering to language server logs (#15893; thanks jcdickinson).
  • Improved detection of pyrightconfig.json as JSONC (#16967).
  • Improved PHP highlights by adding more language keywords (#16720; thanks BafS).

Performance

  • Performance of project-wide search has been improved by up to 10x (#16936).
  • Improved performance of rendering project-search results in the multi-buffer after finding them (#16960).
  • Reduced latency for first project search result (#16923).
  • Improved performance of Assistant Panel with long conversations (#16881).
  • Improved performance of assistant panel with large amounts of text (#16761).

AI

  • Added support for Ollama models with context length >2048 (#16877).

Vim

  • Added absolute numbering in any mode except insert mode (#16567; thanks 0x2CA).
  • Added gf command to open files under the cursor (#16534).

Bug Fixes

  • Fixed performance regression in handling buffers with large quantities of diagnostics (#16824).
  • Fixed formatting of < and > in Git commit message popup (#16279; thanks dovakin0007).
  • Fixed signature info popovers appearing when completion menu is open (#17009).
  • Fixed an issue on NixOS package where the wrong binaries were being patched, leading to missing Wayland libs when launching Zed (#16958).
  • Fixed an issue where the file finder would jump to the first result when new files were added to the project. The selected file now remains highlighted when the file list updates (#13452; thanks kshokhin).
  • Fixed assistant model selector check icon overflow for long model names (#16716; thanks Moshyfawn).
  • Fixed Telemetry log being marked dirty (#16906).
  • Fixed asset buffers (default settings and default keymap) showing 'untitled' in breadcrumbs (#16906).
  • Fixed an issue related to the project wide search being stuck when project contains .fifo files (#16039; thanks SultanTanirkul).
  • Fixed incomplete syntax highlighting for HTML injections inside JavaScript template tags (#16479; thanks florian-sanders).
  • Fixed double edits when a multi-cursor is in a linked editing range (#16707).
  • Fixed bug when opening uncanonicalized hyperlink files from terminal (#16087; thanks Pribess).
  • Fixed local timezone not showing in Zed.log (#16400; thanks bestgopher).
  • Fixed manually triggering completions when show_inline_completions: false (#16621).
  • Fixed esc not removing focus from the filter editor in the collaboration panel ([#16579](https://github.com/zed-industries/...
Read more