Commit log

b1563c5 acp: Fix slash command hint showing up after sending message (#40109)

Click to expand commit body
Release Notes:

- N/A

Bennet Fenner created

d676dac acp: Add tooltips for auth methods with descriptions when available (#40098)

Click to expand commit body
Release Notes:

- acp: Provide auth method descriptions in the UI when available

Co-authored-by: Bennet Bo Fenner <bennetbo@gmx.de>

Ben Brandt and Bennet Bo Fenner created

8abee73 Load env vars from login shell in remote server (#40148)

Click to expand commit body
Fixes a bug mentioned in
https://github.com/zed-industries/zed/issues/38891

Release Notes:

- Fixed a bug where environment variables like `NODE_EXTRA_CA_CERTS`
were not loaded from the user's shell initialization scripts in WSL or
SSH remote projects.

Co-authored-by: Cole Miller <cole@zed.dev>

Max Brunsfeld and Cole Miller created

19c2aa6 settings_ui: Move LSP & tool settings from Editor to Language page (#40140)

Click to expand commit body
Closes #ISSUE

Release Notes:

- N/A *or* Added/Fixed/Improved ...

Ben Kunkle created

0d12645 settings_ui: Implement reset to default button (#40135)

Click to expand commit body
Closes #ISSUE

Release Notes:

- N/A *or* Added/Fixed/Improved ...

Ben Kunkle created

2c706cc settings_ui: Dynamic languages list (#40123)

Click to expand commit body
Closes #ISSUE

Release Notes:

- N/A *or* Added/Fixed/Improved ...

Ben Kunkle created

a12940e settings: Make "auto" and "language_server" valid format steps (#40113)

Click to expand commit body
Follow up for: #39983 and
https://github.com/zed-industries/zed/pull/40040#issuecomment-3393902691

Previously it was possible to have formatting done using prettier or
language server using `"formatter": "auto"` and specify code actions to
apply on format using the `"code_actions_on_format"` setting. However,
post #39983 this is no longer possible due to the removal of the
`"code_actions_on_format"` setting. To rectify this regression, this PR
makes it so that the `"auto"` and `"language_server"` strings that were
previously only allowed as top level values on the `"formatter"` key,
are now allowed as format steps like so:
```json
{
      "formatter": ["auto", "language_server"]
}
```

Therefore to replicate the previous behavior using `"auto"` and
`"code_actions_on_format"` you can use the following configuration:

```json
{
      "formatter": [{"code_action": ...}, "auto"]
}
```

Release Notes:

- N/A *or* Added/Fixed/Improved ...

Ben Kunkle created

92f01b7 editor: Fix `delete line` moving the cursor too far

Lukas Wirth created

f4b75a8 Bump to 0.208.4 for @osiewicz

Zed Bot created

7015a0c lsp: Handle dynamic registration of workspace diagnostic capabilities (#40095)

Click to expand commit body
Workspace diagnostics in Zed have a dedicated background task that
handles querying the language server based on workspace diagnostics
refresh requests issued by both Zed and language server itself.
We only spawned that task when language server declared support for
workspace diagnostics on boot-up. This made workspace diagnostics
unavailable
when a language server (say, Ty) declared support via a capability
registration.
Originally reported in
https://github.com/zed-industries/zed/issues/39144#issuecomment-3370320004

Release Notes:

- python: Fixed workspace diagnostics not working with Ty.

Piotr Osiewicz created

435dee3 lsp colors: Reduce flickering while typing (#40055)

Click to expand commit body
Closes #40019

Follow-up https://github.com/zed-industries/zed/pull/40025

This PR reduces/removes the flickering of inlay colors. This is done by
adding a debounce, and not detaching the task that fetches the new
colors.

**Result**


https://github.com/user-attachments/assets/5dae278b-b821-4e64-8adb-c4d8376ba1df

Release Notes:

- Lsp colors: Reduce flickering while typing.

---------

Co-authored-by: Kirill Bulatov <kirill@zed.dev>

Remco Smits and Kirill Bulatov created

516796b settings ui: Rearrange sections (#39978)

Click to expand commit body
Closes #ISSUE

Release Notes:

- N/A *or* Added/Fixed/Improved ...

Katie Geer created

f0f70c4 ui: Change scrollbar hitbox insertion (#40008)

Click to expand commit body
Closes #39974

Since the thumb hitboxes themselves do not propagate events, we need to
paint the normal parent hitbox on top of the other ones. This also
caused hover detection to fail, which caused the issue linked.

Release Notes:

- Fixed an issue where hovering scrollbars in hovers would dismiss
these.

Finn Evers created

2b301b0 Deprecate code actions on format setting (#39983)

Click to expand commit body
Closes #ISSUE

Release Notes:

- settings: Deprecated `code_actions_on_format` in favor of specifying
code actions to run on format inline in the `formatter` array.

Previously, you would configure code actions to run on format like this:

```json
{
  "code_actions_on_format": {
    "source.organizeImports": true,
    "source.fixAll.eslint": true
  }
}
```

This has been migrated to the new format:

```json
{
  "formatter": [
    {
      "code_action": "source.organizeImports"
    },
    {
      "code_action": "source.fixAll.eslint"
    }
  ]
}
```

This change will be automatically migrated for you. If you had an
existing `formatter` setting, the code actions are prepended to your
formatter array (matching the existing behavior). This migration applies
to both global settings and language-specific settings

Ben Kunkle created

97c8a57 settings_ui: Expand nav entries by default when searching (#39980)

Click to expand commit body
Closes #ISSUE

Release Notes:

- N/A *or* Added/Fixed/Improved ...

Ben Kunkle created

d008f08 settings_ui: Use `bm25` search (#39967)

Click to expand commit body
Closes #ISSUE

Release Notes:

- N/A *or* Added/Fixed/Improved ...

Ben Kunkle created

d2997f1 zed 0.208.3

Joseph T. Lyons created

2fa54dd Initial layout rounding implementation (#39712)

Click to expand commit body
Release Notes:

- N/A

---------

Co-authored-by: John Tur <john-tur@outlook.com>

localcc and John Tur created

4769880 gpui: Fix drawing rotated SVGs (#33288)

Click to expand commit body
Fixes: https://github.com/longbridge/gpui-component/issues/994

1. When SVG is rotated, incorrect graphics are drawn.

For example: the original aspect ratio of the SVG is 1:1, if the bounds
used to render the SVG are 400x200 (aspect ratio 2:1),
[here](https://github.com/zed-industries/zed/blob/21f985a018f7cca9c0fb7f5b7a87555486ab9db5/crates/gpui/src/svg_renderer.rs#L91)
the width is used as the scaling factor, causing the rendered SVG to
only have half the height. This PR ensures the complete SVG image is
always rendered.

2. The clipping region has no transformation applied, I added a function
called `distance_from_clip_rect_transformed` in the shader.

3. Fixed `monochrome_sprite_fragment` in `shader.metal` not applying
clipping region.

### Before:


https://github.com/user-attachments/assets/8f93ac36-281e-4837-96cd-c308bfbf92d1

### After:


https://github.com/user-attachments/assets/f52b67a6-4cb9-4d6c-b759-bbb91b59c1cf

Release Notes:

- N/A

---------

Co-authored-by: Jason Lee <huacnlee@gmail.com>

Sunli and Jason Lee created

bd294bc Fix settings window on Linux/Windows being immovable (#39939)

localcc created

a70aa4b gpui: Add support for floating windows (#39702)

Click to expand commit body
Closes #ISSUE

This allows new windows like the Rules library or the Settings UI window
to appear floating on window managers like hyprland:


https://github.com/user-attachments/assets/628db7f9-4459-4601-85f1-789923831182

Left is with `WindowKind::Floating` and right is with
`WindowKind::Normal`

Release Notes:

- Added support for floating windows on x11 and wayland

Alvaro Parker created

f62171c Improve GPU selection on Windows (#39264)

Click to expand commit body
Closes #39263

Release Notes:
- N/A 

from
https://github.com/zed-industries/zed/issues/39263#issuecomment-3358220988

> 
> > If you replace that code with
> > 
> > let adapter: IDXGIAdapter1 = unsafe { 
> >    dxgi_factory.EnumAdapters(adapter_index) 
> > }?.cast()?; 
> > 
> > does it not select the right GPU?
>  
> @reflectronic That does seem to select the active gpu for me, meaning
whichever GPU is currently connected. This is a much simpler solution
than the one I have here
(https://github.com/zed-industries/zed/pull/39264 - updated) and while
I'm sure I could imagine someone wanting to choose their GPU to render
Zed on, that may not be something that the application really needs to
support.
> 
> I have a branch with just this as the only change that I can push to
that PR if the simpler solution is preferred.
> 
> ```rust
>         let adapter: IDXGIAdapter1 = unsafe {
>             dxgi_factory.EnumAdapters(adapter_index)?.cast()?
>         };
> ```

Cave Bats Of Ware created

7555a0a Change windows asset name to match other platforms (#39936)

localcc created

ed4cfb0 windows: Don't throw an error when the settings file is empty (#39908)

Click to expand commit body
Closes #39585 

Release Notes:

- N/A

Cole Miller created

2aeb025 settings_ui: Improve search by fuzzy matching on words (#39961)

Click to expand commit body
Closes #ISSUE

Release Notes:

- N/A *or* Added/Fixed/Improved ...

Ben Kunkle created

f5613e6 settings_ui: Refactor item renderers to render entire field (#39959)

Click to expand commit body
Closes #ISSUE

Release Notes:

- N/A *or* Added/Fixed/Improved ...

Ben Kunkle created

3a076c4 settings_ui: Fix page scroll bar lagging behind when jumping to a section (#39897)

Click to expand commit body
The issue was caused by the scroll handle taking a couple of frames to
update its offset correctly after calling
`ScrollHandle::scroll_to_top_of_item`. The fast fix is forcing 3 frames
to render back-to-back.

In the future, we should look into `ScrollHandle` and see if there's any
way to update its state outside of paint.

Release Notes:

- N/A

Co-authored-by: Danilo Leal <daniloleal09@gmail.com>
Co-authored-by: Mikayla Maki <mikayla.c.maki@gmail.com>
Co-authored-by: Katie Geer <katie@zed.dev>
Co-authored-by: Ben Kunkle <ben@zed.dev>

Anthony Eid , Danilo Leal , Mikayla Maki , Katie Geer , and Ben Kunkle created

d6a06b6 settings_ui: Restore settings UI keybinding hint (#39896)

Click to expand commit body
Now that the toggle nav focus works well, we can advertise it!

Release Notes:

- N/A

Mikayla Maki created

1e57968 settings_ui: Fix tab and ID bugs (#39888)

Click to expand commit body
Closes #39883

Release Notes:

- N/A *or* Added/Fixed/Improved ...

---------

Co-authored-by: Anthony <anthony@zed.dev>

Ben Kunkle and Anthony created

605aa63 Remove codex feature flag (#39878)

Click to expand commit body
Release Notes:

- N/A

Ben Brandt created

ecc40a2 zed 0.208.2

Joseph T. Lyons created

3746518 Provide codex as an option on remote sessions (#39774)

Click to expand commit body
Release Notes:

- N/A

---------

Co-authored-by: Cole Miller <cole@zed.dev>

Ben Brandt and Cole Miller created

45f6f80 acp: Simplify auth check and allow for custom /logout commands (#39867)

Click to expand commit body
- Prefer agent-specific logout handling to allow state reset 
- Treat any auth method as supported; remove provider-specific filter 
- Avoid prompting auth when issuing /logout and agent supports it

Release Notes:

- N/A

Ben Brandt created

90c8da5 settings_ui: Add terminal settings (#39874)

Click to expand commit body
Closes #ISSUE

Release Notes:

- N/A *or* Added/Fixed/Improved ...

Ben Kunkle created

7c38298 Fix configuring shell in project settings (#39795)

Click to expand commit body
I mistakenly broke this when refactoring settings

Closes #39479

Release Notes:

- Fixed a bug where you could no longer configure `terminal.shell` in
project settings

Conrad Irwin created

b78c6f6 settings_ui: Correct "File Icons" description (#39805)

Click to expand commit body
Align with
https://github.com/zed-industries/zed/blob/cd656485c863fcf3c1cc9cb1f00cd4b29b976fb1/crates/settings/src/settings_content/workspace.rs#L490

By the way, LOVE the settings UI! <3 Great job so far :)


Release Notes:

- N/A

Matthijs Kok created

4122b23 settings_ui: Improve keyboard nav (#39819)

Click to expand commit body
Closes #ISSUE

From notes:

```markdown
  - [x] Clicking on the disclsoure icon button in the root-level tree view item should steal focus and move it to the root item (not the icon button)
  - [x] [@ben] Allow left/right arrow keys to expand/collapse root tree view items in the nav
    - [x] With this, make enter/space work the same as clicking (activate page, don't expand root items, focus moves to the content and leaves nav — becomes consistent with mouse interaction)
  - [x] Smart cmd-shift-e: toggling focus should take you to the selected item
  - [x] [@ben] pageup + pagedown in nav -> jump between root items
  - [x] [@ben] home + end buttons should work
    - in nav:
      - home always goes to first section header
      - end always goes to last _visible_ item (does not expand)
```

Release Notes:

- N/A *or* Added/Fixed/Improved ...

Ben Kunkle created

cc3b0d4 Onboarding refactor (#39724)

Click to expand commit body
<img width="1648" height="976" alt="Screenshot 2025-10-07 at 6 57 20 PM"
src="https://github.com/user-attachments/assets/ae7289c0-8820-4fdf-ae28-84fb6bd64942"
/>

Fixes #39347

Release Notes:

- Improved onboarding UI by collapsing it to a single page

---------

Co-authored-by: dino <dinojoaocosta@gmail.com>
Co-authored-by: Lukas Wirth <me@lukaswirth.dev>
Co-authored-by: Mikayla Maki <mikayla.c.maki@gmail.com>
Co-authored-by: Anthony Eid <hello@anthonyeid.me>
Co-authored-by: Mikayla Maki <mikayla@zed.dev>

Andrew Farkas , dino , Lukas Wirth , Mikayla Maki , Anthony Eid , and Mikayla Maki created

b2e9c6c Do not deselect in terminal on copy by default (#39814)

Click to expand commit body
Release Notes:

- Flips `terminal.keep_selection_on_copy` default to `true`

Kirill Bulatov created

3ae971f terminal: Clear shell after activating (#39798)

Click to expand commit body
Two tweaks were required to ensure we correctly clear the shell after
running an activate script(s):
1. PowerShell upon receiving `\r\n` input, will enter the continuation
mode (>>). To avoid this, we send an "enter" key press instead `\x0d`.
2. In order to clear the terminal _after_ issuing all activation
commands, we need to take into account the asynchronous nature of the
activation process:
   - We write the command to run the script to PTY
- We send "enter" (It is now being processed by the shell) At this point
we need to wait for the shell to finish executing before we clear the
terminal. Otherwise we will create a race where we might clear the
terminal _before_ the shell finished executing the activation script(s).
   - Write `clear`/`cls` command to PTY
- Send "enter" This way we guarantee that we clear the terminal _after_
all scripts were executed.

Closes #38474 

Release Notes:

- N/A

Jakub Konka created

04ff8de terminal: Fix escaping arguments when using CMD as the shell (#39701)

Click to expand commit body
A couple of caveats:
- We should not auto-escape arguments with Alacritty's `escape_args`
option if using CMD otherwise, the generated command will have way too
many escaped characters for CMD to parse correctly.
- When composing a full command for CMD, we need to put it in double
quotes manually: `cmd /C "activate.bat& pwsh.exe -C do_something"` so
that CMD executes the entire string as a sequence of commands.
- CMD requires `&` as a chaining operator for commands (`;` for other
shells).

Release Notes:

- N/A

Jakub Konka created

37e7f30 zed 0.208.1

Joseph T. Lyons created

28c9cd2 windows: Do not exit from app in dev builds when cli is not found (#39768)

Click to expand commit body
Release Notes:

- N/A

Piotr Osiewicz created

c0651a8 settings ui: Add a handful of design tweaks (#39784)

Click to expand commit body
Release Notes:

- N/A

Danilo Leal created

62ac632 settings ui: Fix some layout regressions (#39804)

Click to expand commit body
Release Notes:

- N/A

Danilo Leal created

622bdae settings_ui: Add fallback for `agent_ui_font_size` (#39782)

Click to expand commit body
Closes https://github.com/zed-industries/zed/issues/39775

Release Notes:

- N/A

Finn Evers created

5975c1c settings_ui: Focus content controls when opened from nav bar (#39792)

Click to expand commit body
Closes #ISSUE

Release Notes:

- N/A *or* Added/Fixed/Improved ...

Ben Kunkle created

2cee97e v0.208.x preview

Joseph T. Lyons created

dd3b65f acp: Don't display failed terminal call on display only terminals (#39780)

Click to expand commit body
We don't get an ExitStatus from a remote terminal, so this check was
failing.

Ideally we move all of this to just needing an exit code, but we will
have to revisit that later.

Release Notes:

- N/A

Ben Brandt created

057b7b1 vim: Fix % motion edge case (#39620)

Click to expand commit body
Update Vim's `%` motion to first attempt finding the exact matching
bracket/tag under the cursor, then fall back to the previous
nearest-enclosing logic if none is found. This prevents accidentally
jumping to nested pairs in languages like TSX and Svelte where `<>`,
`</>`, and `/>` are also treated as brackets.

Closes #39368 

Release Notes:

- Fixed an edge case with the `%` motion in vim, where the cursor could
end up in a closing HTML tag instead of the matching bracket

Dino created