39de188
acp: Use ACP error types in read_text_file (#38863)
Click to expand commit body
- Map path lookup and internal failures to acp::Error
- Return INVALID_PARAMS for reads beyond EOF
Release Notes:
- acp: Return more informative error types from `read_text_file` to
agents
Ben Brandt
created
d3c3ef9
acp: update to v0.4 of Rust library (#38336)
#37622 was incorrectly forcing font smoothing to be enabled on macos
even when the user had disabled that setting at the OS level. See [this
comment](https://github.com/zed-industries/zed/pull/37622#issuecomment-3310030659)
for an example of the difference that font smoothing makes.
Release Notes:
- N/A
Julia Ryan
created
f4ee55e
acp: Fix `read_text_file` erroring on empty files (#38856)
Click to expand commit body
The previous validation was too strict and didn't permit reading empty
files.
Addresses: https://github.com/google-gemini/gemini-cli/issues/9280
Release Notes:
- acp: Fix `read_text_file` returning errors for empty files
cc161b3
editor: Prevent panics in `BlockChunks` if the block spans more than 128 lines (#38763)
Click to expand commit body
Not an ideal fix, but a proper one will require restructuring the
iterator state (which would be easier if Rust had first class
generators)
Fixes ZED-1MB
Release Notes:
- N/A *or* Added/Fixed/Improved ...
Lukas Wirth
created
0369737
Revert "Add setting to show/hide title bar (#37428)" (#38756)
Click to expand commit body
Closes https://github.com/zed-industries/zed/issues/38547
Release Notes:
- Reverted the ability to show/hide the titlebar. This caused rendering
bugs on
macOS, and we're preparing for the redesign which requires the toolbar
being present.
---------
Co-authored-by: Kirill Bulatov <kirill@zed.dev>
Conrad Irwin
and
Kirill Bulatov
created
1348dbb
Clear buffer colors on empty LSP response (#38742)
Click to expand commit body
Follow-up of https://github.com/zed-industries/zed/pull/32816
Closes https://github.com/zed-industries/zed/issues/38602
https://github.com/user-attachments/assets/26058c91-4ffd-4c6f-a41d-17da0c3d7220
Release Notes:
- Fixed buffer colors not cleared on empty LSP responses
Closes #38651
`git_panel.set_amend_pending(false, cx);` was being called before
`git_panel.commit_changes(...)` which was causing the commit buffer to
be cleared/reset before actually sending the commit request to git.
Introduced by #35268 which added clear buffer functionality to the
`set_amend_pending` function.
Release Notes:
- Fix git amend on panel sending "Update ..." instead of the original
commit message
- FIx git amend button not working
Alvaro Parker
created
9e519ac
agent: Fix Gemini refusing all requests with file-based tool calls (#38705)
Click to expand commit body
Solves an issue where Google APIs refuse all requests with file-based
tool calls attached.
This seems to get triggered in the case where:
- copy_path + another file-based tool call is enabled
- default terminal is `/bin/bash` or something similar
It is unclear why this is happening, but removing the terminal commands
in those tool calls seems to have solved the issue.
Closes #37180 and #37414
Release Notes:
- agent: Fix Gemini refusing requests with certain profiles/systems.
Ben Brandt
created
1755b67
language_models: Treat a `block_reason` from Gemini as a refusal (#38670)
Click to expand commit body
This PR updates the Gemini provider to treat a
`prompt_feedback.block_reason` as a refusal, as Gemini does not seem to
return a `stop_reason` to use in this case.
<img width="639" height="162" alt="Screenshot 2025-09-22 at 4 23 15 PM"
src="https://github.com/user-attachments/assets/7a86d67e-06c1-49ea-b58f-fa80666f0f8c"
/>
Previously this would just result in no feedback to the user.
Release Notes:
- Added an error message when a Gemini response contains a
`block_reason`.
Release Notes:
- Fixed an issue where expand toggles were too large with the git blame
deployed.
Finn Evers
created
e428167
extension_host: Expand supported extension API range to include v0.7.0 (#38529)
Click to expand commit body
This PR updates the version range for v0.6.0 of the extension API to
include v0.7.0.
Since we bumped the `zed_extension_api` crate's version to v0.7.0, we
need to expand this range in order for Zed clients to be able to install
extensions built against v0.7.0 of `zed_extension_api`.
Currently no extensions that target `zed_extension_api@0.7.0` can be
installed.
Release Notes:
- N/A
Reverts #38175, which is not correct, since in fact we do need to
pre-quote the command and arguments for the shell when using
`SpawnInTerminal` (although we should probably change the API so that
this isn't necessary). Then, applies the same fix as #38565 to fix the
root cause of being unable to spawn the login task on macOS, or in any
case where the command/args contain spaces.
Release Notes:
- Fixed being unable to login with Claude Code or Gemini using the
terminal.
Cole Miller
created
e6cae4e
macos: Fix panic when `NSWindow::screen` returns `nil` (#38524)
Click to expand commit body
Closes #ISSUE
Release Notes:
- mac: Fixed an issue where Zed would panic if the workspace window was
previously off screen
6b8b1e6
python: Fix ty binary path and required args (#38458)
Click to expand commit body
Closes #38347
Release Notes:
- Fixed path and args to ty lsp binary
When attempting to use the new ty lsp integration in the preview, I
noticed issues related to accessing the binary. After deleting the
downloaded archive and adding the following changes that:
- downloads the archive with the correct `AssetKind::TarGz`
- uses the correct path to the extracted binary
- adds the `server` argument to initialize the lsp (like ruff)
After the above changes the LSP starts correctly
```bash
2025-09-18T16:17:03-05:00 INFO [lsp] starting language server process. binary path: "/Users/dereknguyen/Library/Application Support/Zed/languages/ty/ty-0.0.1-alpha.20/ty-aarch64-apple-darwin/ty", working directory: "/Users/dereknguyen/projects/test-project", args: ["server"]
```
<img width="206" height="98" alt="image"
src="https://github.com/user-attachments/assets/8fcf423f-40a0-4cd9-a79e-e09666323fe2"
/>
---------
Co-authored-by: Cole Miller <cole@zed.dev>
Derek Nguyen
and
Cole Miller
created
de412e4
python: Install basedpyright with npm instead of pip (#38471)
900e1ad
acp: Fix agent servers sometimes not being registered when Zed starts (#38330)
Click to expand commit body
In local projects, initialize the list of agents in the agent server
store immediately. Previously we were initializing the list only after a
delay, in an attempt to avoid sending the `ExternalAgentsUpdated`
message to the downstream client (if any) before its handlers were
initialized. But we already have a separate codepath for that situation,
in the `AgentServerStore::shared`, and we can insert the delay in that
place instead.
Release Notes:
- acp: Fixed a bug where starting an external agent thread soon after
Zed starts up would show a "not registered" error.
---------
Co-authored-by: Michael <michael@zed.dev>
Co-authored-by: Agus <agus@zed.dev>
Cole Miller
,
Michael
, and
Agus
created
5229cc7
python: Install basedpyright if the basedpyright-langserver binary is missing (#38426)
Click to expand commit body
Potential fix for #38377
Release Notes:
- N/A
---------
Co-authored-by: Peter Tripp <petertripp@gmail.com>
This panic only happened in debug builds because of a left shift
overflow. The slice range has bounds between 0 and 128. The 128 case
caused the overflow.
We now do an unbounded shift and a wrapped sub to get the correct
bitmask. If the slice range is 128 left, it should make 1 zero. Then the
wrapped sub would flip all bits, which is expected behavior.
Release Notes:
- N/A
Co-authored-by: Nia <nia@zed.dev>
Anthony Eid
and
Nia
created
ab46873
Partially revert "project: Fix terminal activation scripts failing on Windows for new shells (#37986)"
Click to expand commit body
This reverts commit 4002602a8926b7fe799acf50fcee6bcffb36d376.
Lukas Wirth
created
d5cf9be
acp: Fix behavior of read_text_file for ACP agents (#38401)
Click to expand commit body
We were incorrectly handling the line number as well as stripping out
line breaks when returning portions of files.
It also makes sure following is updated even when we load a snapshot
from cache, which wasn't the case before.
We also are able to load the text via a range in the snapshot, rather
than allocating a string for the entire file and then another after
iterating over lines in the file.
Release Notes:
- acp: Fix incorrect behavior when ACP agents requested to read portions
of files.
c54e294
Autosave files on close, when setting is `afterDelay` (#36929)
Click to expand commit body
Closes https://github.com/zed-industries/zed/issues/12149
Closes #35524
Release Notes:
- Improved autosave behavior, to prevent a confirmation dialog when
quickly closing files and using the `afterDelay` setting
---------
Co-authored-by: MrSubidubi <finn@zed.dev>
itsaphel
and
MrSubidubi
created
8683488
editor: Fix completions menu flashes on every keystroke in TSX files with emmet (#38320)
Click to expand commit body
Closes https://github.com/zed-industries/zed/issues/37774
Bug in https://github.com/zed-industries/zed/pull/32927
Instead of using trigger characters to clear cached completions items,
now we check if the query is empty to clear it. Turns out Emmet defines
whole [alphanumeric as trigger
characters](https://github.com/olrtg/emmet-language-server/blob/279be108725fb391c167690b697ce154fd32657b/index.ts#L116)
which causes flickering.
Clear on trigger characters was introduced to get rid of cached
completions like in the case of "Parent.Foo.Bar", where "." is one of
the trigger characters. This works still since "." is not part of
`completion_query_characters` and hence we use it as a boundary while
building the current query. i.e in this case, the query would be empty
after typing ".", clearing cached completions.
Release Notes:
- Fixed issue where completions menu flashed on every keystroke in TSX
files with emmet extension installed.
This PR adds an option to open WSL machines from the UI.
- [x] Open wsl from open remote
- [ ] Open local folder in wsl action
- [ ] Open wsl shortcut (shortcuts to open remote)
Release Notes:
- N/A
localcc
created
c5ac1e6
editor: Fix `select_larget_syntax_node` overflowing in multibuffers (#38308)
The crash occured because we raced against the platform windowing
backend to render a frame, and if we lost the race there would be no
frame on a window that we return, which breaks most of gpui
Release Notes:
- N/A
localcc
created
a2de918
agent_ui: Fix panic on editor changes in inline_assistant (#38303)
5d561aa
agent_ui: Fix agent panel insertion to use cursor position (#38253)
Click to expand commit body
Fix agent panel insertion to use cursor position
Closes #38216
Release Notes:
- Fixed agent panel text insertion to respect cursor position instead of
always appending to the end
## Before
[before.webm](https://github.com/user-attachments/assets/684d3cbe-4710-4724-8d2d-ac08f430dea8)
## After
[output.webm](https://github.com/user-attachments/assets/d1122d99-4efb-4a24-a408-db128814f98c)
Kyrilasa
created
4ee2dae
markdown: Fix indented codeblocks having incorrect content ranges (#38225)
Click to expand commit body
Closes https://github.com/zed-industries/zed/issues/37743
Release Notes:
- Fixed agent panel panicking when streaming indented codeblocks from
agent output
Lukas Wirth
created
c27d8e0
editor: Don't pull diagnostics on excerpts change in diagnostics editors (#38212)
Click to expand commit body
This can lead to an infinite regress when using a language server that
supports pull diagnostics, since the excerpts for the diagnostics editor
are set based on the project's diagnostics.
Closes #36772
Release Notes:
- Fixed a bug that could cause duplicated diagnostics with some language
servers.