fbc922a
Reduce allocations (#31223)
Click to expand commit body
Release Notes: - N/A
tidely created
fbc922a
Reduce allocations (#31223)
Release Notes: - N/A
tidely created
f435304
Use read-only access methods for read-only entity operations (#31254)
This PR replaces some `update()` calls with either `read()` or `read_with()` when the `update()` call performed read-only operations on the entity. Many more likely exist, will follow-up with more PRs. Release Notes: - N/A
Joseph T. Lyons created
508ccde
Better messaging for accounts that are too young (#31212)
Right now you find this out the first time you try and submit a completion. These changes communicate much earlier to the user what the issue is with their account and what they can do about it. Release Notes: - N/A --------- Co-authored-by: Antonio Scandurra <me@as-cii.com>
Ben Brandt and Antonio Scandurra created
9f7987c
Change default diagnostics_max_severity to 'hint' (#31229)
Closes https://github.com/blopker/codebook/issues/79 Recently, the setting `diagnostics_max_severity` was changed from `null` to `warning`in this PR: https://github.com/zed-industries/zed/pull/30316 This change has caused the various spell checking extensions to not work as expected by default, most of which use the `hint` diagnostic. This goes against user expectations when installing one of these extensions. Without `hint` as the default, extension authors will either need to change the diagnostic levels, or instruct users to add `diagnostics_max_severity` to their settings as an additional step, neither of which is a great user experience. This PR sets the default `hint`, which is closer to the original behavior before the aforementioned PR. Release Notes: - Changed `diagnostics_max_severity` to `hint` instead of `warning` by default --------- Co-authored-by: Kirill Bulatov <kirill@zed.dev>
Bo Lopker and Kirill Bulatov created
cb52acb
eval: Don't read the model from the user settings (#31230)
This PR fixes an issue where the eval was incorrectly pulling the provider/model from the user settings, which could cause problems when running certain evals. Was introduced in #30168 due to the restructuring after the removal of the `assistant` crate. Release Notes: - N/A
Marshall Bowers created
f8b997b
docs: Fix Claude Sonnet 4 model name (#31226)
This PR fixes the model name for Claude Sonnet 4 to match Anthropic's new ordering. Release Notes: - N/A
Marshall Bowers created
73a5856
docs: Add Claude 4 Sonnet to docs (#31225)
Release Notes: - N/A --------- Co-authored-by: Marshall Bowers <git@maxdeviant.com>
morgankrey and Marshall Bowers created
e3b6fa2
bedrock: Support Claude 4 models (#31214)
Release Notes: - AWS Bedrock: Added support for Claude 4.
Shardul Vaidya created
ceb5164
agent: Remove last turn after a refusal (#31220)
This is a follow-up to https://github.com/zed-industries/zed/pull/31217 that removes the last turn after we get a `refusal` stop reason, as advised by the Anthropic docs. Meant to include it in that PR, but accidentally merged it before pushing these changes 🤦🏻♂️. Release Notes: - N/A
Marshall Bowers created
24a108d
anthropic: Fix Claude 4 model display names to match official order (#31218)
Release Notes: - N/A
Umesh Yadav created
5c0b161
Handle new `refusal` stop reason from Claude 4 models (#31217)
This PR adds support for handling the new [`refusal` stop reason](https://docs.anthropic.com/en/docs/test-and-evaluate/strengthen-guardrails/handle-streaming-refusals) from Claude 4 models. <img width="409" alt="Screenshot 2025-05-22 at 4 31 56 PM" src="https://github.com/user-attachments/assets/707b04f5-5a52-4a19-95d9-cbd2be2dd86f" /> Release Notes: - Added handling for `"stop_reason": "refusal"` from Claude 4 models.
Marshall Bowers created
ad4645c
debugger: Fix environment variables not being substituted in debug tasks (#31198)
Release Notes: - Debugger Beta: Fixed a bug where environment variables were not substituted in debug tasks in some cases. Co-authored-by: Anthony Eid <hello@anthonyeid.me> Co-authored-by: Remco Smits <djsmits12@gmail.com>
Cole Miller , Anthony Eid , and Remco Smits created
37047a6
language_models: Update default/recommended Anthropic models to Claude Sonnet 4 (#31209)
This PR updates the default/recommended models for the Anthropic and Zed providers to be Claude Sonnet 4. Release Notes: - Updated default/recommended Anthropic models to Claude Sonnet 4.
Marshall Bowers created
fc78408
language_model: Allow Max Mode for Claude 4 models (#31207)
This PR adds the Claude 4 models to the list of models that support Max Mode. Release Notes: - Added Max Mode support for Claude 4 models.
Marshall Bowers created
37f49ce
collab: Add support for overage billing for Claude Sonnet 4 (#31206)
This PR adds support for billing for overages for Claude Sonnet 4. Release Notes: - N/A
Marshall Bowers created
cc42833
mistral: Add DevstralSmallLatest model to Mistral and Ollama (#31099)
Mistral just released a sota coding model: https://mistral.ai/news/devstral This PR adds support for it in both ollama and mistral Release Notes: - Add DevstralSmallLatest model to Mistral and Ollama
Umesh Yadav created
1475ace
anthropic: Add support for Claude 4 (#31203)
This PR adds support for [Claude 4](https://www.anthropic.com/news/claude-4). Release Notes: - Added support for Claude Opus 4 and Claude Sonnet 4. --------- Co-authored-by: Antonio Scandurra <me@as-cii.com> Co-authored-by: Richard Feldman <oss@rtfeldman.com>
Marshall Bowers , Antonio Scandurra , and Richard Feldman created
dd4e8b9
editor: Fix block comment incorrectly continues to next line in some cases (#31204)
Closes #31138 Fix edge case where adding newline if there is text afterwards end delimiter of multiline comment, would continue the comment prefix. This is fixed by checking for end delimiter on whole line instead of just assuming it would always be at end. - [x] Tests Release Notes: - Fixed the issue where in some cases the block comment continues to the next line even though the comment block is already closed.
smit created
b188e5d
Fix update status logic to preserve previous status (#31202)
Release Notes: - N/A
Joseph T. Lyons created
e3d3dae
Fix bug where deleted toolchains stay selected on startup (#30562)
This affects python's when debugging because the selected toolchain is used as the python binary to spawn Debugpy Release Notes: - Fix bug where selected toolchain didn't exist
Anthony Eid created
ced8e4d
debugger beta: Move path resolution to resolve scenario instead of just in new session modal (#31185)
This move was done so debug configs could use path resolution, and saving a configuration from the new session modal wouldn't resolve paths beforehand. I also added an integration test to make sure path resolution happens from an arbitrary config. The test was placed under the new session modal directory because it has to do with starting a session, and that's what the new session modal typically does, even if it's implicitly used in the test. In the future, I plan to add more tests to the new session modal too. Release Notes: - debugger beta: Allow configs from debug.json to resolve paths
Anthony Eid created
fa1abd8
debugger: Always focus the active session whenever it is stopped (#31182)
Closes #ISSUE Release Notes: - debugger: Fixed child debug sessions taking precedence over the parents when spawned.
Piotr Osiewicz created
ee4e43f
linux: Fix wrong keys are reported when using German layout (#31193)
Part of #31174 Because the keyboard layout parameter wasn’t set correctly, characters don’t show up properly when using the German layout at launch. To reproduce: Switch to the German layout, launch Zed, and press the `7` key. it should output `7`, but instead it outputs `è`. Release Notes: - N/A
张小白 created
d61e1e2
docs: Fix debugger docs link from summary page (#31195)
Release Notes: - N/A
Anthony Eid created
3c03d53
debugger: Use integrated terminal for Python (#31190)
Closes #ISSUE Release Notes: - debugger: Use integrated terminal for Python, allowing one to interact with standard input/output when debugging Python projects.
Piotr Osiewicz created
8ab664a
debugger beta: Update debugger docs for beta (#31192)
The docs include basic information on starting a session but will need to be further iterated upon once we get deeper into the beta Release Notes: - N/A
Anthony Eid created
2044426
gpui: Improve displayed keybinds shown in macOS application menus (#28440)
Closes #28164 This PR adresses inproper keybinds being shown in MacOS application menus. The issue arises because the keybinds shown in MacOS application menus are unaware of keybind contexts (they are only ever updated [on a keymap-change](https://github.com/zed-industries/zed/blob/6d1dd109f554579bdf676c14b69deb9e16acc043/crates/zed/src/zed.rs#L1421)). Thus, using the keybind that was added last in the keymap can result in incorrect keybindings being shown quite frequently, as they might belong to a different context not generally available (applies the same for the default keymap as well as for user-keymaps). For example, the linked issue arises because the keybind found last in the iterator is https://github.com/zed-industries/zed/blob/6d1dd109f554579bdf676c14b69deb9e16acc043/assets/keymaps/vim.json#L759, which is not even available in most contexts (and, additionally, the `e` of `escape` is rendered here as a keybind which seems to be a seperate issue). Additionally, this would result in inconsistent behavior with some Vim-keybinds. A vim-keybind would be used only when available but otherwise the default binding would be shown (see `Undo` and `Redo` as an example below), which seems inconsistent. This PR fixes this by instead using the first keybind found in keymaps, which is expected to be the keybind available in most contexts. Additionally, this allows rendering some more keybinds for actions which vim-keybind cannot be displayed (Find In Project for example) .This seems to be more reasonable until [this related comment](https://github.com/zed-industries/zed/blob/6d1dd109f554579bdf676c14b69deb9e16acc043/crates/gpui/src/keymap.rs#L199-L204) is resolved. This includes a revert of #25878 as well. With this change, the change made in #25878 becomes obsolete and would also regress the behavior back to the state prior to that PR. | | `main` | This PR | | --- | --- | --- | | Edit-menu | <img width="220" alt="main_edit" src="https://github.com/user-attachments/assets/9f793b64-80b6-4a5b-b7e5-628f0d552166" /> | <img width="220" alt="PR_edit" src="https://github.com/user-attachments/assets/bccb444c-7a49-41d5-9377-d90b1639a3ed" /> | | View-menu | <img width="214" alt="main_view" src="https://github.com/user-attachments/assets/0e6a6632-df02-4883-9f5a-facb4d0263b5" /> | <img width="214" alt="PR_view" src="https://github.com/user-attachments/assets/14600ece-fcaa-447a-94ef-4fa350eca49c" /> | Release Notes: - Improved keybinds displayed for actions in MacOS application menus.
Finn Evers created
02fa6f6
Surface version to install in update status tooltip (#31179)
Release Notes: - Surfaced the version that will be installed, in a tooltip, when hovering on the `Click to restart and update Zed` status.
Joseph T. Lyons created
80a00cd
debugger beta: Fix panic that could occur when parsing an invalid dap schema (#31175)
Release Notes: - N/A
Anthony Eid created
06f725d
debugger beta: Fix dap_schema for DAP extensions (#31173)
We now actually call dap_schema provided by extensions instead of defaulting to a null `serde_json::Value`. We still need to update the Json LSP whenever a new dap is installed. Release Notes: - N/A
Anthony Eid created
baf6d82
Handle `~` in debugger launch modal (#31087)
@Anthony-Eid I'm pretty sure this maintains the behavior of #30680, and I added some tests to be sure. Release Notes: - `~` now expands to the home directory in the debugger launch modal. --------- Co-authored-by: Piotr Osiewicz <24362066+osiewicz@users.noreply.github.com>
Julia Ryan and Piotr Osiewicz created
28ec7fb
debugger: Add telemetry for new session experience (#31171)
This includes the following data:
- Where we spawned the session from (gutter, scenario list, custom form
filled by the user)
- Which debug adapter was used
- Which dock the debugger is in
Closes #ISSUE
Release Notes:
- debugger: Added telemetry for new session experience that includes
data about:
- How a session was spawned (gutter, scenario list or custom form)
- Which debug adapter was used
- Which dock the debugger is in
---------
Co-authored-by: Joseph T. Lyons <JosephTLyons@gmail.com>
Piotr Osiewicz and Joseph T. Lyons created
0415e85
debugger: Use current worktree directory when spawning an adapter (#31054)
/cc @osiewicz I think bringing this back should fix **bloveless** his issue with go debugger. This is also nice, so people are not forced to give us a working directory, because most adapters will use their **cwd** as the project root directory. For JavaScript, you don't need to specify the **cwd** anymore because it can already infer it Release Notes: - debugger beta: Fixed some adapters fail to determine the right root level of the debug program.
Remco Smits created
1c9b818
debugger: Use DAP schema to configure daps (#30833)
This PR allows DAPs to define their own schema so users can see completion items when editing their debug.json files. Users facing this aren’t the biggest chance, but behind the scenes, this affected a lot of code because we manually translated common fields from Zed's config format to be adapter-specific. Now we store the raw JSON from a user's configuration file and just send that. I'm ignoring the Protobuf CICD error because the DebugTaskDefinition message is not yet user facing and we need to deprecate some fields in it. Release Notes: - debugger beta: Show completion items when editing debug.json - debugger beta: Breaking change, debug.json schema now relays on what DAP you have selected instead of always having the same based values. --------- Co-authored-by: Remco Smits <djsmits12@gmail.com> Co-authored-by: Cole Miller <m@cole-miller.net> Co-authored-by: Cole Miller <cole@zed.dev>
Anthony Eid , Remco Smits , Cole Miller , and Cole Miller created
0d7f484
Restore scroll after undo edit prediction (#31162)
Closes #29652 Release Notes: - Fixed an issue where the scroll and cursor position would not be restored after undoing an inline completion
Ben Kunkle created
ab01712
agent: Improve Gemini support in the edit_file tool (#31116)
This change improves `eval_extract_handle_command_output` results for all models: Model | Pass rate before | Pass rate after ----------------------------|------------------|---------------- claude-3.7-sonnet | 0.96 | 0.98 gemini-2.5-pro | 0.35 | 0.86 gpt-4.1 | 0.81 | 1.00 Part of this improvement comes from more robust evaluation, which now accepts multiple possible outcomes. Another part is from the prompt adaptation: addressing common Gemini failure modes, adding a few-shot example, and, in the final commit, auto-rewriting instructions for clarity and conciseness. This change still needs validation from larger end-to-end evals. Release Notes: - N/A
Oleksiy Syvokon created
71fb17c
debugger: Update the default layout (#31057)
- Remove the modules list and loaded sources list from the default layout - Move the console to the center pane so it's visible initially Release Notes: - Debugger Beta: changed the default layout of the debugger panel, hiding the modules list and loaded sources list by default and making the console more prominent. --------- Co-authored-by: Remco Smits <djsmits12@gmail.com>
Cole Miller and Remco Smits created
97e437c
Remove test-support feature from auto_update's gpui dep (#31147)
Fixes `cargo run` on main. Release Notes: - N/A
Cole Miller created
66667d1
Add kernel detection for language support of runnable markdown cells (#29664)
Closes #27757 Release Notes: - List of runnable markdown cells is now based on detected jupyter kernels instead of hardcoded to Python and TypeScript
Jon Gretar Borgthorsson created
dce22a9
project search: Reduce clones and allocations (#31133)
Release Notes: - N/A
Remco Smits created
5f452db
debugger: Add a couple more keybindings (#31103)
- Add missing handler for `debugger::Continue` so `f5` works - Add bindings based on VS Code for `debugger::Restart` and `debug_panel::ToggleFocus` - Remove breakpoint-related buttons from the debug panel's top strip, and surface the bindings for `editor::ToggleBreakpoint` in gutter tooltip instead Release Notes: - Debugger Beta: Added keybindings for `debugger::Continue`, `debugger::Restart`, and `debug_panel::ToggleFocus`. - Debugger Beta: Removed breakpoint-related buttons from the top of the debug panel. - Compatibility note: on Linux, `ctrl-shift-d` is now bound to `debug_panel::ToggleFocus` by default, instead of `editor::DuplicateLineDown`.
Cole Miller created
b2a9209
debugger: Add actions and keybindings for opening the thread and session menus (#31135)
Makes it possible to open and navigate these menus from the keyboard. I also removed the eager previewing behavior for the thread picker, which was buggy and came with a jarring layout shift. Release Notes: - Debugger Beta: Added the `debugger: open thread picker` and `debugger: open session picker` actions.
Cole Miller created
eb35d25
collab: Drop `billing_events` table (#31131)
This PR drops the `billing_events` table, as we're no longer using it. Release Notes: - N/A
Marshall Bowers created
8742d4a
editor: Fix regression causing incorrect delimiter on newline in case of multiple comment prefixes (#31129)
Closes #31115 This fixes regression caused by https://github.com/zed-industries/zed/pull/30824 while keeping that fix. - [x] Test Release Notes: - Fixed the issue where adding a newline after the `///` comment would extend it with `//` instead of `///` in Rust and other similar languages.
smit created
b829f72
collab: Prefer the plan on the subscription over the one on the usage (#31127)
This PR makes it so we always prefer the plan on the subscription. The plan stored on the subscription usage is informational only. Release Notes: - N/A
Marshall Bowers created
ffa8310
collab: Drop `monthly_usages` and `lifetime_usages` tables (#31124)
This PR drops the `monthly_usages` and `lifetime_usages` tables from the LLM database, as they are no longer used. Release Notes: - N/A
Marshall Bowers created
3fda539
Allow updater to check for updates after downloading one (#31066)
This PR brings back https://github.com/zed-industries/zed/pull/30969 and adds some initial testing. https://github.com/zed-industries/zed/pull/30969 did indeed allow Zed to continue doing downloads after downloading one, but it introduced a bug where Zed would download a new binary every time it polled, even if the version was the same as the running instance. This code could use a refactor to allow more / better testing, but this is a start. Release Notes: - N/A
Joseph T. Lyons created
b444b32
collab: Remove `GET /billing/monthly_spend` endpoint (#31123)
This PR removes the `GET /billing/monthly_spend` endpoint, as it is no longer used. Release Notes: - N/A
Marshall Bowers created
f196288
docs: Fix broken link in ai/configuration (#31119)
Release Notes: - N/A
Peter Tripp created
e30cc13
Rename 'Quit' to 'Quit Zed' in macOS menu (#31109)
This is standard for Mac apps. I should have included this with [my other PR](https://github.com/zed-industries/zed/pull/30697), but didn’t catch it. 🤦🏻♂️ Release Notes: - N/A
Rob McBroom created