e227b5a
onboarding: Add young account treatment to AI upsell card (#35785)
Click to expand commit body
Release Notes: - N/A
Danilo Leal created
e227b5a
onboarding: Add young account treatment to AI upsell card (#35785)
Release Notes: - N/A
Danilo Leal created
03876d0
Add system prompt and tool permission to agent2 (#35781)
Release Notes: - N/A --------- Co-authored-by: Ben Brandt <benjamin.j.brandt@gmail.com> Co-authored-by: Max Brunsfeld <maxbrunsfeld@gmail.com>
Antonio Scandurra , Ben Brandt , and Max Brunsfeld created
4dbd24d
Reduce amount of allocations in RustLsp label handling (#35786)
There can be a lot of completions after all Release Notes: - N/A
Lukas Wirth created
c397027
Add `release_channel` into the span fields list (#35783)
Follow-up of https://github.com/zed-industries/zed/pull/35729 Release Notes: - N/A Co-authored-by: Marshall Bowers <marshall@zed.dev>
Kirill Bulatov and Marshall Bowers created
f5f837d
languages: Fix rust completions not having proper detail labels (#35772)
rust-analyzer changed the format here a bit some months ago which partially broke our nice detailed highlighted completion labels. The brings that back while also cleaning up the code a bit. Also fixes a bug where disabling rust-analyzers snippet callable completions would fully break them. Release Notes: - N/A
Lukas Wirth created
5b1b3c5
language_models: Fix high memory consumption while using Agent Panel (#35764)
Closes #31108 The `num_tokens_from_messages` method we use from `tiktoken-rs` creates new BPE every time that method is called. This creation of BPE is expensive as well as has some underlying issue that keeps memory from releasing once the method is finished, specifically noticeable on Linux. This leads to a gradual increase in memory every time that method is called in my case around +50MB on each call. We call this method with debounce every time user types in Agent Panel to calculate tokens. This can add up really fast. This PR lands quick fix, while I/maintainers figure out underlying issue. See upstream discussion: https://github.com/zurawiki/tiktoken-rs/issues/39. Here on fork https://github.com/zed-industries/tiktoken-rs/pull/1, instead of creating BPE instances every time that method is called, we use singleton BPE instances instead. So, whatever memory it is holding on to, at least that is only once per model. Before: Increase of 700MB+ on extensive use On init: <img width="500" alt="prev-init" src="https://github.com/user-attachments/assets/70da7c44-60cb-477b-84aa-7dd579baa3da" /> First message: <img width="500" alt="prev-first-call" src="https://github.com/user-attachments/assets/599ffc48-3ad3-4729-b94c-6d88493afdbf" /> Extensive use: <img width="500" alt="prev-extensive-use" src="https://github.com/user-attachments/assets/e0e6b688-6412-486d-8b2e-7216c6b62470" /> After: Increase of 50MB+ on extensive use On init: <img width="500" alt="now-init" src="https://github.com/user-attachments/assets/11a2cd9c-20b0-47ae-be02-07ff876e68ad" /> First message: <img width="500" alt="now-first-call" src="https://github.com/user-attachments/assets/ef505f8d-cd31-49cd-b6bb-7da3f0838fa7" /> Extensive use: <img width="500" alt="now-extensive-use" src="https://github.com/user-attachments/assets/513cb85a-a00b-4f11-8666-69103a9eb2b8" /> Release Notes: - Fixed issue where Agent Panel would cause high memory consumption over prolonged use.
smit created
b4a441f
Add UnwrapSyntaxNode action (#31421)
Remake of #8967 > Hey there, > > I have started relying on this action, that I've also put into VSCode as [an extension](https://github.com/Gregoor/soy). On some level I don't know how people code (cope?) without it: > > Release Notes: > > * Added UnwrapSyntaxNode action > > https://github.com/zed-industries/zed/assets/4051932/d74c98c0-96d8-4075-9b63-cea55bea42f6 > > Since I had to put it into Zed anyway to make it my daily driver, I thought I'd also check here if there's an interest in shipping it by default (that would ofc also personally make my life better, not having to maintain my personal fork and all). > > If there is interest, I'd be happy to make any changes to make this more mergeable. Two TODOs on my mind are: > > * unwrap multiple into single (e.g. `fn(≤a≥, b)` to `fn(≤a≥)`) > * multi-cursor > * syntax awareness, i.e. only unwrap if it does not break syntax (I added [a coarse version of that for my VSC extension](https://github.com/Gregoor/soy/blob/main/src/actions/unwrap.ts#L29)) > > Somewhat off-topic: I was happy to see that you're [also](https://github.com/Gregoor/soy/blob/main/src/actions/unwrap.test.ts) using rare special chars in test code to denote cursor positions. Release Notes: - Added UnwrapSyntaxNode action --------- Co-authored-by: Peter Tripp <peter@zed.dev>
Gregor and Peter Tripp created
f1e69f6
gpui: Impl Default for ClickEvent (#35751)
While default for ClickEvent shouldn't be used much this is helpful for other projects using gpui besides Zed. Mainly because the orphan rule prevents those projects from implementing their own default trait cc: @huacnlee Release Notes: - N/A
Anthony Eid created
bd1c26c
Fix interrupting ACP threads and CC cancellation (#35752)
Fixes a bug where generation wouldn't continue after interrupting the agent, and improves CC cancellation so we don't display "[Request interrupted by user]" Release Notes: - N/A --------- Co-authored-by: Cole Miller <cole@zed.dev>
Agus Zubiaga and Cole Miller created
1907b16
Establish WebSocket connection to Cloud (#35734)
This PR adds a new WebSocket connection to Cloud. This connection will be used to push down notifications from the server to the client. Release Notes: - N/A --------- Co-authored-by: Marshall Bowers <git@maxdeviant.com>
Richard Feldman and Marshall Bowers created
c595a75
Fix git hunk staging on windows (#35755)
We were failing to flush the Git process's `stdin` before dropping it. Release Notes: - N/A
Max Brunsfeld created
8e290b4
thread view: Add UI refinements (#35754)
More notably around how we render tool calls. Nothing too drastic, though. Release Notes: - N/A
Danilo Leal created
58392b9
cloud_api_types: Add types for WebSocket protocol (#35753)
This PR adds types for the Cloud WebSocket protocol to the `cloud_api_types` crate. Release Notes: - N/A
Marshall Bowers created
9358690
Fix flicker when agent plan updates (#35739)
Currently, when the agent updates its plan, there are a few frames where the text after `Current:` in the plan summary is blank, causing a flicker. This is because we treat that field as markdown, and the `MarkdownElement` renders as blank until the raw text has finished parsing in the background. This PR fixes the flicker by changing `Markdown::new_text` to optimistically render the source as a single `MarkdownEvent::Text` span until background parsing has finished. Release Notes: - N/A Co-authored-by: Agus Zubiaga <agus@zed.dev>
Cole Miller and Agus Zubiaga created
3ea90e3
debugger: Filter out debug scenarios with invalid Adapters from debug picker (#35744)
I also removed a debug assertion that wasn't true when a debug session was restarting through a request, because there wasn't a booting task Zed needed to run before the session. I renamed SessionState::Building to SessionState::Booting as well, because building implies that we're building code while booting the session covers more cases and is more accurate. Release Notes: - debugger: Filter out more invalid debug configurations from the debug picker Co-authored-by: Remco Smits <djsmits12@gmail.com>
Anthony Eid and Remco Smits created
a5dd8d0
Recognize pixi.lock as YAML (#35747)
Release Notes: - N/A
Peter Tripp created
250c51b
Fix syntax highlighting in ACP diffs (#35748)
Release Notes: - N/A
Agus Zubiaga created
010441e
debugger: Show run to cursor in editor's context menu (#35745)
This also fixed a bug where evaluate selected text was an available option when the selected debug session was terminated. Release Notes: - debugger: add Run to Cursor back to Editor's context menu Co-authored-by: Remco Smits <djsmits12@gmail.com>
Anthony Eid and Remco Smits created
f9038f6
Add key contexts for Pickers (#35665)
Closes: https://github.com/zed-industries/zed/issues/35430 Added: - Workspace > CommandPalette - Workspace > GitBranchSelector - Workspace > GitRepositorySelector - Workspace > RecentProjects - Workspace > LanguageSelector - Workspace > IconThemeSelector - Workspace > ThemeSelector Release Notes: - Added new keymap contexts for various Pickers - CommandPalette, GitBranchSelector, GitRepositorySelector, RecentProjects, LanguageSelector, IconThemeSelector, ThemeSelector
Peter Tripp created
a80da78
lsp: Advertise support for markdown in completion documentation (#35727)
Release Notes: - N/A
xdBronch created
fb1f9d1
lsp: Correctly serialize errors for LSP requests + improve handling of unrecognized methods (#35738)
We used to not respond at all to requests that we didn't have a handler for, which is yuck. It may have left the language server waiting for the response for no good reason. The other (worse) finding is that we did not have a full definition of an Error type for LSP, which made it so that a spec-compliant language server would fail to deserialize our response (with an error). This then could lead to all sorts of funkiness, including hangs and crashes on the language server's part. Co-authored-by: Lukas <lukas@zed.dev> Co-authored-by: Remco Smits <djsmits12@gmail.com> Co-authored-by: Anthony Eid <hello@anthonyeid.me> Closes #ISSUE Release Notes: - Improved reporting of errors to language servers, which should improve the stability of LSPs ran by Zed. --------- Co-authored-by: Lukas <lukas@zed.dev> Co-authored-by: Remco Smits <djsmits12@gmail.com> Co-authored-by: Anthony Eid <hello@anthonyeid.me>
Piotr Osiewicz , Lukas , Remco Smits , and Anthony Eid created
794098e
Update instructions for local collaboration (#35689)
Release Notes: - N/A
Mikayla Maki created
b08e26d
collab: Remove unused `StripeBilling` methods (#35740)
This PR removes some unused methods from the `StripeBilling` object. Release Notes: - N/A
Marshall Bowers created
7405974
collab: Remove Stripe events polling (#35736)
This PR removes the Stripe event polling from Collab, as it has been moved to Cloud. Release Notes: - N/A
Marshall Bowers created
ebda6b8
keymap_ui: Show matching bindings (#35732)
Closes #ISSUE Adds a bit of text in the keybind editing modal when there are existing keystrokes with the same key, with the ability for the user to click the text and have the keymap editor search be updated to show only bindings with those keystrokes Release Notes: - Keymap Editor: Added a warning to the keybind editing modal when existing bindings have the same keystrokes. Clicking the warning will close the modal and show bindings with the entered keystrokes in the keymap editor. This behavior was previously possible with the `keymap_editor::ShowMatchingKeybinds` action in the Keymap Editor, and is now present in the keybind editing modal as well.
Ben Kunkle created
55b4df4
Add a way to distinguish metrics by Zed's release channel (#35729)
Release Notes: - N/A --------- Co-authored-by: Oleksiy Syvokon <oleksiy.syvokon@gmail.com>
Kirill Bulatov and Oleksiy Syvokon created
b8e8fbd
ollama: Add support for gpt-oss (#35648)
There is a know bug when calling tool discussion: https://discord.com/channels/1128867683291627614/1402385744038858853 I have raised the issue with ollama team and they are currently fixing it. Release Notes: - ollama: Add support for gpt-oss
Umesh Yadav created
33f198f
Thread view scrollbar (#35655)
This also adds a convenient `Scrollbar:auto_hide` function so that we don't have to handle that at the callsite. Release Notes: - N/A --------- Co-authored-by: David Kleingeld <davidsk@zed.dev>
Agus Zubiaga and David Kleingeld created
3c602fe
docs: Cleanup tool use documentation (#35725)
Remove redundant documentation about tool use. Release Notes: - N/A
Peter Tripp created
334bdd0
Fix acp thread entry width (#35723)
Release Notes: - N/A
Agus Zubiaga created
69dc870
Fix CC todo tool parsing (#35721)
It looks like the TODO tool call no longer requires a priority. Release Notes: - N/A
Agus Zubiaga created
22fa41e
Handle CC thinking (#35722)
Release Notes: - N/A
Agus Zubiaga created
7e790f5
Bump Zed to v0.200 (#35719)
🎉 Release Notes: -N/A
Joseph T. Lyons created
3bbd32b
Support CC `migrate-installer` path (#35717)
If we can't find CC in the PATH, we'll now fall back to a known local install path. Release Notes: - N/A
Agus Zubiaga created
ecd182c
Drop native agent session when `AcpThread` gets released (#35713)
Release Notes: - N/A Co-authored-by: Ben Brandt <benjamin.j.brandt@gmail.com>
Antonio Scandurra and Ben Brandt created
6f5867f
Fetch models right after signing in (#35711)
This uses the `current_user` watch in the `UserStore` instead of looping every 100ms in order to detect if the user had signed in. We are changing this because we noticed it was causing the deterministic executor in tests to never detect a "parking with nothing left to run" situation. This seems better in production as well, especially for users who never sign in. /cc @maxdeviant Release Notes: - N/A Co-authored-by: Ben Brandt <benjamin.j.brandt@gmail.com>
Antonio Scandurra and Ben Brandt created
0302f63
Ignore metadata file in `RustLspAdapter::get_cached_server_binary` (#35708)
Follows https://github.com/zed-industries/zed/pull/35642 Release Notes: - Fixed accidentally picking a non executable as a rust-analyzer server when downloading fails
Lukas Wirth created
eb4b73b
ACP champagne (#35609)
cherry pick changes from #35510 onto latest main Release Notes: - N/A --------- Co-authored-by: Nathan Sobo <nathan@zed.dev> Co-authored-by: Antonio Scandurra <me@as-cii.com> Co-authored-by: Lukas Wirth <lukas@zed.dev>
Ben Brandt , Nathan Sobo , Antonio Scandurra , and Lukas Wirth created
69794db
Prevent out of bounds access in `recursive_score_match` (#35630)
Closes https://github.com/zed-industries/zed/issues/33668 The recursive case increments both indices by 1, but only one of the two had a base case check in the function prologue so the other could spill over into a different matrix row or out of bounds entirely. Lacking a test as I haven't figured out a test case yet. Release Notes: - Fixed out of bounds panic in fuzzy matching
Lukas Wirth created
c59c436
Verify downloaded rust-analyzer and clang binaries by checking the artifact digest (#35642)
Release Notes: - Added GitHub artifact digest verification for rust-analyzer and clangd binary downloads, skipping downloads if cached binary digest is up to date - Added verification that cached rust-analyzer and clangd binaries are executable, if not they are redownloaded --------- Co-authored-by: Kirill Bulatov <kirill@zed.dev>
Lukas Wirth and Kirill Bulatov created
4012914
Respect paths' content masks when copying them from MSAA texture to drawable (#35688)
Fixes a regression introduced in https://github.com/zed-industries/zed/pull/34992 ### Background Paths are rendered first to an intermediate MSAA texture, and then copied to the final drawable. Because paths can have transparency, it's important that pixels are not copied repeatedly if paths have overlapping bounding boxes. When N paths have the same draw order, we infer that they must have disjoint bounding boxes, so that we can copy them each individually (as opposed to copying a single rect that contains them all). Previously, the bounding box that we were using to copy paths was not accounting for the path's content mask (but it is accounted for in the bounds tree that determines their draw order). This cause bugs like this, where certain path pixels spuriously had their opacity doubled: https://github.com/user-attachments/assets/d792e60c-790b-49ad-b435-6695daba430f This PR fixes that bug. * [x] mac * [x] linux * [x] windows Release Notes: - Fixed a bug where a selection's opacity was computed incorrectly when it overlapped with another editor's selections in a certain way.
Max Brunsfeld created
a884e86
Tag crash reports with panic message and release (#35692)
This _should_ allow sentry to associate related panic events with the same issue, but it doesn't change the issue title. I'm still working on figuring out how to set those fields, but in the meantime this should at least associate zed versions with crashes Release Notes: - N/A
Julia Ryan created
e8052d4
Remove payload_type (#35690)
Release Notes: - N/A
Mikayla Maki created
74e17c2
Fix panic-json writing (#35691)
We broke it in #35263 when we changed the open options to use `create_new` Release Notes: - N/A
Julia Ryan created
5317526
Simplify `ListState` API (#35685)
Follow up to: https://github.com/zed-industries/zed/pull/35670, simplifies the List state APIs so you no longer have to worry about strong vs. weak pointers when rendering list items. Release Notes: - N/A --------- Co-authored-by: Agus Zubiaga <agus@zed.dev>
Mikayla Maki and Agus Zubiaga created
d0de81b
windows: Handle scale factor change while window is maximized (#35686)
Fixes https://github.com/zed-industries/zed/issues/33257 Previously, the scale-factor-change-handling logic relied on `SetWindowPos` enqueuing a `WM_SIZE` window event. But that does not happen when the window is maximized. So when the scale factor changed, maximized windows neglected to call their `resize` callback, and would misinterpret the positions of mouse events. This PR adds special logic for maximized windows, to ensure that the size is updated appropriately. Release Notes: - N/A
Max Brunsfeld created
9caa9d0
Use new language server info on remote servers (#35682)
* Straightens out the `*_ext.rs` workflow for clangd and rust-analyzer: no need to asynchronously query for the language server, as we sync that information already. * Fixes inlay hints editor menu toggle not being shown in the remote sessions Release Notes: - Fixed inlay hints editor menu toggle not being shown in the remote sessions
Kirill Bulatov created
cc93175
Recategorize a few items in the component preview (#35681)
Release Notes: - N/A
Danilo Leal created
bc2108c
Render error state when agent binary exits unexpectedly (#35651)
This PR adds handling for the case where an agent binary exits unexpectedly after successfully establishing a connection. Release Notes: - N/A --------- Co-authored-by: Agus <agus@zed.dev>
Cole Miller and Agus created
142efba
collab: Remove unused billing queries (#35679)
This PR removes some billing-related queries that are no longer used. Release Notes: - N/A
Marshall Bowers created