0d8f77b
editor: Expand selection to word under cursor before expanding to next enclosing syntax node (#28864)
Click to expand commit body
Closes #27995
For strings in any language and Markdown, `select_larger_syntax_node`
will first select the word and then expand from there if:
- The cursor is on the word.
- The selection is inside the word.
It will not select the word and will directly proceed to expand if:
- The word is already selected.
- Multiple partial words are selected.
Todo:
- [x] Tests
Release Notes:
- Fixed `select_larger_syntax_node` to first expand to the word within a
string, and then to the larger syntax node.
Smit Barmase
created
cb79420
agent: Show an error when the model requests limit has been reached (#28868)
Click to expand commit body
This PR adds an error message when the model requests limit has been
hit.
Release Notes:
- N/A
Co-authored-by: Oleksiy Syvokon <oleksiy.syvokon@gmail.com>
Marshall Bowers
and
Oleksiy Syvokon
created
c641209
agent: Add GitHub action for daily eval run (#28863)
25956c4
lsp: Register buffers with language server when querying inlay hints (#28855)
Click to expand commit body
We register buffers with language servers lazily when in multi-buffer
(when the excerpt is interacted with); this does not account for inlay
hints, of which a mere presence on a screen is enough to query a
language server with a path it does not recognize. This posed a problem
with typescript-language-server, which sent a notification to the user
whenever they had a multibuffer open with inlay hints enabled.
Closes #ISSUE
Release Notes:
- Fixed annoying pop-up with typescript-language-server that happened in
multi-buffers with inlay hints enabled.
Piotr Osiewicz
created
4efabe1
debugger: Add Debug Panel context menu (#28847)
Click to expand commit body
This PR adds a debug panel context menu that will allow a user to select
which debug session items are visible.
The context menu will add to the pane that was right clicked on.
<img width="1275" alt="Screenshot 2025-04-16 at 2 43 36 AM"
src="https://github.com/user-attachments/assets/330322ff-69db-4731-bbaf-3544d53f2f15"
/>
Release Notes:
- N/A
Anthony Eid
created
320abe9
Agent Eval: Check if SHA already fetched (#28846)
Click to expand commit body
Release Notes:
- N/A
Michael Sloan
created
9a9f2e7
Agent Eval: Initial support for running examples repeatedly (#28844)
Click to expand commit body
Not ideal as it creates a separate worktree for each repetition
Release Notes:
- N/A
Closes #28629
Azure seems to break if this is set.
Release Notes:
- git: Stop sending a custom HTTP header on remote operations
Conrad Irwin
created
f3f2c6d
Fix commondir discovery for git submodules (#28802)
Click to expand commit body
The implementation of commondir discovery in #27885 was wrong, most
significantly for submodules but also for worktrees in rarer cases. The
correct procedure, implemented in this PR, is:
> If `.git` is a file, look at the `gitdir` it points to. If that
directory has a file called `commondir`, read that file to find the
commondir. (This is what happens for worktrees.) Otherwise, the
commondir is the same as the gitdir. (This is what happens for
submodules.)
Release Notes:
- N/A
Cole Miller
created
41cffa6
Fix anchor comparison in multi buffer after expanding excerpts (#28828)
Click to expand commit body
Release Notes:
- Fixed incorrect excerpt comparison when replacing them
Co-authored-by: Conrad Irwin <conrad.irwin@gmail.com>
Co-authored-by: Conrad Irwin <conrad@zed.dev>
Kirill Bulatov
,
Conrad Irwin
, and
Conrad Irwin
created
This PR adds a `GET /billing/usage` endpoint for retrieving billing
usage to show on the `zed.dev/account` page.
Release Notes:
- N/A
Marshall Bowers
created
222d4a2
agent: Add telemetry for eval runs (#28816)
Click to expand commit body
Release Notes:
- N/A
---------
Co-authored-by: Joseph <joseph@zed.dev>
Thomas Mickley-Doyle
and
Joseph
created
1eb9486
docs: Update Rails test task to run using name (#28574)
Click to expand commit body
The author of Rails' minitest integration
[recommended](https://github.com/zed-extensions/ruby/issues/56#issuecomment-2795010202)
using the test name rather than line number.
This solves the problem in
https://github.com/zed-extensions/ruby/issues/56.
Note that everything is within `command`. I first tried using `args`:
```json
{
"command": "bin/rails",
"args": ["test", "$ZED_RELATIVE_FILE -n /$ZED_SYMBOL/"],
"tags": ["ruby-test"]
}
```
but minitest receives this as:
```
Run options: -n "/\"foo bar\"/" --seed 31855
```
which doesn't match due to the escaping.
Release Notes:
- N/A
Closes #28782
The linked template path was updated in #28250. This PR also adds the
change to the zed action.
Since the issue template link was also referenced in workspace, I
updated that occurrence to use the `FileBugReport` action instead. For
that, I had to move the action to `zed_actions`. However, with this
change only one link has to be updated and any database related errors
will have the zed version specs attached to them automatically.
Release Notes:
- Fixed an issue where the `file bug report` action would redirect to an
outdated URL.
Finn Evers
created
1d98b33
git_panel: Pad end of list to avoid obscuring final entry with horizontal scrollbar (#28823)
4e8ecfc
Increase `cx.condition` timeout to fix flaky test (#28822)
Click to expand commit body
We've been seeing `test_no_duplicated_completion_requests` fail randomly
with the error "condition timed out".
But it's always failing on MacOS, and MacOS sets a shorter timeout of
100ms, compared to 1s from other platforms, this PR increases MacOS's
timeout to match other platforms'.
Release Notes:
- N/A
- **Clear diagnostics cache when toggling warnings**
- **Fix focus when first adding excerpts**
Closes #ISSUE
Release Notes:
- N/A *or* Added/Fixed/Improved ...
Conrad Irwin
created
f1f5d60
debugger: Save debug session layout when changing focus or closing session (#28788)
Click to expand commit body
This fixes a bug where resizing the panes wouldn't be serialized and
persist
Release Notes:
- N/A
Co-authored-by: Piotr Osiewicz <peterosiewicz@gmail.com>
This PR adds a new `subscription_usages` table to the LLM database.
We'll use this table to track usage by subscribers.
Records will be looked up using `(user_id, period_start_at,
period_end_at)` to find the record for a user's current subscription
period.
Release Notes:
- N/A
Marshall Bowers
created
91755b2
agent: Add scrollbar to the settings view (#28814)
Click to expand commit body
Release Notes:
- agent: Added a scrollbar to the panel settings view.
We ran the locator after configuring the debugger binary which cause the
binary to never use the configuration from the cargo locator. This PR
fixes this by correcting the order of configuration.
co-authored-by Anthony Eid <anthony@zed.dev>
Release Notes:
- N/A
---------
Co-authored-by: piotr <piotr@zed.dev>
Anthony Eid
and
piotr
created
dad6067
collab: Add support for subscribing to Zed Pro trials (#28812)
Click to expand commit body
This PR adds support for subscribing to Zed Pro trials (and then
upgrading from a trial to Zed Pro).
Release Notes:
- N/A
Marshall Bowers
created
5619a3e
editor: Fix bad `hide_mouse_cursor` call in `find_all_references` (#28810)
Click to expand commit body
Release Notes:
- N/A
Smit Barmase
created
06ad45c
Fix rejecting multiple hunks in `AgentDiff` (#28806)
Click to expand commit body
Release Notes:
- Fixed a bug that caused `Reject All` to not always reject _all_ the
hunks.
Co-authored-by: Max Brunsfeld <maxbrunsfeld@gmail.com>
Antonio Scandurra
and
Max Brunsfeld
created
7e63870
docs: Add troubleshooting guide for Linux audio issues (#28803)
Click to expand commit body
These steps solved audio issues on my system (Tuxedo OS), but should be
applicable to any PipeWire/PulseAudio system that has more than one
audio interface.
I suspect that enabling `rtc_use_pipewire` in [LiveKit SDK](https://github.com/livekit/rust-sdks/blob/0773bcec4e24812b382e71166b2ab359bf1a9384/webrtc-sys/libwebrtc/build_linux.sh#L105C1-L105C27)
could help as well, but I haven't tried it.
Release Notes:
- N/A
Oleksiy Syvokon
created
0182e09
eval: Do not create run files for skipped examples (#28800)
Click to expand commit body
Release Notes:
- N/A
Agus Zubiaga
created
6f6e207
editor: Move mouse context menu code actions at bottom (#28799)
Click to expand commit body
Release Notes:
- N/A
Smit Barmase
created
149cdec
collab: Add kind and period start/end timestamps to `billing_subscriptions` (#28796)
Click to expand commit body
This PR updates the `billing_subscriptions` table with some new columns
- `kind` - The kind of the description (used to denote Zed Pro vs
existing)
- `stripe_current_period_start` - The Stripe timestamp of when the
subscriptions current period starts
- `stripe_current_period_end` - The Stripe timestamp of when the
subscriptions current period ends
Release Notes:
- N/A
Co-authored-by: Mikayla <mikayla@zed.dev>
Marshall Bowers
and
Mikayla
created
92dc812
git_ui: Fix commit/amend telemetry and amend click from commit modal (#28795)
Click to expand commit body
Release Notes:
- N/A
Smit Barmase
created
c7e80c8
gemini: Pass system prompt as system instructions (#28793)
Click to expand commit body
https://ai.google.dev/gemini-api/docs/text-generation#system-instructions
Release Notes:
- agent: Improve performance of Gemini models
Bennet Bo Fenner
created
c381a50
agent: Show a warning when some tools are incompatible with the selected model (#28755)
Click to expand commit body
WIP
<img width="644" alt="image"
src="https://github.com/user-attachments/assets/b24e1a57-f82e-457c-b788-1b314ade7c84"
/>
<img width="644" alt="image"
src="https://github.com/user-attachments/assets/b158953c-2015-4cc8-b8ed-35c6fcbe162d"
/>
Release Notes:
- agent: Improve compatibility with Gemini Tool Calling APIs. When a
tool is incompatible with the Gemini APIs a warning indicator will be
displayed. Incompatible tools will be automatically excluded from the
conversation
---------
Co-authored-by: Danilo Leal <daniloleal09@gmail.com>
Bennet Bo Fenner
and
Danilo Leal
created
ff4334e
eval: Fix stalling on tool confirmation (#28786)
Click to expand commit body
The `always_allow_tool_actions` setting would get overridden with the
default when we loaded each example project, leading to examples
stalling when they run a tool that needed confirmation. There's now a
separate `runner_settings.json` file where we can configure the
environment for the eval.
Release Notes:
- N/A
---------
Co-authored-by: Oleksiy <oleksiy@zed.dev>
Agus Zubiaga
and
Oleksiy
created
b1e4e60
agent: Add more Rust code examples, update TODO check (#28737)
Click to expand commit body
Release Notes:
- N/A
Thomas Mickley-Doyle
created
d0f8064
gpui: Fix `snap_to_window_with_margin` when window has client inset (#27330)
Click to expand commit body
Release Notes:
- Fixed popup menu snap to window to leave margin on Linux.
This change to continue #17159 to fix same thing on Linux.
| Before | After |
| -- | -- |
| 
|

|
Jason Lee
created
b6cce1e
collab: Add support for launching a general-purpose billing portal session (#28785)
Click to expand commit body
This PR adds a new `ManageSubscriptionIntent` that allows uses to launch
a general-purpose billing portal session to manage their subscription.
Release Notes:
- N/A
Marshall Bowers
created
05fc9ee
call: Fix crash when screensharing on MacOS (#28784)
Click to expand commit body
Closes #ISSUE
Release Notes:
- Fixed a crash when screensharing on MacOS
Co-authored-by: Conrad <conrad@zed.dev>
Co-authored-by: Anthony Eid <hello@anthonyeid.me>
Piotr Osiewicz
,
Conrad
, and
Anthony Eid
created
8f52bb9
agent: Add ability to interrupt current generation with a new message (#28762)
Click to expand commit body
If you wanted to interrupt the current LLM response that's generating to
send a follow up message, you'd need to stop it first, type your new
message, and then send it. Now, you can just type your new message while
there's a response generating and send it. This will interrupt the
previous response generation and kick off a new one.
Release Notes:
- agent: Allow to send a new message while a response is generating,
interrupting the LLM to focus instead on the most recent prompt.
Danilo Leal
created
144fd0b
Fix the git panel's commit button sometimes opening the modal (#28767)
Click to expand commit body
Release Notes:
- N/A
Cole Miller
created
cd4a3fd
debugger: Skip out-of-bounds breakpoints when deserializing (#28781)
Click to expand commit body
Previously we'd crash when deserializing a breakpoint whose row number
was out of bounds (could happen if the file was externally modified).
This PR fixes that code to skip such breakpoints.
An alternative would be to clip the deserialized `PointUtf16`, but I
think that would mostly result in nonsensical breakpoints.
Release Notes:
- N/A
Cole Miller
created
42c3f4e
debugger_ui: Preview thread state when using the dropdown (#28778)
Click to expand commit body
This PR changes the thread list dropdown menu in the debugger UI to
eagerly preview the state of a thread when selecting it, instead of
waiting until confirming the selection.
Release Notes:
- N/A
Cole Miller
created
90dec1d
collab: Add Zed Pro checkout flow (#28776)
Click to expand commit body
This PR adds support for initiating a checkout flow for Zed Pro.
Release Notes:
- N/A
Release Notes:
- "Block" diagnostics (that show up in the diagnostics view, or when
using `f8`/`shift-f8`) are rendered more clearly
- `f8`/`shift-f8` now always go to the "next" or "prev" diagnostic,
regardless of the state of the editor

---------
Co-authored-by: Kirill Bulatov <mail4score@gmail.com>
Co-authored-by: Julia Ryan <juliaryan3.14@gmail.com>
Conrad Irwin
,
Kirill Bulatov
, and
Julia Ryan
created