Commit graph

24508 commits

Author SHA1 Message Date
Michael Sloan
985544ffb9
assistant2: Try again with fix use of rust-analyzer with "workspace": false (#23331)
I thought #23326 did the trick, but it didn't

Release Notes:

- N/A
2025-01-18 20:33:24 +00:00
Michael Sloan
10f358633b
lsp: Skip computation of edits_since_save when there are no disk based diagnostics (#23269)
Thought of this improvement while @ConradIrwin and I were looking into
whether this code is misbehaving. It seems not to be.

Release Notes:

- N/A
2025-01-18 13:28:44 -07:00
Michael Sloan
9a7b73b161
assistant2: fix use with rust-analyzer "workspace": false (#23326)
Before this was getting errors about `TestAppContext` not existing.

Release Notes:

- N/A
2025-01-18 18:19:16 +00:00
tims
8c92da45a9
terminal: Add scrollbar (#23256)
Closes #4798

This PR implements a scrollbar for the terminal by turning
`ScrollableHandle` into a trait, allowing us to implement a custom
scroll handle, `TerminalScrollHandle`. It works by converting terminal
lines into pixels that `ScrollableHandle` understands. When
`ScrollableHandle` provides a changed offset (e.g., when you drag the
scrollbar), we convert this pixel offset back into the number of lines
to scroll and update the terminal content accordingly.

While the current version works as expected, I believe the scrollbar's
offset updates could potentially be turned into an event. This event
could then be subscribed to in `TerminalView`, not needing to update the
terminal's offset in the `render` method as it might have performance
implications. Further ideas on this are welcome.

Preview:


https://github.com/user-attachments/assets/560f0aac-4544-4007-8f0b-8833386f608f

Todo:

- [x] Experiment with custom scrollbar responding to terminal mouse
scroll
- [x] Refactor existing scrollbar handle into a trait  
- [x] Update terminal to use the scrollbar trait instead of a custom
scrollbar implementation
- [x] Figure out how scrollbar events like mouse drag should notify the
terminal to update its state
- [x] Code clean up
- [x] Scrollbar hide setting for terminal

Release Notes:

- Added scrollbar to the terminal
2025-01-18 17:36:41 +01:00
张小白
728a874b1e
windows: Improve foreground task dispatching on Windows (#23283)
Some checks are pending
CI / Check Postgres and Protobuf migrations, mergability (push) Waiting to run
CI / Check formatting and spelling (push) Waiting to run
CI / (macOS) Run Clippy and tests (push) Waiting to run
CI / (Linux) Run Clippy and tests (push) Waiting to run
CI / (Linux) Build Remote Server (push) Waiting to run
CI / (Windows) Run Clippy and tests (push) Waiting to run
CI / Create a macOS bundle (push) Blocked by required conditions
CI / Linux x86_x64 release bundle (push) Blocked by required conditions
CI / Linux arm64 release bundle (push) Blocked by required conditions
CI / Auto release preview (push) Blocked by required conditions
Deploy Docs / Deploy Docs (push) Waiting to run
Docs / Check formatting (push) Waiting to run
Script / ShellCheck Scripts (push) Waiting to run
Closes #22653

After some investigation, I found this bug is due to that sometimes
`foreground_task` is not dispatched to the main thread unless there is
user input. The current Windows implementation works as follows: when
the `WindowsDispatcher` receives a `foreground_task`, it adds the task
to a queue and uses `SetEvent(dispatch_event)` to notify the main
thread.

The main thread then listens for notifications using
`MsgWaitForMultipleObjects(&[dispatch_event])`.

Essentially, this is a synchronous method, but it is not robust. For
example, if 100 `foreground_task`s are sent, `dispatch_event` should
theoretically be triggered 100 times, and
`MsgWaitForMultipleObjects(&[dispatch_event])` should receive 100
notifications, causing the main thread to execute all 100 tasks.
However, in practice, some `foreground_task`s may not get a chance to
execute due to certain reasons.

As shown in the attached video, when I don't move the mouse, there are
about 20-30 `foreground_task`s waiting in the queue to be executed. When
I move the mouse, `run_foreground_tasks()` is called, which processes
the tasks in the queue.



https://github.com/user-attachments/assets/83cd09ca-4b17-4a1f-9a2a-5d1569b23483



To address this, this PR adopts an approach similar to `winit`. In
`winit`, an invisible window is created for message passing. In this PR,
we use `PostThreadMessage` to directly send messages to the main thread.

With this implementation, when 100 `foreground_task`s are sent, the
`WindowsDispatcher` uses `PostThreadMessageW(thread_id,
RUNNABLE_DISPATCHED)` to notify the main thread. This approach enqueues
100 `RUNNABLE_DISPATCHED` messages in the main thread's message queue,
ensuring that each `foreground_task` is executed as expected. The main
thread continuously processes these messages, guaranteeing that all 100
tasks are executed.

Release Notes:

- N/A
2025-01-18 23:43:56 +08:00
Antonio Scandurra
5138e6a3c7
Fix accepting partial inline completion (#23312)
Release Notes:

- Fixed a bug that could prevent accepting a partial inline completion.
2025-01-18 10:27:12 +00:00
Michael Sloan
bf0578e32a
Remove gap in layout of notifications (#23303)
Some checks are pending
CI / Check Postgres and Protobuf migrations, mergability (push) Waiting to run
CI / Check formatting and spelling (push) Waiting to run
CI / (macOS) Run Clippy and tests (push) Waiting to run
CI / (Linux) Run Clippy and tests (push) Waiting to run
CI / (Linux) Build Remote Server (push) Waiting to run
CI / (Windows) Run Clippy and tests (push) Waiting to run
CI / Create a macOS bundle (push) Blocked by required conditions
CI / Linux x86_x64 release bundle (push) Blocked by required conditions
CI / Linux arm64 release bundle (push) Blocked by required conditions
CI / Auto release preview (push) Blocked by required conditions
Deploy Docs / Deploy Docs (push) Waiting to run
Docs / Check formatting (push) Waiting to run
Script / ShellCheck Scripts (push) Waiting to run
* Increases width of notification message to remove a gap

* Puts the close button in the top right

Release Notes:

- N/A

Co-authored-by: Nate <nate@zed.dev>
2025-01-17 23:56:45 +00:00
Danilo Leal
e338a177c5
assistant2: Adjust "generating" state design (#23299)
To ensure message readability is not affected in any way.


https://github.com/user-attachments/assets/9a2ad949-1a8a-4c31-ad3c-db70f48e5d98

Release Notes:

- N/A
2025-01-17 20:22:27 -03:00
Peter Tripp
a2385eb0fc
issues: Add new core label 'discussion' (#23304)
Release Notes:

- N/A
2025-01-17 17:10:16 -05:00
Conrad Irwin
a247617d6f
Revert "lsp: Parse LSP messages on background thread - again (#23122)" (#23301)
This reverts commit 1b3b825c7f.

When debugging git diffs we found that this introduced a re-ordering of
messages sent to the LSP:

* User hits "format"
* Zed adjusts spacing, and sends "spaces changed" to the LSP
* Zed sends "format" to LSP

With the async approach here, the format request can now arrive before
the space changed request.

You can reproduce this with `test_strip_whitespace_and_format_via_lsp`
under some conditions.

Release Notes:

- N/A
2025-01-17 15:06:10 -07:00
Agus Zubiaga
0dda9851b3
zeta: Request completion when jumping to diagnostic (#23292)
Release Notes:

- N/A

Co-authored-by: Antonio <antonio@zed.dev>
2025-01-17 18:41:45 -03:00
Agus Zubiaga
938e28f871
assistant2: Thread history keyboard navigation (#23145)
Open and delete threads via keyboard:


https://github.com/user-attachments/assets/79b402ad-a49d-4c52-9d46-28a7bf32ff1f



Note: this doesn't include navigation in the "recent threads" section of
the empty state

Release Notes:

- N/A
2025-01-17 18:41:17 -03:00
Cole Miller
5da67899b7
git: Implement commit creation (#23263)
- [x] Basic implementation
- [x] Disable commit buttons when committing is not possible (empty
message, no changes)
- [x] Upgrade GitSummary to efficiently figure out whether there are any
staged changes
- [x] Make CommitAll work
- [x] Surface errors with toasts
  - [x] Channel shutdown
  - [x] Empty commit message or no changes
  - [x] Failed git operations
- [x] Fix added files no longer appearing correctly in the project panel
(GitSummary breakage)
- [x] Fix handling of commit message

Release Notes:

- N/A

---------

Co-authored-by: Nate <nate@zed.dev>
2025-01-17 18:51:20 +00:00
Marshall Bowers
3767e7e5f0
html_to_markdown: Restore ability to publish (#23293)
This PR restores the ability to publish the `html_to_markdown` crate
after #23291.

This crate is [published](https://crates.io/crates/html_to_markdown) to
crates.io so that it can be consumed by extensions.

Release Notes:

- N/A
2025-01-17 17:57:13 +00:00
Piotr Osiewicz
c9534e8025
chore: Use workspace fields for edition and publish (#23291)
This prepares us for an upcoming bump to Rust 2024 edition.

Release Notes:

- N/A
2025-01-17 17:39:22 +01:00
Marshall Bowers
cb35b73020
Extract PromptLibrary to prompt_library (#23285)
Some checks are pending
CI / Check Postgres and Protobuf migrations, mergability (push) Waiting to run
CI / Check formatting and spelling (push) Waiting to run
CI / (macOS) Run Clippy and tests (push) Waiting to run
CI / (Linux) Run Clippy and tests (push) Waiting to run
CI / (Linux) Build Remote Server (push) Waiting to run
CI / (Windows) Run Clippy and tests (push) Waiting to run
CI / Create a macOS bundle (push) Blocked by required conditions
CI / Linux x86_x64 release bundle (push) Blocked by required conditions
CI / Linux arm64 release bundle (push) Blocked by required conditions
CI / Auto release preview (push) Blocked by required conditions
Deploy Docs / Deploy Docs (push) Waiting to run
Docs / Check formatting (push) Waiting to run
Script / ShellCheck Scripts (push) Waiting to run
This PR extracts the `PromptLibrary` out of the `assistant` crate and
moves it to the `prompt_library` crate.

The `PromptLibrary` is now decoupled from the specifics of the
`AssistantPanel` and `InlineAssistant`.

Release Notes:

- N/A
2025-01-17 15:28:27 +00:00
Marshall Bowers
81dd68d696
Update Cargo.lock (#23284)
This PR updates the `Cargo.lock` file, as running `cargo check` was
producing a diff on `main`.

Release Notes:

- N/A
2025-01-17 14:50:28 +00:00
Danilo Leal
2edeb89a84
assistant2: Adjust "you" message block design (#23281)
Just removing the extra indentation margin.

Release Notes:

- N/A
2025-01-17 10:59:03 -03:00
Danilo Leal
da1c3d8b40
Add hover_line_number color token (#23279)
This enables having a dedicated color for the line number hover state.
That's relevant because line numbers can now be clicked to jump to
cursor location in multibuffers.

Release Notes:

- N/A

---------

Co-authored-by: João Marcos <marcospb19@hotmail.com>
2025-01-17 09:24:42 -03:00
Kirill Bulatov
37dcca62b7
Fix outline panel navigation in unnamed files (#23273)
Closes https://github.com/zed-industries/zed/issues/23250

Release Notes:

- Fixed outline panel navigation in unnamed files
2025-01-17 09:32:22 +00:00
renovate[bot]
c6f2326a29
Update aws-sdk-rust monorepo (#23199)
This PR contains the following updates:

| Package | Type | Update | Change |
|---|---|---|---|
| [aws-config](https://redirect.github.com/smithy-lang/smithy-rs) |
dependencies | patch | `1.5.13` -> `1.5.14` |
| [aws-sdk-kinesis](https://redirect.github.com/awslabs/aws-sdk-rust) |
dependencies | minor | `1.55.0` -> `1.56.0` |
| [aws-sdk-s3](https://redirect.github.com/awslabs/aws-sdk-rust) |
dependencies | minor | `1.68.0` -> `1.69.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.

👻 **Immortal**: This PR will be recreated if closed unmerged. Get
[config
help](https://redirect.github.com/renovatebot/renovate/discussions) if
that's undesired.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

Release Notes:

- N/A

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzOS4xMDcuMCIsInVwZGF0ZWRJblZlciI6IjM5LjEwNy4wIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119-->

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-01-17 10:41:04 +02:00
Aaron Feickert
4ed3c133cf
Remember active panel after closing dock (#23207)
A recent change in #22730 (to reduce workspace serialization) means that
a dock "forgets" its active panel whenever it is closed. When opened
again, the change in #22346 (which establishes a panel activation order)
takes effect, always opening the highest-priority panel for that dock
instead of the panel the user previously manually activated.

The result is that if you have, say, the outline panel active on the
right dock, and toggle the dock closed and then back open again, the
assistant panel will always appear instead.

This PR reverts part of the change in #22730 to ensure a dock remembers
its active panel when it is closed.

Closes #22923.

Release Notes:

- Fixed an issue where docks did not remember the active panel.
2025-01-17 10:01:50 +02:00
Andrew Borg (Kashin)
2ef4883937
terminal: Drain task output on completion (#23085)
Now we ensure that task output is fully drained and printed to Zed
terminal pane on task completion.

This change depends on a recent change to alacritty_terminal crate:
5e78d20c70.

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

Release Notes:

- Fixed missing task terminal output on Linux for short-running commands
2025-01-17 08:00:53 +00:00
faint
d4d36d1adf
windows: Fix app icon loading (#22918)
Closes #22602

Release Notes:

- N/A

---------

Co-authored-by: 张小白 <364772080@qq.com>
2025-01-17 07:53:16 +00:00
张小白
70db427fc8
windows: Make collab run on Windows (#23117)
I’ve also updated the documentation in
`development\local-collaboration.md` and
`docs\src\development\windows.md`.

Testing collab on my Windows machine:

![屏幕截图 2025-01-14
162021](https://github.com/user-attachments/assets/28b4a36a-e156-4012-981a-5d0a23dcc613)


Release Notes:

- N/A

---------

Co-authored-by: Marshall Bowers <elliott.codes@gmail.com>
2025-01-17 09:39:13 +02:00
tims
b1375ab946
project_panel: Fix crash when adding a new file or directory to the first folded directory (#23217)
Closes #23216

This crash happens in the `update_visible_entries` function, where we
calculate `ancestors` and `current_ancestor_depth`. `ancestors` is map
storing information about folded ancestors and `current_ancestor_depth`
is basically selected ancestor index in reverse order of visibility.

For example, before adding a new file or directory in `a/b/c`, the
`ancestors` might look like:

```jsonc
{
    "entry_id_of_c": {
            "current_ancestor_depth": 2,  // "a" is selected
            "ancestors": ["entry_id_of_a", "entry_id_of_b", "entry_id_of_c"]
    }
}
```

When new file or directory is added to`a`, ancestors length is reduced,
as `a` now is not part of folded dir due to having multiple children.

But depth still remains the same as while calculating it, we use depth
from `old_ancestors` to preserve selection across renders. This causes
panic.

```jsonc
{
    "entry_id_of_c": {
            "current_ancestor_depth": 2,  // wrong: use of old depth here causes panic
            "ancestors": ["entry_id_of_b", "entry_id_of_c"]  // correct: notice "a" is missing, as "a" now has multiple children
    }
}
```

This PR fixes it by capping depth so it don't exceed `ancestors` array.
This preserves existing depth as well as handles our edge case.

Release Notes:

- Fixed crash when adding a new file or directory to the first folded
directory
2025-01-16 23:34:44 -07:00
Conrad Irwin
f94efb5008
vim: ! support (#23169)
Closes #22885
Closes #12565 

This doesn't yet add history in the command palette, which is painfully
missing.

Release Notes:

- vim: Added `:!`, `:<range>!` and `:r!` support
- vim: Added `!` operator in normal/visual mode
2025-01-16 21:19:15 -07:00
tims
21e7765a48
project_panel: Add directory auto-expand after 500ms hover during dragging (#23080)
This PR resolves one part of issue #14496 

In project panel, when dragging, if you hover over a directory for
~500ms, it now auto-expands so you can drag and drop into nested
directories.

Task cleanup is handled in these cases:  
- Dragged onto a different entry.  
- Dragged anywhere else, and the 500ms timer runs out (for example, out
of the project panel).
- Dropped onto any entry.  

I don’t see any edge cases where task isn’t cleaned up after 500ms.


https://github.com/user-attachments/assets/19da0da1-f9e2-42df-8ee4-fab6dc9a185a

Release Notes:

- Added auto-expand for directories on hover for a while during
dragging.
2025-01-16 20:54:37 -07:00
CharlesChen0823
f0a07b5eff
editor: Fix editor: copy path not working in SSH remoting (#23235)
Closes #23135 

Release Notes:

- Fix `editor: copy path` not work in ssh remote
2025-01-16 20:47:47 -07:00
João Marcos
7ee78a4d35
Fix active line number highlight (#23266)
Closes #22734

Release Notes:

- Fixed active line number highlight.

---------

Co-authored-by: Danilo <danilo@zed.dev>
2025-01-17 01:23:28 +00:00
renovate[bot]
b472bd992f
Update Rust crate tree-sitter-css to v0.23.2 (#23205)
This PR contains the following updates:

| Package | Type | Update | Change |
|---|---|---|---|
|
[tree-sitter-css](https://redirect.github.com/tree-sitter/tree-sitter-css)
| workspace.dependencies | patch | `0.23.1` -> `0.23.2` |

---

### Release Notes

<details>
<summary>tree-sitter/tree-sitter-css (tree-sitter-css)</summary>

###
[`v0.23.2`](https://redirect.github.com/tree-sitter/tree-sitter-css/releases/tag/v0.23.2)

[Compare
Source](https://redirect.github.com/tree-sitter/tree-sitter-css/compare/v0.23.1...v0.23.2)

**NOTE:** Download `tree-sitter-css.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:eyJjcmVhdGVkSW5WZXIiOiIzOS4xMDcuMCIsInVwZGF0ZWRJblZlciI6IjM5LjEwNy4wIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119-->

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-01-16 18:38:33 -05:00
Piotr Osiewicz
795376cb07
ui: Track changes to UI font size made via actions with settings (#23265)
Some checks are pending
CI / Check Postgres and Protobuf migrations, mergability (push) Waiting to run
CI / Check formatting and spelling (push) Waiting to run
CI / (macOS) Run Clippy and tests (push) Waiting to run
CI / (Linux) Run Clippy and tests (push) Waiting to run
CI / (Linux) Build Remote Server (push) Waiting to run
CI / (Windows) Run Clippy and tests (push) Waiting to run
CI / Create a macOS bundle (push) Blocked by required conditions
CI / Linux x86_x64 release bundle (push) Blocked by required conditions
CI / Linux arm64 release bundle (push) Blocked by required conditions
CI / Auto release preview (push) Blocked by required conditions
Deploy Docs / Deploy Docs (push) Waiting to run
Docs / Check formatting (push) Waiting to run
Script / ShellCheck Scripts (push) Waiting to run
Fixes #5380

Closes #5380

Release Notes:

- Font size changes made with actions are now persisted in user settings
2025-01-16 23:28:18 +00:00
Marshall Bowers
24495f09f9
Add streaming_diff crate (#23264)
This PR extracts the streaming diff implementation to its own
`streaming_diff` crate.

It was duplicated between `assistant` and `assistant2`, but their
implementations were exactly the same (and I don't see a reason why they
would need to diverge).

Release Notes:

- N/A
2025-01-16 23:12:46 +00:00
Marshall Bowers
4d22f7e529
assistant: Remove some re-exports (#23262)
This PR removes some re-exports from the `assistant` to make it clearer
what its constituent modules depend on.

Release Notes:

- N/A
2025-01-16 22:49:14 +00:00
Marshall Bowers
8030c0025a
Extract slash commands to their own crate (#23261)
This PR extracts the slash command definitions out of the `assistant`
crate and into their own `assistant_slash_commands` crate.

Release Notes:

- N/A
2025-01-16 22:17:07 +00:00
Cole Miller
1a8303b020
git: Migrate some panel code away from visible_entries (#23251)
To prepare for the introduction of folding in the git panel, these
codepaths need to work with the canonical source of all git status
entries, not just the ones that are visible in the panel.

Release Notes:

- N/A

---------

Co-authored-by: Nate <nate@zed.dev>
2025-01-16 16:32:11 -05:00
Marshall Bowers
1b1c2e55f3
Extract PromptStore and PromptBuilder to new prompt_library crate (#23254)
This PR adds a new `prompt_library` crate and extracts the `PromptStore`
and `PromptBuilder` to it.

Eventually we'll want to house the `PromptLibrary` itself in this crate,
but right now that involves untangling a few dependencies.

Release Notes:

- N/A
2025-01-16 20:06:16 +00:00
Marshall Bowers
c9f24c7d45
Move SlashCommandWorkingSet to assistant_slash_command (#23252)
This PR moves the `SlashCommandWorkingSet` out of the `assistant` crate
and into `assistant_slash_command`.

This will unlock moving some things that depend on it out of the
`assistant` crate.

Release Notes:

- N/A
2025-01-16 19:13:30 +00:00
Cole Miller
b7726238ad
Move git state to Project (#23208)
This restores its visibility outside of git_ui, which we'll need soon,
while preserving its per-project character.

Release Notes:

- N/A
2025-01-16 13:57:28 -05:00
Mikhail Filippov
614eaec278
Add mold dependency to fix build on Ubuntu 24.10 (#23230)
Co-authored-by: Peter Tripp <peter@zed.dev>
2025-01-16 13:43:47 -05:00
Joseph T. Lyons
415ecaff4a
Rename edit prediction provider name and display name (#23249)
Release Notes:

- N/A
2025-01-16 18:27:31 +00:00
Peter Tripp
8e1ad7d475
docs: Add Shell Script language documentation (#23248) 2025-01-16 12:16:38 -05:00
Peter Tripp
ffc6b7b102
Make docs-only PRs skip CI.yml test suite (15 secs instead of 15 minutes) (#23246)
These were previously in place, but removed while we evaluated Merge Queues (since reverted).
2025-01-16 12:09:54 -05:00
renovate[bot]
70547ea5f6
Update Rust crate bitflags to v2.8.0 (#23206)
This PR contains the following updates:

| Package | Type | Update | Change |
|---|---|---|---|
| [bitflags](https://redirect.github.com/bitflags/bitflags) |
workspace.dependencies | minor | `2.6.0` -> `2.8.0` |

---

### Release Notes

<details>
<summary>bitflags/bitflags (bitflags)</summary>

###
[`v2.8.0`](https://redirect.github.com/bitflags/bitflags/blob/HEAD/CHANGELOG.md#280)

[Compare
Source](https://redirect.github.com/bitflags/bitflags/compare/2.7.0...2.8.0)

#### What's Changed

- feat(core): Add bitflags_match macro for bitflag matching by
[@&#8203;YuniqueUnic](https://redirect.github.com/YuniqueUnic) in
[https://github.com/bitflags/bitflags/pull/423](https://redirect.github.com/bitflags/bitflags/pull/423)
- Finalize bitflags_match by
[@&#8203;KodrAus](https://redirect.github.com/KodrAus) in
[https://github.com/bitflags/bitflags/pull/431](https://redirect.github.com/bitflags/bitflags/pull/431)

#### New Contributors

- [@&#8203;YuniqueUnic](https://redirect.github.com/YuniqueUnic) made
their first contribution in
[https://github.com/bitflags/bitflags/pull/423](https://redirect.github.com/bitflags/bitflags/pull/423)

**Full Changelog**:
https://github.com/bitflags/bitflags/compare/2.7.0...2.8.0

###
[`v2.7.0`](https://redirect.github.com/bitflags/bitflags/blob/HEAD/CHANGELOG.md#270)

[Compare
Source](https://redirect.github.com/bitflags/bitflags/compare/2.6.0...2.7.0)

#### What's Changed

- Fix `clippy::doc_lazy_continuation` lints by
[@&#8203;waywardmonkeys](https://redirect.github.com/waywardmonkeys) in
[https://github.com/bitflags/bitflags/pull/414](https://redirect.github.com/bitflags/bitflags/pull/414)
- Run clippy on extra features in CI. by
[@&#8203;waywardmonkeys](https://redirect.github.com/waywardmonkeys) in
[https://github.com/bitflags/bitflags/pull/415](https://redirect.github.com/bitflags/bitflags/pull/415)
- Fix CI: trybuild refresh, allow some clippy restrictions. by
[@&#8203;waywardmonkeys](https://redirect.github.com/waywardmonkeys) in
[https://github.com/bitflags/bitflags/pull/417](https://redirect.github.com/bitflags/bitflags/pull/417)
- Update zerocopy version in example by
[@&#8203;KodrAus](https://redirect.github.com/KodrAus) in
[https://github.com/bitflags/bitflags/pull/422](https://redirect.github.com/bitflags/bitflags/pull/422)
- Add method to check if unknown bits are set by
[@&#8203;wysiwys](https://redirect.github.com/wysiwys) in
[https://github.com/bitflags/bitflags/pull/426](https://redirect.github.com/bitflags/bitflags/pull/426)
- Update error messages by
[@&#8203;KodrAus](https://redirect.github.com/KodrAus) in
[https://github.com/bitflags/bitflags/pull/427](https://redirect.github.com/bitflags/bitflags/pull/427)
- Add `truncate(&mut self)` method to unset unknown bits by
[@&#8203;wysiwys](https://redirect.github.com/wysiwys) in
[https://github.com/bitflags/bitflags/pull/428](https://redirect.github.com/bitflags/bitflags/pull/428)
- Update error messages by
[@&#8203;KodrAus](https://redirect.github.com/KodrAus) in
[https://github.com/bitflags/bitflags/pull/429](https://redirect.github.com/bitflags/bitflags/pull/429)

#### New Contributors

- [@&#8203;wysiwys](https://redirect.github.com/wysiwys) made their
first contribution in
[https://github.com/bitflags/bitflags/pull/426](https://redirect.github.com/bitflags/bitflags/pull/426)

**Full Changelog**:
https://github.com/bitflags/bitflags/compare/2.6.0...2.7.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:eyJjcmVhdGVkSW5WZXIiOiIzOS4xMDcuMCIsInVwZGF0ZWRJblZlciI6IjM5LjEwNy4wIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119-->

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-01-16 11:02:31 -05:00
Danilo Leal
8a0c22c3bf
assistant2: Add ChatMode action (#23243)
This PR makes the assistant 2 panel switch work with the keyboard via
the `cmd-e` keybinding.

Release Notes:

- N/A

---------

Co-authored-by: Agus Zubiaga <hi@aguz.me>
2025-01-16 13:02:22 -03:00
renovate[bot]
9ea8b14ac3
Update Rust crate cbindgen to 0.28.0 (#23209)
This PR contains the following updates:

| Package | Type | Update | Change |
|---|---|---|---|
| [cbindgen](https://redirect.github.com/mozilla/cbindgen) |
build-dependencies | minor | `0.27.0` -> `0.28.0` |

---

### Release Notes

<details>
<summary>mozilla/cbindgen (cbindgen)</summary>

###
[`v0.28.0`](https://redirect.github.com/mozilla/cbindgen/blob/HEAD/CHANGES#0280)

[Compare
Source](https://redirect.github.com/mozilla/cbindgen/compare/v0.27.0...0.28.0)

- Parse unsafe attributes in
[https://github.com/mozilla/cbindgen/pull/1020](https://redirect.github.com/mozilla/cbindgen/pull/1020)
\* Fix local override of enum prefix-with-name by
jsg[https://github.com/mozilla/cbindgen/pull/1006](https://redirect.github.com/mozilla/cbindgen/pull/1006)/1006
\* Add
rename-all=[https://github.com/mozilla/cbindgen/pull/1021](https://redirect.github.com/mozilla/cbindgen/pull/1021)/pull/1021
\* ir: add support for UnsafeCell and SyncUnsafeCell
[https://github.com/mozilla/cbindgen/pull/1003](https://redirect.github.com/mozilla/cbindgen/pull/1003)ndgen/pull/1003
\* Implement
man[https://github.com/mozilla/cbindgen/pull/1022](https://redirect.github.com/mozilla/cbindgen/pull/1022)a/cbindgen/pull/1022
\* Fix: Ignore `CARGO_BUILD_TARGET` in tests by bryango in
[https://github.com/mozilla/cbindgen/pull/1010](https://redirect.github.com/mozilla/cbindgen/pull/1010)
\* Newline for each field for constexpr field constants by
youknowon[https://github.com/mozilla/cbindgen/pull/988](https://redirect.github.com/mozilla/cbindgen/pull/988)l/988
\* Fix clippy warnings by
youk[https://github.com/mozilla/cbindgen/pull/1026](https://redirect.github.com/mozilla/cbindgen/pull/1026)/pull/1026
\* Add aarch64/arm64 to
C[https://github.com/mozilla/cbindgen/pull/1036](https://redirect.github.com/mozilla/cbindgen/pull/1036)ndgen/pull/1036
\* Add `unstable_ir` feature flag that makes the ir pub by heesooy in
[https://github.com/mozilla/cbindgen/pull/1011](https://redirect.github.com/mozilla/cbindgen/pull/1011)
\* Support generated a symbols file by
TheElectronWil[https://github.com/mozilla/cbindgen/pull/916](https://redirect.github.com/mozilla/cbindgen/pull/916)l/916

</details>

---

### Configuration

📅 **Schedule**: Branch creation - "after 3pm on Wednesday" in timezone
America/New_York, Automerge - At any time (no schedule defined).

🚦 **Automerge**: Disabled by config. Please merge this manually once you
are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

Release Notes:

- N/A

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzOS4xMDcuMCIsInVwZGF0ZWRJblZlciI6IjM5LjEwNy4wIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119-->

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-01-16 11:01:51 -05:00
Peter Tripp
ebb937d88c
Move 'pane::ReopenClosedItem' keybinds from Pane to Workspace context (#23242)
Makes pane::ReopenClosedItem (`cmd-shift-t` macos / `ctrl-shift-t`
linux) work in Project Panel and other non-`Pane` Dock contexts too
(Diagnostics, Outline, Git, Collab).
2025-01-16 15:53:35 +00:00
Danilo Leal
9f52683ebc
Remove the SwitchWithLabel component (#23240)
This PR removes the `SwitchWithLabel` component because we're adding
`label` as a method to `Switch`. Thus, we no longer need an extra
component just to append a label. Additionally, we're also adding
`keybinding` as a method.

Release Notes:

- N/A

---------

Co-authored-by: Agus Zubiaga <hi@aguz.me>
2025-01-16 12:18:59 -03:00
Peter Tripp
fd40d173f3
macos: Document ctrl-space global shortcut conflict (#23239)
Some checks are pending
CI / Check Postgres and Protobuf migrations, mergability (push) Waiting to run
CI / Check formatting and spelling (push) Waiting to run
CI / (macOS) Run Clippy and tests (push) Waiting to run
CI / (Linux) Run Clippy and tests (push) Waiting to run
CI / (Linux) Build Remote Server (push) Waiting to run
CI / (Windows) Run Clippy and tests (push) Waiting to run
CI / Create a macOS bundle (push) Blocked by required conditions
CI / Linux x86_x64 release bundle (push) Blocked by required conditions
CI / Linux arm64 release bundle (push) Blocked by required conditions
CI / Auto release preview (push) Blocked by required conditions
Deploy Docs / Deploy Docs (push) Waiting to run
Docs / Check formatting (push) Waiting to run
Script / ShellCheck Scripts (push) Waiting to run
2025-01-16 14:51:59 +00:00
Marshall Bowers
3af09bbae1
ci: Remove zero-width whitespace in job name (#23238)
This PR removes some zero-width whitespace characters from one of the CI
job names.

Release Notes:

- N/A
2025-01-16 14:50:40 +00:00