Commit log

6590115 Bump to 0.136.2 for @maxdeviant

Zed Bot created

9503d5a Revert "Fix aside affecting parent popover height (#11859)" (cherry-pick #11942) (#11944)

Click to expand commit body
Cherry-picked Revert "Fix aside affecting parent popover height
(#11859)" (#11942)

This reverts commit d3dfa91254f8cbc7f4779463b30a3df1677c395d.

This change can cause weird behavior where the completion menu ends up
positioned away from the cursor location:

<img width="1062" alt="Screenshot 2024-05-16 at 6 43 17 PM"

src="https://github.com/zed-industries/zed/assets/1486634/0462a874-4fe3-4ca9-88ce-8d5d0b4009fe">

With the change reverted:

<img width="1026" alt="Screenshot 2024-05-16 at 6 43 35 PM"

src="https://github.com/zed-industries/zed/assets/1486634/9fc7b9a1-0cfb-4a84-8f6b-b481a785ceca">

Release Notes:

- Fixed an issue where the completion menu would sometimes appear
detached from the cursor location (preview only).

Co-authored-by: Marshall Bowers <elliott.codes@gmail.com>

gcp-cherry-pick-bot[bot] and Marshall Bowers created

bb1b177 chat: Only autocomplete active people (cherry-pick #11892) (#11919)

Click to expand commit body
Cherry-picked chat: Only autocomplete active people (#11892)

Release Notes:

- chat: Updated name autocompletion to only consider active users

---------

Co-authored-by: Marshall Bowers <elliott.codes@gmail.com>

Co-authored-by: Conrad Irwin <conrad.irwin@gmail.com>
Co-authored-by: Marshall Bowers <elliott.codes@gmail.com>

gcp-cherry-pick-bot[bot] , Conrad Irwin , and Marshall Bowers created

d5ff62c zed 0.136.1

Thorsten Ball created

c44d170 Fix: Missing token count for GPT-4o model. (bumps tiktoken-rs to v0.5.9) (#11893)

Click to expand commit body
Fix: this makes sure we have token counts for the new GPT-4o model.

See: https://github.com/zurawiki/tiktoken-rs/releases/tag/v0.5.9 

Release Notes:

- Fix: Token count was missing for the new GPT-4o model.

(I believe this should go in a 0.136.x release)

Toon Willems created

dbe636e v0.136.x preview

Joseph T. Lyons created

c3c4e37 Do not select target range going to definition (#11691)

Click to expand commit body
Release Notes:

-Fixed #11347 , do not select target range going to definition. Just
place the cursor at the start of target range.

Congyu created

d3dfa91 Fix aside affecting parent popover height (#11859)

Click to expand commit body
Release Notes:

- Fixed the size of the completions menu changing based on the size of
the aside
([#11722](https://github.com/zed-industries/zed/issues/11722)).


https://github.com/zed-industries/zed/assets/30776250/c67e6fef-20f2-4dc5-92b3-09bb73f874a7


https://github.com/zed-industries/zed/assets/30776250/7467b8ee-6e66-42d7-a8cc-2df11df58c5e

---------

Co-authored-by: Marshall Bowers <elliott.codes@gmail.com>

loczek and Marshall Bowers created

4ff1ee1 tasks: minor fixes to docs (#11862)

Click to expand commit body
Release Notes:

- N/A

Piotr Osiewicz created

1b9014b tailwind: Allow Tailwind LS to be used in Scala (#11858)

Click to expand commit body
This fixes the issue mentioned here:
https://github.com/zed-industries/zed/issues/5830#issuecomment-2111947083

In order for other languages to work, we need to pass the following
settings along to the Tailwind language server.

With the following Zed settings, it then also works for Scala:

```json
{
  "languages": {
    "Scala": {
      "language_servers": ["tailwindcss-language-server"]
    },
  },
  "lsp": {
    "tailwindcss-language-server": {
      "settings": {
        "includeLanguages": {
          "scala": "html"
        },
        "experimental": {
          "classRegex": ["[cls|className]\\s\\:\\=\\s\"([^\"]*)"]
        }
      }
    }
  }
}
```

Release Notes:

- Added ability to configure settings for `tailwindcss-language-server`,
namely the `includeLanguages` and `experimental` objects.

**NOTE**: I have only tested that the language server boots up for Scala
files and that the settings are forwarded correctly. I don't have a
Scala+Tailwind project with which to test that the actual completions
also work.

cc @nguyenyou

Thorsten Ball created

f42f443 Remove stray `println!` (#11855)

Click to expand commit body
This PR removes a stray `println!` left over from #11844.

Release Notes:

- N/A

Marshall Bowers created

a59a388 tasks: Wire through click handlers in new tasks modal (#11854)

Click to expand commit body
:facepalm:
Spotted by @SomeoneToIgnore 


Release Notes:

- N/A

Piotr Osiewicz created

43d79af metal renderer: Increase instance buffer size dynamically (#11849)

Click to expand commit body
Previously, we had an instance buffer pool that could only allocate
buffers with a fixed size (hardcoded to 2mb). This caused certain scenes
to render partially, e.g. when showing tens of thousands of glyphs on a
big screen.

With this commit, when `MetalRenderer` detects that a scene would be too
large to render using the current instance buffer size, it will:

- Clear the existing instance buffers
- Allocate new instance buffers that are twice as large
- Retry rendering the scene that failed with the newly-allocated buffers
during the same frame.

This fixes #11615.

Release Notes:

- Fixed rendering issues that could arise when having large amounts of
text displayed on a large display. Fixed by dynamically increasing the
size of the buffers used on the GPU.
([#11615](https://github.com/zed-industries/zed/issues/11615)).

Before:


https://github.com/zed-industries/zed/assets/1185253/464463be-b61c-4149-a417-01701699decb


After:



https://github.com/zed-industries/zed/assets/1185253/4feacf5a-d862-4a6b-90b8-317ac74e9851

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

Thorsten Ball and Antonio created

26ffdaf tasks: Use unique id for run indicator (#11846)

Click to expand commit body
This fixes a small visual issue with the run indicator. As all run
indicators use the same element id they all show up as pressed when
clicking on a single button. We can safely use a combination of
"run_indicator" and the actual row as the element id, as there can only
ever be one run indicator per line.

Before:

<img width="552" alt="Screenshot 2024-05-15 at 12 24 08"
src="https://github.com/zed-industries/zed/assets/53836821/18779f1a-0984-488f-83fd-4a6a561f223e">

After:

<img width="633" alt="image"
src="https://github.com/zed-industries/zed/assets/53836821/07ea26b5-06ad-4955-8250-d96d4704220c">


Release Notes:

- Fixed an issue where all run buttons would show up as pressed when
clicking on a single run button

Bennet Bo Fenner created

2666434 rust: reduce false positives in runnables query (#11845)

Click to expand commit body
We were marking `#[cfg(test)]`ed function as a test, which is wrong.
Also allow for other attribute_items (such as #[should_panic]) between
test attribute and a function item.

Release Notes:

- N/A

Piotr Osiewicz created

8bc41e1 Use editor's current font size to scale UI elements (#11844)

Click to expand commit body
This is a follow-up to #11817 and fixes the case where the font size has
been changed with `cmd +/-` and not through the settings.

It now works with both: when the font size is adjusted in the settings
and when changing it via shortcuts.

Release Notes:

- N/A

Demo:


https://github.com/zed-industries/zed/assets/1185253/2e539bd3-f5cc-4aae-9f04-9ae014187959

Thorsten Ball created

8629a07 Tighten up KeyBinding (#11839)

Click to expand commit body
After #11795, the context menu was looking a little ridiculous on Mac in
vim mode (and the command palette has for a while).

<img width="258" alt="Screenshot 2024-05-14 at 20 35 50"
src="https://github.com/zed-industries/zed/assets/94272/cb0ec8b9-4da6-4ab4-9eec-c60d62f79eff">
<img width="581" alt="Screenshot 2024-05-14 at 20 56 28"
src="https://github.com/zed-industries/zed/assets/94272/d8fec440-17cc-4c20-80d9-c1d7f2f18315">

A future change would be to have a platform style for vim keybindings so
we can render `g A`, but for now this just removes a bunch of (to my
eyes at least) unnecessary space:

 
<img width="576" alt="Screenshot 2024-05-14 at 21 01 55"
src="https://github.com/zed-industries/zed/assets/94272/a39f4123-dc3b-4bb5-bb8d-5de6b37552e7">

cc @iamnbutler 


Release Notes:

- N/A

Conrad Irwin created

3cbac27 Show buffer_search on vim::MoveToNextMatch (#11836)

Click to expand commit body
This changes the vim::MoveToNextMatch event callback to open the
buffer_search toolbar. This fixes an issue where highlights would appear
which were only cancellable by opening then closing the toolbar.

Release Notes:

- the buffer search toolbar now opens on vim::MoveToNextMatch fixing the
issue where highlights were not cancellable

---------

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

Gus and Conrad Irwin created

1a358e2 cleanup (#11835)

Click to expand commit body
cleanup unneed code.

Release Notes:

- N/A

CharlesChen0823 created

ba26acc blade: Fix display of straight underlines (#11818)

Click to expand commit body
Fixes: #11715

(also apply alpha of the color to wavy ones while we're at it)

Release Notes:

- Fixed display of straight underlines when using the blade renderer
(#11715)

jansol created

edadc6f Fix bug with keymaps flickering in mouse menu (#11795)

Click to expand commit body
Fixes a bug where Vim bindings would flash in the mouse context menu and
then be replaced by the default keybindings. Also fixes those bindings
not being usable while the mouse context menu was open.

Release Notes:

- Fixed bug where Vim bindings were not available when mouse context
menu was open

---------

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

Gus and Conrad Irwin created

3da625e astro: Bump to v0.0.2 (#11834)

Click to expand commit body
This PR bumps the Astro extension to v0.0.2.

Changes:

- #11830

Release Notes:

- N/A

Marshall Bowers created

586f708 ruby: Bump to v0.0.3 (#11833)

Click to expand commit body
This PR bumps the Ruby extension to v0.0.3.

Changes:

- #11825

Release Notes:

- N/A

Marshall Bowers created

3df144c php: Bump to v0.0.3 (#11832)

Click to expand commit body
This PR bumps the PHP extension to v0.0.3.

Changes:

- #11695

Release Notes:

- N/A

Marshall Bowers created

af79e6b astro: Fix broken language injections (#11830)

Click to expand commit body
Update upstream
https://github.com/virchau13/tree-sitter-astro/commit/4be180759ec13651f72bacee65fa477c64222a1a
This will solve #11827

Before:
<img width="644" alt="image"
src="https://github.com/zed-industries/zed/assets/45585937/f6b10667-9197-4e5d-8513-78ce3d22f9e7">
After:
<img width="700" alt="image"
src="https://github.com/zed-industries/zed/assets/45585937/7bd7b0e6-e73c-4d1d-abd6-d6b2d88e97a6">


Release Notes:

- N/A

d1y created

43be375 ruby: Fix solargraph completion highlighting (#11825)

Click to expand commit body
Hi. This pull request fixes a small error with `solargraph` completions
to make them more detailed. It removes the nested match expression to
resolve the problem with highlighting the completion items and their
signatures with the return type as well. Thanks.

See screenshots below.

Release Notes:

- N/A

| Before  | After |
| ------------- | ------------- |
| ![CleanShot 2024-05-14 at 23 23
00@2x](https://github.com/zed-industries/zed/assets/1894248/4ea1fa41-1189-4607-8aea-547c27229a18)
| ![CleanShot 2024-05-14 at 23 29
30@2x](https://github.com/zed-industries/zed/assets/1894248/3c7be39a-2c7b-4662-8519-8c258c049cfa)
|

Vitaly Slobodin created

26b5f34 assistant: Add basic current project context (#11828)

Click to expand commit body
This PR adds the beginnings of current project context to the Assistant.

Currently it supports reading a `Cargo.toml` file and using that to get
some basic information about the project, and its dependencies:

<img width="1264" alt="Screenshot 2024-05-14 at 6 17 03 PM"
src="https://github.com/zed-industries/zed/assets/1486634/cc8ed5ad-0ccb-45da-9c07-c96af84a14e3">

Release Notes:

- N/A

---------

Co-authored-by: Nate <nate@zed.dev>

Marshall Bowers and Nate created

5b2c019 cli: Support --foreground for debugging (#11819)

Click to expand commit body
Release Notes:

- Added `--foreground` to the cli to allow running zed on the current
PTY.

Conrad Irwin created

18b6ded Auto-open remote projects on creation (#11826)

Click to expand commit body
Release Notes:

- N/A

Conrad Irwin created

67c9fc5 Fix a link to Zed configuring docs (#11739)

Click to expand commit body
Based on https://github.com/zed-industries/zed/pull/11736 

Release Notes:

- N/A

Kirill Bulatov created

ba4d4c8 assistant: Restructure ambient context in preparation for adding more (#11822)

Click to expand commit body
This PR restructures the ambient context in the `assistant` crate to
make it more amenable to adding more kinds of ambient context.

Release Notes:

- N/A

Marshall Bowers created

bf44787 Prevent remoting dialog from losing focus (#11820)

Click to expand commit body
Release Notes:

- N/A

Conrad Irwin created

748cd38 php: Highlight PHPDoc comments (#11695)

Click to expand commit body
This adds highlighting of phpdoc tags and PHP types to phpdoc comments,
using
[tree-sitter-phpdoc](https://github.com/claytonrcarter/tree-sitter-phpdoc)
(maintained by yours me, and also in use by neovim).

<table>
<tr>
<td>
<strong>Before</strong>
<img
src="https://github.com/zed-industries/zed/assets/1420419/bae4c502-8a2c-4399-893f-fcff4e5797b6">
</td>
<td>
<strong>After</strong>
<img
src="https://github.com/zed-industries/zed/assets/1420419/8848e9fb-61a0-4938-a118-7041da9589c0">
</td>
</tr>
</table>


Release Notes:

- N/A

claytonrcarter created

1db136f tasks: Refresh available tasks in editor when tasks.json changes (#11811)

Click to expand commit body
Release Notes:

- N/A

Piotr Osiewicz created

0ae0b08 linux: Add Keybinds Ctrl-Insert to Copy and Shift-Insert to Paste (#11799)

Click to expand commit body
Release Notes:

- N/A

Thomas Aunvik created

5b8bb62 Scale UI elements in the editor based on the `buffer_font_size` (#11817)

Click to expand commit body
This PR adjusts how UI elements are rendered inside of full-size editors
to scale with the configured `buffer_font_size`.

This fixes some issues where UI elements (such as the `IconButton`s used
for code action and task run indicators) would not scale as the
`buffer_font_size` was changed.

We achieve this by changing the rem size when rendering the
`EditorElement`, with a rem size that is derived from the
`buffer_font_size`.

`WindowContext` now has a new `with_rem_size` method that can be used to
render an element with a given rem size. Note that this can only be
called during `request_layout`, `prepaint`, or `paint`, similar to
`with_text_style` or `with_content_mask`.

### Before

<img width="1264" alt="Screenshot 2024-05-14 at 2 15 39 PM"
src="https://github.com/zed-industries/zed/assets/1486634/05ad7f8d-c62f-4baa-bffd-38cace7f3710">

<img width="1264" alt="Screenshot 2024-05-14 at 2 15 49 PM"
src="https://github.com/zed-industries/zed/assets/1486634/254cd11c-3723-488f-ab3d-ed653169056c">

### After

<img width="1264" alt="Screenshot 2024-05-14 at 2 13 02 PM"
src="https://github.com/zed-industries/zed/assets/1486634/c8dad309-62a4-444f-bfeb-a0009dc08c03">

<img width="1264" alt="Screenshot 2024-05-14 at 2 13 06 PM"
src="https://github.com/zed-industries/zed/assets/1486634/4d9a3a52-9656-4768-b210-840b4884e381">

Note: This diff is best viewed with whitespace changes hidden:

<img width="245" alt="Screenshot 2024-05-14 at 2 22 45 PM"
src="https://github.com/zed-industries/zed/assets/1486634/7cb9829f-9c1b-4224-95be-82182017ed90">

Release Notes:

- Changed UI elements within the editor to scale based on
`buffer_font_size` (e.g., code action indicators, task run indicators,
etc.).

Marshall Bowers created

c8ddde2 Fix reveal_path blocks on linux (#11702)

Click to expand commit body
If you go to the file tree and press "x" (which is
"project_panel::RevealInFinder"). It will open the default file
manager(in my case nautilus). But on Linux it makes Zed unresponsive.
This fixes that.

Release Notes:

- Fixed Zed blocked after opening file manager in the file tree on
Linux.

Flafy created

bfc066a Toss return value (#11815)

Click to expand commit body
Release Notes:

- N/A

Mikayla Maki created

fd8336c linux: Handle modification events from file watcher (#11778)

Click to expand commit body
Fixed #11595 


Release Notes:

- N/A

CharlesChen0823 created

d0dd8bf windows: Improve handling of the `WM_SETTINGCHANGE` (#11738)

Click to expand commit body
This event is broadcast to all windows, so we can handle this message in
the `WindowsWindow` ranther than in `WindowsPlatform`.

Release Notes:

- N/A

张小白 created

491c04e windows: Support multi-monitor (#11699)

Click to expand commit body
Zed can detect changes in monitor connections and disconnections and
provide corresponding feedback. For example, if the current window's
display monitor is disconnected, the window will be moved to the primary
monitor. And now Zed always opens on the monitor specified in
`WindowParams`.

Release Notes:

- N/A

张小白 created

5154910 windows: Update crate `Windows` from `0.53` to `0.56` (#11662)

Click to expand commit body
Version 0.56 has fixed many of the previous bugs, and one of the bugs
prevent me implementing some functions.

Release Notes:

- N/A

张小白 created

d1ee2d0 wayland: Window controls and drag (#11525)

Click to expand commit body
Based on https://github.com/zed-industries/zed/pull/11046

- Partially fixes #10346 
- Fixes https://github.com/zed-industries/zed/issues/9964

## Features
Window buttons

![image](https://github.com/zed-industries/zed/assets/71973804/1b7e0504-3925-45ba-90b5-5adb55e0d739)

Window drag

![image](https://github.com/zed-industries/zed/assets/71973804/9c509a37-e5a5-484c-9f80-c722aeee4380)

Native window context menu

![image](https://github.com/zed-industries/zed/assets/71973804/048ecf52-e277-49bb-a106-91cad226fd8a)

### Limitations

- No resizing
- Wayland only (though X11 always has window decorations)

### Technical

This PR adds three APIs to gpui.

1. `show_window_menu`: Triggers the native title bar context menu.
2. `start_system_move`: Tells the compositor to start dragging the
window.
3. `should_render_window_controls`: Whether the compositor doesn't
support server side decorations.

These APIs have only been implemented for Wayland, but they should be
portable to other platforms.

Release Notes:

- N/A

---------

Co-authored-by: Akilan Elango <akilan1997@gmail.com>

apricotbucket28 and Akilan Elango created

db89353 git: Support git repos with .git folder above project root (#11550)

Click to expand commit body
TODOs:

- [x] Add assertions to the test to ensure that the git status is
propagated
- [x] Get collaboration working
- [x] Test opening a git repository inside another git repository
- [x] Test opening the sub-folder of a repository that itself contains
another git repository in a subfolder

Fixes:
- Fixes https://github.com/zed-industries/zed/issues/10154
- Fixes https://github.com/zed-industries/zed/issues/8418
- Fixes https://github.com/zed-industries/zed/issues/8275
- Fixes https://github.com/zed-industries/zed/issues/7816
- Fixes https://github.com/zed-industries/zed/issues/6762
- Fixes https://github.com/zed-industries/zed/issues/4419
- Fixes https://github.com/zed-industries/zed/issues/4672
- Fixes https://github.com/zed-industries/zed/issues/5161

Release Notes:

- Added support for opening subfolders of git repositories and treating
them as part of a repository (show git status in project panel, show git
diff in gutter, git blame works, ...)
([#4672](https://github.com/zed-industries/zed/issues/4672)).

Demo video:


https://github.com/zed-industries/zed/assets/1185253/afc1cdc3-372c-404e-99ea-15708589251c

Thorsten Ball created

9f0a202 Report response latency and errors when using (inline) assistant (#11806)

Click to expand commit body
Release Notes:

- N/A

Co-authored-by: Nathan <nathan@zed.dev>
Co-authored-by: David <davidsp@anthropic.com>

Antonio Scandurra , Nathan , and David created

de09409 Sanitize messages before sending them to Anthropic (#11810)

Click to expand commit body
Release Notes:

- N/A

Co-authored-by: Nathan <nathan@zed.dev>
Co-authored-by: David <davidsp@anthropic.com>

Antonio Scandurra , Nathan , and David created

69f9489 Don't bundle libdl :facepalm: (#11809)

Click to expand commit body
Release Notes:

- N/A

Conrad Irwin created

652748b gleam: Bump to v0.1.2 (#11803)

Click to expand commit body
This PR bumps the Gleam extension to v0.1.2.

Changes:

- #11476
- #11801

Release Notes:

- N/A

Marshall Bowers created

77f0d35 gleam: Add `gleam test` task (#11801)

Click to expand commit body
This PR adds a task for running `gleam test`.

Release Notes:

- N/A

Marshall Bowers created

5944caa Add support for interacting with Claude in the assistant panel (#11798)

Click to expand commit body
Release Notes:

- Added support for interacting with Claude in the assistant panel. You
can enable it by adding the following to your `settings.json`:

    ```json
    "assistant": {
        "version": "1",
        "provider": {
            "name": "anthropic"
        }
    }
    ```

Antonio Scandurra created