a63fada
expand all diff hunks and implement todo
Cole Miller created
a63fada
expand all diff hunks and implement todo
Cole Miller created
23adeab
wip
Co-authored-by: Cameron <cameron@zed.dev>
Cole Miller and Cameron created
6e0f65e
sketch in split editor and start working on new logic in block map
Co-authored-by: cameron <cameron.studdstreet@gmail.com>
Cole Miller and cameron created
370d4ce
rope: Micro optimize the creation of masks (#41132)
Using compiler explorer I saw that the compiler wasn't clever enough to
optimise away the branches in the masking code. I thought the compiler
would have a better chance if we always branched, which [turned out to
be the case](https://godbolt.org/z/PM594Pz18).
Running the benchmarks the biggest benefit I saw was:
```
push/65536 time: [2.9067 ms 2.9243 ms 2.9417 ms]
thrpt: [21.246 MiB/s 21.373 MiB/s 21.502 MiB/s]
change:
time: [-8.3452% -7.2617% -6.2009%] (p = 0.00 < 0.05)
thrpt: [+6.6108% +7.8303% +9.1050%]
Performance has improved.
```
But I did also see some regressions:
```
slice/4096 time: [66.195 µs 66.815 µs 67.448 µs]
thrpt: [57.915 MiB/s 58.464 MiB/s 59.012 MiB/s]
change:
time: [+3.7131% +5.1698% +6.6971%] (p = 0.00 < 0.05)
thrpt: [-6.2768% -4.9157% -3.5802%]
Performance has regressed.
```
Release Notes:
- N/A
Adam Richardson created
2284131
Add @rtfeldman to reviewers list (#41127)
Closes #ISSUE Release Notes: - N/A *or* Added/Fixed/Improved ...
Richard Feldman created
2f7045f
settings_ui: Show migration banner (#41112)
Closes #ISSUE Release Notes: - N/A *or* Added/Fixed/Improved ... --------- Co-authored-by: Danilo <danilo@zed.dev>
Ben Kunkle and Danilo created
5d359ea
remote: Fall back to SCP if SFTP fails (#41255)
Fixes https://github.com/zed-industries/zed/issues/41260 After experimenting and reading through the implementation of OpenSSH stack on Windows, it looks like batch mode precludes use of passwords. In the listing https://github.com/PowerShell/openssh-portable/blob/b8c08ef9da9450a94a9c5ef717d96a7bd83f3332/sshconnect2.c#L417, the last field of each `Authmode` struct is a pointer to the config value that *disables* that particular mode. In this case, `keyboard` (interactive) and `password` modes are both disabled if batch mode is used. We should therefore fall back to `scp` if `sftp` fails rather than to fail outright. Release Notes: - N/A
Jakub Konka created
72c6a74
keymap_editor: Fix updating empty keymap (#40909)
Closes #40898 Release Notes: - Fixed an issue where attempting to add or update a key binding in the keymap editor with an empty `keymap.json` file would fail
Ben Kunkle created
941033e
settings_ui: Add vim motions on navigation menu (#39988)
Closes #ISSUE Release Notes: - Added vim motions on settings navigation menu
Alvaro Parker created
83884ca
lsp: Support tracking multiple registrations of diagnostic providers (#41096)
Closes #40966 Closes #41195 Closes #40980 Release Notes: - Fixed diagnostics not working with basedpyright/pyright beyond an initial version of the document --------- Co-authored-by: Smit Barmase <heysmitbarmase@gmail.com> Co-authored-by: Anthony Eid <hello@anthonyeid.me> Co-authored-by: dino <dinojoaocosta@gmail.com>
Piotr Osiewicz , Smit Barmase , Anthony Eid , and dino created
f503c65
Make "About Zed" menu entry to work when all Zed windows are closed (#41272)
Closes https://github.com/zed-industries/zed/issues/41267 The only downside would be the fact that a Zed window will appear behing the version modal, but this is a limitation for all "window-less" actions currently. Release Notes: - Made "About Zed" menu entry to work when all Zed windows are closed
Kirill Bulatov created
c1cd371
fix: Edit predictions using stale snapshot (#41271)
Release Notes: - N/A *or* Added/Fixed/Improved ... Co-authored-by: David Kleingeld <davidsk@zed.dev>
Lukas Wirth and David Kleingeld created
7cb2d83
acp: Start sending Client Info to the Agent (#41265)
Updates to acp crate 0.7, which allows us to send information about the client to the Agent. In the future, we can also use the AgentInfo on the response for internal metrics. Release Notes: - N/A
Ben Brandt created
ae3abf5
editor: Fix panics in `CursorPosition::update_position` (#41237)
Fixes a regression introduced in https://github.com/zed-industries/zed/pull/39857. As for the exact reason this causes this issue I am not yet sure will investigate (as per the todos in code) Fixes ZED-23R Release Notes: - N/A *or* Added/Fixed/Improved ...
Lukas Wirth created
edf2ec7
editor: Make hover popover delay strictly respect hover_popover_delay setting (#41149)
Previously, the hover popover delay was implemented using two overlapping timers, which caused the minimum delay to always be at least HOVER_REQUEST_DELAY_MILLIS, regardless of the hover_popover_delay setting. This change updates the logic to wait for hover_popover_delay only, ensuring the total delay is always equals to hover_popover_delay . As a result, the hover popover now appears after the intended delay, matching the user's configuration more accurately. Release Notes: - Improved hover popover respecting settings delay correctly
deltamaya created
2919e19
docs: Display action names in backticks instead of quotes (#41248)
This PR fixes some instances where we were displaying action names in quotes instead of in backticks. Also fixed some mentions of using an action to open the settings file, as this has changed after the release of the settings UI. Release Notes: - N/A
Marshall Bowers created
fd3ca03
workspace: Handle non-cloneable items better (#41215)
When trying to split and clone a non clone-able workspace item we now attempt split and move instead of doing nothing. Additionally we disable the split menu buttons if we can't split the active item at all. Release Notes: - Improved handling of unsplittable panes
Lukas Wirth created
61e4a1d
settings: Fix out of bounds index (#41227)
Fixes ZED-2J8 Release Notes: - N/A *or* Added/Fixed/Improved ...
Lukas Wirth created
2471ae4
Pre-initialize global rayon threadpool (#41226)
We only use it a handful of times and the default amount of threads (logical cpu core number) its spawns is overkill for this. This also gives the threads names oppose to being labeled `<unknown>` Release Notes: - N/A *or* Added/Fixed/Improved ...
Lukas Wirth created
d6b31d8
gpui: Fix `TextLayout::layout` producing invalid text runs (#41224)
The issues is that the closure supplied to `request_measured_layout` could be run multiple times with differing `known_dimensions`. This in turn will mean we truncate the font runs once, inserting a multibyte char at the end but then in the next iteration use those truncated runs for possible the original untruncated string which has multibyte characters overlapping the now truncated run end resulting in a faulty utf8 boundary index. Solution to this is simple, truncate a clone of the runs when needed instead of modifying the original. Fixes https://github.com/zed-industries/zed/issues/36925 Fixed ZED-2FF Fixes ZED-2KM Fixes ZED-2KK Fixes ZED-1FF Fixes ZED-255 Fixes ZED-2JD Fixes ZED-2FX Fixes ZED-2K2 Fixes ZED-2JX Fixes ZED-2GE Fixes ZED-2FC Fixes ZED-2GD Fixes ZED-2HY Fixes ZED-2HR Fixes ZED-2FN Fixes ZED-2GT Fixes ZED-2FK Fixes ZED-2EY Fixes ZED-27E Fixes ZED-272 Fixes ZED-2EM Fixes ZED-2CC Fixes ZED-29V Fixes ZED-25B Fixes ZED-257 Fixes ZED-24R Fixes ZED-24Q Fixes ZED-23Z Fixes ZED-227 Release Notes: - Fixed a crash in text shaping when truncating rendered text
Lukas Wirth created
95ad7a6
gpui: Drop unnecessary use of `StringIndexConverter` (#41221)
Might help with ZED-1FF Release Notes: - N/A *or* Added/Fixed/Improved ...
Lukas Wirth created
54a7da3
Fix task terminal split (#41218)
Re-lands https://github.com/zed-industries/zed/pull/40824 Release Notes: - N/A
Kirill Bulatov created
003a397
Try working around spurious rebuild bug in cargo (#41015)
We've been seeing a lot of weird constant rebuilds recently with rust-anaylzer's check, either with cargo thinking build scripts are too new timestamp wise or all fingerprints having gone missing somehow (???). Reading through some related bug reports hints at disabling incremental potentially working around this for now so let's test that out cc https://github.com/rust-lang/cargo/issues/16104 Release Notes: - N/A *or* Added/Fixed/Improved ...
Lukas Wirth created
33ec545
workspace: Make `Item::clone_on_split` async (#41211)
Split out from https://github.com/zed-industries/zed/pull/40774 to reduce the size of the reland of that PR (once I figure out the cause of the issue) Release Notes: - N/A *or* Added/Fixed/Improved ...
Lukas Wirth created
b7cc597
languages: Add inline values support for JavaScript, TypeScript, and TSX (#40914)
Adds debugger inline values support for JavaScript, TypeScript, and TSX languages. Release Notes: - debugger: Add inline value support for Javascript, TypeScript, and TSX --------- Co-authored-by: Anthony <anthony@zed.dev>
phpjit and Anthony created
ef30624
settings_ui: Add telemetry (#40973)
1. Settings Viewed: Whenever someone opens or refocus the settings ui via an action 2. Settings Closed: When the settings ui window is closed 3. Settings Navigation Clicked: The category and subcategory that a user clicked on 4. Settings Error Shown: Whenever an error banner shows up 5. Settings Changed: The setting a user changed through the UI cc: @katie-z-geer Release Notes: - N/A
Anthony Eid created
615d1d7
Avoid menu clipping with debugger welcome panel on resize (#41177)
Before: <img width="1345" height="58" alt="before" src="https://github.com/user-attachments/assets/cba79bba-6437-47fd-ad2b-b4ceaf03ef5d" /> After: <img width="1756" height="90" alt="after" src="https://github.com/user-attachments/assets/3442c7f6-a4dc-4c4c-92c5-2ca5ad9beb0d" /> Release Notes: - N/A
Abdelhakim Qbaich created
45983e1
markdown: Add support for HTML lists (#39553)
This PR adds support for **HTML** both ordered and unordered lists.
<img width="1441" height="805" alt="Screenshot 2025-10-07 at 21 40 17"
src="https://github.com/user-attachments/assets/8a54aec1-75aa-48fb-bf9f-c153cca48682"
/>
See code example used inside the screenshot:
```html
<ol>
<li>First item</li>
<li>Second item</li>
<li>Third item
<ol>
<li>Indented item</li>
<li>Indented item</li>
</ol>
</li>
<li>Fourth item</li>
</ol>
```
TODO:
- [x] Add examples
- [x] update description (screenshots, add small description)
- [x] fix displaying of nested lists
cc @bennetbo
Release Notes:
- markdown preview: Added support for HTML lists
---------
Co-authored-by: Bennet Bo Fenner <bennetbo@gmx.de>
Remco Smits and Bennet Bo Fenner created
06e1db5
codex: Delete older versions after installing new one (#41191)
Release Notes: - codex: Fixed an issue where downloading a new version would not delete older versions
Bennet Fenner created
8e09256
Handle itemDefaults in CompletionList according to spec (#41187)
Closes https://github.com/zed-extensions/java/issues/101 Previously Zed did not handle resolving CompletionList with itemDefaults correctly according to the [LSP-Spec](https://microsoft.github.io/language-server-protocol/specifications/lsp/3.17/specification/#:~:text=/**%0A%09%20*%20The%20edit%20text,%3F%3A%20string%3B). When a `CompletionList` is provided by the server, that includes ranges as `itemDefaults`, the field to use for the snippet to insert as `newText` is in the `textEditText` field, with a fallback to `label` if that does not exist (`insertText` is ignored). Release Notes: - Fixed Java language severs' completion defaults handling on Zed's side
Karl-Erik Enkelmann created
79ef10b
markdown: Add support for `HTML` table column `align` attribute (#41163)
This PR allows you to define `align="right"` for example to change the
default alignment on **HTML** table columns. This PR also refactors
where we store the alignments in order to make it so you can define it
column based instead of only row based.
See that the `Revenue` column is left aligned instead of the default
`centered`.
**Result**
<img width="1161" height="177" alt="Screenshot 2025-10-25 at 11 01 38"
src="https://github.com/user-attachments/assets/94bda4f0-00c1-4726-a3bd-99b3f2573ef5"
/>
**Code example**
```HTML
<table>
<tr>
<th rowspan="2">Region</th>
<th colspan="2" align="left">Revenue</th>
<th rowspan="2">Growth</th>
</tr>
<tr>
<th>Q2 2024</th>
<th>Q3 2024</th>
</tr>
<tr>
<td>North America</td>
<td>$2.8M</td>
<td>$2.4B</td>
<td>+85,614%</td>
</tr>
<tr>
<td>Europe</td>
<td>$1.2M</td>
<td>$1.9B</td>
<td>+158,233%</td>
</tr>
<tr>
<td>Asia-Pacific</td>
<td>$0.5M</td>
<td>$1.4B</td>
<td>+279,900%</td>
</tr>
</table>
```
Release Notes:
- markdown preview: Add support for `HTML` table column `align`
attribute
Remco Smits created
986ca19
markdown: Fix HTML tables with mismatching columns (#41108)
Follow-up: https://github.com/zed-industries/zed/pull/39898
Right now, we don't fill the empty column when the current row count is
less than the max row count. This PR fixes that by filling it with an
empty cell. So the table columns don't flow in the wrong direction, as
you can see inside the first screenshot.
**Before**
<img width="1095" height="182" alt="Screenshot 2025-10-24 at 16 09 02"
src="https://github.com/user-attachments/assets/e3abf24e-c190-4bd7-b43a-39f2f01ecd1c"
/>
**After**
<img width="1165" height="178" alt="Screenshot 2025-10-24 at 16 19 17"
src="https://github.com/user-attachments/assets/427c25f9-82a7-498b-a1a2-d71e4c288fe5"
/>
**Code example**
```html
<table>
<tr>
<th rowspan="2">Region</th>
<th colspan="2">Revenue</th>
<th rowspan="2">Growth</th>
</tr>
<tr>
<th>Q2 2024</th>
<th>Q3 2024</th>
</tr>
<tr>
<td>North America</td>
<td>$2.8M</td>
<td>$2.4B</td>
<td>+85,614%</td>
<td>+99%</td> // extra column here
</tr>
<tr>
<td>Europe</td>
<td>$1.2M</td>
<td>$1.9B</td>
<td>+158,233%</td>
</tr>
<tr>
<td>Asia-Pacific</td>
<td>$0.5M</td>
<td>$1.4B</td>
<td>+279,900%</td>
</tr>
</table>
```
**Note** there are no release notes, as the previous PR didn't get
released yet.
Release Notes:
- N/A
Remco Smits created
42d8d77
Update GDScript documentation (#41142)
Some information in the GDScript documentation page was outdated (like it still treats Zed if it was a macOS exclusive app) or some details were missing. - The `zed-gdscript` URL has been updated with the new owner. - Pre-requisites added (with netcat included). - Godot installation steps removed, it's now listed in the pre-requisites. - Setup steps simplified and reworded. The note at the bottom was removed as I didn't see the issue in my end. Release Notes: - N/A
Douglas Leão created
e4c90be
Add more detailed error for remove_file (#41147)
This should help us debug #40958. Release Notes: - N/A
Julia Ryan created
7433d85
Notify on opening WSL paths outside of wsl (#40195)
Closes #27340 Release Notes: - N/A --------- Co-authored-by: John Tur <john-tur@outlook.com>
Julia Ryan and John Tur created
1dffdea
Fix duplicate hints in multi buffer excerpts during editing and scrolling (#41143)
Follow-up of https://github.com/zed-industries/zed/pull/40183 Closes https://github.com/zed-industries/zed/issues/24798 Release Notes: - N/A
Kirill Bulatov created
1f40a3c
Document global debug.json usage and fix REPL error copy (#40836)
## Overview - document how to keep a per-user debug.json so global launch tasks show up everywhere (Fixes #39849) - sanitize REPL terminal text before copying so error blocks can be copied and opened in buffers (Fixes #40207) ## Design Decisions - reused the existing user debug file (paths::debug_scenarios_file) and pointed docs at the zed::OpenDebugTasks command to stay aligned with the settings UX - extract a sanitize helper inside TerminalOutput::full_text to strip \r/null padding while keeping indentation intact, then join the cleaned lines so clipboard and buffers get readable text ## Testing - Not run (cargo is unavailable in this environment) Fixes #39849. Fixes #40207.
Mohin Hasin Rabbi created
92c3127
Add support for GitHub Copilot /responses endpoint (#40762)
Add support for GithubCopilot /responses endpoint. This gives the copilot chat provider the ability to use the new GPT-5 codex model and any other model that lacks support for /chat/copmletions endpoint. Closes #38858 Release Notes: - Add support for GithubCopilot /responses endpoint. # Added 1. copilot_response.rs that has the /response endpoint types 2. uses response endpoint if model does not support /chat/completions. 3. new into_copilot_response() to map LanguageCompletionEvents to Request. 4. new map_stream() to map response stream event to LanguageCompletionEvents and tests. 5. Fixed a bug where trying to parse response for non streaming for /chat/completion was failing # Notes There is a pr open - https://github.com/zed-industries/zed/pull/39989 for adding /response support for OpenAi and OpenAi compatible API. Altough they share some similarities (copilot api seems to mirror openAi directly) ive simplified some stuff and tried to keep it the same with the vscode-chat implementation where possible. There might be a case for code reuse but i think keeping them separate for now should be ok. # Tool Calls <img width="716" height="670" alt="Screenshot from 2025-10-15 17-12-30" src="https://github.com/user-attachments/assets/14e88a52-ba8b-4209-8f78-73d15034b1e0" /> # Image <img width="923" height="494" alt="Screenshot from 2025-10-21 02-02-26" src="https://github.com/user-attachments/assets/b96ce97c-331e-45cb-b5b1-7aa10ed387b4" />
Somtoo Chukwurah created
a7c5b8d
Add `ResetAllZoom` and `ResetAgentZoom ` actions (#41124)
Very often, when I'm testing or playing around with the zoom feature, including the agent panel, I find myself missing one quick action that would bring everything back to normal. That's what `ResetAllZoom` does. If you have customized your zoom level in all areas of Zed, that action returns everything to its default state. Similarly, if you're playing around with zoom just in the agent panel, `ResetAgentZoom` does the same in that context. Release Notes: - Added the `ResetAllZoom` and `ResetAgentZoom ` actions, allowing to return the zoom level across the whole app and/or just in the agent panel to its default/original value.
Danilo Leal created
d1b28e6
REVIEWERS.conl (#40533)
Release Notes: - N/A --------- Co-authored-by: Marshall Bowers <git@maxdeviant.com> Co-authored-by: David Kleingeld <davidsk@zed.dev> Co-authored-by: Jakub Konka <kubkon@jakubkonka.com> Co-authored-by: Ben Kunkle <ben@zed.dev> Co-authored-by: Mikayla Maki <mikayla@zed.dev> Co-authored-by: Julia Ryan <juliaryan3.14@gmail.com> Co-authored-by: Danilo Leal <67129314+danilo-leal@users.noreply.github.com> Co-authored-by: Lukas Wirth <lukas@zed.dev> Co-authored-by: dino <dinojoaocosta@gmail.com> Co-authored-by: John Tur <john-tur@outlook.com> Co-authored-by: Piotr Osiewicz <24362066+osiewicz@users.noreply.github.com> Co-authored-by: Smit Barmase <heysmitbarmase@gmail.com> Co-authored-by: Anthony <anthony@zed.dev> Co-authored-by: Kirill Bulatov <kirill@zed.dev> Co-authored-by: Kate <work@localcc.cc> Co-authored-by: Cole Miller <cole@zed.dev> Co-authored-by: Ben Brandt <benjamin.j.brandt@gmail.com>
Conrad Irwin , Marshall Bowers , David Kleingeld , Jakub Konka , Ben Kunkle , Mikayla Maki , Julia Ryan , Danilo Leal , Lukas Wirth , dino , John Tur , Piotr Osiewicz , Smit Barmase , Anthony , Kirill Bulatov , Kate , Cole Miller , and Ben Brandt created
ecf179d
agent: Scale the agent UI and buffer font proportionally (#41121)
Closes https://github.com/zed-industries/zed/issues/41094 This PR adds the `agent_buffer_font_size` settings to be scaled in the same proportion as the agent panel's UI font size, which was the only setting that was being accounted for. This is something that I forgot to do when we broke down the agent panel's font size controls into these two values. Release Notes: - agent: Fixed an issue where the agent panel's buffer and UI font size wouldn't scale proportionally.
Danilo Leal created
e54c9da
Fix include ignored migration rerunning (#41114)
Closes #ISSUE Release Notes: - Fixed an issue where having a correct `file_finder.include_ignored` setting would result in failed to migrate errors
Ben Kunkle created
bcbc6a3
Use ShellKind::try_quote whenever we need to quote shell args (#41104)
Re-reverts https://github.com/zed-industries/zed/commit/8f4646d6c357409cfc286104088b4d21f2bea851 with fixes Release Notes: - N/A
Jakub Konka created
f213f4b
Fix duplicate process entries in WSL debug attach list (#40591)
Closes #40589 Replaced `System::new_all()` with `System::new_with_specifics` to fetch only essential process information and exclude non-main threads from the process list after fix: <img width="641" height="474" alt="image" src="https://github.com/user-attachments/assets/32335552-2f7a-4317-8c01-f37b2eadfdc1" /> Release Notes: - Fix duplicate process entries in WSL debug attach list
feeiyu created
0ee6ca1
project: Fix inability to open file after save as (#41012)
Update `project::buffer_store::BufferStore.save_buffer_as` in order to correctly update the `path_to_buffer_id` hash map, ensuring that the currently open file's path is dissociated from the buffer's id, to prevent the new buffer from being open when trying to open the original file. Closes #29783 Release Notes: - Fixed issue where using `workspace: save as` would prevent users from opening the original file from which the new file was created --------- Co-authored-by: Piotr Osiewicz <24362066+osiewicz@users.noreply.github.com>
Dino and Piotr Osiewicz created
762082b
ui_input: Don’t focus previous on decrement in `NumberField` (#41095)
This PR removes the behavior that the number_field changes focus to the previous element when using the decrement button. I mainly noticed this while decreasing the tab-size of a language, since it there closes the page... Please note that I am unsure what if any purpose this code has. I was unable to find a use case and since it is not present in the `increment_handler` I guess it should never have been here --- Release Notes: * Fixed wrongly focus previous element on number_field decrement
ToBinio created
fcd690d
Enable `source.organizeImports.ruff` by default for Python (#41103)
Release Notes:
- Enabled automatic import organization, via
[ruff](https://github.com/astral-sh/ruff), when saving Python files. To
disable this, use:
```json
"Python": {
"code_actions_on_format": { "source.organizeImports.ruff": false }
}
```
Joseph T. Lyons created
8de4b36
ACP Extensions (#40663)
Adds the ability to install ACP agents via extensions Release Notes: - N/A *or* Added/Fixed/Improved ...
Richard Feldman created
7644e79
agent: Fix edit_agent evals (#40921)
Release Notes: - N/A
Bennet Fenner created
4fb9113
ui: Use `focus_visible` method for some components (#41077)
Using the cool, [recently added](https://github.com/zed-industries/zed/pull/40940) `focus-visible` support in some components. This will be particularly nice in the settings UI, as it will not display the focus styles if you're navigating it with a pointer device as opposed to the keyboard. Release Notes: - N/A
Danilo Leal created