b93cee8
Use static LazyLocks for all constant regexes (#22225)
Click to expand commit body
Release Notes: - N/A
Michael Sloan created
b93cee8
Use static LazyLocks for all constant regexes (#22225)
Release Notes: - N/A
Michael Sloan created
837bbc8
astro: Bump to v0.1.2 (#22220)
Includes: - https://github.com/zed-industries/zed/pull/20206 Release Notes: - N/A
Peter Tripp created
0fe88a8
elixir: Bump to v0.1.2 (#22219)
Includes: - https://github.com/zed-industries/zed/pull/21666 - https://github.com/zed-industries/zed/pull/20206 Release Notes: - N/A
Peter Tripp created
2b4f0de
Update Rust crate async-tungstenite to v0.28.2 (#22206)
This PR contains the following updates: | Package | Type | Update | Change | |---|---|---|---| | [async-tungstenite](https://redirect.github.com/sdroege/async-tungstenite) | workspace.dependencies | patch | `0.28.1` -> `0.28.2` | --- ### Release Notes <details> <summary>sdroege/async-tungstenite (async-tungstenite)</summary> ### [`v0.28.2`](https://redirect.github.com/sdroege/async-tungstenite/blob/HEAD/CHANGELOG.md#0282---2024-12-15) [Compare Source](https://redirect.github.com/sdroege/async-tungstenite/compare/0.28.1...0.28.2) ##### Fixed - Add `alloc` feature to `futures_task` dependency to make sure `futures-task::ArcWake` is available. </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:eyJjcmVhdGVkSW5WZXIiOiIzOS43Mi41IiwidXBkYXRlZEluVmVyIjoiMzkuNzIuNSIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOltdfQ==--> Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
renovate[bot] and renovate[bot] created
4f2ab81
ci: Enable `merge_group` for workflows (#22214)
Enable the `merge_group` for CI workflows so that they work with the merge queue. Release Notes: - N/A
Marshall Bowers created
3f40d76
Enable search within diagnostics pane (#22213)
Closes #16033 Addresses one part of #4475 Release Notes: - Added support for find and replace in diagnostics. Also causes keybindings that use search to now work (such as `*` and `#` vim bindings).
Michael Sloan created
6bb21b1
Fix vim repeat (`.`) and macro playback insertions in diagnostics and assistant (#22210)
Release Notes: - Fixed vim repeat (`.`) and macro playback of insertions in diagnostics and assistant. Co-authored-by: Conrad <conrad@zed.dev>
Michael Sloan and Conrad created
f7a7866
linux: Implement Menus (#21873)
Closes #19837 This PR implements menus for Linux and Windows, inspired by JetBrains IDEs. Thanks to @notpeter for the inspiration. https://github.com/user-attachments/assets/7267fcdf-fec5-442e-a53b-281f89471095 I plan to complete this in multiple parts. While this PR delivers a fully functional menus, there are many UX improvements that can be done. So, this is part 1 of 3. **This PR**: - [x] Clicking the application menu opens the first menu popup. This also shows other available menus. - [x] While a menu is open, hovering over other menus opens them without needing a click. - [x] Up/down arrow keys works out of the box. Thanks GPUI. **Future - Part 2**: - Add keybinding support to open specific menus using `Option + first character of menu item`. - Add support for left/right arrow keys to move between menus. **Future - Part 3**: - Implement nested context menus in GPUI for submenus. (I haven't checked if this already exists). --------- Co-authored-by: Mikayla <mikayla@zed.dev>
tims and Mikayla created
298b9df
Switch to a single GPU context in Blade (#20853)
Closes #17005 Release Notes: - Improved GPU context management: share a single context with multiple surfaces. ### High Level Blade got a proper support for Surface objects in https://github.com/kvark/blade/pull/203. That was mainly motivated by Zed needing to draw multiple windows. With the Surface API, Zed is now able to have the GPU context tied to the "Platform" instead of "Window". Practically speaking, this means: - architecture more sound - faster to open/close windows - less surprises, more robust ### Concerns 1. Zed has been using a temporary workaround for the platform bug on some Intel+Nvidia machines that makes us unable to present - https://github.com/kvark/blade/pull/144 . This workaround is no longer available with the new architecture. I'm looking for ideas on how to approach this better. - we are now picking up the change in https://github.com/kvark/blade/pull/210, which allows forcing a specific Device ID. This should allow Zed users to work around the issue. We could help them to automate it, too. 2. ~~Metal-rs dependency is switched to https://github.com/kvark/metal-rs/tree/blade, since upstream isn't responsive in merging changes that are required for Blade. Hopefully, temporary.~~ - ~~we can also hack around it by just transmuting the texture references, since we know those are unchanged in the branch. That would allow Blade to use it's own version of Metal, temporarily, if switching metal-rs in the workspace is a concern.~~ - merged my metal-rs changes and updated Zed to use the upstream github reference --------- Co-authored-by: Mikayla Maki <mikayla@zed.dev> Co-authored-by: Mikayla Maki <mikayla.c.maki@gmail.com> Co-authored-by: Conrad Irwin <conrad.irwin@gmail.com>
Dzmitry Malyshau , Mikayla Maki , Mikayla Maki , and Conrad Irwin created
56d20fc
Reuse prompt editor across buffer and terminal assist (#22188)
Builds on https://github.com/zed-industries/zed/pull/22160 and extracts the rest of `PromptEditor` so it can be shared across terminal and inline assistants. This will help avoid the UI drifting as we have already observed. Note: This is mostly a mechanical refactor. I imagine some things could be factored in a better way by someone with more context, but I think this is a good start. Release Notes: - N/A --------- Co-authored-by: Richard Feldman <oss@rtfeldman.com>
Agus Zubiaga and Richard Feldman created
fc00eaa
assistant2: Reduce message editor's maximum height (#22205)
This PR reduces the message editor's maximum height to 10 lines, after which point it will scroll. Release Notes: - N/A
Marshall Bowers created
7414e91
Update actions/upload-artifact digest to 6f51ac0 (#22203)
This PR contains the following updates: | Package | Type | Update | Change | |---|---|---|---| | [actions/upload-artifact](https://redirect.github.com/actions/upload-artifact) | action | digest | `b4b15b8` -> `6f51ac0` | --- ### 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:eyJjcmVhdGVkSW5WZXIiOiIzOS43Mi41IiwidXBkYXRlZEluVmVyIjoiMzkuNzIuNSIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOltdfQ==--> Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
renovate[bot] and renovate[bot] created
b51a162
Update Rust crate tiktoken-rs to 0.6.0 (#21900)
This PR contains the following updates: | Package | Type | Update | Change | |---|---|---|---| | [tiktoken-rs](https://redirect.github.com/zurawiki/tiktoken-rs) | workspace.dependencies | minor | `0.5.9` -> `0.6.0` | --- ### Release Notes <details> <summary>zurawiki/tiktoken-rs (tiktoken-rs)</summary> ### [`v0.6.0`](https://redirect.github.com/zurawiki/tiktoken-rs/releases/tag/v0.6.0) [Compare Source](https://redirect.github.com/zurawiki/tiktoken-rs/compare/v0.5.9...v0.6.0) **Minor version release signifies a breaking change in 0.x** #### What's Changed - Add support for chatgpt-4o-latest by [@​Congyuwang](https://redirect.github.com/Congyuwang) in [https://github.com/zurawiki/tiktoken-rs/pull/85](https://redirect.github.com/zurawiki/tiktoken-rs/pull/85) - Refactor internals to make future updates to tiktoken easier to merge - Do not expose tiktoken internal modules and functions - Update dependencies #### New Contributors - [@​Congyuwang](https://redirect.github.com/Congyuwang) made their first contribution in [https://github.com/zurawiki/tiktoken-rs/pull/85](https://redirect.github.com/zurawiki/tiktoken-rs/pull/85) **Full Changelog**: https://github.com/zurawiki/tiktoken-rs/compare/v0.5.9...v0.6.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:eyJjcmVhdGVkSW5WZXIiOiIzOS41OC4xIiwidXBkYXRlZEluVmVyIjoiMzkuNTguMSIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOltdfQ==--> Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
renovate[bot] and renovate[bot] created
78dde63
Update Rust crate heed to 0.21.0 (#21892)
This PR contains the following updates: | Package | Type | Update | Change | |---|---|---|---| | [heed](https://redirect.github.com/Kerollmops/heed) | workspace.dependencies | minor | `0.20.1` -> `0.21.0` | --- ### 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:eyJjcmVhdGVkSW5WZXIiOiIzOS41OC4xIiwidXBkYXRlZEluVmVyIjoiMzkuNTguMSIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOltdfQ==--> Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
renovate[bot] and renovate[bot] created
c0b40d0
Update Rust crate cargo_toml to 0.21 (#21880)
This PR contains the following updates: | Package | Type | Update | Change | |---|---|---|---| | [cargo_toml](https://lib.rs/cargo_toml) ([source](https://gitlab.com/lib.rs/cargo_toml)) | workspace.dependencies | minor | `0.20` -> `0.21` | --- ### 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:eyJjcmVhdGVkSW5WZXIiOiIzOS41OC4xIiwidXBkYXRlZEluVmVyIjoiMzkuNTguMSIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOltdfQ==--> Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
renovate[bot] and renovate[bot] created
0acb743
Update 2428392/gh-truncate-string-action action to v1.4.1 (#22204)
This PR contains the following updates: | Package | Type | Update | Change | |---|---|---|---| | [2428392/gh-truncate-string-action](https://redirect.github.com/2428392/gh-truncate-string-action) | action | patch | `v1.4.0` -> `v1.4.1` | --- ### Release Notes <details> <summary>2428392/gh-truncate-string-action (2428392/gh-truncate-string-action)</summary> ### [`v1.4.1`](https://redirect.github.com/2428392/gh-truncate-string-action/releases/tag/v1.4.1) [Compare Source](https://redirect.github.com/2428392/gh-truncate-string-action/compare/v1.4.0...v1.4.1) #### What's Changed - update action.yml inputs to include truncationSymbol by [@​aballman](https://redirect.github.com/aballman) in [https://github.com/2428392/gh-truncate-string-action/pull/14](https://redirect.github.com/2428392/gh-truncate-string-action/pull/14) #### New Contributors - [@​aballman](https://redirect.github.com/aballman) made their first contribution in [https://github.com/2428392/gh-truncate-string-action/pull/14](https://redirect.github.com/2428392/gh-truncate-string-action/pull/14) **Full Changelog**: https://github.com/2428392/gh-truncate-string-action/compare/v1...v1.4.1 </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:eyJjcmVhdGVkSW5WZXIiOiIzOS43Mi41IiwidXBkYXRlZEluVmVyIjoiMzkuNzIuNSIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOltdfQ==--> Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
renovate[bot] and renovate[bot] created
8b2afab
assistant2: Wire up basic @-mention interaction for context (#22197)
This PR adds an initial version of using `@` in the message editor to add context to the thread. We don't yet insert any sort of reference to it in the message body itself. Release Notes: - N/A
Marshall Bowers created
b79117c
Bump Zed to v0.168.x (#22198)
Peter Tripp created
77abf13
Allow telemetry::event! with no properties (#22190)
CC @josephTLyons Release Notes: - N/A
Conrad Irwin created
433cb99
Remove main push from `bump-zed-minor-versions` script (#22170)
Motivation for this is to allow the `main` branch to be protected. This will enable use of auto-merge and merge queue. Co-authored-by: Peter Tripp <peter@zed.dev>
Michael Sloan and Peter Tripp created
670ade9
extensions_ui: Don't block scrolling on disabled extension cards (#22189)
This PR fixes an issue where disabled extension cards would block scroll events when the mouse was over them. Instead of using `.occlude`βwhich captures _all_ mouse eventsβwe use `.block_mouse_down` to just block mouse down events (to prevent clicking the buttons on the disabled card). We also set the cursor style to the default, as it was still switching to the pointer when hovered over top of one of the buttons. Release Notes: - Fixed disabled extensions blocking scroll events in the extensions list.
Marshall Bowers created
4a6f071
vim: Add support for :g/ and :v/ (#22177)
Closes #ISSUE Still TODO to make this feature good is better command history Release Notes: - vim: Add support for `:g/<pattern>/<cmd>` and `:v/<pattern>/<cmd>`
Conrad Irwin created
2ecbd97
vim: Support count with [x and ]x (#22176)
Fixes: #21577 Fixes: #17245 Release Notes: - vim: Add <count> support for [x/]x
Conrad Irwin created
a0a095c
zeta: Show deletions when inline completion is shown in menu (#22186)
If an inline completion isn't shown in a menu, we highlight text in the editor as deleted. But if it's shown in the menu, we didn't even show deleted text, which makes it hard to understand what's going on. This fixes it.  Release Notes: - N/A
Thorsten Ball created
4bfc107
Fix inconsistencies in "Transform" vs "Generate" tooltips for assistant v2 (#22160)
Also makes the inline assistant and inline terminal assistant share a bunch more code. Release Notes: - N/A --------- Co-authored-by: Agus <agus@zed.dev> Co-authored-by: Agus Zubiaga <hi@aguz.me>
Richard Feldman , Agus , and Agus Zubiaga created
6192c83
Show inline completions in menu only for supported providers (#22181)
This changes #22093 by making the change only have an effect for the supported provider: Zeta. Made the change because the UX is still experimental and I don't want to break existing workflows for Copilot/Supermaven users. Even Zeta users can opt-out of it by setting `"show_inline_completions_in_menu": false` in their settings, in case they want the old show-inline-completion-or-show-lsp-completion behavior back. Release Notes: - N/A
Thorsten Ball created
e8c9283
Fix the illegal JSON in the documentation (#22175)
Release Notes: - N/A
Hai Zhu created
2469122
Fix panic when calculating inline completion (#22180)
Possible panic here in case we can't find the excerpt in the multibuffer. I thought this could happen when the inline completion references an excerpt that disappeared from the multibuffer, but looking at the code I'm not sure anymore - we use the same multibuffer snapshot in this whole function and the `anchor_in_excerpt` method clips the anchors. Still, let's be safe here. Release Notes: - N/A
Thorsten Ball created
6898a31
Fix panic in linked editing ranges (#21905)
We were committing the cardinal sin of subtracting one from a column without clipping Closes #ISSUE Release Notes: - Fixed a panic in linked editing ranges
Conrad Irwin created
94bfb93
More telemetry events (#22171)
- **Convert more events to telemetry::event** - **And call events** Closes #ISSUE Release Notes: - N/A
Conrad Irwin created
1b83020
Update collab local development instructions (#22018)
When running the collab server locally on a new machine, I found there were some instructions missing for setting up the Postgres database. Namely, the user mentioned on the `.env.toml` is not created by default. Ref: https://github.com/zed-industries/zed/issues/8260 Release Notes: - N/A
Enrique Kessler MartΓnez created
613deb6
Remove panics from X11Window::set_title (#22173)
Release Notes: - N/A
Cole Miller created
672fc76
Fix panic in activate_pane_in_direction (#21948)
Ah, invalid SecondaryMap key, we meet again... Release Notes: - Fixed panic when jumping between panes
Cole Miller created
5d7b614
Improve context menu aside layout via custom logic (#22154)
* Presence of the aside no longer affects position or size of the context menu. * Prefers to fit to the right, then on same side of line, then other side of line, within the following preference order: - Max possible size within text area. - Max possible size within window. - Actual size within window. This is the only case that could cause it to jump around with less stability. A further enhancement atop this might be to dynamically resize aside height to fit. Release notes are N/A as they are covered by the notes for #22102. Closes #8523 Release Notes: * N/A
Michael Sloan created
6aad616
assistant2: Fix focus issues with opening history (#22169)
This PR fixes some focus issues with opening the thread history, which required that the Assistant2 panel be focused in order for the history to open. Release Notes: - N/A
Marshall Bowers created
918866b
assistant2: Allow creating a new thread via the command palette (#22168)
This PR allows a new thread to be created via the command palette when the Assistant2 panel is not focused. Release Notes: - N/A
Marshall Bowers created
5b2653a
Improve GitHub Issue template for Environment (#22147)
Add support for pre-filling feature request template from zed::RequestFeature action. Co-authored-by: Agus <agus@zed.dev>
Peter Tripp and Agus created
ba44db7
gpui: Rename `GPUSpecs` to `GpuSpecs` (#22166)
This PR renames the `GPUSpecs` type to `GpuSpecs` to match Rust naming conventions. Release Notes: - N/A
Marshall Bowers created
ce97e4d
assistant2: Add temporary icon for the status bar item (#22156)
This is temporary and should be removed whenever we fully transition to Assistant 2. <img width="800" alt="Screenshot 2024-12-17 at 16 50 48" src="https://github.com/user-attachments/assets/61137993-ec2c-4754-9f9a-7559d1b21d89" /> Release Notes: - N/A
Danilo Leal created
63d8a43
assistant2: Fix file context picker (#22163)
This PR fixes an issue with the Assistant2 file context picker where files weren't being attached properly. We needed to retrieve the files from the worktree without the worktree root name in the file path. Release Notes: - N/A --------- Co-authored-by: Max <max@zed.dev>
Marshall Bowers and Max created
81c118d
Store focus handles in AppContext instead of Window (#22158)
Previously, each window stored its own collection of focus handles. This meant that to create a focus handle, you needed to have access to a Window. I'm working on a simplification to gpui's context types that removes `WindowContext` and `ViewContext` in favor of passing a window reference explicitly when rendering or handling events. You'll still need a window to manipulate focus, but it will be helpful to be able to create focus handles without a window. cc @mgsloan Release Notes: - N/A
Nathan Sobo created
e1ca5ed
zed: Fix formatting in workspace initialization (#22152)
This PR fixes some formatting issues in the workspace initialization code that stemmed from certain constructs causing `rustfmt` to bail out of the formatting. The bulk of the content of `initialize_workspace` has been factored out into functions, as having nested closures within closures seems to be the primary cause of `rustfmt` being unhappy. Release Notes: - N/A
Marshall Bowers created
fa1b1c6
docs: Fix indentation of JSON example lsp settings (#22162)
Peter Tripp created
0511f92
Add tooltip for Markdown Preview copy code button (#22057)
Peter Tripp created
70f82f8
telemetry: Fix license symlink (#22153)
This PR fixes the `LICENSE-GPL` symlink in the `telemetry` crate. Release Notes: - N/A
Marshall Bowers created
1c48689
Allow the use of both Assistants when in the `assistant2` feature flag (#22150)
This PR makes it so both Assistant panels are visible when in the `assistant2` feature flag. This way folks can continue using Assistant1 if Assistant2 isn't meeting their needs. Right now they are shown as two different panels shown in the status bar (although using the same icon), but this is just a temporary state until we can surface the Assistant1 functionality in Assistant2 somehow. Note that the inline assist will always use the Assistant2 panel. Release Notes: - N/A
Marshall Bowers created
c86cf2c
zeta: Refine visuals for the completion popover (#22142)
Most notably, trying out a different icon and adding the "Completion" word to the side of the provider name. <img width="800" alt="Screenshot 2024-12-17 at 13 04 55" src="https://github.com/user-attachments/assets/6dcaa699-f358-4242-9812-e1668f426207" /> Release Notes: - N/A
Danilo Leal created
7425d24
Add telemetry::event! (#22146)
CC @JosephTLyons Release Notes: - N/A
Conrad Irwin created
b17f208
assistant2: Sketch in directory context picker (#22148)
This PR sketches in the structure for the directory context picker. Waiting on implementing the actual behavior until we fix the issues with the file context picker. Release Notes: - N/A
Marshall Bowers created
68e3d79
assistant2: Use `ContextKind` to match on `ContextPicker` entries (#22143)
This PR updates the `ContextPicker` entries to match on the `ContextKind` instead of using strings. Release Notes: - N/A
Marshall Bowers created