119b5de
assistant2: Change chat keybinding to just `Enter` (#21819)
Click to expand commit body
This PR changes the Assistant2 chat keybinding from `Cmd-Enter` to just
`Enter`.
Release Notes:
- N/A
Marshall Bowers
created
c80ea60
assistant2: Update to match latest designs (#21818)
Click to expand commit body
This PR updates the Assistant2 panel to match the latest designs.
<img width="1159" alt="Screenshot 2024-12-10 at 11 49 14 AM"
src="https://github.com/user-attachments/assets/53739709-e7b9-4e35-8a5d-97b6560623ed">
Release Notes:
- N/A
This reverts commit 571c7d4f6645528c0bf1d2bcacfd623676c69ee7.
Manually tracking the hovered entities causes issues with hightlighting:
https://github.com/user-attachments/assets/932dc022-a0ad-485c-a9db-ef03d7b86032
cc @danilo-leal @nilskch
Release Notes:
- Fixed an issue where hovering over project panel would not update the
background correctly
Bennet Bo Fenner
created
58f9301
image viewer: Allow dropping images on pane (#21803)
Click to expand commit body
Partially addresses #21484
https://github.com/user-attachments/assets/777da5de-15c3-4af3-a597-1835c0155326
Release Notes:
- Support opening images by dropping them onto a pane
Bennet Bo Fenner
created
96499b7
zeta: Refresh LLM token in case it expired (#21796)
These were silently passing after the delay in updating diagnostics was
added.
Co-Authored-By: Max <max@zed.dev>
cc @someonetoignore
Release Notes:
- N/A
---------
Co-authored-by: Max <max@zed.dev>
Conrad Irwin
and
Max
created
8a85d6e
collab: Make `metrics_id` required in `LlmTokenClaims` (#21771)
Click to expand commit body
This PR makes the `metrics_id` field on the `LlmTokenClaims` required,
as we always have one in practice.
Release Notes:
- N/A
Marshall Bowers
created
158cdc3
collab: Attach additional properties to `Language Model Used` event (#21770)
Click to expand commit body
This PR attaches two new properties to the `Language Model Used` event:
- `has_llm_subscription` - This will tell us if a user is a paid
subscriber.
- `max_monthly_spend_in_cents` - This will indicate what their maximum
monthly spend is set to.
Release Notes:
- N/A
Marshall Bowers
created
bdeac79
collab: Prevent `max_monthly_llm_usage_spending_in_cents` from being negative (#21768)
Click to expand commit body
This PR fixes an issue where the
`max_monthly_llm_usage_spending_in_cents` preference could be set to a
negative value.
Release Notes:
- N/A
Marshall Bowers
created
73e0d81
Move `ContextMenu` out of editor.rs and rename `ContextMenu` to `CodeContextMenu` (#21766)
Click to expand commit body
This is a no-functionality refactor of where the `ContextMenu` type is
defined. Just the type definition and implementation is up to almost
1,000 lines; so I've moved it to it's own file and renamed the type to
`CodeContextMenu`
Release Notes:
- N/A
Mikayla Maki
created
6538227
Revert "Avoid endless loop of the diagnostic updates (#21209)" (#21764)
Click to expand commit body
This reverts commit 9999c31859210654dd572d54dfa42b67c00b33b0.
Release Notes:
- Fixes diagnostics not updating in some circumstances
Conrad Irwin
created
ef45eca
extension_host: Fix uploading dev extensions to the remote server (#21761)
Click to expand commit body
This PR fixes an issue where dev extensions were not working when
uploaded to the remote server.
The `extension.toml` for dev extensions may not contain all of the
information (such as the list of languages), as this is something that
we derive from the filesystem at packaging time. This meant that
uploading a dev extension that contained languages could have them
absent from the uploaded `extension.toml`.
For dev extensions we now upload a serialized version of the in-memory
extension manifest, which should have all of the information present.
Release Notes:
- SSH Remoting: Fixed an issue where some dev extensions would not work
after being uploaded to the remote server.
---------
Co-authored-by: Conrad <conrad@zed.dev>
Marshall Bowers
and
Conrad
created
803855e
Add `async_task::spawn_local` variant that includes caller in panics (#21758)
Fixed project diff multi buffer not expanding its diff until edited
Release Notes:
- N/A
Kirill Bulatov
created
a5355e9
Add per-language settings `show_completions_on_input` and `show_completion_documentation` (#21722)
Click to expand commit body
Release Notes:
- Added `show_completions_on_input` and `show_completion_documentation`
per-language settings. These settings were available before, but were
not configurable per-language.
Michael Sloan
created
b7edf31
lsp: Disable usage of follow-up completion invokes (#21755)
Click to expand commit body
Some of our users ran into a peculiar bug: autoimports with vtsls were
leaving behind an extra curly brace. I think we were slightly incorrect
in always requesting a follow-up completion without regard for last
result of completion request (whether it was incomplete or not).
Specifically, we're falling into this branch in current form:
https://github.com/yioneko/vtsls/blob/037c2b615bf4cfe9dd65d9affc7a155fbb2ca255/packages/service/src/service/completion.ts#L121
which then leads to incorrect edits being returned from vtsls.
Release Notes:
- Fixed an edge case with appliance of autocompletions in VTSLS that
could result in incorrect edits being applied.
Piotr Osiewicz
created
7bd6913
Make space for documentation aside during followup completion select (#21716)
Click to expand commit body
The goal of #7115 appears to be to limit the disruptiveness of
completion documentation load causing the completion selector to move
around. The approach was to debounce load of documentation via a setting
`completion_documentation_secondary_query_debounce`. This particularly
had a nonideal interaction with #21286, where now this debounce interval
was used between the documentation fetches of every individual
completion item.
I think a better solution is to continue making space for documentation
to be shown as soon as any documentation is shown. #21704 implemented
part of this, but it did not persist across followup completions.
Release Notes:
- Fixed completion list moving around on load of documentation. The
previous approach to mitigating this was to rate-limit the fetch of
docs, configured by a
`completion_documentation_secondary_query_debounce` setting, which is
now deprecated.
Fix a missing comma in the docs
Release Notes:
- N/A
Travis Stevens
created
8c91eec
call: Add `test-support` feature for `livekit_client_macos` (#21748)
Click to expand commit body
This PR updates the `call` crate to include the `test-support` feature
for `livekit_client_macos` when `call` is used with `test-support`.
This fixes running `cargo test -p copilot` and `cargo test -p editor`
(and perhaps some other crates).
Release Notes:
- N/A
Marshall Bowers
created
8fcaf8b
collab: Fix compilation error by removing dependency on livekit_client (#21744)
Click to expand commit body
This fixes collab not being able to compile anymore for Linux:
https://github.com/zed-industries/zed/actions/runs/12236650046/job/34130962682
Release Notes:
- N/A
Co-authored-by: Antonio <antonio@zed.dev>
Antonio Scandurra
,
Thorsten Ball
,
Bennet
, and
Thorsten
created
39e8944
language_tools: Split LSP log view selector into two (#21742)
Click to expand commit body
This should make it easier to interact with LSP log view when there are
multiple language servers. I often find the current UI clunky when I
have over 5 servers running (which isn't uncommon with multiple projects
open)
https://github.com/user-attachments/assets/2ecaf17f-4b40-4c8f-aa6f-03b437a3d979
Closes #ISSUE
Release Notes:
- N/A
Piotr Osiewicz
created
a7d12ee
Enhance the Vim Mode toggle discoverability (#21589)
Click to expand commit body
Closes https://github.com/zed-industries/zed/issues/21522
This PR adds an info tooltip on the Welcome screen, informing users how
Vim Mode can be toggled on and off. It also adds the Vim Mode toggle in
the Editor Controls menu. This is all so that folks who accidentally
turn it on better know how to turn it off. We're of course already able
to toggle this setting via the command palette, but that may be harder
to reach for beginners. So, maybe that's enough to close the linked
issue? Open to feedback.
(Note: I also added a max-width to the tooltip's label in this PR. I'm
confident that this won't make any tooltip look weird/broken, but if it
does, it may be because of this new property).
| Welcome Page | Editor Controls |
|--------|--------|
| <img width="800" alt="Screenshot 2024-12-05 at 11 20 04"
src="https://github.com/user-attachments/assets/1229f866-6be5-45cd-a6b8-c805f72144a6">
| <img width="800" alt="Screenshot 2024-12-05 at 11 12 15"
src="https://github.com/user-attachments/assets/f082d7f9-7d56-41d1-bc86-c333ad6264c7">
|
Release Notes:
- N/A
---------
Co-authored-by: Thorsten Ball <mrnugget@gmail.com>
Danilo Leal
and
Thorsten Ball
created
ce9e462
Add go version to gopls cache key (#20922)
Click to expand commit body
Closes #8071
Release Notes:
- Changed the Go integration to check whether an existing `gopls` was compiled for the current `go` version.
Previously we cached gopls (the go language server) as a file called
`gopls_{GOPLS_VERSION}`. The go version that gopls was built with is
crucial, so we need to cache the go version as well.
It's actually super interesting and very clever; gopls uses go to parse
the AST and do all the analyzation etc. Go exposes its internals in its
standard lib (`go/parser`, `go/types`, ...), which gopls uses to analyze
the user code. So if there is a new go release that contains new
syntax/features/etc. (the libraries `go/parser`, `go/types`, ...
change), we can rebuild the same version of `gopls` with the new version
of go (with the updated `go/xxx` libraries) to support the new language
features.
We had some issues around that (e.g., range over integers introduced in
go1.22, or custom iterators in go1.23) where we never updated gopls,
because we were on the latest gopls version, but built with an old go
version.
After this PR gopls will be cached under the name
`gopls_{GOPLS_VERSION}_go_{GO_VERSION}`.
Most users do not see this issue anymore, because after
https://github.com/zed-industries/zed/pull/8188 we first check if we can
find gopls in the PATH before downloading and caching gopls, but the
issue still exists.
Nils Koch
created
e58cdca
Added JavaScript runnable detection for `context` and `suite` methods (#21719)
Click to expand commit body
Fixes
https://github.com/zed-industries/zed/pull/21246#issuecomment-2525578141
<img width="545" alt="Screenshot 2024-12-08 at 22 58 33"
src="https://github.com/user-attachments/assets/2f303bfe-9718-4aa9-910e-613feca15ea8">
<img width="409" alt="Screenshot 2024-12-08 at 22 58 44"
src="https://github.com/user-attachments/assets/c4576cf7-fd71-44d2-911e-3ed944c9b794">
Release Notes:
- Added JavaScript runnable detection for `context` and `suite` methods
for mochajs framework
2ce01ea
Fix right click selection behavior in project panel (#21707)
Click to expand commit body
Closes #21605
Consider you have set of entries selected or even a single entry
selected, and you right click some other entry which is **not** part of
your selected set. This doesn't not clear existing entries selection
(which it should clear, as how file manager right-click logic works, see
more below).
This issue might lead unexpected operation like deletion applied on
those existing selected entries. This PR fixes it.
Release Notes:
- Fix right click selection behavior in project panel
tims
created
bf15255
Add .jj to default file exclusion (#21708)
Click to expand commit body
Relates to #21538
Release Notes:
- Added `**/.jj` to the default file exclusion list.
From diff looks like no material differences. With a local checkout of
`v0.13.0` I get build errors due to warning checking when I use a `path
= ...` dependency, but it is fixed with `v0.13.1`.
I see mention of this in the [renovate configuration
PR](https://github.com/zed-industries/zed/pull/15132) but doesn't seem
like that initial batch of renovation happened.
Release Notes:
- N/A
Michael Sloan
created
ac07b91
gpui: Don't panic on failing to set X11 cursor style (#21689)
Click to expand commit body
One more panic (well, two) that should be a `log_err`.
Release Notes:
- N/A
Cole Miller
created
4b93a5c
Make completions selector continue to show docs aside if ever shown (#21704)
Click to expand commit body
In #21286, documentation fetch was made more efficient by only
fetching the current completion. This has a side effect of causing the
aside to disappear and reappear when navigating the list. This is
particularly jarring when there isn't enough space for the aside,
causing the completions list to jump to the left.
The solution here is to continue to show the aside even if the current
selection does not yet have docs fetched.
Release Notes:
- N/A
Michael Sloan
created
c5b6d78
project_diff: Keep going after failing to rescan a buffer (#21673)
Click to expand commit body
I ran into a case locally where the project diff view was unexpectedly
empty because the first file to be scanned wasn't valid UTF-8, and the
inmost loop in `schedule_worktree_rescan` currently breaks when any
loading task fails. It seems like it might make more sense to continue
with the rest of the buffers in this case and also when
`Project::open_unstaged_changes` fails. I've left the error handling for
`update` as-is.
Release Notes:
- Fix project diff view missing files
Cole Miller
created
eb3d3ea
Adjust diagnostic in tabs behavior (#21671)
Click to expand commit body
Follow up to https://github.com/zed-industries/zed/pull/21637
After discussing about this feature with the team, we've decided that
diagnostic display in tabs should be: 1) turned off by default, and 2)
only shown when there are file icons. The main reason here being to keep
Zed's UI uncluttered.
This means that you can technically have this setting:
```
"tabs": {
"show_diagnostics": "all"
},
```
...and still don't see any diagnostics because you're missing
`file_icons": true`.
| Error with file icons | Error with no file icons |
|--------|--------|
| <img width="800" alt="Screenshot 2024-12-06 at 21 05 13"
src="https://github.com/user-attachments/assets/babf9cc3-b3b0-492e-9748-3e97d96ce90e">
| <img width="800" alt="Screenshot 2024-12-06 at 21 05 24"
src="https://github.com/user-attachments/assets/5247a5f1-55a0-4c56-8aaf-a0cdd115464f">
|
Release Notes:
- N/A
Danilo Leal
created
fdc7751
toolchains: Do not use as_json representation for PartialEq (#21682)
Click to expand commit body
Closes #21679
Release Notes:
- N/A
Piotr Osiewicz
created
f561a91
lsp: Add support for didRename/willRename LSP messages (#21651)
Click to expand commit body
Closes #21564
Notably, RA will now rename module references if you change the source
file name via our project panel.
This PR is a tad bigger than necessary as I torn out the Model<> from
didSave watchers (I tried to reuse that code for the same purpose).
Release Notes:
- Added support for language server actions being executed on file
rename.