880f3ff
Timeout if completion takes longer than 2s (#23215)
Click to expand commit body
Release Notes: - N/A
Antonio Scandurra created
880f3ff
Timeout if completion takes longer than 2s (#23215)
Release Notes: - N/A
Antonio Scandurra created
a41d72e
Represent git statuses more faithfully (#23082)
First, parse the output of `git status --porcelain=v1` into a representation that can handle the full "grammar" and doesn't lose information. Second, as part of pushing this throughout the codebase, expand the use of the existing `GitSummary` type to all the places where status propagation is in play (i.e., anywhere we're dealing with a mix of files and directories), and get rid of the previous `GitSummary -> GitFileStatus` conversion. - [x] Synchronize new representation over collab - [x] Update zed.proto - [x] Update DB models - [x] Update `GitSummary` and summarization for the new `FileStatus` - [x] Fix all tests - [x] worktree - [x] collab - [x] Clean up `FILE_*` constants - [x] New collab tests to exercise syncing of complex statuses - [x] Run it locally and make sure it looks good Release Notes: - N/A --------- Co-authored-by: Mikayla <mikayla@zed.dev> Co-authored-by: Conrad <conrad@zed.dev>
Cole Miller , Mikayla , and Conrad created
224f3d4
Update Rust crate sea-orm to v1.1.4 (#23202)
This PR contains the following updates: | Package | Type | Update | Change | |---|---|---|---| | [sea-orm](https://www.sea-ql.org/SeaORM) ([source](https://redirect.github.com/SeaQL/sea-orm)) | dev-dependencies | patch | `1.1.3` -> `1.1.4` | | [sea-orm](https://www.sea-ql.org/SeaORM) ([source](https://redirect.github.com/SeaQL/sea-orm)) | dependencies | patch | `1.1.3` -> `1.1.4` | --- ### Release Notes <details> <summary>SeaQL/sea-orm (sea-orm)</summary> ### [`v1.1.4`](https://redirect.github.com/SeaQL/sea-orm/blob/HEAD/CHANGELOG.md#114---2025-01-10) [Compare Source](https://redirect.github.com/SeaQL/sea-orm/compare/1.1.3...1.1.4) ##### Enhancements - Allow modifying the connection in migrations [https://github.com/SeaQL/sea-orm/pull/2397](https://redirect.github.com/SeaQL/sea-orm/pull/2397) - `DeriveRelatedEntity` proc_macro use `async-graphql` re-exported by `seaography` [https://github.com/SeaQL/sea-orm/pull/2469](https://redirect.github.com/SeaQL/sea-orm/pull/2469) </details> --- ### Configuration 📅 **Schedule**: Branch creation - "after 3pm on Wednesday" in timezone America/New_York, Automerge - At any time (no schedule defined). 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about these updates again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- Release Notes: - N/A <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzOS4xMDcuMCIsInVwZGF0ZWRJblZlciI6IjM5LjEwNy4wIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119--> Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
renovate[bot] and renovate[bot] created
be7090c
Update Rust crate log to v0.4.25 (#23200)
This PR contains the following updates: | Package | Type | Update | Change | |---|---|---|---| | [log](https://redirect.github.com/rust-lang/log) | workspace.dependencies | patch | `0.4.22` -> `0.4.25` | --- ### Release Notes <details> <summary>rust-lang/log (log)</summary> ### [`v0.4.25`](https://redirect.github.com/rust-lang/log/blob/HEAD/CHANGELOG.md#0425---2025-01-14) [Compare Source](https://redirect.github.com/rust-lang/log/compare/0.4.24...0.4.25) ### [`v0.4.24`](https://redirect.github.com/rust-lang/log/blob/HEAD/CHANGELOG.md#0424---2025-01-11) [Compare Source](https://redirect.github.com/rust-lang/log/compare/0.4.23...0.4.24) ### [`v0.4.23`](https://redirect.github.com/rust-lang/log/blob/HEAD/CHANGELOG.md#0423---2025-01-10-yanked) [Compare Source](https://redirect.github.com/rust-lang/log/compare/0.4.22...0.4.23) </details> --- ### Configuration 📅 **Schedule**: Branch creation - "after 3pm on Wednesday" in timezone America/New_York, Automerge - At any time (no schedule defined). 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- Release Notes: - N/A <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzOS4xMDcuMCIsInVwZGF0ZWRJblZlciI6IjM5LjEwNy4wIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119--> Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
renovate[bot] and renovate[bot] created
f53915c
Add infrastructure for loading icon themes from extensions (#23203)
This PR adds the supporting infrastructure to support loading icon
themes defined by extensions.
Here's an example icon theme:
```json
{
"name": "My Icon Theme",
"author": "Me <me@example.com>",
"themes": [
{
"name": "My Icon Theme",
"appearance": "dark",
"file_icons": {
"gleam": { "path": "./icons/file_type_gleam.svg" },
"toml": { "path": "./icons/file_type_toml.svg" }
}
}
]
}
```
The icon paths are resolved relative to the root of the extension
directory.
Release Notes:
- N/A
Marshall Bowers created
3b8a5c9
Update Rust crate proc-macro2 to v1.0.93 (#23201)
This PR contains the following updates: | Package | Type | Update | Change | |---|---|---|---| | [proc-macro2](https://redirect.github.com/dtolnay/proc-macro2) | dependencies | patch | `1.0.92` -> `1.0.93` | --- ### Release Notes <details> <summary>dtolnay/proc-macro2 (proc-macro2)</summary> ### [`v1.0.93`](https://redirect.github.com/dtolnay/proc-macro2/releases/tag/1.0.93) [Compare Source](https://redirect.github.com/dtolnay/proc-macro2/compare/1.0.92...1.0.93) - Optimize TokenStream's Drop ([#​489](https://redirect.github.com/dtolnay/proc-macro2/issues/489), [#​490](https://redirect.github.com/dtolnay/proc-macro2/issues/490), thanks [@​WalkerKnapp](https://redirect.github.com/WalkerKnapp)) </details> --- ### Configuration 📅 **Schedule**: Branch creation - "after 3pm on Wednesday" in timezone America/New_York, Automerge - At any time (no schedule defined). 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- Release Notes: - N/A <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzOS4xMDcuMCIsInVwZGF0ZWRJblZlciI6IjM5LjEwNy4wIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119--> Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
renovate[bot] and renovate[bot] created
a8526d9
file_icons: Fall back to the default icon theme for icons (#23196)
This PR updates the various `FileIcons` methods to fall back to the default icon theme if the active icon theme does not have the desired icon. Release Notes: - N/A
Marshall Bowers created
904b367
ui: Add support for rendering `Icon`s from external files (#23195)
This PR adds support for rendering `Icon`s from external files. Previously this could only be used with icons embedded in the binary. To achieve this we currently need to use the `img` element until the `svg` element supports: 1. Loading SVGs from external files 2. Rendering polychrome SVGs Release Notes: - N/A
Marshall Bowers created
e265e69
git: Move all state into the panel (#23185)
This should fix the problem with the panel not updating when switching projects. Release Notes: - N/A
Cole Miller created
d578f5a
Simplify static expression to a constant (#23193)
Release Notes: - N/A
João Marcos created
b3e8bb0
Update docs for running collab locally (#23192)
Mention `cargo run -p collab -- serve all`, which seem to be the easier way to run it. Release Notes: - N/A
João Marcos created
2e959cb
Make Linux audio public (#23191)
Release Notes: - Added a way to use audio in rooms with Linux builds
Kirill Bulatov created
e215ca1
Dedupe `AssistantSettings` (#23190)
This PR dedupes the `AssistantSettings` so we can use the same settings for both Assistant1 and Assistant2. We originally forked them so we could change the Assistant2 settings freely, but given our rollout strategy for the new Assistant, I don't think that makes sense. This also fixes the issue where the JSON language server would show a "Matches multiple schemas when only one must validate" warning in `settings.json`. Closes #23171. Release Notes: - Fixed the "Matches multiple schemas when only one must validate" warning for the `assistant` setting.
Marshall Bowers created
22f5fd5
Rework inlay hint cache tests (#23156)
Closes https://github.com/zed-industries/zed/issues/7928 * uncomments and fixes all inlay hint cache tests * fixes a bug, where invalidated range did not store the new queried ranges in the cache: this resulted in extra requests in editor that do not fit into the screen * comments a peculiarity with the `RefreshInlayHints` event: all editors react to that when a new language server is inserted, even though certain editors are not related to the new language server * fixes handling of inlay hints for the same position: now the same order is kept, as in the language server's response (https://github.com/zed-industries/zed/issues/7928) * queries for hints when on excerpt(s) expansion Release Notes: - Fixed inlay hints handling for the same position
Kirill Bulatov created
135e58f
Bump Zed to v0.171 (#23188)
Peter Tripp created
88cb9bb
Add fn-f keyboard shortcut for Fullscreen (mac-only) (#23184)
- See: https://github.com/zed-industries/zed/issues/22674#issuecomment-2593133447 Release Notes: - macos: Added `fn-f` keyboard shortcut for fullscreen toggle.
Peter Tripp created
61db8be
ci: Cleanup for disabled Merge Queue / merge_group (#23187)
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
72f1b32
project_panel: Remove useless comments (#23186)
This PR removes some comments in the `project_panel` that are just restating what the code is doing. Release Notes: - N/A
Marshall Bowers created
0150eaf
Revert docs-only test-skipping with Merge Queue (#23180)
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
cc8746a
Increase timeout for macos release builds (#23183)
Today's Preview hotfix timed out during notarization: - https://github.com/zed-industries/zed/actions/runs/12790602047/job/35656767355
Peter Tripp created
f50a118
Refactor shell wrapping (#23108)
I want to use this to implement ! in vim, so move it from terminal_view to task, and split windows/non-windows more cleanly. Release Notes: - N/A
Conrad Irwin created
45198f2
Add "tool" support to go.mod (#22995)
Closes #ISSUE Release Notes: - Fixed highlighting of ["tool" directives](https://tip.golang.org/doc/go1.24#tools) in go.mod
Conrad Irwin created
67525cc
Add ollama phi4 context size defaults (#23036)
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
0e4a619
Revert "Log an error when there are no buffer snapshots for some LSP version (#22934)" (#23179)
https://github.com/zed-industries/zed/pull/22934#issuecomment-2592239448 and myself had noted quite an increase in junk logging after that: https://github.com/user-attachments/assets/b678d4ec-c301-4d0e-9a12-99aa7f6da0a2 Release Notes: - N/A
Kirill Bulatov created
74620e6
Improve performance of go-to-diagnostic when many diagnostics are present (#23166)
Instead of eagerly calling `to_offset` on the anchor ranges for each diagnostic in the direction of the search, work lazily in terms of anchors and convert to offsets at the very end. Release Notes: - N/A
Cole Miller created
9d3a059
Exclude function keys from input handler (#23070)
Fixes #22674 Release Notes: - Fixed a bug binding to `fn-X` (where X is a printing key) on macOS
Conrad Irwin created
b1cfc11
edit prediction: Fix width of completion item (#23177)
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
4a76302
Check for `predict-edits` feature flag, remove `is_staff` check (#23165)
Release Notes: - N/A --------- Co-authored-by: Thorsten Ball <mrnugget@gmail.com>
Agus Zubiaga and Thorsten Ball created
da8e65b
Show loading state for predictions (#23172)
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>
Antonio Scandurra , Thorsten , Danilo Leal , and Agus Zubiaga created
bf75b33
vim: Fix inline completions not disappearing in normal mode (#23176)
Closes #23042 Release Notes: - Fixed inline completions (Copilot, Supermaven, ...) still being visible sometimes after leaving Vim's insert mode.
Thorsten Ball created
bd3f64c
zeta: Allow viewing prompt details in rate completion modal (#23142)
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>
Bennet Bo Fenner , Danilo , Danilo Leal , and Thorsten Ball created
ae74693
settings: Rename 'zeta' to 'zed' (#23174)
Old:
```settings.json
{
"features": {
"inline_completion_provider": "zeta"
}
}
```
New & cool:
```settings.json
{
"features": {
"inline_completion_provider": "zed"
}
}
```
Release Notes:
- N/A
Thorsten Ball created
37c2ebe
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
Conrad Irwin created
e86fe1d
Fix git commands for staging and unstaging (#23147)
This fixes a bug that prevents unstaging added files. I've also removed the batching/debouncing logic in the long-running task that launches the git invocations---I added this originally but I don't think it's really necessary. Release Notes: - N/A
Cole Miller created
de6216a
ui: Move `IconDecoration` and `DecoratedIcon` to their own modules (#23157)
This PR moves the `IconDecoration` and `DecoratedIcon` components to their own modules. Release Notes: - N/A
Marshall Bowers created
167c564
theme: Pull directory and chevron icons out of `IconTheme::file_icons` (#23155)
This PR pulls the directory and chevron icons out of the `IconTheme::file_icons` collection and promotes them to named fields. This makes things less stringly-typed when looking up these icons. Release Notes: - N/A
Marshall Bowers created
1178b3e
gpui: Clean up `AppContext` doc comments (#23154)
This PR cleans up some doc comments for the `AppContext. Release Notes: - N/A
Marshall Bowers created
88e42cc
Refactor file icons to use `IconTheme` (#23153)
This PR adds the initial concept of an `IconTheme` and refactors `FileIcons` to use it to resolve the icons. The `IconTheme` will ultimately be used to allow users to select a different set of icons to use. Currently, however, this is just laying the foundation for that work. The association between file types and icons is now handled by the icon theme when we resolve file icons. This mapping has been moved out of `file_types.json` and into `icon_theme.rs`. Release Notes: - N/A
Marshall Bowers created
07d5824
assistant2: Revise thread visual design (#23083)
This PR adjusts the design of the assistant 2 threads with the goal of reducing visual busyness. My intention is to remove the amount of lines and borders given it is a relatively tight space. It also refines the "generating" floating container style, finally leveraging linear gradients that were recently added to GPUI! Now, we only display headers for "you" messages. Assistant responses will be rendered right in the panel; not bounded by a card container. <img width="800" alt="Screenshot 2025-01-14 at 7 08 39 PM" src="https://github.com/user-attachments/assets/a8ffa780-0ef2-4d4b-ae19-3f02fd2d63a6" /> Release Notes: - N/A
Danilo Leal created
077767a
Migrate more events to telemetry::event (#22178)
Release Notes: - N/A
Joseph T. Lyons created
b7fd571
Revert "Add emacs keybindings for mark emulation" (#23146)
- Reverts zed-industries/zed#22904 - See also: https://github.com/zed-industries/zed/issues/8580 After using it full-time for a day I very much think an implicit "mark mode" when the emacs base keymap is enabled is the wrong approach. Release Notes: - Reverted "Add emacs keybindings for mark emulation" #23146 (main only)
Peter Tripp created
c038696
Add LM Studio support to the Assistant (#23097)
#### Release Notes: - Added support for [LM Studio](https://lmstudio.ai/) to the Assistant. #### Quick demo: https://github.com/user-attachments/assets/af58fc13-1abc-4898-9747-3511016da86a #### Future enhancements: - wire up tool calling (new in [LM Studio 0.3.6](https://lmstudio.ai/blog/lmstudio-v0.3.6)) --------- Co-authored-by: Marshall Bowers <elliott.codes@gmail.com>
Yagil Burowski and Marshall Bowers created
4445679
Fix a typo in the task example (#23148)
Release Notes: - N/A
Kirill Bulatov created
a3e7444
Git panel polish (#23144)
- Clicking checkbox in the header stages or unstages all changes - Adds tooltips to header checkbox - Addis the ability for checkboxes to have tooltips - Ensure an entry in the list is always selected - Hide revert all button for now Release Notes: - N/A
Nate Butler created
d13d099
git: Restore basic jump-to-file functionality (#23140)
This just opens the file for the selected `GitListEntry` right now; we'll add back integration with the project diff view later. Release Notes: - N/A --------- Co-authored-by: Nate <nate@zed.dev>
Cole Miller and Nate created
de5f023
assistant2: Cancel generation button (#23137)
Turns the "esc to cancel" label into a button so it can be dispatched via click or keyboard. The keybinding isn't hardcoded anymore.  Release Notes: - N/A
Agus Zubiaga created
4febc7e
assistant2: Cancel pending completion when an error occurs (#23143)
This PR makes it so the pending completion is cleared when an error occurs. This makes it so `Thread::is_streaming()` will return `false` in the error case (and thus hide the streaming indicator in the UI). Release Notes: - N/A
Marshall Bowers created
c33eb01
Change tooltip to 'Edit Prediction' (#23139)
Release Notes: - N/A
Thorsten Ball created
1ddf754
zeta: Rework displaying paths in completion rating modal (#23129)
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
Bennet Bo Fenner created
91b36c3
environments: Don't load shell environments in non-local worktrees (#23138)
This fixes an error message that has shown up for me when joining collab projects: "Unable to load shell environment in /<path on another machine/" Release Notes: - Fixed error message about shell environment failing to load when joining projects in collaboration.
Thorsten Ball created