Commit log

751508b linux: Install dependencies when bundling nightly (#14566)

Click to expand commit body
Release Notes:

- N/A

Thorsten Ball created

f54f5df linux: Build Nightly for ARM too (#14562)

Click to expand commit body
Release Notes:

- N/A

Thorsten Ball created

66f0c39 linux: Fix missing licenses in binary causing panics (#14561)

Click to expand commit body
Turns out that the existing CI step for Nightly did create the licenses
and they have been baked into X86 builds ever since, because our
builders are stateful.

On ARM machines, the licenses wouldn't exist in the binary because we
called `script/generate-licenses` too late in `scripts/bundle-linux`,
after the binary had been created.

This removes the duplication and generates the licenses once, before the
binary is created.

Fixes #14302.

Release Notes:

- Fixed "View Dependency Licenses" (or `zed: open licenses`) crashing on
Linux ARM machines.
([#14302](https://github.com/zed-industries/zed/issues/14302)

Thorsten Ball created

fdd233e Change the context menu and Copilot settings icon (#14501)

Click to expand commit body
Felt the link we were using for menu items that open a browser page was
not the best. That one is most typically used for attachments within
scope, as opposed to opening external links. Noticed that via the
"Copilot Settings" menu, which also felt like it could have a bit more
descriptive label. Also reduced the size of the rendered icon in this
component.

---

Release Notes:

- N/A

Danilo Leal created

bf7e474 Properly fix the tab icons

Kirill Bulatov created

2a8cee5 Keep initial tab config without the icons (#14553)

Click to expand commit body
Based on
https://zed-industries.slack.com/archives/C04S5TU0RSN/p1721125498461089

Release Notes:
- N/A

Kirill Bulatov created

ef20afa project_panel: Fixed open in split not working in project panel (#14535)

Click to expand commit body
Release Notes:

- Fixed `cmd-double click` in project panel not opening a split view ([14465](https://github.com/zed-industries/zed/issues/14465))

CharlesChen0823 created

e413823 Headless extensions (#14538)

Click to expand commit body
Release Notes:

- remoting (alpha only): Fix extension installation

Conrad Irwin created

e68d9f4 Switch to muted color for kernel output labels (#14529)

Click to expand commit body
Sets the text for "Executing...", "Queued", etc. to be `Color::Muted`

<img width="442" alt="image"
src="https://github.com/user-attachments/assets/10c27ce2-b804-41a3-a50e-0778b7e6cd09">


Release Notes:

- N/A

Kyle Kelley created

3407256 linux: Tweak file chooser dialogs (#14526)

Click to expand commit body
Mostly some small tweaks to the file chooser dialogs.

Fixes https://github.com/zed-industries/zed/issues/14127 (along with the
`ashpd` update in https://github.com/zed-industries/zed/pull/14401)

Also included a fix
(https://github.com/zed-industries/zed/commit/971d67c994dd595454cc4bc92bdf33d9da30a31a)
for an issue that made multiple file chooser dialogs pop up on Wayland
when doing CTRL + O and quickly pressing the escape key.

Release Notes:

- N/A

apricotbucket28 created

abc5abc open picker (#14524)

Click to expand commit body
Release Notes:

- linux: Added a fallback Open picker for when XDG is not working
- Added a new setting `use_system_path_prompts` (default true) that can
be disabled to use Zed's builtin keyboard-driven prompts.

---------

Co-authored-by: Max <max@zed.dev>

Conrad Irwin and Max created

da33aac extensions_ui: Remove commented-out code (#14525)

Click to expand commit body
This PR removes some commented-out code from the `extensions_ui`.

Release Notes:

- N/A

Marshall Bowers created

1818fef Display file icons in tabs (#14523)

Click to expand commit body
This PR adds support for displaying file icons in tabs.

The `tabs.file_icons` setting controls whether the icons are displayed:

```json
{
  "tabs": {
    "file_icons": false
  }
}
```

This setting defaults to `true`.

<img width="1566" alt="Screenshot 2024-07-15 at 6 17 26 PM"
src="https://github.com/user-attachments/assets/86dfc8c9-764c-453d-95e4-2ec95d6fe715">

<img width="1566" alt="Screenshot 2024-07-15 at 6 24 26 PM"
src="https://github.com/user-attachments/assets/4b4e8489-49d3-41bf-b4cb-59365bdd3e9d">

Release Notes:

- Added file icons to buffer tabs
([#12138](https://github.com/zed-industries/zed/issues/12138)).
- If desired, these icons can be removed using `"tabs": { "file_icons":
false }`.

Marshall Bowers created

2ae1a47 Upsell built-in features on the extensions page (#14516)

Click to expand commit body
This PR extends the extensions page with support for upselling built-in
Zed features when certain keywords are searched for.

This should help inform users about features that Zed has out-of-the-box
when they go looking for them as extensions.

For example, when someone searches "vim":

<img width="1341" alt="Screenshot 2024-07-15 at 4 58 44 PM"
src="https://github.com/user-attachments/assets/b256d07a-559a-43c2-b491-3eca5bff436e">

Here are more examples of what the upsells can look like:

<img width="1341" alt="Screenshot 2024-07-15 at 4 54 39 PM"
src="https://github.com/user-attachments/assets/1f453132-ac14-4884-afc4-7c12db47ad1d">

Release Notes:

- Added banners for built-in Zed features when corresponding keywords
are used in the extension search.

Marshall Bowers created

d7a25c1 Add an experimental, WIP diagnostics grouping panel (#14515)

Click to expand commit body
Provide a current, broken state as an experimental way to browse
diagnostics.
The diagnostics are grouped by lines and reduced into a block that, in
case of multiple diagnostics per line, could be toggled back and forth
to show more diagnostics on the line.
Use `grouped_diagnostics::Deploy` to show the panel.

Issues remaining:
* panic on warnings toggle due to incorrect excerpt manipulation
* badly styled blocks
* no key bindings to navigate between blocks and toggle them
* overall odd usability gains for certain groups of people

Due to all above, the thing is feature-gated and not exposed to regular
people.


Release Notes:

- N/A

Kirill Bulatov created

2c6cb4e Fix Cmd+\ for workspace::ToggleLeftDock for Atom base keymap (#14098)

Click to expand commit body
Release Notes:

- Fixed Left Dock in Atom keymap on Mac/Linux (`cmd-\`, `ctrl-\`) 
 ([#14098](https://github.com/zed-industries/zed/pull/14098), thanks [@audionerd](https://github.com/audionerd)).

---------

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

Eric Skogen and Peter Tripp created

143035b gpui_macros: Extract `border_style_methods` macro (#14514)

Click to expand commit body
This PR extracts a separate `border_style_methods` macro so that it can
be used independently from `style_helpers!`.

Release Notes:

- N/A

Marshall Bowers created

fa3d290 Add REPL dropdown menu to toolbar (#14493)

Click to expand commit body
TODO: 


- [x] Actions run from menu not firing
- [x] Menu differentiates idle and busy for running kernel

Menu States:
- [x] No session && no support known

No session && no kernel installed for languages of known support
- (TODO after) Intro to REPL
- [x] Link to docs

No session but can start one
- [x] Start REPL
- (TODO after) More info -> Docs?

Yes Session

- [x] Info: Kernel name, language
  example: chatlab-3.7-adsf87fsa (Python)
  example: condapy-3.7 (Python)
- [x] Change Kernel -> https://zed.dev/docs/repl#change-kernel
- ---
- [x] Run
- [x] Interrupt
- [x] Clear Outputs
- ---
- [x] Shutdown


(Release notes left empty as the change will be documented in the REPL
release!)

Reserved for a follow on PR:

```
- [ ] Status should update when the menu is open (missing `cx.notify`?)
- [ ] Shutdown all kernels action
- [ ] Restart action
- [ ] [Default kernel changed - restart (this kernel) to apply] // todo!(kyle): need some kind of state thing that says if this has happened
```


Release Notes:

- N/A

---------

Co-authored-by: Marshall Bowers <elliott.codes@gmail.com>
Co-authored-by: Kyle Kelley <rgbkrk@gmail.com>
Co-authored-by: Piotr Osiewicz <24362066+osiewicz@users.noreply.github.com>

Nate Butler , Marshall Bowers , Kyle Kelley , and Piotr Osiewicz created

1856320 Add mouse handling to gpui input example (#14350)

Click to expand commit body
Release Notes:

- N/A

---------

Co-authored-by: Jason Lee <huacnlee@gmail.com>

Conrad Irwin and Jason Lee created

b58abb1 linux: Hide Install CLI from welcome (#14506)

Click to expand commit body
Release Notes:

- linux: Remove "Install CLI" from welcome, it is not necessary

Conrad Irwin created

868455f linux: Fix IME on fcitx5 (#14508)

Click to expand commit body
Release Notes:

- linux: Fix IME under fcitx5 (#14192)

Conrad Irwin created

c27c412 linux: re-add open fallback (#14359)

Click to expand commit body
Release Notes:

- linux: Fixed opening urls/directories on systems where the xdg desktop
portal doesn't handle those requests.

Conrad Irwin created

0b0de8c Display hint to add PATH for Fish shell too (#14504)

Click to expand commit body
tested on `fish 3.7.1 (released March 19, 2024)`
___

Release Notes:

- N/A

makeProjectGreatAgain created

f3ddd18 linux: Show warning if file picker portal is missing (#14401)

Click to expand commit body
This PR adds a warning when the file chooser couldn't be opened on Linux

It's quite confusing when trying to open a file and apparently nothing
happens:

fixes https://github.com/zed-industries/zed/issues/11089,
https://github.com/zed-industries/zed/issues/14328,
https://github.com/zed-industries/zed/issues/13753#issuecomment-2225812703,
https://github.com/zed-industries/zed/issues/13766,
https://github.com/zed-industries/zed/issues/14384,
https://github.com/zed-industries/zed/issues/14353,
https://github.com/zed-industries/zed/issues/9209


![image](https://github.com/user-attachments/assets/5acabdaa-7a9d-4225-9480-e371d20387c3)


Release Notes:

- N/A

apricotbucket28 created

5d860e2 Fix selectable popover dismissing on key press (#14368)

Click to expand commit body
Release Notes:

- Fixed dismissal bug included in #12918

Ephram created

e26dbe2 Add linux Zed log location to crash report github issue template (#14373)

Click to expand commit body
Release Notes:

- N/A

Peter Tripp created

3c38be5 Add keyboard shortcuts to center scrolling around current line (#14385)

Click to expand commit body
- MacOS: Center the cursor in the visible area. `ctrl-l` (matches MacOS)
- Linux JetBrains: Scroll so cursor is at the Middle `ctrl-m`
- `editor::NextScreen` is not longer bound in any keymap by default (was
`ctrl-l` on MacOS)

Fixes #5247

Peter Tripp created

e50811c Adjust list item & pickers spacing (#14250)

Danilo Leal created

c1aa4d9 rust: Expose import names in completions for modules and functions (#14490)

Click to expand commit body
Release Notes:

- Improved accuracy of completion lists for Rust functions and modules.

Piotr Osiewicz created

e8d674d Show cursors for shared contexts (#14484)

Click to expand commit body
Release Notes:

- N/A

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

Antonio Scandurra and Nathan created

f0279e6 Add Gemini models to cloud enum (#14482)

Click to expand commit body
Release Notes:

- N/A

Nathan Sobo created

98b95d9 Introduce `/symbols` command in assistant panel (#14360)

Click to expand commit body
Release Notes:

- Added `/symbols` command in assistant panel.

---------

Co-authored-by: Antonio <antonio@zed.dev>
Co-authored-by: Antonio Scandurra <me@as-cii.com>
Co-authored-by: Nathan <nathan@zed.dev>

Max Brunsfeld , Antonio , Antonio Scandurra , and Nathan created

decdd3b Introduce following for assistant panel (#14479)

Click to expand commit body
Release Notes:

- Added support for following into the assistant panel.

---------

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

Antonio Scandurra , Max , Max Brunsfeld , and Nathan created

977a1b7 Support dynamic formatting capabilities [un]registration (#14478)

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

Release Notes:

- Added dynamic [un]registration for LSP formatting capabilities
([#12661](https://github.com/zed-industries/zed/issues/12661))

Kirill Bulatov created

684d9dd zig: Wire up LSP `settings` and `binary.{path/arguments}` for `zls` (#14379)

Click to expand commit body
Enables the  LSP `settings` and `binary.{path/arguments}` functionality

Example:
```
"lsp": {
    "zls": {
      "settings": {
        "semantic_tokens": "none"
      },
      "binary": {
        "path": "/home/user/zls/zig-out/bin/zls",
        "arguments": ["--enable-debug-log"]
      }
    }
  },
```

Release Notes:

- N/A

llogick created

315692d windows: Refactor clipboard implementation (#14347)

Click to expand commit body
This PR provides a similar implementation to the macOS clipboard
implementation, adds support for metadata and includes tests.

Release Notes:

- N/A

张小白 created

ba09eab windows: Make window creation failable (#14395)

Click to expand commit body
Release Notes:

- N/A

张小白 created

70d983a Include stable package in docs, mention UM, and link to sources for the Fedora package (#14432)

Click to expand commit body
Hello, I'm one of the maintainers of the Zed package on Terra. I made
the following changes:

- Mention the Terra stable package, instead of only preview and nightly.
- Link to sources for Terra packages instead of pkgs.org.
- Mention Ultramarine in addition to Fedora (one of Terra's targets).

Release Notes:

- N/A

lea created

4a3097d x11: Fix capitalization with neo 2 (#14466)

Click to expand commit body
Fixed #14282

Release Notes:

- N/A

Fernando Tagawa created

59ce353 Turn off `use_on_type_format` too, for languages that have `format_on_save` disabled (#14413)

Click to expand commit body
Based on the discussion in
https://github.com/zed-industries/zed/issues/14400


Release Notes:

- N/A

Kirill Bulatov created

f8b5e42 Do not send `textDocument/didSave` message if server does not declare its support (#14412)

Click to expand commit body
Release Notes:

- Improved Zed logic for sending `textDocument/didSave` request
([14286](https://github.com/zed-industries/zed/issues/14286))

Kirill Bulatov created

88c5eb5 Lookup prettier more leniently (#14403)

Click to expand commit body
Do not require the `prettier` dependency name to be in package.json's
[dev]Dependencies, instead just checking the `node_modules` contents.

Release Notes:

- Improved `prettier` detection to pick up its installation from
transitive dependencies
([12731](https://github.com/zed-industries/zed/issues/12731)

Kirill Bulatov created

e5dc6be deno: wire up LSP settings (#14410)

Click to expand commit body
Currently deno lsp only works because deno have a workaround when it
detects deno.json it gets activated, but without a deno.json it won't
work
With this change now it works correctly regardless of a deno.json
presence, it only require enable:true:


```json
{
  "lsp": {
    "deno": {
      "settings": {
        "deno": {
          "enable": true
        }
      }
    }
  }
}
```


Release Notes:

- Improved initial Deno set-up to enable it without explicit deno.json present in the file system

Bedis Nbiba created

3a41094 Apply `terminal.foreground` and `terminal.background` from theme (#14281)

Click to expand commit body
Release Notes:

- Fixed terminal colors not respecting the theme
([#11418](https://github.com/zed-industries/zed/discussions/11418)).

Zak Johnson created

89fbd65 Do not fold excerpts by default in the outline panel (#14378)

Click to expand commit body
Release Notes:

- N/A

Kirill Bulatov created

9ce989a Tidy up collab-related signature help data (#14377)

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

* Fully preserve LSP data when sending it via collab, and only strip it
on the client.
* Avoid extra custom request handlers, and extend multi LSP server query
protocol instead.


Release Notes:

- N/A

Kirill Bulatov created

dd63e25 Revert `hold: true` for macOS tasks (#14376)

Click to expand commit body
Otherwise, ctrl-c makes them stuck being held from time to time

Follow-up of https://github.com/zed-industries/zed/pull/13898 that
reverts the macOS-related part of the PR.

Release Notes:

- N/A

Kirill Bulatov created

489077b Extract a BufferStore object from Project (#14037)

Click to expand commit body
This is a ~small~ pure refactor that's a step toward SSH remoting. I've
extracted the Project's buffer state management into a smaller, separate
struct called `BufferStore`, currently in the same crate. I did this as
a separate PR to reduce conflicts between main and `remoting-over-ssh`.

The idea is to make use of this struct (and other smaller structs that
make up `Project`) in a dedicated, simpler `HeadlessProject` type that
we will use in the SSH server to model the remote end of a project. With
this approach, as we develop the headless project, we can avoid adding
more conditional logic to `Project` itself (which is already very
complex), and actually make `Project` a bit smaller by extracting out
helper objects.

Release Notes:

- N/A

Max Brunsfeld created

21c5ce2 Add pyright workspace configuration (#14265)

Click to expand commit body
Release Notes:

- Added support for pyright workspace configuration, as described in
https://microsoft.github.io/pyright/#/settings .

FilipeBisinella created

3deb000 assistant: Add basic glob support for expanding items in `/docs` (#14370)

Click to expand commit body
This PR updates the `/docs` slash command with basic globbing support
for expanding docs.

A `*` can be added to the item path to signify the end of a prefix
match.

For example:

```
# This will match any documentation items starting with `auk::`.
# In this case, it will pull in the docs for each item in the crate.
/docs docs-rs auk::*

# This will match any documentation items starting with `auk::visitor::`,
# which will pull in docs for the `visitor` module.
/docs docs-rs auk::visitor::*
```


https://github.com/user-attachments/assets/5e1e21f1-241b-483f-9cd1-facc3aa76365

Release Notes:

- N/A

Marshall Bowers created