Commit log

895c838 Collab UI improvements (#6805)

Click to expand commit body
- Allow people to leave channels
- Make contacts use right click menu for call
- Add a hover menu to see who's in a channel

Release Notes:

- Fixed clicking on contacts to *not* call them immediately
- Added a hover menu on channels to see who is there
- Added a "Leave Channel" right click option

Conrad Irwin created

7e7a9c2 lint

Conrad Irwin created

faf7798 Use same arguments for LSP binary in `haskell.rs`

Pseudomata created

0576214 Remove Haskell `injections.scm`

Click to expand commit body
Since tree-sitter-haskell does not support injections we don’t want to mix with nvim-treesitter

Pseudomata created

6e25b0a Switch to `tree-sitter-haskell` grammar

Pseudomata created

5db7e8f collab 0.42.0

Conrad Irwin created

a0f8a23 Add a hover menu to see who's in a channel

Click to expand commit body
Co-Authored-By: Max <max@zed.dev>
Inspired-By: @RemcoSmitsDev

Conrad Irwin and Max created

95fab10 Make contacts use right click menu for call

Click to expand commit body
Fixes accidental anxiety.

Co-Authored-By: Max <max@zed.dev>

Conrad Irwin and Max created

1761e60 Improve performance of JSON schema creation (#6770)

Click to expand commit body
JSON LSP adapter now caches the schema. `workspace_configuration` is
back to being async, and we are also no longer asking for font names
twice while constructing the schema.
Release Notes:
- Improved performance when opening the .json files.

---------

Co-authored-by: Kirill <kirill@zed.dev>

Piotr Osiewicz and Kirill created

0a124a9 Feature: PHP: Add `readonly` keyword to keyword list (#6798)

Click to expand commit body
Release Notes:

- Added `readonly` to keyword list for PHP
([#6797](https://github.com/zed-industries/zed/issues/6797)).

Mikayla Maki created

f5f7be1 Add `experimental.theme_overrides` to settings file (#6791)

Click to expand commit body
This PR adds **experimental** support for overriding theme values in the
current theme.

Be advised that both the existence of this setting and the structure of
the theme itself are subject to change.

But this is a first step towards allowing Zed users to customize or
bring their own themes.

### How it works

There is a new `experimental.theme_overrides` setting in
`settings.json`.

This accepts an object containing overrides for values in the theme. All
values are optional, and will be overlaid on top of whatever theme you
currently have set by the `theme` field.

There is JSON schema support to show which values are supported.

### Example

Here's an example of it in action:


https://github.com/zed-industries/zed/assets/1486634/173b94b1-4d88-4333-b980-8fed937e6f6d

Release Notes:

- Added `experimental.theme_overrides` to `settings.json` to allow for
customizing the current theme.
  - This setting is experimental and subject to change.

Marshall Bowers created

c9c9a6b Activate the nushell virtualenv overlay correctly (#6766)

Click to expand commit body
The activate.nu file works a little differently than its counterparts in
other shells, and it needs to be invoked as an overlay, rather than
sourced directly into the shell.

This fixes an outstanding issue left over from #6323.


Release Notes:

- (Improved) ...
([#6323](https://github.com/zed-industries/zed/issues/6323)).

Mikayla Maki created

fd5994b Allow people to leave channels

Click to expand commit body
Co-Authored-By: Max <max@zed.dev>

Conrad Irwin and Max created

8bc105c Simplify Membership Management (#6747)

Click to expand commit body
Simplify Zed's collaboration system by:
- Only allowing member management on root channels.
- Disallowing moving sub-channels between different roots.
- Disallowing public channels nested under private channels.

This should make the mental model easier to understand, and makes it
clearer
who has what access. It is also significantly simpler to implement, and
so
hopefully more performant and less buggy.

Still TODO:
- [x] Update collab_ui to match.
- [x] Fix channel buffer tests.

Release Notes:

- Simplified channel membership management.

Conrad Irwin created

ac05853 Add `readonly` keyword to keyword list

Remco Smits created

b5c64a1 Feature: PHP allow single quote autocompletion (#6796)

Click to expand commit body
Release Notes:

- Added support for single quote autocompletion in PHP
([#6794](https://github.com/zed-industries/zed/issues/6794)).
- Added `#` to supported line comments for PHP
([#6794](https://github.com/zed-industries/zed/issues/6794)).

Remco Smits created

58a9f51 Comment out haskell_persistent and sql injections

Click to expand commit body
- the haskell_persistent grammar has not been added, see https://github.com/nvim-treesitter/nvim-treesitter/tree/master/queries/haskell_persistent and https://github.com/MercuryTechnologies/tree-sitter-haskell-persistent
- the sql grammar has not been added either

Pseudomata created

22034d2 Superstitiously wait some more for flakey test

Conrad Irwin created

08de0d8 Update channel moving to match

Conrad Irwin created

d35c3ee Merge pull request #2 from leifu1128/hls-adapter

Click to expand commit body
implement hls adapter

Pseudomata created

ee750e1 implement hls adapter

Lei created

c6d33d4 Only allow Manage Members on root channels

Conrad Irwin created

3c3cdec Fix bracket captures for Go, C, C++, and Zig (#6784)

Click to expand commit body
This fixes #6702 by adding the captures for Go, C, C++, and Zig.

Witnessed-by: @dammerung2718  <dammerung2718@icloud.com>

Release Notes:

- Fixed matching-bracket navigation via `%` in Vim mode not working for
`(` in Go, C, C++, and not working for any in Zig.
([#6702](https://github.com/zed-industries/zed/issues/6702))

Thorsten Ball created

39f4ba1 Merge pull request #1 from pseudomata/add-haskell-grammar

Click to expand commit body
Add haskell grammar

Pseudomata created

2b9ba46 Merge branch 'haskell-support' into add-haskell-grammar

Pseudomata created

f9a0828 Update Haskell grammar

Click to expand commit body
Copied queries from nvim-tree-sitter, see https://github.com/nvim-treesitter/nvim-treesitter/tree/master/queries/haskell

Pseudomata created

f537be4 Fix bracket captures for Go, C, C++, and Zig

Click to expand commit body
This fixes #6702 by adding the captures for Go, C, C++, and Zig.

Witness-by: David <dammerung2718@icloud.com>

Thorsten Ball created

8da5e57 Factor out URLs in `feedback` crate (#6776)

Click to expand commit body
This PR factors out the inlined URLs in the `feedback` crate so that
they don't mess with `rustfmt`.

Release Notes:

- N/A

Marshall Bowers created

47860a5 Combine `observe_new_views` into one in feedback crate (#6755)

Click to expand commit body
Combine two `observe_new_views` calls into a single one in `init`
function of feedback crate.

Release Notes:

- N/A

Thomas Coratger created

14322c8 Fix grammatical error in contributing guidelines (#6772)

Click to expand commit body
Release Notes:

- N/A

George Munyoro created

3847762 Activate the nushell virtualenv overlay correctly

Click to expand commit body
The activate.nu file works a little differently than it's counterparts in other shells, and it needs to be invoked as an overlay, rather than sourced directly into the shell.

This fixes an outstanding issues left over from #6323.

Tristam MacDonald created

802405f Fix panic when typing umlauts in command palette using Vim mode (#6761)

Click to expand commit body
Release Notes:

- This fixes a panic that occurs when someone was using Vim mode and
typing umlauts into the command palette. E.g: `:%s/impërt`

Thorsten Ball created

252e7e9 Upgrade alacritty_terminal in hopes to avoid PTY poll failing (#6715)

Click to expand commit body
We saw stack traces in our #panic channel pop up that failed on this
line:


https://github.com/zed-industries/alacritty/blob/33306142195b354ef3485ca2b1d8a85dfc6605ca/alacritty_terminal/src/event_loop.rs#L323-L324

With this message:

thread 'PTY reader' panicked at 'called `Result::unwrap()` on an `Err`
value: Os { code: 9, kind: Uncategorized, message: "Bad file descriptor"
}'

/Users/administrator/.cargo/git/checkouts/alacritty-afea874b09a502a5/3330614/alacritty_terminal/src/event_loop.rs:324

We don't know how to reproduce the error. It doesn't seem related to the
number of open PTY handles, because `openpty` itself didn't fail. We can
only assume that something went wrong between `openpty` and the setup of
the polling.

Since Alacritty itself changed its polling mechanism significantly by
switching from `mio` to `polling`
(https://github.com/alacritty/alacritty/pull/6846) we upgraded with the
hope that this will fix the bug.


Release Notes:

- Upgraded alacritty_terminal to newest version in order to hopefully
fix a rare panic that can occur when starting a new terminal.

Thorsten Ball created

8d2a401 Fix panic when typing umlauts in command palette using Vim mode

Click to expand commit body
Co-Authored-By: Antonio <antonio@zed.dev>

Thorsten Ball and Antonio created

698108a Setup env correctly after upgrading alacritty_terminal

Click to expand commit body
Co-Authored-By: Antonio <antonio@zed.dev>

Thorsten Ball and Antonio created

0aa1b1f Remove unused import

Thorsten Ball created

c4cf5f2 Upgrade alacritty_terminal in hopes to avoid PTY poll failing

Click to expand commit body
We saw stack traces in our #panic channel pop up that failed on this line:

    https://github.com/zed-industries/alacritty/blob/33306142195b354ef3485ca2b1d8a85dfc6605ca/alacritty_terminal/src/event_loop.rs#L323-L324

With this message:

    thread 'PTY reader' panicked at 'called `Result::unwrap()` on an `Err` value: Os { code: 9, kind: Uncategorized, message: "Bad file descriptor" }'
    /Users/administrator/.cargo/git/checkouts/alacritty-afea874b09a502a5/3330614/alacritty_terminal/src/event_loop.rs:324

We don't know how to reproduce the error. It doesn't seem related to the number of open PTY handles,
because `openpty` itself didn't fail. We can only assume that something went wrong between
`openpty` and the setup of the polling.

Since Alacritty itself changed its polling mechanism significantly by switching
from `mio` to `polling` (https://github.com/alacritty/alacritty/pull/6846) we upgraded
with the hope that this will fix the bug.

Co-authored-by: Antonio <antonio@zed.dev>
Co-authored-by: Federico <code@fdionisi.me>
Co-authored-by: David <dammerung2718@icloud.com>
Co-authored-by: Bennet <bennetbo@gmx.de>

Thorsten Ball , Antonio , Federico , David , and Bennet created

f7a2118 chore: remove unused deps in `color` crate (#6745)

Bjerg created

abdf302 de-lint

Conrad Irwin created

4b67262 Aggressively simplify channel permissions:

Click to expand commit body
- Only allow setting permissions on the root channel
- Only allow public channels to be children of public channels

Conrad Irwin created

1734403 Add Zig support (#6690)

Click to expand commit body
This PR adds support for Zig with the official LSP (ZLS) and the
treesitter grammar listed on the
[website](https://tree-sitter.github.io/tree-sitter/). I've tested this
on a few large codebases and go to definition, completion, and hover
overlays all seem to work fine with no error logs.

![Screenshot 2024-01-24 at 20 17
18](https://github.com/zed-industries/zed/assets/11731580/be7b4f1d-878e-4e3e-839b-a5f962df7555)

The highlights are adapted from the tree sitter repository which target
neovim I think, I've fixed a handful of issues and the highlighting is
looking pretty good but need to do more testing.

Release Notes:
- Added Zig support with zls
[#5300](https://github.com/zed-industries/zed/issues/5300).

Nathan Sobo created

742329e Highlight a broader range of zig functions

Allan Calix created

ebbfff5 Updates zigs highlight to emit right captures

Allan Calix created

204af43 Vim :% and :0 (#6739)

Click to expand commit body
Fixes #4303

Release Notes:

- Added :$ and :0 to vim command
([#4303](https://github.com/zed-industries/zed/issues/4303)).

Conrad Irwin created

d519fc6 Vim :% and :0

Click to expand commit body
Fixes #4303

Conrad Irwin created

e5b71cc Add zig support

Allan Calix created

37647a6 ci: Bump `actions/checkout` to v4 (#6736)

Click to expand commit body
change:

- bump actions/checkout version

Release Notes:

- N/A

0x29a created

9820895 Try to flesh out our panic stacks more (#6683)

Click to expand commit body
Although we now usually get the .ips file alongside a panic, when we
don't it's much harder to track down where panics happen because we're
not showing inlined frames.

Try iterating over all symbols in a frame to see if that improves panic
reporting.

Release Notes:

- N/A

Conrad Irwin created

81aac49 Add Deno LSP support (#5816)

Click to expand commit body
This PR adds support for the deno LSP. Should be reviewable now.

Release Notes:

- Added support for the Deno LSP
([#5361](https://github.com/zed-industries/zed/issues/5361)).

Lino Le Van created

50b9e5d Add Gleam support (#6733)

Click to expand commit body
This PR adds support for [Gleam](https://gleam.run/).

<img width="1320" alt="Screenshot 2024-01-25 at 6 39 18 PM"
src="https://github.com/zed-industries/zed/assets/1486634/7891b6e9-d7dc-46a0-b7c5-8aa7854c1f35">

<img width="757" alt="Screenshot 2024-01-25 at 6 39 37 PM"
src="https://github.com/zed-industries/zed/assets/1486634/f7ce6b3f-6175-45cb-8547-cfd286d918c6">

<img width="694" alt="Screenshot 2024-01-25 at 6 39 55 PM"
src="https://github.com/zed-industries/zed/assets/1486634/b0838027-c377-47e6-bdd1-bdc9b67a8672">

There are still some areas of improvement, like extending what
constructs we support in the outline view, but this is a good start.

Release Notes:

- Added Gleam support
([#5162](https://github.com/zed-industries/zed/issues/5162)).

Marshall Bowers created