Commit log

eebee4a Add `stop_at_indent` for MoveToBeginningOfLine (#25428)

Click to expand commit body
Add support for `stop_at_indent` option for MoveToBeginningOfLine and SelectToBeginningOfLine instead of mixing that with `stop_at_soft_wraps`.
Add emacs mapping for `alt-m` (`back-to-indentation`)

Peter Tripp created

3a3621f collab: Limit free tier usage across all models (#25573)

Click to expand commit body
This PR adjusts the usage checks for the LLM free tier.

Previously we would limit the usage on a per-model basis, meaning the
user would get $10/mo free for each model they had access to.

We now have usage for all models count towards the free tier limit.

Release Notes:

- N/A

Marshall Bowers created

524e813 project_panel: Fix entry not being marked when triggered via keyboard (#25567)

Click to expand commit body
This is follow-up for https://github.com/zed-industries/zed/pull/25457

If you open a project without any open buffer, focus on the project
panel, navigate with arrows to a given entry, and hit space, you will
mark and open the file in the buffer. This is all correct. If you then
hit `escape` to clear the marked entries, nothing happens to the open
buffer, and the marked styled in the project panel entry go away. This
is all correct. The wrong behavior happens if you now hit space again on
the active entry. That should mark it, and thus change its styles, but
it doesn't happen. You just see it upon moving to a different entry with
arrow up/down.

Release Notes:

- Fixed project panel entry not being marked when triggering open action
via keyboard.

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

smit and Danilo Leal created

b12b834 copilot: Add Claude 3.7 Sonnet to Copilot Chat (#25529)

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

Co-authored-by: Peter Tripp <peter@zed.dev>

zhaopeng and Peter Tripp created

7075bd7 edit predictions: Disable "This Buffer" option when disabled for language (#25566)

Click to expand commit body
![image](https://github.com/user-attachments/assets/7b888c7d-a1e9-4d0b-ba6d-9a41916acf79)


Release Notes:

- edit prediction: Disable "This Buffer" option when predictions are
disabled for its language

Agus Zubiaga created

21fc3c0 language_models: Store Bedrock credentials under `https://amazonaws.com` in the keychain (#25565)

Click to expand commit body
This PR updates the Bedrock provider to store the AWS credentials under
`https://amazonaws.com` in the keychain.

Release Notes:

- N/A

Marshall Bowers created

c90f878 diagnostics: Ensure that clean state is not shown when tab content indicates problems in workspace (#25345)

Click to expand commit body
Closes #ISSUE

Release Notes:

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

---------

Co-authored-by: Nate Butler <iamnbutler@gmail.com>

Piotr Osiewicz and Nate Butler created

796e87e project_panel: Open file in editor on paste action when single entry (#25555)

Click to expand commit body
Closes #25145

Now, upon pasting a file into the project panel after a copy or cut
operation, it will open in the editor. This buffer in the editor will be
in focus if there is no need to rename the newly pasted file. If a
rename is pending, it simply focuses on the rename editor.


https://github.com/user-attachments/assets/563b22ec-d1f6-4d92-af18-29d10620832c


Future: After the rename is completed, we can decide to focus on the
editor buffer, but this will be addressed in a follow-up, as there will
be multiple cases, such as renaming via a paste action where we want to
focus, and renaming directly via a rename action where we might not want
to focus.

Release Notes:

- Fixed scenario where pasting a file in the project panel after a
copy/cut operation wouldn't automatically open it in the editor.

smit created

3a041ca Consider triagers team when finding issues needing responses (#25554)

Click to expand commit body
Release Notes:

- N/A

Joseph T. Lyons created

86283f4 lsp: Fix buffer snapshots sometimes going missing (#25548)

Click to expand commit body
A call to register_buffer_with_language_servers could nuke existing
snapshots, even when the buffer was already registered with a server.

Essentially, had we had the else branch in place, this would have been
detected.

Closes #ISSUE

Release Notes:

- Fixed Rust analyzer renames sometimes failing. (Preview only)

Piotr Osiewicz created

8e1003e fs: Bring back copy paste again (#25543)

Click to expand commit body
Closes #25317

cc @0xtimsb 

Release Notes:

- N/A

张小白 created

8e891c1 Bring back our CI (#25545)

Click to expand commit body
Closes #ISSUE

Fix `The package requires the Cargo feature called edition2024, but that
feature is not stabilized in this version of Cargo (1.81.0`

Release Notes:

- N/A

张小白 created

cea06bc git_panel: Apply tooltip to checkbox instead of container (#25533)

Click to expand commit body
Closes #ISSUE

Small tweak: The tooltip was activating on the icon

|Before|After|
|---|---|

|![image](https://github.com/user-attachments/assets/a1a5b4a7-f949-402e-a038-5f1b4445f068)|![image](https://github.com/user-attachments/assets/cb55f193-e665-4e88-b8d8-a437a7200eea)|

Release Notes:

- N/A

5brian created

45146b6 Implement staging of partially-staged hunks (#25520)

Click to expand commit body
Closes: #25475 

This PR makes it possible to stage uncommitted hunks that overlap but do
not coincide with an unstaged hunk.

Release Notes:

- Made it possible to stage hunks that are already partially staged

---------

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

Cole Miller , Max Brunsfeld , and Max created

bcbb19e Fix leaked editor (#25530)

Click to expand commit body
Closes #ISSUE

Release Notes:

- Fixed a bug that would prevent rejoining projects sometimes

Conrad Irwin created

3f168e8 edit predictions: Invalidate cached settings and unset provider when set to `none` (#25505)

Click to expand commit body
Fixes a few state mismatches when changing providers and other settings

Release Notes:

- edit predictions: Fix mismatch between status bar settings and editor
control settings
- edit predictions: Turn off as soon as `edit_prediction_provider` is
set to `none`

---------

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

Agus Zubiaga , Danilo , and Danilo Leal created

20440f8 Attempt to not notarize so much (#25515)

Click to expand commit body
https://developer.apple.com/forums/thread/718583 suggests that if you
staple a dmg, then the ticket is copied along with the app when you copy
it out of the dmg.

Closes #ISSUE

Release Notes:

- N/A

Conrad Irwin created

2d63f76 Remove cmd-g for `git::Commit` (#25524)

Click to expand commit body
Conflicts with `search::SelectNextMatch`

Peter Tripp created

52f73e0 vim: Refactor and fix multiline operations (#25055)

Click to expand commit body
Changes:
- [x] Cursor at the start during yank operations on objects (`yip`,
`yab` etc).
- [x] Refactors this: Trim all leading and trailing whitespace from
inner multiline bracket selection.
  - This leaves a nicely indented line when doing `ci{` `vi{d` etc
  - [x] Checks for empty selection
  - [x] Removed moving cursor to the start in visual bracket operations

This cleans up the previous implementation by providing a simpler check
in `surrounding_markers`, instead of calling a new function in
`expand_object`. No functionality was changed there except for handling
the empty selection and removing some cursor adjustments that should not
have been there after further testing.

Release Notes:

- N/A

5brian created

980e1b5 Fix missing selection range in Vim visual line mode in the assistant panel (#25133)

Click to expand commit body
Closes #25132

Release Notes:

- Fixed issues with `assistant: insert into editor` and `editor: copy` not inserting/copying the correct text inside of the assistant panel when selected using line-wise selection in Vim mode

---------

Co-authored-by: Ben Kunkle <ben.kunkle@gmail.com>

RieN 7z and Ben Kunkle created

2ea3324 Update bug template (#25499)

Beniamin Zagan created

4edecfe docs: Update rust-analyzer doc links (#25521)

Click to expand commit body
The rust-analyzer documentation has moved to mdbook. This fixes a few of
the links in the Rust documentation that point to the old manual.

Release Notes:

- N/A

josh rotenberg created

113c471 rust: Restore and update attribute highlighting (#25501)

Click to expand commit body
#25333 added broader highlighting for identifiers, which broke the
generic query for attribute queries, resulting in these being
highlighted the same as identifiers.

To accomodate for this change, this PR updates the attribute matches to
be more specific.

Additionally, path matches in scoped identifiers are no longer
highlighted as attributes, as seen in the comparison screenshot. Can
revert this if requested.

| Zed Preview | <img width="750" alt="preview"
src="https://github.com/user-attachments/assets/2cd2e830-f510-4adf-8ce9-c41ed6fb157c"
/> |
| --- | --- | 
| `main` | <img width="750" alt="main"
src="https://github.com/user-attachments/assets/cbe93186-9afd-4515-bc06-e519fd4ee6af"
/> |
| This PR | <img width="750" alt="pr"
src="https://github.com/user-attachments/assets/68270de8-e083-4fc6-a45e-25d3151acd87"
/> |

The generic match for `token_tree` is needed to recursively match
patterns like `#[cfg(any(test, feature = "test-support"))]` (or at least
I was unable to find a better query here). I tried to validate that this
does not break any other highlights and I believe it does not. However,
I might have still missed something.

Release Notes:

- N/A

Finn Evers created

10fef92 Dismiss git commit modal when it's out of focus (#25518)

Click to expand commit body
Release Notes:

- Fix git commit modal not being dismissed when pressing esc key or
clicking outside the modal

Anthony Eid created

3ee4edc Fix go to definition split (#24990)

Click to expand commit body
Closes #24982 

Release Notes:

- Fix `GoToDefinitionSplit` action bug where split wouldn't happen if
definition was in the same active editor

---------

Co-authored-by: Dylan <dylwil3@gmail.com>

Anthony Eid and Dylan created

eda2333 assistant: Add Bedrock support (#21092)

Click to expand commit body
Closes #16544

Release Notes:

- Added support for AWS Bedrock to the Assistant.

---------

Co-authored-by: Marshall Bowers <git@maxdeviant.com>
Co-authored-by: Anthony <anthony@zed.dev>
Co-authored-by: Anthony Eid <hello@anthonyeid.me>

Shardul Vaidya , Marshall Bowers , Anthony , and Anthony Eid created

17a483c Make generate-licenses scripts pass shellcheck (#25516)

Click to expand commit body
Release Notes:

- N/A

Michael Sloan created

7b277d2 Fix run indicators jumping when buffer content changes. (#25507)

Click to expand commit body
Co-authored-by: Anthony Eid <hello@anthonyeid.me>

Release Notes:

- Fix run indicators jumping when content changes

---------

Co-authored-by: Anthony Eid <hello@anthonyeid.me>

Conrad Irwin and Anthony Eid created

63cfcc2 Fix jumping to multibuffer excerpts from deleted hunks (#25512)

Click to expand commit body
Co-authored-by: Anthony Eid <hello@anthonyeid.me>

Release Notes:

- N/A

Co-authored-by: Anthony Eid <hello@anthonyeid.me>

Conrad Irwin and Anthony Eid created

53a5145 Fix performance of GitPanel::update_visible_entries (#25504)

Click to expand commit body
Co-authored-by: Anthony Eid <hello@anthonyeid.me>

Closes #19022

Release Notes:

- Fixes pessimal performance with the new git panel when a very large
number of files are untracked

Co-authored-by: Anthony Eid <hello@anthonyeid.me>

Conrad Irwin and Anthony Eid created

def342e Remove dependents of `language_models` (#25511)

Click to expand commit body
This PR removes the dependents of the `language_models` crate.

The following types have been moved from `language_models` to
`language_model` to facilitate this:

- `LlmApiToken`
- `RefreshLlmTokenListener`
- `MaxMonthlySpendReachedError`
- `PaymentRequiredError`

With this change only `zed` now depends on `language_models`.

Release Notes:

- N/A

Marshall Bowers created

bbb8d63 vim: Register backquote object (#25502)

Click to expand commit body
Closes #25496

Release Notes:

- vim: Fixed operations on backtick quotes

5brian created

e5b97a5 Move `report_assistant_event` into `language_model` crate (#25508)

Click to expand commit body
This PR moves the `report_assistant_event` function from the
`language_models` crate to the `language_model` crate.

This allows us to drop some dependencies on `language_models`.

Release Notes:

- N/A

Marshall Bowers created

e066667 Improve performance of project panel with many git statuses (#25465)

Click to expand commit body
Closes #ISSUE

Release Notes:

- Improved performance of project panel in large git repositories

Cole Miller created

a78f3cf Notarize with a team key (#25479)

Click to expand commit body
Should make it less likely that notorization fails when nathan changes
his passwords.

(though probably no less likly to fail beacuse apple forces us to resign
new agreements on the regular)

Release Notes:

- N/A

---------

Co-authored-by: Peter Tripp <peter@zed.dev>

Conrad Irwin and Peter Tripp created

0acd556 language_model: Remove dependencies on individual model provider crates (#25503)

Click to expand commit body
This PR removes the dependencies on the individual model provider crates
from the `language_model` crate.

The various conversion methods for converting a `LanguageModelRequest`
into its provider-specific request type have been inlined into the
various provider modules in the `language_models` crate.

The model providers we provide via Zed's cloud offering get to stay, for
now.

Release Notes:

- N/A

Marshall Bowers created

2f7a627 edit predictions: Refine leading whitespace behavior (#25491)

Click to expand commit body
Closes https://github.com/zed-industries/zed/issues/25406

### Problem

Users have been confused about requiring `alt-tab` instead of just `tab`
in cases where they don't have a completions menu open (see issue
above). When they insert a newline and are in leading whitespace, they
expect to be able to accept a prediction with just `tab`, but doing so
increasing the indentation instead.

This PR changes the behavior in so a modifier is only required if the
cursor isn't already at the right indentation level based on the
surrounding block. In this case, `tab` would increase the indentation
and the prediction would get interpolated, allowing the user to press
`tab` again to accept it.

We also updated the docs to break down this behavior:
https://github.com/zed-industries/zed/pull/25493

### Before


https://github.com/user-attachments/assets/91fe6193-dddd-43c1-8c26-0f4648bdc3fa

### After


https://github.com/user-attachments/assets/671041bf-bf22-46a3-8466-b19b3e7dd6a0


Release Notes:

- edit predictions: Do not require a modifier key when indentation is
correct according to its surrounding block

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

Agus Zubiaga and Danilo Leal created

f1e6b14 Git: Add hotkey to open file from changes list (#25500)

Click to expand commit body
Release Notes:

- N/A

João Marcos created

10a4760 Add Anthropic Claude 3.7 support (#25497)

Peter Tripp created

cdd07fd Add `aws_http_client` and `bedrock` crates (#25490)

Click to expand commit body
This PR adds new `aws_http_client` and `bedrock` crates for supporting
AWS Bedrock.

Pulling out of https://github.com/zed-industries/zed/pull/21092 to make
it easier to land.

Release Notes:

- N/A

---------

Co-authored-by: Shardul Vaidya <cam.v737@gmail.com>
Co-authored-by: Anthony Eid <hello@anthonyeid.me>

Marshall Bowers , Shardul Vaidya , and Anthony Eid created

8a3fb89 Document why `ForegroundExecutor` is `!Send` (#25492)

Click to expand commit body
Release Notes:

- N/A

Michael Sloan created

30af8d0 git_ui: Commit modal refinement (#25484)

Click to expand commit body
Closes #ISSUE

Release Notes:

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

---------

Co-authored-by: Mikayla Maki <mikayla.c.maki@gmail.com>

Nate Butler and Mikayla Maki created

ceb7fc2 edit predictions: Split `layout_edit_prediction` popover (#25463)

Click to expand commit body
This function has grown a lot and it was getting really hard to
navigate. This PR splits it into smaller methods and moves it into
`Editor` with the rest of the edit prediction popovers' code.

I think there are opportunities to consolidate the many popovers we
have, but we'll do that separately.

Release Notes:

- N/A

Agus Zubiaga created

d869451 emacs: Add support for paragraph navigation (#25284)

Click to expand commit body
- emacs: Added support for `alt-{` and `alt-}` paragraph navigation

Peter Tripp created

ec7ce41 Git: Fix Linux bindings (#25486)

Click to expand commit body
- Tooltip with binding wasn't showing up
- Missing Linux bindings
- Commit modal wasn't opening when binding was pressed

Release Notes:

- N/A

---------

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

João Marcos and Conrad Irwin created

b2921bd Disable edit predictions in diff/patch files by default (#25291)

Peter Tripp created

64756fa Fix tmux being broken by default on Linux (#25476)

Click to expand commit body
Tmux uses `ctrl-b` as default prefix.
Prior to this tmux was basically useless in the default zed configuration.
(ctrl-b would toggle the left dock).

Peter Tripp created

ff68443 Git push/pull/fetch (#25445)

Click to expand commit body
Release Notes:

- N/A

---------

Co-authored-by: Michael Sloan <mgsloan@gmail.com>

Mikayla Maki and Michael Sloan created

b1b6401 gpui: Don’t hide `Window` in docs (#25449)

Click to expand commit body
Release Notes:

- N/A

This side effect is only appearing in outside project.

## Before

<img width="414" alt="image"
src="https://github.com/user-attachments/assets/73d215d2-20e4-4337-82f4-74daa88a1bae"
/>

## After

<img width="453" alt="image"
src="https://github.com/user-attachments/assets/030d34d7-c425-44f6-9cc5-0f2f6fd0a1ac"
/>

---------

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

Jason Lee and Marshall Bowers created

07ba7c8 gpui: Add `underline` style method (#24784)

Click to expand commit body
Release Notes:

- N/A

Add a shorter method to apply underline style.

https://tailwindcss.com/docs/text-decoration-line#underling-text

---------

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

Jason Lee and Marshall Bowers created