Commit graph

17350 commits

Author SHA1 Message Date
Piotr Osiewicz
f2ff7fa4d5
chore: Change AGPL-licensed crates to GPL (except for collab) (#4231)
- [x] Fill in GPL license text.
- [x] live_kit_client depends on live_kit_server as non-dev dependency,
even though it seems to only be used for tests. Is that an issue?

Release Notes:
- N/A
2024-01-24 00:26:58 +01:00
Kirill Bulatov
b20b1d446f
Revert search in gitignored files in file finder (#4229)
Reverts
2f56fe9129
since gitignored file indexing is inconsistent.

Release Notes:

- Removed the ability to search in gitignored files via file_finder for
now, as it's not consistent enough for good UX
2024-01-24 00:00:27 +02:00
Kirill Bulatov
e6573e9055 Revert search in gitignored files in file finder 2024-01-23 23:50:25 +02:00
Piotr Osiewicz
db22babe2a
CI: Do not run cargo check --tests before running the tests (#4228)
This is a bit redundant, as cargo test does not reuse results of cargo
check, so we're essentially doing the cargo check unnecessarily.

Release Notes:

- N/A
2024-01-23 22:18:17 +01:00
Max Brunsfeld
2d7d07173d
Use a different color for ignored files in the project panel (#4227)
![Screenshot 2024-01-23 at 1 03
01 PM](https://github.com/zed-industries/zed/assets/326587/28b4e7e1-8847-40ff-aed6-0f4ede6b9007)


Release Notes:

- Fixed an issue where ignored files were not visually distinguished in
the project panel.
2024-01-23 13:10:15 -08:00
Max Brunsfeld
4e970e978a Use a different color for ignored files in the project panel 2024-01-23 13:00:28 -08:00
Kirill Bulatov
7ec68e0227
Improve completion, action and shared project popovers' layout (#4226)
Before:

* cutoff completion labels and docs
<img width="801" alt="image"
src="https://github.com/zed-industries/zed/assets/2690773/12fe39b2-a8a7-42d8-b697-e2a4fbd836b7">

* too long action labels start to introduce newlines and break the
layout
<img width="716" alt="image"
src="https://github.com/zed-industries/zed/assets/2690773/a0530f1e-4200-4cc4-8e0f-9a63d04e4d5c">

* too long completion proposals are cut off
<img width="1321" alt="image"
src="https://github.com/zed-industries/zed/assets/2690773/1ec154a1-9de5-4e47-9e9f-632b3e33f42a">



After:

* the docs are shifted, but both completions and docs are rendered
entirely now
<img width="1351" alt="image"
src="https://github.com/zed-industries/zed/assets/2690773/ddb0baa4-88b6-45e9-b3e1-496c0d6a0d0f">

* 
<img width="750" alt="image"
src="https://github.com/zed-industries/zed/assets/2690773/102ed77c-d7d0-41d2-a4a0-a8c73285ea8a">

* completions are not jumping in sized anymore, with all elements
aligned to occupy max elements' width and height
<img width="1459" alt="image"
src="https://github.com/zed-industries/zed/assets/2690773/483e3534-b00a-423c-a848-3c4ca1199510">


Release Notes:

- Improved completion and action label layouts
2024-01-23 22:49:21 +02:00
Kirill Bulatov
bf35b78380 Allow both action and completion lists to occupy max width and height of its element 2024-01-23 22:42:06 +02:00
Max Brunsfeld
035bd79ae1 collab 0.40.1 2024-01-23 12:39:30 -08:00
Max Brunsfeld
67b7d74908
Exclude staff from CLA check (#4225) 2024-01-23 12:12:44 -08:00
Kirill Bulatov
513ddf1861 Change background for the max width of the completion/action elements 2024-01-23 22:12:29 +02:00
Max Brunsfeld
b84f4a3cd2 Fix assertion in test_get_users 2024-01-23 11:48:07 -08:00
Kirill Bulatov
cad6bab48e Fix sharing project notification size 2024-01-23 21:44:18 +02:00
Kirill Bulatov
4c039d0f02 Fix code actions being too small 2024-01-23 21:39:22 +02:00
Max Brunsfeld
f3b014c9a9 Fix default value of users created_at in sqlite schema 2024-01-23 11:36:35 -08:00
Max Brunsfeld
1fd72d26cb Exclude staff from CLA check 2024-01-23 11:31:55 -08:00
Marshall Bowers
74cf1992a7
Remove unused screenshot (#4224)
This PR removes an unused screenshot from the `assets/` directory.

As a note, we should probably be careful about what kinds of extraneous
binary assets we're committing to the repo (especially ones not required
for Zed itself), as these can bloat the repo size.

Release Notes:

- N/A
2024-01-23 14:28:04 -05:00
Kirill Bulatov
74bdb48359 Make completions menu to occupy more space
* make completion elements as wide as the longest element
* make completion docs scrollable

co-authored-by: Piotr <piotr@zed.dev>
2024-01-23 21:26:40 +02:00
Julia
c4a028d38d
Make was_top_layer_under_active_drag more closely match logic of was_top_layer (#4222)
Release Notes:

- N/A
2024-01-23 14:04:49 -05:00
Nathan Sobo
b98c935cde
Revise contributing.md (#4223)
Some adjustments to be less bold in our pairing commitments and clearer
about the process for proposing an idea.

Release Notes:

- N/A
2024-01-23 11:52:12 -07:00
Nathan Sobo
38c3590266 Revise contributing.md 2024-01-23 11:42:40 -07:00
Antonio Scandurra
8ce7594a26
Drop active searchable item subscription when changing active item (#4220)
We were leaking the previous active item's subscription, which meant
that we would receive the `MatchesInvalidated` event as many times as we
changed items.

Release Notes:

- Fixed a performance issue when switching the active item while the
search bar was open.
2024-01-23 18:50:01 +01:00
Julia
21d6751c48 Make was_top_layer_under_active_drag more closely match logic of was_top_layer
Co-Authored-By: Max Brunsfeld <max@zed.dev>
2024-01-23 12:44:23 -05:00
Conrad Irwin
3d5da2f4d9
less secret (#4221)
- Remove ZED_SECRET_CLIENT_TOKEN
- Remove ZED_CLIENT_SECRET_TOKEN

Neither of these were ever actually a secret.

Release Notes:

- N/A
2024-01-23 10:43:15 -07:00
Conrad Irwin
b5ee7f8f2e Remove ZED_CLIENT_SECRET_TOKEN 2024-01-23 10:34:43 -07:00
Conrad Irwin
ff60d886f6 Remove ZED_SECRET_CLIENT_TOKEN 2024-01-23 10:34:00 -07:00
Antonio Scandurra
b151e12890 Drop active searchable item subscription when changing active item
We were leaking the previous active item's subscription, which meant
that we would receive the `MatchesInvalidated` event as many times as
we changed items.

Co-Authored-By: Thorsten Ball <thorsten@zed.dev>
Co-Authored-By: Mikayla Maki <mikayla@zed.dev>
2024-01-23 18:31:21 +01:00
Conrad Irwin
61dfec2b75
Add keymatch modes so terminal can have cmd-k (#4219)
This isn't my favorite idea of a fix, but it does work for now, and it
seems likely the terminal will need to configure other aspects of action
dispatch in the future.

In the future we should explore making it possible to do this via the
keymap, either by making disabling bindings more robust; or by having a
way to indicate immediate mode per binding.

Release Notes:

- Fixed a bug where cmd-k in terminal took 1s
2024-01-23 10:23:45 -07:00
Piotr Osiewicz
21e6b09361
Remove license-file from Cargo.toml as it is apparently redundant (#4218)
Release Notes:

- N/A
2024-01-23 17:40:30 +01:00
Conrad Irwin
056da0a0f1 Add keymatch modes so terminal can have cmd-k
This isn't my favorite idea of a fix, but it does work for now, and it
seems likely the terminal will need to configure other aspects of action
dispatch in the future.

In the future we should explore making it possible to do this via the
keymap, either by making disabling bindings more robust; or by having a
way to indicate immediate mode per binding.
2024-01-23 09:37:44 -07:00
Piotr Osiewicz
5ea311909a
Add missing license for derive_refineable (#4217)
Missed one crate.
Release Notes:

- N/A
2024-01-23 17:22:40 +01:00
Piotr Osiewicz
678bdddd7d
chore: Add crate licenses. (#4158)
- GPUI and all dependencies: Apache 2
- Everything else: AGPL

Here's a script that I've generated for it:
https://gist.github.com/osiewicz/6afdd6626e517da24a2092807e6f0b6e

Release Notes:
- N/A

---------

Co-authored-by: David <david@zed.dev>
2024-01-23 16:56:22 +01:00
Thorsten Ball
edfc2e8895
Make scripts/histogram ignore lines without frame duration (#4214)
Previously the script would choke on lines generated, for example, by
`cargo run`.

This just skips lines that don't contain `frame duration:`.

Release Notes:

- N/A
2024-01-23 16:55:48 +01:00
Thorsten Ball
802a7f5b9e Print error message and skip line 2024-01-23 16:52:08 +01:00
Thorsten Ball
003073d53c
Fix scroll jitter by ignoring autoscroll events if following (#4216)
When following someone else we saw jitter because
`ScrollPositionChanged` events were battling `SelectionsChanged` events,
both of which were scrolling the viewport.

This ignores the ScrollPositionChanged if autoscrolling is on.

Release Notes:

- Fixed jittery scrolling when following someone else that had a bigger
viewport.
2024-01-23 16:45:47 +01:00
Thorsten Ball
030b20ace9 Fix scroll jitter by ignoring autoscroll events if following
When following someone else we saw jitter because
`ScrollPositionChanged` events were battling `SelectionsChanged` events,
both of which were scrolling the viewport.

This ignores the ScrollPositionChanged if autoscrolling is on.

Co-authored-by: Antonio <antonio@zed.dev>
Co-authored-by: Julia <julia@zed.dev>
2024-01-23 16:16:21 +01:00
Thorsten Ball
0db9c274aa Make scripts/histogram ignore lines without frame duration
Previously the script would choke on lines generated, for example, by
`cargo run`.

This just skips lines that don't contain `frame duration:`.

Co-authored-by: Antonio <antonio@zed.dev>
2024-01-23 13:52:55 +01:00
Antonio Scandurra
a802bb284c
Fix horizontal scroll going too far to the left (#4213)
Previously one could scroll infinitely to the left. This clams it to 0.

Release Notes:

- Fixed horizontal scroll possibly going too far to the left.
2024-01-23 13:38:35 +01:00
Thorsten Ball
c8c605d23a Fix horizontal scroll going too far to the left
Previously one could scroll infinitely to the left. This clams it to 0.

Co-authored-by: Antonio <antonio@zed.dev>
2024-01-23 12:28:50 +01:00
Kirill Bulatov
4cccb4e3d0
Fix LSP shenanigans when opening and/or editing settings files (#4212)
Fixes
* LSP servers never being shut down on worktree release
* worktrees (and LSP servers) being re-created for settings files on
every opening

Also,
* removes `async` from `workspace_configuration` to simplify the code:
we only return static configurations now

Release Notes:

- Fixed excessive LSP server creation for Zed settings files
2024-01-23 13:20:00 +02:00
Kirill Bulatov
5e0cabc394 Create a special worktree for settings files
To avoid LSP server restarts/leaks when those are being opened

co-authored-by: Piotr <piotr@zed.dev>
2024-01-23 13:10:30 +02:00
Thorsten Ball
fc7458d13b
Trim diagnostic messages to fix rendering bug (#4210)
Before this change a diagnostic message with a trailing newline (e.g.
`line1\nline2\n`) would be rendered in a `Block` with `line_height: 2`.
But the content we then display in this block had 3 "lines", which
pushed the content out of the block.

This fixes the issue by trimming the newlines at the end from the
diagnostics.

Release Notes:

- Fixed rendering multi-line diagnostic errors inside of the editor.
2024-01-23 11:58:45 +01:00
Thorsten Ball
accb4f8756
Cache last used layer_id for StackingOrder (#4211)
This optimizes rendering time by saving computation of the layer_id and
comparison when inserting it into the `BTreeMaps`.


![layer_id_caching](https://github.com/zed-industries/zed/assets/1185253/2944fa3d-586b-4a9a-9dfc-0acf59b77402)

Release Notes:

- Improved rendering performance when a lot of text is being displayed.
2024-01-23 11:58:37 +01:00
Thorsten Ball
bf843e2131 Cache last used layer_id for StackingOrder
This optimizes rendering time by saving computation of the layer_id and
comparison when inserting it into the `BTreeMaps`.

Co-authored-by: Antonio <antonio@zed.dev>
2024-01-23 11:46:11 +01:00
Kirill Bulatov
ab8585ee7e Remove the async modifier from the workspace_configuration method 2024-01-23 11:58:17 +02:00
Thorsten Ball
f8939fd859 Trim diagnostic messages to fix rendering bug
Before this change a diagnostic message with a trailing newline (e.g.
`line1\nline2\n`) would be rendered in a `Block` with `line_height: 2`.
But the content we then display in this block had 3 "lines", which
pushed the content out of the block.

This fixes the issue by trimming the newlines at the end from the
diagnostics.

Co-authored-by: Antonio <antonio@zed.dev>
2024-01-23 10:36:06 +01:00
Kirill Bulatov
351914f4bd Clean up LSP servers on worktree release 2024-01-23 11:34:51 +02:00
Conrad Irwin
5a9f1e4eb7
fix local collab tests (#4209)
I was unable to run the collab tests locally because I would run out of
file descriptors.

From some digging it turned out that tokio allocates a new file
descriptor to do work on the CurrentThread using KQUEUE.

We create a new tokio Runtime with each database connection, and these
database connections were being retained by the Client, which is
retained by the Context.

Cleaning up our leaked contexts (and an unrelated retain cycle in the
UserStore) fixes the problem (though does make me
wonder if a different approach might be preferrable).

Release Notes:

- N/A
2024-01-22 23:17:23 -07:00
Conrad Irwin
ce0833eadf
Fix off-by-one highlighting in hover tooltip (#4206)
rust analyzer has a tendency to return markdown of the form:

```rust
 // <-- note the leading space
blah blah blah
```

This is clearly defectuous, so we used to .trim() the output.

Unfortunately we trim after applying syntax highlighting, so that causes
the output to look goofy.

Fix this by updating the highlighting when we trim.

[[PR Description]]

Release Notes:

- Fixed a bug where syntax highlighting was off in hover tooltips
2024-01-22 23:12:08 -07:00
Conrad Irwin
309148f7f0
Update Channel membership UI (#4203)
* Remove ability to act on people defined in parent channels
* Show promote buttons on guests

Release Notes:

- Improved channel membership manangement
2024-01-22 23:11:54 -07:00