Commit log

efb6342 ci: Cleanup for disabled Merge Queue / merge_group (#23187)

Click to expand commit body
Only run actions dependency-review-action if running in a PR action.

This broke when run as part of action for commit on main and on a
preview branch:
- https://github.com/zed-industries/zed/actions/runs/12793068921/job/35664998296
- https://github.com/zed-industries/zed/actions/runs/12793045639

Originally introduced in:
- https://github.com/zed-industries/zed/pull/21424

But was only tested with `merge_group` which has since been reverted.

Peter Tripp created

68737ca Revert docs-only test-skipping with Merge Queue (#23180)

Click to expand commit body
These checks were not functioning as intended. Notably tests were
skipped for today's hotfix release of Preview
[v0.169.2-pre](https://github.com/zed-industries/zed/actions/runs/12790602047):

Separately these checks were flawed as they would only be considered
"docs only" if the diff between the PR branch base and main also did not
have any subsequent non-docs changes.

Reverting until we can figure out something better.

Peter Tripp created

9677a7d Add ollama phi4 context size defaults (#23036)

Click to expand commit body
Add `phi4` maximum context length (128K).
By default this clamps to `16384` but if you have enough video memory
you can set it higher or connect to a non-local machine via settings:

```json
"language_models": {
  "ollama": {
    "api_url": "http://localhost:11434",
    "available_models": [
      {
        "name": "phi4",
        "display_name": "Phi4 64K",
         "max_tokens": 65536
      }
    ]
  }
}
```

Release Notes:

- Improve support for Phi4 with ollama.

Peter Tripp created

aa2d637 Increase timeout for macos release builds (#23183)

Click to expand commit body
Today's Preview hotfix timed out during notarization:
- https://github.com/zed-industries/zed/actions/runs/12790602047/job/35656767355

Peter Tripp created

747c7e9 Revert "linux: Fix saving file with root ownership (#22045)" (cherry-pick #23162) (#23168)

Click to expand commit body
Cherry-picked Revert "linux: Fix saving file with root ownership
(#22045)" (#23162)

Release Notes:

- (temporarily) Removes the linux "save file as root" feature while we
figure out bugs.

Updates https://github.com/zed-industries/zed/pull/22045

Co-authored-by: Conrad Irwin <conrad.irwin@gmail.com>

gcp-cherry-pick-bot[bot] and Conrad Irwin created

458637f zed 0.169.2

Antonio Scandurra created

2a6f6ce edit prediction: Fix width of completion item (#23177)

Click to expand commit body
Release Notes:

- N/A

Co-authored-by: Agus <agus@zed.dev>
Co-authored-by: Bennet <bennet@zed.dev>
Co-authored-by: Antonio <antonio@zed.dev>

Thorsten Ball , Agus , Bennet , and Antonio created

395d2e7 zeta: Show keybinding in completion rating buttons in review modal (#22985)

Click to expand commit body
This PR also removes the `ThumbsUp` action that wasn't being triggered
correctly. We didn't have it's counterpart `ThumbsDown`, too, so I
mostly assumed it would be harmless to remove `ThumbsUp` as well.

<img width="800" alt="Screenshot 2025-01-10 at 6 18 44 PM"
src="https://github.com/user-attachments/assets/9fd5da9f-9dff-454d-9f31-c02f1370b937"
/>

Release Notes:

- N/A

---------

Co-authored-by: Marshall Bowers <elliott.codes@gmail.com>
# Conflicts:
#	crates/zeta/src/rate_completion_modal.rs

Danilo Leal and Marshall Bowers created

6e1e392 Check for `predict-edits` feature flag, remove `is_staff` check (#23165)

Click to expand commit body
Release Notes:

- N/A

---------

Co-authored-by: Thorsten Ball <mrnugget@gmail.com>

Agus Zubiaga and Thorsten Ball created

8a33b2b Show loading state for predictions (#23172)

Click to expand commit body
Release Notes:

- N/A

---------

Co-authored-by: Thorsten <thorsten@zed.dev>
Co-authored-by: Danilo Leal <daniloleal09@gmail.com>
Co-authored-by: Agus Zubiaga <hi@aguz.me>
# Conflicts:
#	crates/editor/src/code_context_menus.rs

Antonio Scandurra , Thorsten , Danilo Leal , and Agus Zubiaga created

96c5be5 Make completion menu entries mutable (#22880)

Click to expand commit body
Release Notes:

- N/A

Michael Sloan created

7fafc88 vim: Fix inline completions not disappearing in normal mode (#23176)

Click to expand commit body
Closes #23042

Release Notes:

- Fixed inline completions (Copilot, Supermaven, ...) still being
visible sometimes after leaving Vim's insert mode.

Thorsten Ball created

db503cf zeta: Allow viewing prompt details in rate completion modal (#23142)

Click to expand commit body
Co-Authored-by: Danilo <danilo@zed.dev>

Release Notes:

- N/A

---------

Co-authored-by: Danilo <danilo@zed.dev>
Co-authored-by: Danilo Leal <daniloleal09@gmail.com>
Co-authored-by: Thorsten Ball <mrnugget@gmail.com>
# Conflicts:
#	crates/zeta/src/rate_completion_modal.rs

Bennet Bo Fenner , Danilo , Danilo Leal , and Thorsten Ball created

745f6ce settings: Rename 'zeta' to 'zed' (#23174)

Click to expand commit body
Old:

```settings.json
{
  "features": {
    "inline_completion_provider": "zeta"
  }
}
```

New & cool:

```settings.json
{
  "features": {
    "inline_completion_provider": "zed"
  }
}
```

Release Notes:

- N/A

Thorsten Ball created

8d807ce Change tooltip to 'Edit Prediction' (#23139)

Click to expand commit body
Release Notes:

- N/A

Thorsten Ball created

680e5f1 zeta: Rework displaying paths in completion rating modal (#23129)

Click to expand commit body
Two issues i ran into while looking at the completion rating modal
- Single-file worktrees file names are not displayed at all
- Hard to see the filename when the path is long (lots of directories)

This PR fixes this by displaying the filename on the left, followed by
the full path (including the worktree name), similar to how we do it in
the file finder/assistant panel /file command
| Before | After |
|--------|--------|
| <img width="1067" alt="Screenshot 2025-01-14 at 16 09 05"
src="https://github.com/user-attachments/assets/628fde18-da9a-4d98-8ddf-ed0ab0cd8d35"
/> | <img width="1161" alt="Screenshot 2025-01-14 at 16 17 52"
src="https://github.com/user-attachments/assets/80c6a4e1-065d-4b0a-b9c0-5f3391af4557"
/> |

Release Notes:

- N/A
# Conflicts:
#	crates/zeta/src/rate_completion_modal.rs

Bennet Bo Fenner created

e4bcbc0 zeta: Various product fixes before Preview release (#23125)

Click to expand commit body
Various fixes for Zeta and one fix that's visible to non-Zeta-using
users of inline completions.

Release Notes:

- Changed inline completions (Copilot, Supermaven, ...) to not show up
in empty buffers.

---------

Co-authored-by: Antonio <antonio@zed.dev>
Co-authored-by: Antonio Scandurra <me@as-cii.com>
Co-authored-by: Bennet <bennet@zed.dev>
# Conflicts:
#	crates/zeta/src/rate_completion_modal.rs

Thorsten Ball , Antonio , Antonio Scandurra , and Bennet created

7fe8a44 Add more metrics for Fireworks Completion Requested (#23062)

Click to expand commit body
Release Notes:

- N/A

Co-authored-by: Thorsten <thorsten@zed.dev>

Antonio Scandurra and Thorsten created

a917a89 Improve prompt caching for edit prediction (#23061)

Click to expand commit body
This is achieved by halving the number of events instead of popping the
front.

Release Notes:

- N/A

Co-authored-by: Thorsten <thorsten@zed.dev>

Antonio Scandurra and Thorsten created

0d03674 zeta: Report Fireworks request data to Snowflake (#22973)

Click to expand commit body
Release Notes:

- N/A

---------

Co-authored-by: Antonio Scandurra <me@as-cii.com>
Co-authored-by: Conrad <conrad@zed.dev>

Thorsten Ball , Antonio Scandurra , and Conrad created

8fb1d13 Log errors when a prediction fails (#22961)

Click to expand commit body
Release Notes:

- N/A

---------

Co-authored-by: Thorsten <thorsten@zed.dev>

Antonio Scandurra and Thorsten created

62e098b zeta: Fix completions not being marked as rated (#22952)

Click to expand commit body
Seems like #22171 accidentally removed this line.

Now it's back and completions are marked as rated again.

![screenshot-2025-01-10-10 56
32@2x](https://github.com/user-attachments/assets/c68bff1b-5b97-493e-9062-390876fd757c)

Release Notes:

- N/A

Thorsten Ball created

fd6ac07 Animate Zeta button while generating completions (#22899)

Click to expand commit body
Release Notes:

- N/A

Co-authored-by: Thorsten <thorsten@zed.dev>

Antonio Scandurra and Thorsten created

18b08e2 Include outline when predicting edits with Zeta (#22895)

Click to expand commit body
Release Notes:

- N/A

Co-authored-by: Thorsten <thorsten@zed.dev>

Antonio Scandurra and Thorsten created

dc90aaa Introduce UI affordances to make enabling/disabling inline completions easier (#22894)

Click to expand commit body
Release Notes:

- N/A

---------

Co-authored-by: Thorsten <thorsten@zed.dev>

Antonio Scandurra and Thorsten created

142f949 Improve handling tab when inline completion is visible (#22892)

Click to expand commit body
This changes the behaviour of `<tab>` when inline completion is visible.
When the cursor is before the suggested indentation level, accepting a
completion should just indent.

cc @nathansobo @maxdeviant 

Release Notes:

- Changed the behavior of `<tab>` at start of line when an inline
completion (Copilot, Supermaven, ...) is visible. If the cursor is
before the suggested indentation, `<tab>` now indents the line instead
of accepting the visible completion.

Co-authored-by: Antonio <antonio@zed.dev>

Thorsten Ball and Antonio created

9c0c853 zeta: Validate completion responses for markers (#22840)

Click to expand commit body
Check for markers and how many there are to avoid markers showing up in
completions.

Release Notes:

- N/A

Thorsten Ball created

e74e286 Improve registration for Assistant code action providers (cherry-pick #23099) (#23136)

Click to expand commit body
Cherry-picked Improve registration for Assistant code action providers
(#23099)

This PR is a follow-up to
https://github.com/zed-industries/zed/pull/22911 to further improve the
registration of code action providers for the Assistant in order to
prevent duplicates.

The `CodeActionProvider` trait now has an `id` method that is used to
return a unique ID for a code action provider. We use this to prevent
registering duplicates of the same provider.

The registration of the code action providers for Assistant1 and
Assistant2 have also been reworked. Previously we were not call the
registration function—and thus setting up the subscriptions—until we
resolved the feature flags. However, this could lead to the registration
happening too late for existing workspace items.

We now perform the registration right away and then remove the undesired
code action providers once the feature flags have been resolved.

Release Notes:

- N/A

Co-authored-by: Marshall Bowers <elliott.codes@gmail.com>

gcp-cherry-pick-bot[bot] and Marshall Bowers created

784c128 Fix duplicated `Fix with Assistant` code actions (cherry-pick #22911) (#23118)

Click to expand commit body
Cherry-picked Fix duplicated `Fix with Assistant` code actions (#22911)

This PR fixes the duplicated `Fix with Assistant` code actions that were
being shown in the code actions menu.

This fix isn't 100% ideal, as there is an edge case in buffers that are
already open when the workspace loads, as we may not observe the feature
flags in time to register the code action providers by the time we
receive the event that an item was added to the workspace.

Closes https://github.com/zed-industries/zed/issues/22400.

Release Notes:

- Fixed duplicate "Fix with Assistant" entries showing in the code
action list.

Co-authored-by: Marshall Bowers <elliott.codes@gmail.com>

gcp-cherry-pick-bot[bot] and Marshall Bowers created

75f682b Bump to 0.169.1 for @osiewicz

Zed Bot created

8052cf8 editor: Adjust offset of the opened jump target in the multibuffer (cherry-pick #23091) (#23101)

Click to expand commit body
Cherry-picked editor: Adjust offset of the opened jump target in the
multibuffer (#23091)

This PR fixes an issue with jumping from multi_buffer to a file; namely,
the scroll offset of the opened buffer used to match the position within
the multibuffer, but it broke a while back. This is because we were
opening a buffer without providing the data about the origin scroll
offset.

Closes #ISSUE

Release Notes:

- Fixed a bug where the relative position of an excerpt within the
multibuffer was not accounted for while jumping to the buffer, causing
the clicked line to drastically change position on screen.

Co-authored-by: Piotr Osiewicz <24362066+osiewicz@users.noreply.github.com>

gcp-cherry-pick-bot[bot] and Piotr Osiewicz created

d1bb1f1 terminal: Fix unresponsive buttons on load until center pane is clicked + Auto-focus docked terminal on load if no other item is focused (cherry-pick #23039) (#23094)

Click to expand commit body
Cherry-picked terminal: Fix unresponsive buttons on load until center
pane is clicked + Auto-focus docked terminal on load if no other item is
focused (#23039)

Closes #23006

This PR should have been split into two, but since the changes are
related, I merged them into one.

1. On load, the title bar actions and bottom bar toggles are
unresponsive until the center pane is clicked. This happens because the
terminal captures focus (even if it's closed) long after the workspace
sets focus to itself during loading.

The issue was in the `focus_view` call used in the `new` method of
`TerminalPanel`. Since new terminal views can be created behind the
scenes (i.e., without the terminal being visible to the user), we
shouldn't handle focus for the terminal in this case. Removing
`focus_view` from the `new` method has no impact on the existing
terminal focusing logic. I've tested scenarios such as creating new
terminals, splitting terminals, zooming, etc., and everything works as
expected.

2. Currently, on load, docked terminals do not automatically focus when
they are only visible item to the user. This PR implements it.

Before/After:

1. When only the dock terminal is visible on load. Terminal is focused.

<img

src="https://github.com/user-attachments/assets/af8848aa-ccb5-4a3b-b2c6-486e8d588f09"
alt="image" height="280px" />

<img

src="https://github.com/user-attachments/assets/8f76ca2e-de29-4cc0-979b-749b50a00bbd"
alt="image" height="280px" />

2. When other items are visible along with the dock terminal on load.
Editor is focused.

<img

src="https://github.com/user-attachments/assets/d3248272-a75d-4763-9e99-defb8a369b68"
alt="image" height="280px" />

<img

src="https://github.com/user-attachments/assets/fba5184e-1ab2-406c-9669-b141aaf1c32f"
alt="image" height="280px" />

3. Multiple tabs along with split panes. Last terminal is focused.

<img

src="https://github.com/user-attachments/assets/7a10c3cf-8bb3-4b88-aacc-732b678bee19"
alt="image" height="270px" />

<img

src="https://github.com/user-attachments/assets/4d16e98f-9d7a-45f6-8701-d6652e411d3b"
alt="image" height="270px" />

Future:

When a docked terminal is in a zoomed state and Zed is loaded, we should
prioritize focusing on the terminal over the active item (e.g., an
editor) behind it. This hasn't been implemented in this PR because the
zoomed state during the load function is stale. The correct state is
received later via the workspace. I'm still investigating where exactly
this should be handled, so this will be a separate PR.

cc: @SomeoneToIgnore 

Release Notes:

- Fixed unresponsive buttons on load until the center pane is clicked.  
- Added auto-focus for the docked terminal on load when no other item is
focused.

Co-authored-by: tims <0xtimsb@gmail.com>

gcp-cherry-pick-bot[bot] and tims created

8d027b8 Reuse vtsls logic for completion details display (cherry-pick #23030) (#23034)

gcp-cherry-pick-bot[bot] created

88f7071 Do not try to activate the terminal panel twice (cherry-pick #23029) (#23032)

Click to expand commit body
Cherry-picked Do not try to activate the terminal panel twice (#23029)

Closes https://github.com/zed-industries/zed/issues/23023

Fixes terminal pane button opening two terminals on click.

The culprit is in


https://github.com/zed-industries/zed/blob/61115bd04792d87a540558753cd01a6368baba2a/crates/workspace/src/workspace.rs#L2412-L2417

* We cannot get any panel by index from the Dock, only an active one
* Both `dock.activate_panel(panel_index, cx);` and `dock.set_open(true,
cx);` do `active_panel.panel.set_active(true, cx);`

So, follow other pane's impls that have `active: bool` property for this
case, e.g.

https://github.com/zed-industries/zed/blob/3ec52d8451dd1178c4d036da3a71c827df422f4b/crates/assistant/src/inline_assistant.rs#L2687

Release Notes:

- Fixed terminal pane button opening two terminals on click

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

gcp-cherry-pick-bot[bot] and Kirill Bulatov created

a297e19 emacs: Fix emacs in embedded terminal on Linux too (#22969)

Click to expand commit body
- Follow-up to #22779 (accidentially did macos only)
- Follow-up to: https://github.com/zed-industries/zed/pull/22590

Release Notes:

- N/A

Peter Tripp created

92ba505 Update reference to editor::OpenFile in keymap (#22827)

Click to expand commit body
Follow-up to #22494

Release Notes:

- N/A

Cole Miller created

9cb8645 v0.169.x preview

Peter Tripp created

ebc4688 Fix script/bump-zed-minor-versions. Revert #22834 Revert #22614 (#22837)

Click to expand commit body
Fixes an incorrect error message.
Turns out it is impossible to set remote tracking to a branch that doesn't exist on the remote, so let's not even try.

Reverts #22834
Reverts #22614

Peter Tripp created

7f0e132 Fix upstream branch tracking error in script/bump-zed-minor-versions (#22834)

Click to expand commit body
Follow-up to: https://github.com/zed-industries/zed/pull/22614

Peter Tripp created

8cd2afe Improve `MessageNotification` design (#22829)

Click to expand commit body
Just fine-tuning some bits of the visual design.

| Before | After |
|--------|--------|
| <img width="1426" alt="Screenshot 2025-01-08 at 11 26 32 AM"
src="https://github.com/user-attachments/assets/9312d3e3-9f20-43c3-9e9d-19f557521b95"
/> | <img width="1426" alt="Screenshot 2025-01-08 at 11 27 13 AM"
src="https://github.com/user-attachments/assets/1521f019-c558-441d-b99a-68a7ff8a8d92"
/> |

Release Notes:

- N/A

Danilo Leal created

b890a12 Improve LSP notification design (#22828)

Click to expand commit body
Mostly just fine-tuning the styles and modernizing some of the component
usage. Visually, it doesn't change that _much_, but it still polishes it
up a bit.

| Before | After |
|--------|--------|
| <img width="1426" alt="Screenshot 2025-01-08 at 11 25 01 AM"
src="https://github.com/user-attachments/assets/df074f88-08c0-47c2-bd98-1a8b6dbadc99"
/> | <img width="1426" alt="Screenshot 2025-01-08 at 11 23 24 AM"
src="https://github.com/user-attachments/assets/250e3aee-fd1b-4b32-b305-e58b4fede75a"
/> |

Release Notes:

- N/A

Danilo Leal created

115aa43 Adjust `TintColor` color token terminology (#22826)

Click to expand commit body
Previously, to use a green and red shade with `TintColor` you'd need to
pass `Positive` and `Negative`, respectively. This terminology always
tripped me up, because, for example, I'd often try to use something
like:

```
Button::new("icon_color", "Negative")
      style(ButtonStyle::Tinted(TintColor::Negative))
      .color(Color::Error)
      .icon_color(Color::Error)
      .icon(IconName::Trash),
)
```

...and due to `icon_color` taking `Color::Error`, I'd always get
`TintColor` wrong at a first try, because I would, out of muscle memory,
write `TintColor::Error`, which wouldn't compile. That's exactly the
change in this PR—`TintColor` now takes `Success` and `Error` instead of
`Positive` and `Negative`, for more consistency.


Release Notes:

- N/A

Danilo Leal created

bbb473b Add a dedicated action to open files (#22625)

Click to expand commit body
Closes #22531
Closes #22250
Closes #15679

Release Notes:

- Add `workspace::OpenFiles` action to enable opening individual files
on Linux and Windows

Cole Miller created

3630144 assistant2: Handle non-text files in context pickers (#22795)

Click to expand commit body
We'll now show an error message if the user tries to add a directory
that contains no text files or when they try to add a single non-text
file.

Release Notes:

- N/A

---------

Co-authored-by: Danilo <danilo@zed.dev>

Agus Zubiaga and Danilo created

52f29b4 Fix conversation selector popover menu offset (#22796)

Click to expand commit body
Before, the conversation popover menu covered up what you were typing
because it wasn't offset properly.

Now it's offset properly, using the UI font size so the amount of offset
scales with the font size:

<img width="435" alt="Screenshot 2025-01-07 at 4 34 27 PM"
src="https://github.com/user-attachments/assets/55e40910-8cd4-4548-b4fb-521eb2845775"
/>
<img width="454" alt="Screenshot 2025-01-07 at 4 33 58 PM"
src="https://github.com/user-attachments/assets/30350489-09f1-4cb8-9f95-ed4ee87bc110"
/>
<img width="488" alt="Screenshot 2025-01-07 at 4 34 18 PM"
src="https://github.com/user-attachments/assets/de60d990-2bd9-418d-a616-56beb3e4aa8a"
/>

Release Notes:

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

Richard Feldman created

68e670b Fix rust runnable is not detected if comment is after #[test] attribute (#22823)

Click to expand commit body
Closes #22798

This fixes that we didn't detect the Rust runnable when there was a
comment after the `#[test]` attribute.

![Screenshot 2025-01-08 at 13 22
59](https://github.com/user-attachments/assets/bd6a7ae0-93d4-4f93-9d0d-11453acb2032)


Release Notes:

- Fixed Rust runnable not detected when comment is after `#[test]`
attribute.

---------

Co-authored-by: Piotr Osiewicz <24362066+osiewicz@users.noreply.github.com>

Remco Smits and Piotr Osiewicz created

8317c92 python: Detect `pixi` environments automatically (#22635)

Click to expand commit body
Goal: Allow zed to locate [`pixi`](https://github.com/prefix-dev/pixi)
environments

Changes:
- Uses a newer release of
[`python-environment-tools`](https://github.com/microsoft/python-environment-tools)
with the new `pet-pixi` create
- Adds `PythonEnvironmentKind::Pixi` as a possible environment kind, to
allow the rest of the code to detect the environment

I tested the changes locally. It found the correct pixi environment and
I was able to run `pytest` through the UI icon.


Release Notes:

- Added detection for pixi-environments

---------

Co-authored-by: Piotr Osiewicz <24362066+osiewicz@users.noreply.github.com>

Yasin and Piotr Osiewicz created

f9ee28d vim: Fix clipping when navigating over inlay hints (#22813)

Click to expand commit body
This fixes the issue described in this comment:
https://github.com/zed-industries/zed/pull/22439#issuecomment-2563896422

Essentially, we'd clip in the wrong direction when there were multi-line
inlay hints.

It also fixes inline completions for non-Zeta-providers showing up in
normal mode.

Release Notes:

- N/A

Thorsten Ball created

dffdf99 Fix completion menu jumping (#22780)

Click to expand commit body
Co-Authored-By: Thorsten <thorsten@zed.dev>

Release Notes:

- Fix selected suggestion updating too many times when Zeta triggers

Co-authored-by: Thorsten <thorsten@zed.dev>

Conrad Irwin and Thorsten created

0b361e5 Fix panic in request_multiple_lsp_locally (#22806)

Click to expand commit body
Release Notes:

- Fix a panic after disconnecting from a remote project

Conrad Irwin created