Commit graph

1584 commits

Author SHA1 Message Date
Piotr Osiewicz
b29f45ea68 Change underlying type of BufferId to NonZeroU64. 2024-01-29 20:00:47 +01:00
Piotr Osiewicz
5ab715aac9 text: Wrap BufferId into a newtype 2024-01-29 20:00:47 +01:00
Piotr Osiewicz
1761e60362
Improve performance of JSON schema creation (#6770)
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>
2024-01-26 19:54:45 +01:00
Tristam MacDonald
3847762d8c Activate the nushell virtualenv overlay correctly
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.
2024-01-26 12:52:28 +01:00
Max Brunsfeld
039ef1ad5a
Put back Project's completion-documention handler (#6451)
This restores the ability for project guests to see documentation on
autocomplete suggestions.

@ForLoveOfCats This code might have gotten lost during the GPUI upgrade.
I'm not sure what happened. I tested this locally, and it seems to fix
completion docs for guests. Could you 👀 and see if there are any tests
or any other code that got lost along with this during the upgrade?
2024-01-25 12:46:51 -08:00
Thorsten Ball
d17d37ff61 Log error if worktree fails to relativize git repo path
We saw a panic that was caused by the previous `Option.unwrap()`, so
this changes the method to return a `Result` and logs the error if
possible.

Co-authored-by: Antonio <antonio@zed.dev>
2024-01-25 11:10:00 +01:00
Conrad Irwin
320088f1fa Fix panic from unwrapping a relativize() 2024-01-24 20:56:39 -07:00
Max Brunsfeld
6ed7cc7833
Simplify language server startup (#6449)
These are just some small refactorings of our language-server-starting
code, motivated by another change that I decided to bail on:
https://github.com/zed-industries/zed/pull/6448.
2024-01-24 17:36:50 -08: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
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
Piotr Osiewicz
6c82380232 chore: Fix clippy::needless_borrow up to an editor 2024-01-21 15:03:24 +01:00
Max Brunsfeld
1ceccdf03b Move the details of completion-resolution logic into Project
Co-authored-by: Conrad <conrad@zed.dev>
2024-01-19 11:52:28 -08:00
Max Brunsfeld
9ec6855e6b
Start work on API docs for the language crate (#3981) 2024-01-19 10:04:45 -08:00
Marshall Bowers
01f06f96a1
Update tenses of doc comment summary lines (#4161)
This PR updates the tenses used by the summary line of doc comments to
match the [Rust API documentation
conventions](https://rust-lang.github.io/rfcs/1574-more-api-documentation-conventions.html#summary-sentence).

Specifically:

> The summary line should be written in third person singular present
indicative form. Basically, this means write ‘Returns’ instead of
‘Return’.

I'm sure there are plenty occurrences that I missed.

Release Notes:

- N/A
2024-01-19 11:18:50 -05:00
Max Brunsfeld
b65cf6d2d9 Merge branch 'main' into language-api-docs 2024-01-18 15:06:45 -08:00
Mikayla
57400e9687
Fix typos detected by crate-ci/typos 2024-01-17 14:31:21 -08:00
Max Brunsfeld
6457ccf9ec Add docs for buffer.rs
Co-authored-by: Antonio <antonio@zed.dev>
2024-01-17 10:08:42 -08:00
Mikayla
5897b18cfd
remove more commented code 2024-01-12 20:10:40 -08:00
Conrad Irwin
f418bd907d Stop following when project is unshared
Before this change the views would continue to update in the background
of the "disconnected" dialogue, which was disconcerting.
2024-01-10 23:09:09 -07:00
Conrad Irwin
844d161c40 Allow adding write access to guests 2024-01-08 22:02:56 -07:00
Conrad Irwin
59a1648445
Disallow creating files with '..' (#3156)
Release Notes:

- Fixed a crash that could occur when creating files with '..' in the
path
2024-01-08 15:43:57 -07:00
Conrad Irwin
71149bc7cc Fix relative path opening from project symbols
Co-Authored-By: Max <max@zed.dev>
2024-01-08 15:12:22 -07:00
Conrad Irwin
604fcd8f1d No .. paths... 2024-01-08 13:46:08 -07:00
Piotr Osiewicz
e4b1c76895
Display setting documentation in settings.json (#3936)
Let this screenshot of settings.json speak for itself: 

![image](https://github.com/zed-industries/zed/assets/24362066/fca60383-1788-43f9-803b-00f083394c8a)

Release Notes:
- Added code completion & on-hover documentation to Zed's settings.json
file.

---------

Co-authored-by: Marshall Bowers <elliott.codes@gmail.com>
2024-01-08 19:30:18 +01:00
Conrad Irwin
3c0052850c Merge branch 'main' into channel-guests 2024-01-05 10:05:59 -07:00
Conrad Irwin
d2afc97b53 Tidy up branch 2024-01-04 11:55:14 -07:00
Piotr Osiewicz
3d1023ef52 lsp: Do not cache initialization options 2024-01-04 19:54:58 +01:00
Conrad Irwin
84171787a5 Track read_only per project and buffer
This uses a new enum to avoid confusing booleans
2024-01-03 19:31:43 -07:00
Conrad Irwin
bf304b3fe7 Track room participant role
(Also wire that through to project collaboration rules for now)
2024-01-03 19:30:32 -07:00
Conrad Irwin
88ed5f7290 Plumbing to pass role for room participants 2024-01-03 19:30:32 -07:00
Max Brunsfeld
28c39aae17 Start work on read-only project access for channel guests
Co-authored-by: Conrad <conrad@zed.dev>
Co-authored-by: Mikayla <mikayla@zed.dev>
2024-01-03 19:30:32 -07:00
Max Brunsfeld
c5a1950522 Remove 2 suffix for project
Co-authored-by: Mikayla <mikayla@zed.dev>
2024-01-03 11:53:34 -08:00
Kirill Bulatov
7e21e0f0eb Do not panic on non-worktree file indexing 2023-12-18 13:10:26 +02:00
Kirill Bulatov
27d6432c84 Rework the way project panel auto reveals entries
* gitignored entries are never auto revealed
* `project_panel::auto_reveal_entries = true` settings entry was added,
setting it to `false` will disable the auto reveal
* `pane::RevealInProjectPanel` action was added that activates the project panel and reveals the entry it got triggered on (including the gitignored ones)
2023-12-12 11:38:51 +02:00
Kirill Bulatov
55374e8ac0 Port to gpui1 2023-12-11 12:28:22 +02:00
Kirill Bulatov
16b5d4b35c Port to gpui2 2023-12-05 16:13:39 +02:00
Kirill Bulatov
e5616bce98 Fix the test 2023-12-05 12:45:44 +02:00
Kirill Bulatov
92fbdb429c Add project search in gitignored test 2023-12-05 12:45:44 +02:00
Kirill Bulatov
b43dc480a9 Integration tests for excluded files 2023-12-05 12:45:44 +02:00
Kirill Bulatov
2c2c14a360 Fix the regex matcher 2023-12-05 12:45:36 +02:00
Kirill Bulatov
f0ca7141b8 Ignore excluded files on worktree entry refresh 2023-12-05 12:30:29 +02:00
Kirill Bulatov
1f6c69c7dc Allow opening buffers without a project entry 2023-12-05 12:30:29 +02:00
Kirill Bulatov
45230dcaf3 Log project path that was no open due to no project entry found 2023-12-04 12:45:57 +02:00
Kirill Bulatov
69bfd47cf9 Exclude gitignored files' diagnostics from project panel and its indicator.
The diagnostics are collected and available still, since that might become a settings/UI toggle later.
Also, buffer diagnostics are still updated for gitignored files.
2023-11-30 15:46:30 +02:00
Kirill Bulatov
f9cd45269a Fix eslint diagnostics by passing worktree root during workspace init 2023-11-30 11:38:16 +02:00
Kirill Bulatov
d92153218c Log prettier installation start & success 2023-11-29 13:44:19 +02:00
Kirill Bulatov
3e3b64bb1c Fix the tests 2023-11-29 12:10:41 +02:00