Commit log

cc36cd9 extensions_ui: Add ability to filter extensions by category (#27005)

Click to expand commit body
This PR adds the ability to filter the list of extensions by category:


https://github.com/user-attachments/assets/ea7b518e-4769-4e2e-8bbe-e75f9f01edf9

Release Notes:

- Added the ability to filter the list of extensions by category.

Marshall Bowers created

628a61d docs: Specify the command for activating prompt library from the command palette (#27007)

Click to expand commit body
Quickfix of the docs as I read through and get familiar with the
assistant interface.
`prompt-library: toggle` does not appear to be a live command in
`cmd-shift-p` - instead I see `assistant: deploy prompt library`. This
change to the docs reflects that. It also notes that this command can
only be activated from within the assistant panel (the command is not
accessible from a standard editor panel).

Release Notes:

- N/A

KyleBarton created

7f23875 Fold git merge messages into commit editor placeholder text (#26992)

Click to expand commit body
This PR changes the git commit message editors to surface git's
suggested merge message, if any, as placeholder text, as opposed to
"real" buffer text as was previously the case.

Release Notes:

- Changed git commit message editors to use placeholder text for git's
suggested merge messages

Cole Miller created

e7bba1c Improvements to interactive hard wrap behavior (#26953)

Click to expand commit body
Release Notes:

- Fixed involuntary joining of lines when typing in the commit message
editor
- Fixed being unable to type whitespace after a comment character at the
start of a line in the commit message editor

Cole Miller created

41a60ff Debugger implementation (#13433)

Click to expand commit body
###  DISCLAIMER

> As of 6th March 2025, debugger is still in development. We plan to
merge it behind a staff-only feature flag for staff use only, followed
by non-public release and then finally a public one (akin to how Git
panel release was handled). This is done to ensure the best experience
when it gets released.

### END OF DISCLAIMER 

**The current state of the debugger implementation:**


https://github.com/user-attachments/assets/c4deff07-80dd-4dc6-ad2e-0c252a478fe9


https://github.com/user-attachments/assets/e1ed2345-b750-4bb6-9c97-50961b76904f

----

All the todo's are in the following channel, so it's easier to work on
this together:
https://zed.dev/channel/zed-debugger-11370

If you are on Linux, you can use the following command to join the
channel:
```cli
zed https://zed.dev/channel/zed-debugger-11370 
```

## Current Features

- Collab
  - Breakpoints
    - Sync when you (re)join a project
    - Sync when you add/remove a breakpoint
  - Sync active debug line
  - Stack frames
    - Click on stack frame
      - View variables that belong to the stack frame
      - Visit the source file
    - Restart stack frame (if adapter supports this)
  - Variables
  - Loaded sources
  - Modules
  - Controls
    - Continue
    - Step back
      - Stepping granularity (configurable)
    - Step into
      - Stepping granularity (configurable)
    - Step over
      - Stepping granularity (configurable)
    - Step out
      - Stepping granularity (configurable)
  - Debug console
- Breakpoints
  - Log breakpoints
  - line breakpoints
  - Persistent between zed sessions (configurable)
  - Multi buffer support
  - Toggle disable/enable all breakpoints
- Stack frames
  - Click on stack frame
    - View variables that belong to the stack frame
    - Visit the source file
    - Show collapsed stack frames
  - Restart stack frame (if adapter supports this)
- Loaded sources
  - View all used loaded sources if supported by adapter.
- Modules
  - View all used modules (if adapter supports this)
- Variables
  - Copy value
  - Copy name
  - Copy memory reference
  - Set value (if adapter supports this)
  - keyboard navigation
- Debug Console
  - See logs
  - View output that was sent from debug adapter
    - Output grouping
  - Evaluate code
    - Updates the variable list
    - Auto completion
- If not supported by adapter, we will show auto-completion for existing
variables
- Debug Terminal
- Run custom commands and change env values right inside your Zed
terminal
- Attach to process (if adapter supports this)
  - Process picker
- Controls
  - Continue
  - Step back
    - Stepping granularity (configurable)
  - Step into
    - Stepping granularity (configurable)
  - Step over
    - Stepping granularity (configurable)
  - Step out
    - Stepping granularity (configurable)
  - Disconnect
  - Restart
  - Stop
- Warning when a debug session exited without hitting any breakpoint
- Debug view to see Adapter/RPC log messages
- Testing
  - Fake debug adapter
    - Fake requests & events

---

Release Notes:

- N/A

---------

Co-authored-by: Piotr Osiewicz <24362066+osiewicz@users.noreply.github.com>
Co-authored-by: Anthony Eid <hello@anthonyeid.me>
Co-authored-by: Anthony <anthony@zed.dev>
Co-authored-by: Piotr Osiewicz <peterosiewicz@gmail.com>
Co-authored-by: Piotr <piotr@zed.dev>

Remco Smits , Piotr Osiewicz , Anthony Eid , Anthony , Piotr Osiewicz , and Piotr created

ed4e654 assistant_tools: Add `fetch` tool (#26999)

Click to expand commit body
This PR adds a new `fetch` tool to the set of tools the Assistant has
available.

This tool accepts a URL and fetches the content as Markdown.

<img width="1394" alt="Screenshot 2025-03-18 at 11 52 21 AM"
src="https://github.com/user-attachments/assets/e5bcde14-a0dd-4835-9d42-8f45def68f4d"
/>

<img width="1394" alt="Screenshot 2025-03-18 at 11 52 37 AM"
src="https://github.com/user-attachments/assets/3bcce4f5-f61b-40d7-8b30-2c673ce3c06a"
/>

Release Notes:

- N/A

Marshall Bowers created

baaafdd worktree: Fix tracking of git status scans and re-enable tests (#26926)

Click to expand commit body
Closes #ISSUE

Release Notes:

- N/A

Cole Miller created

b70f21c assistant_tools: Rename `RegexSearchTool` module to match the others (#27001)

Click to expand commit body
This PR renames the `RegexSearchTool` module to `regex_search_tool.rs`
to match the other tools.

Release Notes:

- N/A

Marshall Bowers created

5615be5 assistant edit tool: Revert fuzzy matching (#26996)

Click to expand commit body
#26935 is leading to bad edits, so let's revert it for now. I'll bring
back a version of this, but it'll likely just focus on indentation
instead of making the whole search fuzzy.

Release Notes: 

- N/A

Agus Zubiaga created

06e9f0e Paginate regex and path search tools (#26997)

Click to expand commit body
<img width="630" alt="Screenshot 2025-03-18 at 10 50 17 AM"
src="https://github.com/user-attachments/assets/0aee5367-402a-405a-8676-f2f8af425b1e"
/>

Release Notes:

- N/A

Richard Feldman created

41a2be7 assistant2: Keep the tool selector open when toggling tools (#26994)

Click to expand commit body
This PR makes it so the tool selector will stay open when toggling tools
instead of closing after each selection:


https://github.com/user-attachments/assets/eb987785-cfb5-4b07-8d63-510fbd9d9bf1

This involved making a change to `ContextMenu` to allow it to rebuild
its menu items after each confirmation in order for them to reflect
their selected/unselected status. I intend to clean up the `ContextMenu`
API a bit at a later point, but that is out of scope for this PR.

Release Notes:

- N/A

Marshall Bowers created

e38ae42 Add missing commit event reporting (#26990)

Click to expand commit body
cc @morgankrey 

Release Notes:

- N/A

Cole Miller created

68bb3bd Add more shortcuts for `editor::OrganizeImports` (#26932)

Click to expand commit body
Follow-up to:
- https://github.com/zed-industries/zed/pull/25793

Release Notes:

- N/A

Peter Tripp created

122e73f Allow read-file tool to read a subset of a file (#26966)

Click to expand commit body
Release Notes:

- N/A

Richard Feldman created

4b77550 migrator: Fix case where users see migration banner despite no diff changes (#26982)

Click to expand commit body
Fixes edge case where after carrying out all migrations if final text is
same as existing text, we don't need to ask user to do anything, despite
migrations edits are being applied internally. E.g. A -> B - > C -> A

Release Notes:

- N/A

Smit Barmase created

a9f7c05 docs: Use correct name for Intelephense license file (#26986)

Click to expand commit body
This PR updates the Intelephense section of the PHP docs to use the
correct name for the license file.

Intelephense uses British English:

<img width="1185" alt="Screenshot 2025-03-18 at 8 30 20 AM"
src="https://github.com/user-attachments/assets/a675e854-bedf-4f70-bf8f-90488d196242"
/>

Release Notes:

- N/A

Marshall Bowers created

ac617e2 Keep and filter word completions on input, if the menu is open (#26979)

Click to expand commit body
Follow-up of https://github.com/zed-industries/zed/pull/26410

Release Notes:

- N/A

Kirill Bulatov created

26f4b2a assistant2: Combine file & directory picker (#26975)

Click to expand commit body
In the process of adding `@mentions` we realized that we do not want to
make a distinction between Files & Directories in the UI, therefore this
PR combines the File & Directory pickers into a unified version



https://github.com/user-attachments/assets/f3bf189c-8b69-4f5f-90ce-0b83b12dbca3

(Ignore the `@mentions`, they are broken also on main)

Release Notes:

- N/A

Bennet Bo Fenner created

fdcacb3 typescript: Add highlighting for Angular inline components (#26553)

Click to expand commit body
Closes #ISSUE

Release Notes:

- N/A *or* Added/Fixed/Improved ...

Before
<img width="1004" alt="image"
src="https://github.com/user-attachments/assets/9a611e8d-e00e-4dc7-b4c9-bd76fec95525"
/>

After
<img width="936" alt="Image"
src="https://github.com/user-attachments/assets/b83d3309-1aab-492c-a2f1-c45cd19e6bcc"
/>

Sheik Althaf created

f61d3d2 Use `futures::future::join_all` instead of `futures::stream` in assistant_eval (#26974)

Click to expand commit body
Release Notes:

- N/A

Michael Sloan created

a562166 Update to git2 0.20.1 (#26972)

Click to expand commit body
Switch back to git2 releases after
https://github.com/rust-lang/git2-rs/pull/1120 got merged in 0.20.1

Release Notes:

- N/A

tidely created

b6198ad Add `Ord` and `PartialOrd` impls for gpui entity types (#26968)

Click to expand commit body
Motivation is to be able to use entities as TreeMap keys.

Release Notes:

- N/A

Co-authored-by: Nathan <nathan@zed.dev>

Michael Sloan and Nathan created

5210d9e Tidier multibuffer (#26954)

Click to expand commit body
Makes multibuffer headers less close to the top of the file.

Moves multibuffer line numbers one em to the right to make space for the
expand excerpt button on large line numbers.

Release Notes:

- N/A

---------

Co-authored-by: Danilo Leal <daniloleal09@gmail.com>

Conrad Irwin and Danilo Leal created

1139904 Remove unnecessary conditional definition of `FS_WATCH_LATENCY` (#26967)

Click to expand commit body
This was added in #8343 to make it only visible for tests. #9189 then
made it visible regardless of `test-support`, so the definitions became
identical.

Release Notes:

- N/A

Michael Sloan created

b4ef379 Send stable release notes email (#26964)

Click to expand commit body
Release Notes:

- N/A

Joseph T. Lyons created

88907ee git: Always zero panel's entry counts when clearing entries (#26924)

Click to expand commit body
Keep the panel's state consistent even when we transition to having no
active repository.

Release Notes:

- N/A

Cole Miller created

cd5d7e8 collab: Make account age-related fields required in `LlmTokenClaims` (#26959)

Click to expand commit body
This PR makes the account age-related fields required in
`LlmTokenClaims`.

We've also removed the account age check from the LLM token issuance
endpoint, instead having it solely be enforced in the `POST /completion`
endpoint.

This change will be safe to deploy at ~8:01PM EDT.

Release Notes:

- N/A

Marshall Bowers created

0851842 collab: Defer account age check to `POST /completion` endpoint (#26956)

Click to expand commit body
This PR defers the account age check to the `POST /completion` endpoint
instead of doing it when an LLM token is generated.

This will allow us to lift the account age restriction for using Edit
Prediction.

Note: We're still temporarily performing the account age check when
issuing the LLM token until this change is deployed and the LLM tokens
have had a chance to cycle.

Release Notes:

- N/A

Marshall Bowers created

1397e01 collab: Clean up LLM token creation (#26955)

Click to expand commit body
This PR cleans up the LLM token creation a bit.

We now pass in the entire list of feature flags to the
`LlmTokenClaims::create` method to prevent having a bunch of confusable
`bool` parameters.

Release Notes:

- N/A

Marshall Bowers created

2b2b9c1 Make repo and branch popovers extend up from their trigger buttons (#26950)

Click to expand commit body
Previously, when clicking on the branch, the popover would obscure the
button you just clicked, which was awkward.

Release Notes:

- Improved the placement of the repo and branch picker popovers in the
git panel.
- Added a 'SelectRepo' action that opens the repository selector in a
modal.

Max Brunsfeld created

a05066c assistant edit tool: Track read buffers and notify model of user edits (#26952)

Click to expand commit body
When the model reads file, we'll track the version it read, and let it
know if the user makes edits to the buffer. This helps prevent edit
failures because it'll know to re-read the file before.

Release Notes:

- N/A

Agus Zubiaga created

cb439e6 editor: Fix navigate back for locations opened via preview item (#26943)

Click to expand commit body
Closes #25458

When navigating code from a preview tab with
`enable_preview_from_code_navigation` set to `true`, "Go Back" from a
newly opened tab could focus on the tab to the right instead of
returning to the original preview tab.

Before, we killed the existing preview tab before opening a new one,
which breaking history as the new tab had no reference to the old one.
This caused navigation to shift to the next tab on the right.

Now, we first add the new tab at the preview index, and then kill the
existing preview tab. This preserves the history by linking new preview
tab to existing tab.

Release Notes:

- Fixes an issue where navigating code from a preview tab with
`enable_preview_from_code_navigation` set to `true`, "Go Back" from a
newly opened tab could focus on the tab to the right instead of
returning to the original preview tab.

Smit Barmase created

6b0a282 docs: Fix wrong html-like tags shortcut for Vim (#26792)

Click to expand commit body
Release Notes:

- N/A

Mostafa Mahmoud created

25772b8 Fix sticky header in last buffer of a multibuffer (#26944)

Click to expand commit body
This also simplifies our code to stop generating a last excerpt boundary
that we always ignore.

Closes #ISSUE

Release Notes:

- N/A

Conrad Irwin created

94b6380 assistant edit tool: Fuzzy match search block (#26935)

Click to expand commit body
Release Notes:

- N/A

Co-authored-by: Antonio Scandurra <me@as-cii.com>

Agus Zubiaga and Antonio Scandurra created

798af67 Disable the other flaky tests (#26942)

Click to expand commit body
I thought it might be just `test_file_status` this time, but it seems to
be all four of the tests that we were previously seeing issues with.

Release Notes:

- N/A

Cole Miller created

db1d2de Sync git button states between project diff & git panel (#26938)

Click to expand commit body
Closes #ISSUE

Release Notes:

- Git action buttons are now synced between the project diff and git
panel

Co-authored-by: Conrad Irwin <conrad.irwin@gmail.com>
Co-authored-by: Piotr Osiewicz <peterosiewicz@gmail.com>

Anthony Eid , Conrad Irwin , and Piotr Osiewicz created

430bd83 Don't open the commit editor when staging last hunk (#26939)

Click to expand commit body
Closes #26880

Release Notes:

- Removed a behavior where staging the last hunk in the project diff
would open the commit modal.

Max Brunsfeld created

dbe5399 Remove disabling effect on the stage and unstage toolbar buttons (#26936)

Click to expand commit body
Closes #26883

Release Notes:

- N/A

Cole Miller created

aba242d Document `gutter_debounce` (#26940)

Click to expand commit body
Release Notes:

- N/A

João Marcos created

ddc210a Add website docs for the hunk_style variants (#26937)

Click to expand commit body
Follow up to https://github.com/zed-industries/zed/pull/26816

Release Notes:

- N/A

Mikayla Maki created

65994c0 Add `git.hunk_style` setting for gutter hollow hunk behavior (#26816)

Click to expand commit body
This is a follow up to #26809, introducing `git.hunk_style` setting to
control whether staged or unstaged hunks are shown as hollow.

Reused `GitHunkStyleSetting` which was left over from #26504.

Release Notes:

- Added `git.hunk_style` setting to control whether staged or unstaged
hunks are hollow.

Jakub Charvat created

011f823 Move buffer diff storage from `BufferStore` to `GitStore` (#26795)

Click to expand commit body
Release Notes:

- N/A

---------

Co-authored-by: Max Brunsfeld <maxbrunsfeld@gmail.com>
Co-authored-by: max <max@zed.dev>

João Marcos , Max Brunsfeld , and max created

3d1ae68 docs: Remove duplicate `indent_guides` setting in Project panel options (#26927)

Click to expand commit body
Just a small docs pull request to remove the duplicate `indent_guides`
setting in the Project panel options section of the docs. There is also
another `indent_guides` on
[L2585](https://github.com/zed-industries/zed/pull/26927/files#diff-c2decf822f3085926bd23bdf175700222dfd8193d48ea39908d4bb1d1a7c6240R2584).
~~Let me know if you prefer to remove the other instance, thank you!~~

Edit: I just realized it's the old setting, `indent_guides` now expects
a object.

Marco Roth created

1f62274 assistant edit tool: Return applied actions back to main model (#26810)

Click to expand commit body
We'll now include the search/replace block that got applied as part of
the tool output. We think this will help the model have a better idea of
how the file changed and prevent later edit failures.

Release Notes:

- N/A

Agus Zubiaga created

c2f62d2 Disable flaky file status test again (#26925)

Click to expand commit body
Failure on an unrelated commit:
https://github.com/zed-industries/zed/actions/runs/13903012863/job/38899239052

Release Notes:

- N/A

Cole Miller created

7d433a3 git_hosting_providers: Allow configuring additional hosting providers via settings (#26879)

Click to expand commit body
Release Notes:

- Added a new `git_hosting_providers` setting for configuring custom Git
hosting providers.

---------

Co-authored-by: Marshall Bowers <git@maxdeviant.com>

khayyam and Marshall Bowers created

52567f4 Eliminate unnecessary macros in languages crate (#26813)

Click to expand commit body
I vibe coded this in Zed, dawg.

This avoids a number of cases where we created multiple copies of the
same lsp adapter. Now we clone the Arcs.

Release Notes:

- N/A

Max Brunsfeld created

a0ee84d Use the main thread less on search tool (#26732)

Click to expand commit body
Release Notes:

- N/A

Richard Feldman created

6cac0b3 docs: Add marker to signal which languages are built into Zed (#26913)

Click to expand commit body
I saw over the weekend some social media posts that indicated people
didn't know which languages are included in Zed by default. We do say
that on each language-specific page, but I figured having this
high-level view on the languages page wouldn't hurt.

Release Notes:

- N/A

Danilo Leal created