57a45d8
Add a keybinding to the Go to Line button (#21350)
Click to expand commit body
Release Notes: - N/A
Kirill Bulatov created
57a45d8
Add a keybinding to the Go to Line button (#21350)
Release Notes: - N/A
Kirill Bulatov created
5f29f21
linux: Fix file not opening from file explorer (#21137)
Closes #20070 Release Notes: - Fixed issue where files wouldn't open from the file explorer. - Fixed "Open a new workspace" option on the desktop entry right-click menu. Context: Zed consists of two binaries: - `zed` (CLI component, located at `crates/cli/main.rs`) - `zed-editor` (GUI component, located at `crates/zed/main.rs`) When `zed` is used in the terminal, it checks if an existing instance is running. If one is found, it sends data via a socket to open the specified file. Otherwise, it launches a new instance of `zed-editor`. For more details, see the `detect` and `boot_background` functions in `crates/cli/main.rs`. Root Cause: Install process creates directories like `.local/zed.app` and `.local/zed-preview.app`, which contain desktop entries for the corresponding release. For example, `.local/zed.app/share/applications` contains `zed.desktop`. This desktop entry includes a generic `Exec` field, which is correct by default: ```sh Comment=A high-performance, multiplayer code editor. TryExec=zed StartupNotify=true ``` The issue is in the `install.sh` script. This script copies the above desktop file to the common directory for desktop entries (.local/share/applications). During this process, it replaces the `TryExec` value from `zed` with the exact binary path to avoid relying on the shell's PATH resolution and to make it explicit. However, replacement incorrectly uses the path for `zed-editor` instead of the `zed` CLI binary. This results in not opening a file as if you use `zed-editor` directly to do this it will throw `zed is already running` error on production and open new instance on dev. Note: This PR solves it for new users. For existing users, they will either have to update `.desktop` file manually, or use `install.sh` script again. I'm not aware of zed auto-update method, if it runs `install.sh` under the hood.
tims created
4bf5939
linux: Fix Zed not visible in "Open With" list in file manager for Flatpak (#21177)
- Closes #19030 When `%U` is used in desktop entries, file managers pick this and use it: - When you right-click a file and choose "Open with..." - When you drag and drop files onto an application icon <img src="https://github.com/user-attachments/assets/ea5aa008-b81c-4f10-9302-b82332f6b174" width="200px" alt="image"> Adding it to CLI args, changes Flatpak desktop entry `Exec` from: ```diff - Exec=/usr/bin/flatpak run --branch=master --arch=x86_64 --command=zed dev.zed.ZedDev --foreground + Exec=/usr/bin/flatpak run --branch=master --arch=x86_64 --command=zed --file-forwarding dev.zed.ZedDev --foreground @@u %U @@ ``` This is Flatpak's way of doing `%U`, by adding `--file-forwarding` and wrapping arg with `@@u` and `@@`. Read more below ([source](https://docs.flatpak.org/en/latest/flatpak-command-reference.html)): > --file-forwarding > > If this option is specified, the remaining arguments are scanned, and all arguments that are enclosed between a pair of '@@' arguments are interpreted as file paths, exported in the document store, and passed to the command in the form of the resulting document path. Arguments between "@@u" and "@@" are considered URIs, and any "file:" URIs are exported. The exports are non-persistent and with read and write permissions for the application. Release Notes: - Fixed Zed not visible in the "Open with" list in the file manager for Flatpak.
tims created
aea6fa0
Remove project panel trash action for remote projects (#21300)
Closes #20845 I'm uncertain about my placement for the logic to remove actions from the command palette list. If anyone has insights or alternative approaches, I'm open to changing the code. Release Notes: - Removed project panel `Trash` action for remote projects. --------- Co-authored-by: Finn Evers <dev@bahn.sh>
moshyfawn and Finn Evers created
4137d1a
Make project search landing page scrollable if too small (#21338)
Address https://github.com/zed-industries/zed/issues/21317#issuecomment-2508011556 https://github.com/user-attachments/assets/089844fc-a485-44a6-8e8b-d294f28e9ea2 Release Notes: - N/A
Danilo Leal created
1903a29
Expose "Column Git Blame" in the editor controls menu (#21336)
Closes https://github.com/zed-industries/zed/issues/10196 I think having this action exposed in the editor controls menu, close to the inline Git Blame option, makes more sense than a more prominent item somewhere else in the app. Maybe having it there will increase its discoverability. I myself didn't know this until a few weeks ago! Next steps would be ensuring the menu exposes its keybindings. (Quick note about the menu item name: I think maybe "_Git Blame Column_" would make more sense and feel grammatically more correct, but then we would have two Git Blame-related options, one with "Git Blame" at the start (Inline...) and another with "Git Blame" at the end (... Column). I guess one had to be sacrificed for the sake of consistency π .) <img width="750" alt="Screenshot 2024-11-29 at 12 01 33" src="https://github.com/user-attachments/assets/2f3324ec-a2f0-4303-9582-714d0ee6bd31"> Release Notes: - N/A
Danilo Leal created
69c761f
Adjust project search landing page layout (#21332)
Closes https://github.com/zed-industries/zed/issues/21317 https://github.com/user-attachments/assets/a4970c08-9715-4c90-ad48-8f6e80c6fcd0 Release Notes: - N/A
Danilo Leal created
0306bdc
Use a single action for toggling the language (#21331)
Follow-up of https://github.com/zed-industries/zed/pull/21299 Release Notes: - N/A
Kirill Bulatov created
de55bd8
Status bar: Reduce right tools lateral margin (#21329)
Closes #21316 | Before | After | |--------|-------| | | | Changes: changed `Base08` to `Base04` in `render_right_tools` Release Notes: - N/A
yoleuh created
a593a04
Update the lockfile after a recent dependency update (#21328)
Follow-up of https://github.com/zed-industries/zed/pull/21288 Release Notes: - N/A
Kirill Bulatov created
74f265e
Update to embed-resource 3.0 (fixes build below windows \?\ path) (#21288)
Accd'g to https://github.com/zed-industries/zed/pull/9009#issuecomment-1983599232 the manifest is required Followup for https://github.com/nabijaczleweli/rust-embed-resource/issues/71 Release Notes: - N/A
Π½Π°Π± created
f9d5de8
Disable editor autoscroll on mouse clicks (#20287)
Closes #18148 Release Notes: - Stop scrolling when clicking to the edges of the visible text area. Use `autoscroll_on_clicks` to configure this behavior. https://github.com/user-attachments/assets/3afd5cbb-5957-4e39-94c6-cd2e927038fd --------- Co-authored-by: Kirill Bulatov <mail4score@gmail.com>
Haru Kim and Kirill Bulatov created
eadb107
Allow `workspace::ActivatePaneInDirection` to navigate out of the terminal panel (#21313)
Enhancement for #21238 Release Notes: - N/A
Haru Kim created
94faf9d
nix: Return to building with crane (#21292)
This removes .envrc, putting it into gitignore as well as building with crane, as it does not require an up to date hash for a FOD. Release Notes: - N/A cc @mrnugget @jaredramirez
Stanislav Alekseev created
73f546e
Force `ashpd` crate to not use `tokio` (#21315)
https://github.com/zed-industries/zed/issues/21304 Fixes a regression after https://github.com/zed-industries/zed/pull/20939 Release Notes: - N/A
Kirill Bulatov created
eb2c0b3
Fine-tune status bar left-side spacing (#21306)
Closes https://github.com/zed-industries/zed/issues/21291 This PR also adds a small divider separating the panel-opening controls from the other items that appear on the left side of the status bar. The spacing was a bit bigger before because all three items on the left open panels, whereas each other item does different things (e.g., open the diagnostics tab, update the app, display language server status, etc.). Therefore, they needed to be separated somehow to communicate the difference in behavior. Hopefully, now, the border will help sort of figuring this out. | With error | Normal state | |--------|--------| | <img width="1179" alt="Screenshot 2024-11-28 at 18 52 58" src="https://github.com/user-attachments/assets/bf4bad19-5588-481a-9d08-91b2227e44e6"> | <img width="1234" alt="Screenshot 2024-11-28 at 18 53 03" src="https://github.com/user-attachments/assets/4443a16a-9982-44ce-9005-64d4df46f4f0"> | Release Notes: - N/A
Danilo Leal created
3458687
Add keybinding to the language selector tooltip (#21299)
Just making sure sure we're always making keyboard navigation discoverable. <img width="700" alt="Screenshot 2024-11-28 at 16 05 40" src="https://github.com/user-attachments/assets/bd7611f0-190c-4e3b-ad69-9552060e37ea"> Release Notes: - N/A
Danilo Leal created
e765891
Improve the "go to line" modal (#21301)
Just a small, mostly visual refinement to this component. <img width="700" alt="Screenshot 2024-11-28 at 16 30 27" src="https://github.com/user-attachments/assets/d5bbed63-202c-4cd3-b4b0-b7ed23466309"> Release Notes: - N/A
Danilo Leal created
ae85ecb
Make fetch slash command visible in the command selector (#21302)
The `/fetch` command is naturally already accessible via the completion menu when you type / in the assistant panel, but it wasn't on the "Add Context" command selector. I think it should! It's a super nice/powerful one, and I've seen folks not knowing it existed. Side-note: maybe, in the near future, it'd be best to rename it to "`/web`, as that's an easier name to parse and assume what it does. <img width="700" alt="Screenshot 2024-11-28 at 16 52 07" src="https://github.com/user-attachments/assets/37134e1c-c788-48ca-81ae-d7416e8c8706"> Release Notes: - N/A
Danilo Leal created
0acd98a
Do not show cursor position for empty files (#21295)
Closes https://github.com/zed-industries/zed/issues/21289 Fixes most of the issues: does not display cursor position in empty multi buffers and on non-full editors. Does not fix the startup issue, as it's caused by the AssistantPanel's `ContextEditor` acting as an `Editor`, so whenever default prompts are added, those are registered as added editors, and Zed shows some line numbers for them. We cannot replace `item.act_as::<Editor>(cx)` with `item.downcast::<Editor>()` as then multi bufers' navigation will fall off (arguably, those line numbers do not make that much sense too, but still seem useful). This will will fix itself in the future, when assistant panel gets reworked into readonly view by default, as `assistant2` crate already shows (there's no `act_as` impl there and nothing cause issue). Since the remaining issue is minor and will go away on any focus change, and future changes will alter this, closing the original issue. Release Notes: - Improved cursor position display
Kirill Bulatov created
4a96db0
gpui: Implement hover for Windows (#20894)
Matin Aniss created
301a890
Add consistency between buffer and project search design (#20754)
Follow up to https://github.com/zed-industries/zed/pull/20242 This PR adds the `SearchInputWidth` util, which sets a threshold container size in which an input's width stops filling the available space. In practice, this is in place to make the buffer and project search input fill the whole container width up to a certain point (where this point is really an arbitrary number that can be fine-tuned per taste). For folks using huge monitors, the UX isn't excellent if you have a gigantic input. In the future, upon further review, maybe it makes more sense to reorganize this code better, baking it in as a default behavior of the input component. Or even exposing this is a function many other components could use, given we may want to have dynamic width in different scenarios. For now, I just wanted to make the design of these search UIs better and more consistent. | Buffer Search | Project Search | |--------|--------| | <img width="1042" alt="Screenshot 2024-11-15 at 20 39 21" src="https://github.com/user-attachments/assets/f9cbf0b3-8c58-46d1-8380-e89cd9c89699"> | <img width="1042" alt="Screenshot 2024-11-15 at 20 39 24" src="https://github.com/user-attachments/assets/ed244a51-ea55-4fe3-a719-a3d9cd119aa9"> | Release Notes: - N/A
Danilo Leal created
f309445
Do less resolves when showing the completion menu (#21286)
Closes https://github.com/zed-industries/zed/issues/21205 Zed does completion resolve on every menu item selection and when applying the edit, so resolving all completion menu list is excessive indeed. In addition to that, removes the documentation-centric approach of menu resolves, as we're actually resolving these for more than that, e.g. additionalTextEdits and have to do that always, even if we do not show the documentation. Potentially, we can omit the second resolve too, but that seems relatively dangerous, and many servers remove the `data` after the first resolve, so a 2nd one is not that harmful given that we used to do much more Release Notes: - Reduced the amount of `completionItem/resolve` calls done in the completion menu
Kirill Bulatov created
6cba467
project-panel: Fix playback GIF images (#21274)
Gowtham K created
cacec06
search: Treat non-word char as whole-char when searching (#19152)
when search somethings like `clone(`, with search options `match case sensitively` and `match whole words` in zed code base, only `clone(cx)` hit match, `clone()` will not hit math. Release Notes: - Improved buffer search for queries ending with non-letter characters
CharlesChen0823 created
3ac119a
Fix hovered links underline not showing when using cmd_or_ctrl for multi_cursor_modifier (#20949)
I use `cmd_or_ctrl` for `multi_cursor_modifier`, but noticed that if I hovered a code reference while holding alt, it wouldn't show the underline. Instead, it would only show when pressing cmd. Looking at the code, it seems like this was just a small oversight on always checking for `modifiers.secondary`, instead of reading from the `multi_cursor_modifier` setting to determine which button was invoking link handling. --- Release Notes: - Fixed underline when hovering a code link not showing when `multi_cursor_modifier` is `cmd_or_ctrl`
Zach Bruggeman created
b12a508
python: Fix highlighting for forward references (#20766)
[PEP484](https://peps.python.org/pep-0484/) defines "Forward references" for undefined types. This PR treats such annotations as types rather than strings. Release Notes: - Added Python syntax highlighting for forward references.
Jaagup Averin created
1739de5
Update Rust crate proc-macro2 to v1.0.92 (#20967)
This PR contains the following updates: | Package | Type | Update | Change | |---|---|---|---| | [proc-macro2](https://redirect.github.com/dtolnay/proc-macro2) | dependencies | patch | `1.0.89` -> `1.0.92` | --- ### Release Notes <details> <summary>dtolnay/proc-macro2 (proc-macro2)</summary> ### [`v1.0.92`](https://redirect.github.com/dtolnay/proc-macro2/releases/tag/1.0.92) [Compare Source](https://redirect.github.com/dtolnay/proc-macro2/compare/1.0.91...1.0.92) - Improve compiler/fallback mismatch panic message ([#​487](https://redirect.github.com/dtolnay/proc-macro2/issues/487)) ### [`v1.0.91`](https://redirect.github.com/dtolnay/proc-macro2/releases/tag/1.0.91) [Compare Source](https://redirect.github.com/dtolnay/proc-macro2/compare/1.0.90...1.0.91) - Fix panic *"compiler/fallback mismatch 949"* when using TokenStream::from_str from inside a proc macro to parse a string containing doc comment ([#​484](https://redirect.github.com/dtolnay/proc-macro2/issues/484)) ### [`v1.0.90`](https://redirect.github.com/dtolnay/proc-macro2/releases/tag/1.0.90) [Compare Source](https://redirect.github.com/dtolnay/proc-macro2/compare/1.0.89...1.0.90) - Improve error recovery in TokenStream's and Literal's FromStr implementations to work around [https://github.com/rust-lang/rust/issues/58736](https://redirect.github.com/rust-lang/rust/issues/58736) such that rustc does not poison compilation on codepaths that should be recoverable errors ([#​477](https://redirect.github.com/dtolnay/proc-macro2/issues/477), [#​478](https://redirect.github.com/dtolnay/proc-macro2/issues/478), [#​479](https://redirect.github.com/dtolnay/proc-macro2/issues/479), [#​480](https://redirect.github.com/dtolnay/proc-macro2/issues/480), [#​481](https://redirect.github.com/dtolnay/proc-macro2/issues/481), [#​482](https://redirect.github.com/dtolnay/proc-macro2/issues/482)) </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:eyJjcmVhdGVkSW5WZXIiOiIzOS4xOS4wIiwidXBkYXRlZEluVmVyIjoiMzkuMTkuMCIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOltdfQ==--> Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
renovate[bot] and renovate[bot] created
4aa47a9
Update Rust crate rodio to 0.20.0 (#20955)
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [rodio](https://redirect.github.com/RustAudio/rodio) | dependencies |
minor | `0.19.0` -> `0.20.0` |
---
### Release Notes
<details>
<summary>RustAudio/rodio (rodio)</summary>
###
[`v0.20.1`](https://redirect.github.com/RustAudio/rodio/blob/HEAD/CHANGELOG.md#Version-0201-2024-11-08)
[Compare
Source](https://redirect.github.com/RustAudio/rodio/compare/v0.20.0...v0.20.1)
##### Fixed
- Builds without the `symphonia` feature did not compile
###
[`v0.20.0`](https://redirect.github.com/RustAudio/rodio/blob/HEAD/CHANGELOG.md#Version-0200-2024-11-08)
[Compare
Source](https://redirect.github.com/RustAudio/rodio/compare/v0.19.0...v0.20.0)
##### Added
- Support for *ALAC/AIFF*
- Add `automatic_gain_control` source for dynamic audio level
adjustment.
- New test signal generator sources:
- `SignalGenerator` source generates a sine, triangle, square wave or
sawtooth
of a given frequency and sample rate.
- `Chirp` source generates a sine wave with a linearly-increasing
frequency over a given frequency range and duration.
- `white` and `pink` generate white or pink noise, respectively. These
sources depend on the `rand` crate and are guarded with the "noise"
feature.
- Documentation for the "noise" feature has been added to `lib.rs`.
- New Fade and Crossfade sources:
- `fade_out` fades an input out using a linear gain fade.
- `linear_gain_ramp` applies a linear gain change to a sound over a
given duration. `fade_out` is implemented as a `linear_gain_ramp` and
`fade_in` has been refactored to use the `linear_gain_ramp`
implementation.
##### Fixed
- `Sink.try_seek` now updates `controls.position` before returning.
Calls to `Sink.get_pos`
done immediately after a seek will now return the correct value.
##### Changed
- `SamplesBuffer` is now `Clone`
</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:eyJjcmVhdGVkSW5WZXIiOiIzOS4xOS4wIiwidXBkYXRlZEluVmVyIjoiMzkuMTkuMCIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOltdfQ==-->
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
renovate[bot] and renovate[bot] created
fe30a03
Update Rust crate ipc-channel to 0.19 (#20951)
This PR contains the following updates: | Package | Type | Update | Change | |---|---|---|---| | [ipc-channel](https://redirect.github.com/servo/ipc-channel) | dependencies | minor | `0.18` -> `0.19` | --- ### 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:eyJjcmVhdGVkSW5WZXIiOiIzOS4xOS4wIiwidXBkYXRlZEluVmVyIjoiMzkuMTkuMCIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOltdfQ==--> Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
renovate[bot] and renovate[bot] created
38900c2
Update Rust crate bytemuck to v1.20.0 (#20947)
This PR contains the following updates: | Package | Type | Update | Change | |---|---|---|---| | [bytemuck](https://redirect.github.com/Lokathor/bytemuck) | dependencies | minor | `1.19.0` -> `1.20.0` | --- ### Release Notes <details> <summary>Lokathor/bytemuck (bytemuck)</summary> ### [`v1.20.0`](https://redirect.github.com/Lokathor/bytemuck/compare/v1.19.0...v1.20.0) [Compare Source](https://redirect.github.com/Lokathor/bytemuck/compare/v1.19.0...v1.20.0) </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:eyJjcmVhdGVkSW5WZXIiOiIzOS4xOS4wIiwidXBkYXRlZEluVmVyIjoiMzkuMTkuMCIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOltdfQ==--> Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
renovate[bot] and renovate[bot] created
6927512
Update Rust crate ashpd to 0.10.0 (#20939)
This PR contains the following updates: | Package | Type | Update | Change | |---|---|---|---| | [ashpd](https://redirect.github.com/bilelmoussaoui/ashpd) | workspace.dependencies | minor | `0.9.1` -> `0.10.0` | --- ### Release Notes <details> <summary>bilelmoussaoui/ashpd (ashpd)</summary> ### [`v0.10.2`](https://redirect.github.com/bilelmoussaoui/ashpd/releases/tag/0.10.2) [Compare Source](https://redirect.github.com/bilelmoussaoui/ashpd/compare/0.10.1...0.10.2) - Add `backend` feature to docs.rs ### [`v0.10.1`](https://redirect.github.com/bilelmoussaoui/ashpd/releases/tag/0.10.1) [Compare Source](https://redirect.github.com/bilelmoussaoui/ashpd/compare/0.10.0...0.10.1) #### What's Changed - desktop/activation-token: Add helper for retriving the token from a `gtk::Widget` or a `WlSurface` - desktop/secret: Close the socket after done reading - desktop/input-capture: Fix barrier-id type - desktop: Use a Pid alias all over the codebase - desktop/notification: Support v2 of the interface - Introduce backend implementation support, allowing to write a portal implementation in pure Rust. Currently, we don't support Session based portals. The backend feature is considered experimental as we might possibly introduce API breaking changes in the future but it should be good enough for getting started. Examples of how a portal can be implemented can be found in [backend-demo](https://redirect.github.com/bilelmoussaoui/ashpd/tree/master/backend-demo) **Note**: The 0.10.0 release has been yanked from crates.io as it contained a build error when the `glib` feature is enabled. ### [`v0.10.0`](https://redirect.github.com/bilelmoussaoui/ashpd/compare/0.9.2...0.10.0) [Compare Source](https://redirect.github.com/bilelmoussaoui/ashpd/compare/0.9.2...0.10.0) </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:eyJjcmVhdGVkSW5WZXIiOiIzOS4xOS4wIiwidXBkYXRlZEluVmVyIjoiMzkuMTkuMCIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOltdfQ==--> Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
renovate[bot] and renovate[bot] created
4342a93
Update Rust crate tree-sitter-c to v0.23.2 (#20938)
This PR contains the following updates: | Package | Type | Update | Change | |---|---|---|---| | [tree-sitter-c](https://redirect.github.com/tree-sitter/tree-sitter-c) | workspace.dependencies | patch | `0.23.1` -> `0.23.2` | --- ### Release Notes <details> <summary>tree-sitter/tree-sitter-c (tree-sitter-c)</summary> ### [`v0.23.2`](https://redirect.github.com/tree-sitter/tree-sitter-c/releases/tag/v0.23.2) [Compare Source](https://redirect.github.com/tree-sitter/tree-sitter-c/compare/v0.23.1...v0.23.2) **NOTE:** Download `tree-sitter-c.tar.xz` for the *complete* source code. </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:eyJjcmVhdGVkSW5WZXIiOiIzOS4xOS4wIiwidXBkYXRlZEluVmVyIjoiMzkuMTkuMCIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOltdfQ==--> Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
renovate[bot] and renovate[bot] created
28640ac
Update astral-sh/setup-uv digest to caf0cab (#20927)
This PR contains the following updates: | Package | Type | Update | Change | |---|---|---|---| | [astral-sh/setup-uv](https://redirect.github.com/astral-sh/setup-uv) | action | digest | `2e657c1` -> `caf0cab` | --- ### 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:eyJjcmVhdGVkSW5WZXIiOiIzOS4xOS4wIiwidXBkYXRlZEluVmVyIjoiMzkuMTkuMCIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOltdfQ==--> Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
renovate[bot] and renovate[bot] created
c2c968f
Enable clangd's dot-to-arrow feature (#21142)
Closes #20815  Release Notes: - Enabled clangd's dot-to-arrow feature
feeiyu created
a4584c9
Add an uninstall script (#21213)
Closes #14306 This looks at what #16660 did and install.sh script as a base for the uninstall.sh script. The script is bundled with the cli by default unless the cli/no-bundled-uninstall feature is selected which is done, so package managers could build zed without bundling a useless feature and increasing binary size. I don't have capabilities to test this right now, so any help with that is appreciated. Release Notes: - Added an uninstall script for Zed installations done via zed.dev. To uninstall zed, run `zed --uninstall` via the CLI binary.
Stanislav Alekseev created
e9e2607
gpui: Fix default colors blue, red, green to match in CSS default colors (#20851)
Release Notes: - N/A --- This change to let the default colors to 100% match with CSS default colors. And update the methods to as `const`. Here is an example: <img width="338" alt="image" src="https://github.com/user-attachments/assets/dd17b46a-3ad4-4122-8dca-e800644c75b0"> https://codepen.io/huacnlee/pen/ZEgNXJZ But the before version for example blue: `h: 0.6 * 360 = 216`, but we expected `240`, `240 / 360 = 0.666666666`, so the before version are lose the precision. (Here is a test tool: https://hslpicker.com/#0000FF) ## After Update ```bash cargo run -p gpui --example hello_world ``` <img width="612" alt="image" src="https://github.com/user-attachments/assets/97d479d8-9c71-4be3-95e0-09af45fe47e2">
Jason Lee created
461ab24
Update nix cargo hash (#21257)
Closes https://github.com/zed-industries/zed/issues/21256 Release Notes: - N/A
Jared Ramirez created
04ff9f0
Improve runnable detection for JavaScript files (#21246)
Closes #21242   Release Notes: - Improved runnable detection for JavaScript/Typescript files.
Remco Smits created
66ba9d5
Use item context for pane tab context menu (#21254)
This allows to show proper override values for terminal tabs in Linux and Windows. Release Notes: - Fixed incorrect "close tab" keybinding shown in context menu of the terminal panel tabs on Linux and Windows
Kirill Bulatov created
e803815
Use proper context to show terminal split menu bindings (#21253)
Follow-up of https://github.com/zed-industries/zed/pull/21251 Show proper keybindings on the terminal split button: <img width="249" alt="image" src="https://github.com/user-attachments/assets/b51b183f-788a-4e8f-9fec-3ec07f084bd4"> Release Notes: - N/A
Kirill Bulatov created
34ed48e
Add a split button to terminal panes (#21251)
Follow-up of https://github.com/zed-industries/zed/pull/21238 <img width="873" alt="image" src="https://github.com/user-attachments/assets/8cf2d8ea-a1df-4a6a-95d6-5867e0ee287d"> Release Notes: - N/A
Kirill Bulatov created
0c8e555
Make Markdown images layout vertically instead of horizontally (#21247)
Release Notes: - Fixed a bug in the Markdown preview where images in the same paragraph would be rendered next to each other
Mikayla Maki created
cff9ae0
Better absolute path handling (#19727)
Closes #19866
This PR supersedes #19228, as #19228 encountered too many merge
conflicts.
After some exploration, I found that for paths with the `\\?\` prefix,
we can safely remove it and consistently use the clean paths in all
cases. Previously, in #19228, I thought we would still need the `\\?\`
prefix for IO operations to handle long paths better. However, this
turns out to be unnecessary because Rust automatically manages this for
us when calling IO-related APIs. For details, refer to Rust's internal
function
[`get_long_path`](https://github.com/rust-lang/rust/blob/017ae1b21f7be6dcdcfc95631e54bde806653a8a/library/std/src/sys/path/windows.rs#L225-L233).
Therefore, we can always store and use paths without the `\\?\` prefix.
This PR introduces a `SanitizedPath` structure, which represents a path
stripped of the `\\?\` prefix. To prevent untrimmed paths from being
mistakenly passed into `Worktree`, the type of `Worktree`βs `abs_path`
member variable has been changed to `SanitizedPath`.
Additionally, this PR reverts the changes of #15856 and #18726. After
testing, it appears that the issues those PRs addressed can be resolved
by this PR.
### Existing Issue
To keep the scope of modifications manageable, `Worktree::abs_path` has
retained its current signature as `fn abs_path(&self) -> Arc<Path>`,
rather than returning a `SanitizedPath`. Updating the method to return
`SanitizedPath`βwhich may better resolve path inconsistenciesβwould
likely introduce extensive changes similar to those in #19228.
Currently, the limitation is as follows:
```rust
let abs_path: &Arc<Path> = snapshot.abs_path();
let some_non_trimmed_path = Path::new("\\\\?\\C:\\Users\\user\\Desktop\\project");
// The caller performs some actions here:
some_non_trimmed_path.strip_prefix(abs_path); // This fails
some_non_trimmed_path.starts_with(abs_path); // This fails too
```
The final two lines will fail because `snapshot.abs_path()` returns a
clean path without the `\\?\` prefix. I have identified two relevant
instances that may face this issue:
-
[lsp_store.rs#L3578](https://github.com/zed-industries/zed/blob/0173479d18e2526c1f9c8b25ac94ec66b992a2b2/crates/project/src/lsp_store.rs#L3578)
-
[worktree.rs#L4338](https://github.com/zed-industries/zed/blob/0173479d18e2526c1f9c8b25ac94ec66b992a2b2/crates/worktree/src/worktree.rs#L4338)
Switching `Worktree::abs_path` to return `SanitizedPath` would resolve
these issues but would also lead to many code changes.
Any suggestions or feedback on this approach are very welcome.
cc @SomeoneToIgnore
Release Notes:
- N/A
εΌ ε°η½ created
d0bafce
Allow splitting the terminal panel (#21238)
Closes https://github.com/zed-industries/zed/issues/4351  Applies the same splitting mechanism, as Zed's central pane has, to the terminal panel. Similar navigation, splitting and (de)serialization capabilities are supported. Notable caveats: * zooming keeps the terminal splits' ratio, rather expanding the terminal pane * on macOs, central panel is split with `cmd-k up/down/etc.` but `cmd-k` is a "standard" terminal clearing keybinding on macOS, so terminal panel splitting is done via `ctrl-k up/down/etc.` * task terminals are "split" into regular terminals, and also not persisted (same as currently in the terminal) Seems ok for the initial version, we can revisit and polish things later. Release Notes: - Added the ability to split the terminal panel
Kirill Bulatov created
4564da2
Improve Nix package and shell (#21075)
With an addition of useFetchCargoVendor, crane becomes less necessary for our use. This reuses the package from nixpkgs as well as creating a better devshell that both work on macOS. I use Xcode's SDKROOT and DEVELOPER_DIR to point the swift in the livekit client crate to a correct sdk when using a devshell. Devshell should work without that once apple releases sources for the 15.1 SDK but for now this is an easy fix This also replaces fenix with rust-overlay because of issues with the out-of-sandbox access I've noticed fenix installed toolchains have Release Notes: - N/A
Stanislav Alekseev created
c021ee6
v0.165.x dev
Peter Tripp created
6736806
docs: Move install rustup callup to top of developing-extensions.md (#21239)
Peter Tripp created
ce6782f
Use eslint from the fork (#21233)
Part of https://github.com/zed-industries/zed/issues/21220 Microsoft had decided to switch over to a different releasing strategy, autogenerating all releases and not publishing tarballs anymore. But it was not enough, and they had also removed old tarballs, including a relatively old `2.4.4` version release's tarballs, which broke Zed downloads. See https://github.com/microsoft/vscode-eslint/issues/1954 This PR uses https://github.com/zed-industries/vscode-eslint/releases/tag/2.4.4 from Zed's fork, manually released for the same tag. This approach is merely a stub before more sustainable solution is found, and I think we need to pivot into downloading *.vsix from https://open-vsx.org/extension/dbaeumer/vscode-eslint but this is quite a change so not done right now. Release Notes: - Fixed eslint 404 downloads
Kirill Bulatov created
e865b6c
Fix cmd-shift-e (reveal in project panel) to match vscode (#21228)
Release Notes: - Fixed cmd-shift-e / ctrl-shift-e (`pane::RevealInProjectPanel` / `project_panel::ToggleFocus`) to better my VSCode behavior
Peter Tripp created