9c054f2
Git telemetry (#26222)
Click to expand commit body
Release Notes: - git: Adds telemetry to git actions
Conrad Irwin created
9c054f2
Git telemetry (#26222)
Release Notes: - git: Adds telemetry to git actions
Conrad Irwin created
219d36f
migrator: Add versioned migrations (#26215)
There is a drawback to how we currently write our migrations:
For example:
1. Suppose we change one of our actions from a string to an array and
rename it, then roll out the preview build:
Before: `"ctrl-x": "editor::GoToPrevHunk"`
Latest: `"ctrl-x": ["editor::GoToPreviousHunk", { "center_cursor": true
}]`
To handle this, we wrote migration `A` to convert the string to an
array.
2. Now, suppose we decide to change it back to a string:
- User who hasn't migrated yet on Preview: `"ctrl-x":
"editor::GoToPrevHunk"`
- User who has migrated on Preview: `"ctrl-x":
["editor::GoToPreviousHunk", { "center_cursor": true }]`
- Latest: `"ctrl-x": "editor::GoToPreviousHunk"`
To handle this, we would need to remove migration `A` and add two more
migrations:
- **Migration B**: `"ctrl-x": "editor::GoToPrevHunk"` -> `"ctrl-x":
"editor::GoToPreviousHunk"`
- **Migration C**: `"ctrl-x": ["editor::GoToPreviousHunk", {
"center_cursor": true }]` -> `"ctrl-x": "editor::GoToPreviousHunk"`
Nice. But over time, this keeps increasing, making it impossible to
track outdated versions and handle all cases. Missing a case means users
stuck on `"ctrl-x": "editor::GoToPrevHunk"` will remain there and won't
be automatically migrated to the latest state.
---
To fix this, we introduce versioned migrations. Instead of removing
migration `A`, we simply write a new migration that takes the user to
the latest versionβi.e., in this case, migration `C`.
- A user who hasn't migrated before will go through both migrations `A`
and `C` in order.
- A user who has already migrated will only go through `C`, since `A`
wouldn't change anything for them.
With incremental migrations, we only need to write migrations on top of
the latest state (big win!), as know internally they all would be on
latest state. You *must not* modify previous migrations. Always create
new ones instead.
This also serves as base for only prompting user to migrate, when
feature reaches stable. That way, preview and stable keymap and settings
are in sync.
cc: @mgsloan @ConradIrwin @probably-neb
Release Notes:
- N/A
smit created
6fd9708
extension: Add capabilities for the process API (#26224)
This PR adds support for capabilities for the extension process API. In order to use the process API, an extension must declare which commands it wants to use, with arguments: ```toml [[capabilities]] kind = "process:exec" command = "echo" args = ["hello!"] ``` A `*` can be used to denote a single wildcard in the argument list: ```toml [[capabilities]] kind = "process:exec" command = "echo" args = ["*"] ``` And `**` can be used to denote a wildcard for the remaining arguments: ```toml [[capabilities]] kind = "process:exec" command = "ls" args = ["-a", "**"] ``` Release Notes: - N/A --------- Co-authored-by: Conrad Irwin <conrad.irwin@gmail.com>
Marshall Bowers and Conrad Irwin created
99216ac
gpui: Rename `rounded_sm` to `rounded_xs` (#26221)
This PR renames the `rounded_sm` style method to `rounded_xs`. This will allow us to add an additional step in the scale. Release Notes: - N/A
Marshall Bowers created
aef25a3
slash_commands_example: Improve setup instructions in README (#26217)
This PR improves the setup instructions for the slash-commands-example extension by: 1. Replacing the `sed` command with a more reliable approach that completely replaces the Cargo.toml file. 2. Explicitly showing how to create a standalone extension with a properly configured Cargo.toml file that: - Uses `edition = "2021"` instead of `edition.workspace = true` - Doesn't include `publish.workspace = true` - Doesn't include the `[lints]` section This change addresses an issue where the extension wouldn't work when copied as a standalone project due to workspace references that are only valid when the extension is built as part of the main Zed repository. The updated instructions provide a clear, reliable path for developers to create their own Zed extensions based on the slash commands example. Release Notes: - N/A
Chris Boette created
9b07f36
gpui: Fix `Cut` action in input example (#26203)
Zed fan trying to learn GPUI here. Notice one problem in input example which cause cmd-x function not work. Let me know if any adjustments are needed! Release Notes: - N/A
greathongtu created
ff25fa2
Add support for auto-closing of JSX tags (#25681)
Closes #4271 Implemented by kicking of a task on the main thread at the end of `Editor::handle_input` which waits for the buffer to be re-parsed before checking if JSX tag completion possible based on the recent edits, and if it is then it spawns a task on the background thread to generate the edits to be auto-applied to the buffer Release Notes: - Added support for auto-closing of JSX tags --------- Co-authored-by: Cole Miller <cole@zed.dev> Co-authored-by: Max Brunsfeld <max@zed.dev> Co-authored-by: Marshall Bowers <git@maxdeviant.com> Co-authored-by: Mikayla <mikayla@zed.dev> Co-authored-by: Peter Tripp <peter@zed.dev>
Ben Kunkle , Cole Miller , Max Brunsfeld , Marshall Bowers , Mikayla , and Peter Tripp created
05df3d1
windows: Dock menu impl 2 (#26010)
Closes #ISSUE Release Notes: - N/A *or* Added/Fixed/Improved ...
εΌ ε°η½ created
84f4d26
node_runtime: Use user/global configuration when using system node installation (#26209)
This partially reverts https://github.com/zed-industries/zed/pull/3324 We will still blank out user/global config when running managed NPM, to keep to the spirit of #3324 (which was made at the time we did not allow user-provided NPM builds - the intent of the change was to make the behavior of NPM as consistent as possible). I tested this change by: 1. Setting up a custom NPM registry via Versaccio 2. Adding this new registry to my .npmrc 3. Mirroring `vscode-langservers-extracted` to it 4. Blocking access to `registry.npmjs.org` 5. Opening up settings.json file in Zed Nightly - Verifying that language server update fails for it 6. Opening up Zed Dev build of this branch - Confirming that language server update check goes through for it Closes #19806 Closes #20749 Closes #9422 Release Notes: - User and global .npmrc configuration is now respected when running user-provided NPM binary (which also happens automatically when `npm` from PATH is newer than 18.0.0)
Piotr Osiewicz created
b42930f
Update Rust crate embed-resource to v3.0.2 (#26171)
This PR contains the following updates: | Package | Type | Update | Change | |---|---|---|---| | [embed-resource](https://redirect.github.com/nabijaczleweli/rust-embed-resource) | build-dependencies | patch | `3.0.1` -> `3.0.2` | --- ### Release Notes <details> <summary>nabijaczleweli/rust-embed-resource (embed-resource)</summary> ### [`v3.0.2`](https://redirect.github.com/nabijaczleweli/rust-embed-resource/compare/v3.0.1...v3.0.2) [Compare Source](https://redirect.github.com/nabijaczleweli/rust-embed-resource/compare/v3.0.1...v3.0.2) </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:eyJjcmVhdGVkSW5WZXIiOiIzOS4xODUuNCIsInVwZGF0ZWRJblZlciI6IjM5LjE4NS40IiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119--> Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
renovate[bot] and renovate[bot] created
cb2eef6
Update Rust crate chrono to v0.4.40 (#26170)
This PR contains the following updates: | Package | Type | Update | Change | |---|---|---|---| | [chrono](https://redirect.github.com/chronotope/chrono) | workspace.dependencies | patch | `0.4.39` -> `0.4.40` | --- ### Release Notes <details> <summary>chronotope/chrono (chrono)</summary> ### [`v0.4.40`](https://redirect.github.com/chronotope/chrono/releases/tag/v0.4.40): 0.4.40 [Compare Source](https://redirect.github.com/chronotope/chrono/compare/v0.4.39...v0.4.40) #### What's Changed - Add Month::num_days() by [@​djc](https://redirect.github.com/djc) in [https://github.com/chronotope/chrono/pull/1645](https://redirect.github.com/chronotope/chrono/pull/1645) - Update Windows dependencies by [@​kennykerr](https://redirect.github.com/kennykerr) in [https://github.com/chronotope/chrono/pull/1646](https://redirect.github.com/chronotope/chrono/pull/1646) - Feature/round_up method on DurationRound trait by [@​MagnumTrader](https://redirect.github.com/MagnumTrader) in [https://github.com/chronotope/chrono/pull/1651](https://redirect.github.com/chronotope/chrono/pull/1651) - Expose `write_to` for `DelayedFormat` by [@​tugtugtug](https://redirect.github.com/tugtugtug) in [https://github.com/chronotope/chrono/pull/1654](https://redirect.github.com/chronotope/chrono/pull/1654) - Update LICENSE.txt by [@​maximevtush](https://redirect.github.com/maximevtush) in [https://github.com/chronotope/chrono/pull/1656](https://redirect.github.com/chronotope/chrono/pull/1656) - docs: fix minor typo by [@​samfolo](https://redirect.github.com/samfolo) in [https://github.com/chronotope/chrono/pull/1659](https://redirect.github.com/chronotope/chrono/pull/1659) - Use NaiveDateTime for internal tz_info methods. by [@​AVee](https://redirect.github.com/AVee) in [https://github.com/chronotope/chrono/pull/1658](https://redirect.github.com/chronotope/chrono/pull/1658) - Upgrade to windows-bindgen 0.60 by [@​djc](https://redirect.github.com/djc) in [https://github.com/chronotope/chrono/pull/1665](https://redirect.github.com/chronotope/chrono/pull/1665) - Add quarter (%q) date string specifier by [@​drinkcat](https://redirect.github.com/drinkcat) in [https://github.com/chronotope/chrono/pull/1666](https://redirect.github.com/chronotope/chrono/pull/1666) </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:eyJjcmVhdGVkSW5WZXIiOiIzOS4xODUuNCIsInVwZGF0ZWRJblZlciI6IjM5LjE4NS40IiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119--> Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
renovate[bot] and renovate[bot] created
73668c2
Update Rust crate async-compression to v0.4.20 (#26154)
This PR contains the following updates: | Package | Type | Update | Change | |---|---|---|---| | [async-compression](https://redirect.github.com/Nullus157/async-compression) | workspace.dependencies | patch | `0.4.18` -> `0.4.20` | --- ### Release Notes <details> <summary>Nullus157/async-compression (async-compression)</summary> ### [`v0.4.20`](https://redirect.github.com/Nullus157/async-compression/blob/HEAD/CHANGELOG.md#0420---2025-02-28) [Compare Source](https://redirect.github.com/Nullus157/async-compression/compare/v0.4.19...v0.4.20) ##### Added - Add support for `wasm32-wasip1-*` targets. ### [`v0.4.19`](https://redirect.github.com/Nullus157/async-compression/blob/HEAD/CHANGELOG.md#0419---2025-02-27) [Compare Source](https://redirect.github.com/Nullus157/async-compression/compare/v0.4.18...v0.4.19) ##### Changed - Update `bzip2` dependency to `0.5`. ##### Fixed - Ensure that flush finishes before continuing. </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:eyJjcmVhdGVkSW5WZXIiOiIzOS4xODUuNCIsInVwZGF0ZWRJblZlciI6IjM5LjE4NS40IiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119--> Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
renovate[bot] and renovate[bot] created
07f555c
Update Rust crate cargo_metadata to v0.19.2 (#26165)
This PR contains the following updates: | Package | Type | Update | Change | |---|---|---|---| | [cargo_metadata](https://redirect.github.com/oli-obk/cargo_metadata) | workspace.dependencies | patch | `0.19.1` -> `0.19.2` | --- ### Release Notes <details> <summary>oli-obk/cargo_metadata (cargo_metadata)</summary> ### [`v0.19.2`](https://redirect.github.com/oli-obk/cargo_metadata/compare/0.19.1...0.19.2) [Compare Source](https://redirect.github.com/oli-obk/cargo_metadata/compare/0.19.1...0.19.2) </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. --- - [x] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- Release Notes: - N/A <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzOS4xODUuNCIsInVwZGF0ZWRJblZlciI6IjM5LjE4NS40IiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119--> Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
renovate[bot] and renovate[bot] created
b0e2b57
Update Rust crate linkme to v0.3.32 (#26191)
This PR contains the following updates: | Package | Type | Update | Change | |---|---|---|---| | [linkme](https://redirect.github.com/dtolnay/linkme) | workspace.dependencies | patch | `0.3.31` -> `0.3.32` | --- ### Release Notes <details> <summary>dtolnay/linkme (linkme)</summary> ### [`v0.3.32`](https://redirect.github.com/dtolnay/linkme/releases/tag/0.3.32) [Compare Source](https://redirect.github.com/dtolnay/linkme/compare/0.3.31...0.3.32) - Documentation improvements </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:eyJjcmVhdGVkSW5WZXIiOiIzOS4xODUuNCIsInVwZGF0ZWRJblZlciI6IjM5LjE4NS40IiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119--> Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
renovate[bot] and renovate[bot] created
d404d79
Update Rust crate blake3 to v1.6.1 (#26159)
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [blake3](https://redirect.github.com/BLAKE3-team/BLAKE3) |
workspace.dependencies | patch | `1.6.0` -> `1.6.1` |
---
### Release Notes
<details>
<summary>BLAKE3-team/BLAKE3 (blake3)</summary>
###
[`v1.6.1`](https://redirect.github.com/BLAKE3-team/BLAKE3/releases/tag/1.6.1)
[Compare
Source](https://redirect.github.com/BLAKE3-team/BLAKE3/compare/1.6.0...1.6.1)
version 1.6.1
Changes since 1.6.0:
- Remove `mmap` from the default features list. It was added
accidentally in v1.6.0, last week. This is technically a
backwards-incompatible change, but I would rather not tag v2.0.0 for a
build-time bugfix with a simple workaround.
</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:eyJjcmVhdGVkSW5WZXIiOiIzOS4xODUuNCIsInVwZGF0ZWRJblZlciI6IjM5LjE4NS40IiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119-->
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
renovate[bot] and renovate[bot] created
69af9be
Update Rust crate oo7 to v0.4.1 (#26192)
This PR contains the following updates: | Package | Type | Update | Change | |---|---|---|---| | [oo7](https://redirect.github.com/bilelmoussaoui/oo7) | dependencies | patch | `0.4.0` -> `0.4.1` | --- ### 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:eyJjcmVhdGVkSW5WZXIiOiIzOS4xODUuNCIsInVwZGF0ZWRJblZlciI6IjM5LjE4NS40IiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119--> Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
renovate[bot] and renovate[bot] created
2ebbcf1
Don't deleete non-extant files (#26187)
Closes #ISSUE Release Notes: - N/A *or* Added/Fixed/Improved ...
Conrad Irwin created
631cab5
Update Rust crate indoc to v2.0.6 (#26177)
This PR contains the following updates: | Package | Type | Update | Change | |---|---|---|---| | [indoc](https://redirect.github.com/dtolnay/indoc) | workspace.dependencies | patch | `2.0.5` -> `2.0.6` | --- ### Release Notes <details> <summary>dtolnay/indoc (indoc)</summary> ### [`v2.0.6`](https://redirect.github.com/dtolnay/indoc/releases/tag/2.0.6) [Compare Source](https://redirect.github.com/dtolnay/indoc/compare/2.0.5...2.0.6) - Documentation improvements </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:eyJjcmVhdGVkSW5WZXIiOiIzOS4xODUuNCIsInVwZGF0ZWRJblZlciI6IjM5LjE4NS40IiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119--> Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
renovate[bot] and renovate[bot] created
ba39a47
Update Rust crate libc to v0.2.170 (#26181)
This PR contains the following updates: | Package | Type | Update | Change | |---|---|---|---| | [libc](https://redirect.github.com/rust-lang/libc) | workspace.dependencies | patch | `0.2.169` -> `0.2.170` | --- ### Release Notes <details> <summary>rust-lang/libc (libc)</summary> ### [`v0.2.170`](https://redirect.github.com/rust-lang/libc/releases/tag/0.2.170) [Compare Source](https://redirect.github.com/rust-lang/libc/compare/0.2.169...0.2.170) ##### Added - Android: Declare `setdomainname` and `getdomainname` [#​4212](https://redirect.github.com/rust-lang/libc/pull/4212) - FreeBSD: Add `evdev` structures [#​3756](https://redirect.github.com/rust-lang/libc/pull/3756) - FreeBSD: Add the new `st_filerev` field to `stat32` ([#​4254](https://redirect.github.com/rust-lang/libc/pull/4254)) - Linux: Add ` SI_*`` and `TRAP_\*\`\` signal codes [#​4225](https://redirect.github.com/rust-lang/libc/pull/4225) - Linux: Add experimental configuration to enable 64-bit time in kernel APIs, set by `RUST_LIBC_UNSTABLE_LINUX_TIME_BITS64`. [#​4148](https://redirect.github.com/rust-lang/libc/pull/4148) - Linux: Add recent socket timestamping flags [#​4273](https://redirect.github.com/rust-lang/libc/pull/4273) - Linux: Added new CANFD_FDF flag for the flags field of canfd_frame [#​4223](https://redirect.github.com/rust-lang/libc/pull/4223) - Musl: add CLONE_NEWTIME [#​4226](https://redirect.github.com/rust-lang/libc/pull/4226) - Solarish: add the posix_spawn family of functions [#​4259](https://redirect.github.com/rust-lang/libc/pull/4259) ##### Deprecated - Linux: deprecate kernel modules syscalls [#​4228](https://redirect.github.com/rust-lang/libc/pull/4228) ##### Changed - Emscripten: Assume version is at least 3.1.42 [#​4243](https://redirect.github.com/rust-lang/libc/pull/4243) ##### Fixed - BSD: Correct the definition of `WEXITSTATUS` [#​4213](https://redirect.github.com/rust-lang/libc/pull/4213) - Hurd: Fix CMSG_DATA on 64bit systems ([#​4240](https://redirect.github.com/rust-lang/libc/pull/424)) - NetBSD: fix `getmntinfo` ([#​4265](https://redirect.github.com/rust-lang/libc/pull/4265) - VxWorks: Fix the size of `time_t` [#​426](https://redirect.github.com/rust-lang/libc/pull/426) ##### Other - Add labels to FIXMEs [#​4230](https://redirect.github.com/rust-lang/libc/pull/4230), [#​4229](https://redirect.github.com/rust-lang/libc/pull/4229), [#​4237](https://redirect.github.com/rust-lang/libc/pull/4237) - CI: Bump FreeBSD CI to 13.4 and 14.2 [#​4260](https://redirect.github.com/rust-lang/libc/pull/4260) - Copy definitions from core::ffi and centralize them [#​4256](https://redirect.github.com/rust-lang/libc/pull/4256) - Define c_char at top-level and remove per-target c_char definitions [#​4202](https://redirect.github.com/rust-lang/libc/pull/4202) - Port style.rs to syn and add tests for the style checker [#​4220](https://redirect.github.com/rust-lang/libc/pull/4220) </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:eyJjcmVhdGVkSW5WZXIiOiIzOS4xODUuNCIsInVwZGF0ZWRJblZlciI6IjM5LjE4NS40IiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119--> Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
renovate[bot] and renovate[bot] created
c34357e
Git askpass (#25953)
Supersedes #25848 Release Notes: - git: Supporting push/pull/fetch when remote requires auth --------- Co-authored-by: Mikayla Maki <mikayla.c.maki@gmail.com>
Conrad Irwin and Mikayla Maki created
6fdb666
Update Rust crate inventory to v0.3.20 (#26180)
This PR contains the following updates: | Package | Type | Update | Change | |---|---|---|---| | [inventory](https://redirect.github.com/dtolnay/inventory) | workspace.dependencies | patch | `0.3.19` -> `0.3.20` | --- ### Release Notes <details> <summary>dtolnay/inventory (inventory)</summary> ### [`v0.3.20`](https://redirect.github.com/dtolnay/inventory/releases/tag/0.3.20) [Compare Source](https://redirect.github.com/dtolnay/inventory/compare/0.3.19...0.3.20) - Documentation improvements </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:eyJjcmVhdGVkSW5WZXIiOiIzOS4xODUuNCIsInVwZGF0ZWRJblZlciI6IjM5LjE4NS40IiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119--> Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
renovate[bot] and renovate[bot] created
7a9e0b3
Improve schema_generator CLI (#25898)
Release Notes: - N/A
Peter Tripp created
d44ba92
Update Rust crate globset to v0.4.16 (#26176)
This PR contains the following updates: | Package | Type | Update | Change | |---|---|---|---| | [globset](https://redirect.github.com/BurntSushi/ripgrep/tree/master/crates/globset) ([source](https://redirect.github.com/BurntSushi/ripgrep/tree/HEAD/crates/globset)) | workspace.dependencies | patch | `0.4.15` -> `0.4.16` | --- ### 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:eyJjcmVhdGVkSW5WZXIiOiIzOS4xODUuNCIsInVwZGF0ZWRJblZlciI6IjM5LjE4NS40IiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119--> Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
renovate[bot] and renovate[bot] created
ca4d8fc
Update Rust crate bytes to v1.10.1 (#26164)
This PR contains the following updates: | Package | Type | Update | Change | |---|---|---|---| | [bytes](https://redirect.github.com/tokio-rs/bytes) | workspace.dependencies | patch | `1.10.0` -> `1.10.1` | --- ### Release Notes <details> <summary>tokio-rs/bytes (bytes)</summary> ### [`v1.10.1`](https://redirect.github.com/tokio-rs/bytes/blob/HEAD/CHANGELOG.md#1101-March-5th-2025) [Compare Source](https://redirect.github.com/tokio-rs/bytes/compare/v1.10.0...v1.10.1) ##### Fixed - Fix memory leak when using `to_vec` with `Bytes::from_owner` ([#​773](https://redirect.github.com/tokio-rs/bytes/issues/773)) </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:eyJjcmVhdGVkSW5WZXIiOiIzOS4xODUuNCIsInVwZGF0ZWRJblZlciI6IjM5LjE4NS40IiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119--> Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
renovate[bot] and renovate[bot] created
352882a
docs: Improve edit prediction `tab` conflict section (#25493)
To be merged when https://github.com/zed-industries/zed/pull/25491 is released Release Notes: - N/A Co-authored-by: Danilo Leal <daniloleal09@gmail.com>
Agus Zubiaga and Danilo Leal created
c5c4a62
ci: Upload remote server assets to workflow run as well (#26153)
Closes #ISSUE Release Notes: - N/A
Cole Miller created
6327a5d
docs: Improve documentation of ensure final new line on save (#25960)
The function ensure_final_newline in buffer.rs has this explanation: Ensures that the buffer ends with a single newline character, no other whitespace. The documentation wasn't explaining well that we actually remove any lines containing only whitespace and keep only 1 line at the end of a buffer. Release Notes: - N/A --------- Co-authored-by: Peter Tripp <peter@zed.dev> Co-authored-by: Danilo Leal <danilo@zed.dev>
Devzeth , Peter Tripp , and Danilo Leal created
57438d3
docs: Add documentation for `lsp_highlight_debounce` (#25974)
Adds documentation for `lsp_highlight_debounce`. Release Notes: - N/A
Devzeth created
5c81dd7
git: Fix git commit font fallbacks (#26184)
Closes #ISSUE Release Notes: - Fixed git commit font_fallbacks
0x2CA created
aec4d5c
Fix panic in commit editor selections syncing (#26186)
Closes #26183 Release Notes: - Git Beta: Fixed a panic when selecting text in one of the commit message editors
Cole Miller created
4c0750b
ci: Less Windows CI for PRs (#26155)
Split Windows GHA CI job into `windows_clippy` and `windows_tests` (`cargo test` and `cargo build`). `windows_clippy` will continue to run on every PR commit, but `windows_tests` will only be run on main. Tag a PR `windows` if you would like to run windows tests. Added a call to the Azure metadata service to detect the Azure hardware used by the GitHub hosted Windows runners. This is temporary and I'll remove once I've gathered some data (adds 5-15secs to Windows CI times) Release Notes: - N/A --------- Co-authored-by: Mikayla Maki <mikayla@zed.dev>
Peter Tripp and Mikayla Maki created
22b1a02
vim: Implement `<count>%` motion (#25839)
Closes https://github.com/zed-industries/zed/discussions/25665
> Currently Zed is missing quite an useful Vim motion: <count>% (go to
{count} percentage in the file).
Description:
{count}% - Go to {count} percentage in the file, on the first non-blank
in the line linewise. To compute the new line number this formula is
used: ({count} * number-of-lines + 99) / 100 .
> [Link](https://neovim.io/doc/user/motion.html#N%25).
Release Notes:
- vim: Added `<count>%` motion
---------
Co-authored-by: Conrad Irwin <conrad@zed.dev>
brian tan and Conrad Irwin created
314ad5d
Clear pending staged/unstaged diff hunks hunks when writing to the git index fails (#26173)
Release Notes: - Git Beta: Fixed a bug where discarding a hunk in the project diff view performed two concurrent saves of the buffer. - Git Beta: Fixed an issue where diff hunks appeared in the wrong state after failing to write to the git index.
Max Brunsfeld created
d3c6865
Improve cmd-click in terminal to find more paths (#26174)
Closes https://github.com/zed-industries/zed/issues/25701 Reworks the way cmd-click is handled: * first, all worktree entries are checked for existence This allows more fine-grained lookup of entries that are in the worktree, but their path in the terminal is not "full": in case neither `cwd` no worktree's root + that temrinal paths form a valid path (https://github.com/zed-industries/zed/issues/25701) The worktrees are sorted by "the most close to cwd first" so such files are attempted to resolved in the most specific worktree. This also fixes no cmd-click working in the remote ssh. * second, only if the client is local, do the FS checks to find non-indexed files Release Notes: - Improved cmd-click in terminal to find more paths
Kirill Bulatov created
43339c6
assistant2: Improve clarity of loading state (#26178)
Follow up to https://github.com/zed-industries/zed/pull/23299. Having the loading state on the button makes sense, but it's also too subtle. If you're waiting on an LLM response that takes a while, like a "thinking state", not having anything more clearly visible communicating that the model is still in-progress can make you think something is wrong. <img src="https://github.com/user-attachments/assets/da64516e-5540-4294-97a2-e4542ce704f3" width="700px" /> Release Notes: - N/A
Danilo Leal created
e505d6b
Git uncommit warning (#25977)
Adds a prompt when clicking the uncommit button when the current commit is already present on a remote branch:  Release Notes: - N/A --------- Co-authored-by: Conrad <conrad@zed.dev>
Julia Ryan and Conrad created
0200dda
Disable uncommit button for parentless commits (#25983)
Closes #25976 There's a couple states that this covers: - upon `git init`, no footer is shown at all - after 1 commit (or when on any parentless commit), the uncommit button is ~disabled~ hidden - otherwise commit button is shown Also updated the button with "meta" tooltip showing human readable description and git command. Release Notes: - N/A --------- Co-authored-by: Nate Butler <iamnbutler@gmail.com>
Julia Ryan and Nate Butler created
4db9ab1
elixir: Extract to zed-extensions/elixir repository (#26167)
This PR extracts the Elixir extension to the [zed-extensions/elixir](https://github.com/zed-extensions/elixir) repository. Release Notes: - N/A
Marshall Bowers created
5daadc0
git: Add CHERRY_PICK_HEAD to the list of merge heads (#26145)
Attempt to fix an issue where conflicts from a cherry-pick don't get cleared out of the git panel after being resolved. Release Notes: - Git Beta: Fixed resolution of conflicts from cherry-picks not being reflected in the git panel
Cole Miller created
431727f
csharp: Extract to zed-extensions/csharp repository (#26166)
This PR extracts the C# extension to the [zed-extensions/csharp](https://github.com/zed-extensions/csharp) repository. Release Notes: - N/A
Marshall Bowers created
cee98f8
git_ui: Fix typo in comment (#26162)
This PR fixes a typo in a comment. Release Notes: - N/A
Marshall Bowers created
e99d68a
git_ui: Scaffold out support for generating commit messages with an LLM (#26161)
This PR adds the rough structure needed to support generating commit messages using an LLM. This functionality is not yet surfaced to the user. This is the current state, if you tweak the source to show the button: https://github.com/user-attachments/assets/66d1fbc4-09f3-4277-84f4-e9c9ebab274c Release Notes: - N/A
Marshall Bowers created
6a3e804
Update Rust crate anyhow to v1.0.97 (#26152)
This PR contains the following updates: | Package | Type | Update | Change | |---|---|---|---| | [anyhow](https://redirect.github.com/dtolnay/anyhow) | workspace.dependencies | patch | `1.0.96` -> `1.0.97` | --- ### Release Notes <details> <summary>dtolnay/anyhow (anyhow)</summary> ### [`v1.0.97`](https://redirect.github.com/dtolnay/anyhow/releases/tag/1.0.97) [Compare Source](https://redirect.github.com/dtolnay/anyhow/compare/1.0.96...1.0.97) - Documentation improvements </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:eyJjcmVhdGVkSW5WZXIiOiIzOS4xODUuNCIsInVwZGF0ZWRJblZlciI6IjM5LjE4NS40IiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119--> Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
renovate[bot] and renovate[bot] created
c2375a4
Update Rust crate async-trait to v0.1.87 (#26158)
This PR contains the following updates: | Package | Type | Update | Change | |---|---|---|---| | [async-trait](https://redirect.github.com/dtolnay/async-trait) | workspace.dependencies | patch | `0.1.86` -> `0.1.87` | --- ### Release Notes <details> <summary>dtolnay/async-trait (async-trait)</summary> ### [`v0.1.87`](https://redirect.github.com/dtolnay/async-trait/releases/tag/0.1.87) [Compare Source](https://redirect.github.com/dtolnay/async-trait/compare/0.1.86...0.1.87) - Documentation improvements </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:eyJjcmVhdGVkSW5WZXIiOiIzOS4xODUuNCIsInVwZGF0ZWRJblZlciI6IjM5LjE4NS40IiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119--> Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
renovate[bot] and renovate[bot] created
9d54e63
Fix git branches in non-active repository (#26148)
Release Notes: - Git Beta: Fixed a bug where the branch selector would only show for the first repository opened. --------- Co-authored-by: Conrad Irwin <conrad.irwin@gmail.com> Co-authored-by: Richard Feldman <oss@rtfeldman.com>
Mikayla Maki , Conrad Irwin , and Richard Feldman created
2a919ad
git: Make repo selector wider (#26149)
β¦m_item() Closes #ISSUE Release Notes: - git: Fixed repository selector being too narrow
Conrad Irwin created
f13b2fd
Fix left clicking the close button in the switcher (#25979)
The close button on each tab previously only worked when you right clicked it, presumably because on macos people were using `ctrl+tab` to open the picker, and clicking with `ctrl` held registers as a right click. Now it should work with either mouse button. Release Notes: - N/A Co-authored-by: Conrad <conrad@zed.dev>
Julia Ryan and Conrad created
7c39153
assistant_tools: Add `list-worktrees` and `read-file` tools (#26147)
This PR adds two new tools to Assistant 2: - `list-worktrees` - Lists the worktrees in a project - `read-file` - Reads a file at the given path in the project I don't see `list-worktrees` sticking around long-term, as when we have tools for listing files those will include the worktree IDs along with the path, but making this tool available allows the model to utilize `read-file` when it otherwise wouldn't be able to. Release Notes: - N/A
Marshall Bowers created
d0c2bef
anthropic: Use an empty object if no tool input is provided (#26144)
This PR changes the default value when no input is provided with a tool
use from `null` to `{}`.
This fixes an issue I was seeing where tools that didn't accept input
were not being called correctly.
Release Notes:
- N/A
Marshall Bowers created
87b3fef
Fix panic when expanding a deletion hunk with blame open (#26130)
Closes #26118 Release Notes: - Fixed a panic when expanding diff hunks while git blame is open
Cole Miller created