Commit log

f5124c2 scrollbar: Fix horizontal scrollbar display overflow last item (#19403)

Click to expand commit body
currently, the laste item display is overflow by scrollbar, cause it
cannot clickable.
So remain one item height for display horizontal scrollbar,.
![Screenshot 2024-10-18
192352](https://github.com/user-attachments/assets/d686f0e8-93f8-426e-8816-6f00ed17a599)



Release Notes:

- N/A

CharlesChen0823 created

ea46001 ssh remoting: Undo the spawning of message handlers (#19409)

Click to expand commit body
I suspect that this might have something to do with saving files not
being possible after a while.

I want to merge this and bump nightly.

Release Notes:

- N/A

Thorsten Ball created

5168fc2 docs: More Java extension documentation (#19390)

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

Peter Tripp created

2bcf9fc Add `client::zed_urls` module for constructing zed.dev URLs (#19391)

Click to expand commit body
This PR adds a new `zed_urls` module to the `client` crate.

This module contains functions for constructing URLs to Zed properties,
such as zed.dev.

The URLs produced by this module will respect the server URL set via
settings or the `ZED_SERVER_URL` environment variable. This allows them
to correctly reflect the current environment (such as when testing Zed
against a local collab/zed.dev).

Release Notes:

- N/A

Marshall Bowers created

3c32f01 paths: Update doc comment (#19388)

Click to expand commit body
This PR updates a doc comment to use proper capitalization.

Also removes an unneeded `return`.

Release Notes:

- N/A

Marshall Bowers created

9d61cd5 ci: Check spelling separately from formatting (#19385)

Click to expand commit body
This PR moves the spelling check out of the `check_style` action, which
we can leave for just checking formatting.

We can't use the `crates-ci-typos` action as-is on the macOS runners due
to the absence of `wget`.

Release Notes:

- N/A

Marshall Bowers created

411f64b Restructure assistant edits to show all changes in a proposed-change editor (#18240)

Click to expand commit body
This changes the `/workflow` command so that instead of emitting edits
in separate steps, the user is presented with a single tab, with an
editable diff that they can apply to the buffer.

Todo

* Assistant panel
* [x] Show a patch title and a list of changed files in a block
decoration
* [x] Don't store resolved patches as state on Context. Resolve on
demand.
    * [ ] Better presentation of patches in the panel
    * [ ] Show a spinner while patch is streaming in
* Patches
* [x] Preserve leading whitespace in new text, auto-indent insertions
    * [x] Ensure patch title is very short, to fit better in tab
* [x] Improve patch location resolution, prefer skipping whitespace over
skipping `}`
    * [x] Ensure patch edits are auto-indented properly
* [ ] Apply `Update` edits via a diff between the old and new text, to
get fine-grained edits.
* Proposed changes editor
    * [x] Show patch title in the tab
    * [x] Add a toolbar with an "Apply all" button
* [x] Make `open excerpts` open the corresponding location in the base
buffer (https://github.com/zed-industries/zed/pull/18591)
* [x] Add an apply button above every hunk
(https://github.com/zed-industries/zed/pull/18592)
* [x] Expand all diff hunks by default
(https://github.com/zed-industries/zed/pull/18598)
    * [x] Fix https://github.com/zed-industries/zed/issues/18589
* [x] Syntax highlighting doesn't work until the buffer is edited
(https://github.com/zed-industries/zed/pull/18648)
* [x] Disable LSP interaction in Proposed Changes editor
(https://github.com/zed-industries/zed/pull/18945)
* [x] No auto-indent? (https://github.com/zed-industries/zed/pull/18984)
* Prompt
    * [ ] make sure old_text is unique

Release Notes:

- N/A

---------

Co-authored-by: Marshall Bowers <elliott.codes@gmail.com>
Co-authored-by: Antonio <antonio@zed.dev>
Co-authored-by: Richard <richard@zed.dev>
Co-authored-by: Marshall <marshall@zed.dev>
Co-authored-by: Nate Butler <iamnbutler@gmail.com>
Co-authored-by: Antonio Scandurra <me@as-cii.com>
Co-authored-by: Richard Feldman <oss@rtfeldman.com>

Max Brunsfeld , Marshall Bowers , Antonio , Richard , Marshall , Nate Butler , Antonio Scandurra , and Richard Feldman created

4ae2f93 ci: Improve GitHub Action modularity (#18861)

Click to expand commit body
- Closes: https://github.com/zed-industries/zed/issues/19351
- Switch to using the official [typos GitHub Action](https://github.com/crate-ci/typos/blob/master/docs/github-action.md)
- Move the typos check into `actions/check_style`
- Move Squawk Postgres migration check out of `actions/check_style` file into ci.yml
- `actions/check_style` can now be run on stateless/linux runners (previous required self-hosted MacOS runner)
- ci.yml: Split old `style` into checks into those that can run statelessly (linux) and everything else into a new `migration` group which benefit from the full git checkout available on the MacOS runners.
- ci.yml: Move `Check unused dependencies` from style to `linux_tests`
- Add `if: github.repository_owner == 'zed-industries'` to all jobs so they won't try and run on GitHub forks.

Peter Tripp created

65fb278 Always have cmd-o open a local project (#19376)

Click to expand commit body
Release Notes:

- Fixed `cmd-o` in an SSH project to always open a local project

Conrad Irwin created

e6b9a8e ssh remoting: Handle OpenNewBuffer request (#19373)

Click to expand commit body
Release Notes:

- N/A

Thorsten Ball created

398d039 workspace: Fix inconsistent paths order serialization (#19232)

Click to expand commit body
Release Notes:

- Fixed inconsistent serialization of workspace paths order

Elliot Thomas created

e9e4c77 Update all occurrences of `option_as_meta` to new default value (#19369)

Click to expand commit body
This PR is a quick follow-up to #19364 which updates some left-out
occurrences of `option_as_meta` to the new default value (`false`).

Finn Evers created

4be9da2 remote ssh: Make "get permalink to line" work (#19366)

Click to expand commit body
This makes the `editor: copy permalink to line` and `editor: copy
permalink to line` actions work in SSH remote projects.

Previously it would only work in local projects.

Demo:


https://github.com/user-attachments/assets/a8012152-b631-4b34-9ff2-e4d033c97dee




Release Notes:

- N/A

Thorsten Ball created

c186e99 ssh remote: Reset missed heartbeats on connection activity (#19368)

Click to expand commit body
Ran into this this morning. At least I suspect I ran into it. In any
case: we need to reset the missed hearbeats to 0 in case we got any
connection activity.

Release Notes:

- N/A

Thorsten Ball created

4df882c Make terminal.option_as_meta=false in default settings (#19364)

Click to expand commit body
- This reverts the change I made in https://github.com/zed-industries/zed/pull/15535 which set `option_as_meta` to `true` in the default settings.
- `true` is a reasonable default for US Keyboards, but is terrible for many others which rely on `alt+<key>` for totally normal keystroke combinations.

Peter Tripp created

17f2929 collab: Anchor new subscription's billing cycle to the first of the month (#19367)

Click to expand commit body
This PR makes it so new subscriptions will have their billing cycle
anchored to the first of the month.

When someone signs up today, they will be billed starting on the first
of next month.

Release Notes:

- N/A

Co-authored-by: Antonio <antontio@zed.dev>
Co-authored-by: Richard <richard@zed.dev>

Marshall Bowers , Antonio , and Richard created

5ad3920 Support uppercase extensions in image preview (#19304)

Peter Tripp created

8c91054 Subtract FREE_TIER_MONTHLY_SPENDING_LIMIT from reported monthly spend (#19358)

Click to expand commit body
Release Notes:

- N/A

Antonio Scandurra created

455f241 Introduce a new /billing/monthly_spend API (#19354)

Click to expand commit body
Fixes https://github.com/zed-industries/zed/issues/19353

Release Notes:

- N/A

Antonio Scandurra created

498ecd6 Fetch more than one page when polling stripe events (#19343)

Click to expand commit body
This fixes a bug that was causing most users to be unable to use the
LLMs via Zed. It was caused by not using pagination and, instead, always
querying the very first page of stripe events.

Note that we're also allowing processing events generated in the last 24
hours (before, this was only 1 hour). I did this so that we can process
the backlog of events that the aforementioned bug was skipping.

Release Notes:

- N/A

Antonio Scandurra created

3216de7 ssh remoting: Do not print error backtrace on non-zero exit (#19290)

Click to expand commit body
Closes #ISSUE


Release Notes:

- N/A

Thorsten Ball created

57369b5 Update Rust crate tree-sitter-elixir to v0.3.1 (#19335)

renovate[bot] created

f9d4272 docs: Java extension settings (#19113)

Click to expand commit body
Co-authored-by: Peter Tripp <peter@zed.dev>

Heavysnowjakarta and Peter Tripp created

378a2cf Allow passing args to ssh (#19336)

Click to expand commit body
This is useful for passing a custom identity file, jump hosts, etc.

Unlike with the v1 feature, we won't support `gh`/`gcloud` ssh wrappers
(yet?). I think the right way of supporting those would be to let
extensions provide remote projects.

Closes #19118

Release Notes:

- SSH remoting: restored ability to set arguments for SSH

Conrad Irwin created

f1d01d5 Simplify PR template (#19337)

Click to expand commit body
Release Notes:

- N/A

Conrad Irwin created

78093b8 ssh: Clean up title bar indicator icon (#19328)

Click to expand commit body
This PR cleans up the custom icon with indicator implementation in favor
of `IconWithIndicator`, which we already had. It seems like it isn't
super used still, but it's good to try to enforce some consistency
either way. I checked my changes against the REPL stuff (one instance
where its used) and everything's looking good so far. As far as SSH,
nothing has visually changed; we just have less code for this thing now.

<img width="800" alt="Screenshot 2024-10-17 at 2 15 47 AM"
src="https://github.com/user-attachments/assets/5c146757-501e-4242-b145-a576a8f289b5">

---

Release Notes:

- N/A

Danilo Leal created

a41e973 ssh: Remove server count from modal header (#19329)

Click to expand commit body
The server count was something that existed since the remote development
implementation and we just kept it there without a lot of critical
thinking. However, it doesn't feel like it's particularly useful yet,
which means that, at least for now, we could clean it up more and wait
for further feedback to add it back, if ever requested.

Release Notes:

- N/A

Danilo Leal created

9a3d873 ssh: Use system prompt for the server removal action (#19332)

Click to expand commit body
This PR replaces a toast for the system prompt to confirm the action of
removing a server from the remote list. The alert dialog component is
the right choice here as we want to have a modal action that forces
choice. This should make it easier to convert to a nativa alert dialog
in the future, as well as for other platforms.

<img width="800" alt="Screenshot 2024-10-17 at 3 01 41 AM"
src="https://github.com/user-attachments/assets/7bb1210a-54bf-40da-a85a-f269484825a1">

Release Notes:

- N/A

Danilo Leal created

c888101 SSH remoting: Don't panic when opening root, open ~ instead (#19322)

Click to expand commit body
Release Notes:

- Fixed a panic when doing `zed ssh://server/`

Conrad Irwin created

0c04fb9 SSH remoting: better error message for projects (#19320)

Click to expand commit body
Before this, if no project paths were opened you were in a wierd UI
state where
most things didn't work because the project was ssh, but no
files/folders were open.

Release Notes:

- Fixed error handling when no project paths could be opened

Conrad Irwin created

f6fad3b collab: Remove lifetime spending limit in favor of LLM usage billing (#19321)

Click to expand commit body
This PR removes the lifetime spending limit that was added in #16780.

We had previously added this as a way to prevent runaway usage, but now
that we have a cap on free usage per month with paid access after that,
we don't need this check anymore.

Release Notes:

- N/A

Marshall Bowers created

6614fef Pin astral-sh/setup-uv action to f3bcaeb (#19309)

Click to expand commit body
This PR contains the following updates:

| Package | Type | Update | Change |
|---|---|---|---|
| [astral-sh/setup-uv](https://redirect.github.com/astral-sh/setup-uv) |
action | pinDigest | -> `f3bcaeb` |

---

### Configuration

📅 **Schedule**: Branch creation - "after 3pm on Wednesday" in timezone
America/New_York, Automerge - At any time (no schedule defined).

🚦 **Automerge**: Disabled by config. Please merge this manually once you
are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

Release Notes:

- N/A

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzOC4xMjAuMSIsInVwZGF0ZWRJblZlciI6IjM4LjEyMC4xIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119-->

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>

renovate[bot] and renovate[bot] created

08b1545 Show a user-visible error message if saving fails (#19311)

Click to expand commit body
Release Notes:

- Added a user-visible error message when a manual save fails.

Conrad Irwin created

fedd177 collab: Add context to errors syncing billing events to Stripe (#19315)

Click to expand commit body
This PR adds context to errors that occur when trying to sync billing
events to Stripe.

Release Notes:

- N/A

Marshall Bowers created

4288096 Update Rust crate tree-sitter-cpp to v0.23.1 (#18974)

Click to expand commit body
This PR contains the following updates:

| Package | Type | Update | Change |
|---|---|---|---|
|
[tree-sitter-cpp](https://redirect.github.com/tree-sitter/tree-sitter-cpp)
| workspace.dependencies | patch | `0.23.0` -> `0.23.1` |

---

### Release Notes

<details>
<summary>tree-sitter/tree-sitter-cpp (tree-sitter-cpp)</summary>

###
[`v0.23.1`](https://redirect.github.com/tree-sitter/tree-sitter-cpp/compare/v0.23.0...v0.23.1)

[Compare
Source](https://redirect.github.com/tree-sitter/tree-sitter-cpp/compare/v0.23.0...v0.23.1)

</details>

---

### Configuration

📅 **Schedule**: Branch creation - "after 3pm on Wednesday" in timezone
America/New_York, Automerge - At any time (no schedule defined).

🚦 **Automerge**: Disabled by config. Please merge this manually once you
are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

Release Notes:

- N/A

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzOC4xMTQuMCIsInVwZGF0ZWRJblZlciI6IjM4LjExNC4wIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119-->

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>

renovate[bot] and renovate[bot] created

256c31a Update Rust crate tree-sitter-c to v0.23.1 (#18958)

Click to expand commit body
This PR contains the following updates:

| Package | Type | Update | Change |
|---|---|---|---|
| [tree-sitter-c](https://redirect.github.com/tree-sitter/tree-sitter-c)
| workspace.dependencies | patch | `0.23.0` -> `0.23.1` |

---

### Release Notes

<details>
<summary>tree-sitter/tree-sitter-c (tree-sitter-c)</summary>

###
[`v0.23.1`](https://redirect.github.com/tree-sitter/tree-sitter-c/compare/v0.23.0...v0.23.1)

[Compare
Source](https://redirect.github.com/tree-sitter/tree-sitter-c/compare/v0.23.0...v0.23.1)

</details>

---

### Configuration

📅 **Schedule**: Branch creation - "after 3pm on Wednesday" in timezone
America/New_York, Automerge - At any time (no schedule defined).

🚦 **Automerge**: Disabled by config. Please merge this manually once you
are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

Release Notes:

- N/A

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzOC4xMTQuMCIsInVwZGF0ZWRJblZlciI6IjM4LjExNC4wIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119-->

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>

renovate[bot] and renovate[bot] created

c8b6ad9 Context Servers: Protocol fixes and UI improvements (#19087)

Click to expand commit body
This PR does two things. It fixes some minor inconsistencies in the
protocol. This is mostly about handling JSON RPC notifications correctly
and skipping fields when set to None.

Second part is about improving the rendering of context server commands,
by passing on the description
of the command to the slash command UI and showing the name of the
argument as a CodeLabel.

Release Notes:

- N/A

David Soria Parra created

0e22c9f docs: Add C++ clangd example arguments (#19308)

Peter Tripp created

56f69be Do not allow [re]running ssh tasks when not connected to the server (#19306)

Click to expand commit body
Release Notes:

- N/A

Kirill Bulatov created

02f63e4 Resolve proto hints with empty resolve data (#19274)

Click to expand commit body
Fixed ssh remoting not showing a lot of hints


Release Notes:

- N/A

Kirill Bulatov created

3dcc638 Better handle shell for remote ssh projects (#19297)

Click to expand commit body
Release Notes:

- N/A

Co-authored-by: Conrad Irwin <conrad@zed.dev>

Kirill Bulatov and Conrad Irwin created

d35b646 assistant: Direct user to account page to subscribe for more LLM usage (#19300)

Click to expand commit body
This PR updates the location where we send the user to subscribe for
more LLM usage to the account page.

Release Notes:

- Updated the URL to the account page when subscribing to LLM usage.

Marshall Bowers created

338bf3f windows: Fix window not displaying correctly on launch (#19124)

Click to expand commit body
Closes #18705 (comment)

This PR fixes the issue where the Zed window was not displaying
correctly on launch. Now, when Zed is closed in a maximized state, it
will reopen in a maximized state.

On macOS, when a window is created but not yet visible, calling `zoom`
or `toggle_fullscreen` will still affect the hidden window. However,
this behavior is different on Windows, so special handling is required.

Also, since #18705 hasn't been reviewed yet, I'm not sure if this PR
should be merged now or if it should wait until #18705 is reviewed
first.


Release Notes:

- N/A

张小白 created

879a2ea gpui: Replace redundant code in animation (#19273)

Click to expand commit body
Just a small change to replace some redundant code in the animation
element.

Release Notes:

- N/A

Matin Aniss created

7a5003b ssh: Do not look up dev servers when rendering the default mode (#19295)

Click to expand commit body
This should help with the bug where there's a mismatch between
connection count and the list showing empty state.

Closes #ISSUE

Release Notes:

- N/A

Piotr Osiewicz created

f8f3f36 v0.159.x dev

Joseph T. Lyons created

474e670 Increase monthly free tier spend from 5 dollars to 10 dollars (#19291)

Click to expand commit body
Release Notes:

- N/A

Co-authored-by: Marshall <marshall@zed.dev>
Co-authored-by: Richard <richard@zed.dev>

Antonio Scandurra , Marshall , and Richard created

fe0bcc0 collab: Add Stripe API key to Kubernetes template (#19292)

Click to expand commit body
This PR adds the Stripe API key to the Kubernetes template.

It's optional right now, so we can set the API key when we're ready.

Release Notes:

- N/A

Marshall Bowers created

69abe71 ssh remoting: Treat closed stderr as error (#19289)

Click to expand commit body
Before this change we had a race condition bug: if stderr was closed
before the other two sockets, we wouldn't properly detect when the
server died, and not report or retry anything.

That's because we treated a closed stderr as a non-error.

Technically, it isn't an error (closing a connection is okay!), but
until we have a proper shutdown ceremony between all three processes, we
can treat it as an error, because that lets us to detect when the server
is gone.

On the client-side, we also always react to these errors by
reconnecting. Except when we shutdown: there we do a proper shutdown and
won't error on the proxy exit code.

So, this works, even if I wish there was a better way for the server to
communicate to the proxy that it shutdown properly. But I don't want a
fourth socket.

Release Notes:

- N/A

Thorsten Ball created

9c3d80d collab: Fetch more meters and prices when initializing `StripeBilling` (#19288)

Click to expand commit body
This PR makes it so we fetch more meters and prices when initializing
`StripeBilling`, as we have more than 10 meters defined.

Release Notes:

- N/A

Marshall Bowers created