Commit Graph
2958 Commits
Author SHA1 Message Date
Max Brunsfeld cd202e4e12 Open buffers from definitions request in random collab test
Don't try to open buffers from the weak worktrees directly, as this is
expected to fail if the host drops the buffer for that worktree.
2022-02-23 20:35:05 -08:00
Max Brunsfeld 96474a111f Make client log message format more consistent 2022-02-23 18:18:52 -08:00
Max Brunsfeld 5a544fa808 Remove unused pending_updates field from RemoteWorktree 2022-02-23 16:59:39 -08:00
Max Brunsfeld 551d493c05 Tweak logging in random collaboration test 2022-02-23 16:27:34 -08:00
Max Brunsfeld 043b45e9d4 Improve logging around handling RPC requests on client 2022-02-23 15:37:51 -08:00
Max BrunsfeldandNathan Sobo d9d10dffe3 Fix race conditions with LSP requests that return buffers
* Avoid panic when registering a buffer that was previously open,
  and whose weak handle was still present in the open_buffers map.
* Avoid releasing any buffers while a request is outstanding which
  could return a reference to a buffer.

Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-02-23 15:26:01 -08:00
ab28a5bb54 Remove ShareWorktree message
Instead, create an empty worktree on guests when a worktree is first *registered*, then update it via an initial UpdateWorktree message.

This prevents the host from referencing a worktree in definition RPC responses that hasn't yet been observed by the guest. We could have waited until the entire worktree was shared, but this could take a long time, so instead we create an empty one on guests and proceed from there.

We still have randomized test failures as of this commit:

SEED=9519 MAX_PEERS=2 ITERATIONS=10000 OPERATIONS=7 ct -p zed-server test_random_collaboration

Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com>
Co-Authored-By: Antonio Scandurra <me@as-cii.com>
2022-02-23 11:56:09 -07:00
Antonio Scandurra 7a0e8560a3 WIP 2022-02-23 19:04:22 +01:00
58206d413c Remove update_id from worktree update messages
We don't need this anymore because worktree updates are foreground
messages.

Co-Authored-By: Nathan Sobo <nathan@zed.dev>
Co-Authored-By: Max Brunsfeld <max@zed.dev>
2022-02-23 18:35:25 +01:00
Antonio Scandurra 02f215d953 Move document highlights RPC message to the background 2022-02-23 16:16:02 +01:00
Antonio Scandurra 919a280fab Pass an AsyncAppContext to fake language server request handlers 2022-02-23 16:14:36 +01:00
Nathan Sobo 9c99b82bc4 Bump protocol version 2022-02-23 06:33:31 -07:00
Nathan Sobo 172cb2bea2 v0.17.0 2022-02-23 06:26:45 -07:00
Antonio Scandurra 9a6d65ee76 Merge pull request #483 from zed-industries/document-highlights
Show document highlights from the language server when moving the cursor
2022-02-23 10:38:15 +01:00
Max Brunsfeld ba2aa6798f Show document highlights from the language server when moving the cursor 2022-02-22 17:16:31 -08:00
Max Brunsfeld 913889d1c2 Merge pull request #481 from zed-industries/find-usages
Find-all-references
2022-02-22 15:10:47 -08:00
Max BrunsfeldandNathan Sobo c5888616cc Implement find-all-references
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-02-22 14:27:16 -08:00
Max Brunsfeld 3f6a93a8de Merge pull request #479 from zed-industries/project-symbols
Project symbols
2022-02-22 14:25:46 -08:00
Max BrunsfeldandNathan Sobo d5e77b47b2 Don't select entire item when jumping to a project symbol
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-02-22 12:56:43 -08:00
Max BrunsfeldandNathan Sobo 7a7f928d7b Add integration test for project symbols
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-02-22 12:44:17 -08:00
Max BrunsfeldandNathan Sobo c469ffc798 Normalize paths passed to the FakeFs
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-02-22 12:43:56 -08:00
Max BrunsfeldandNathan Sobo c2953f4cf4 Request definitions as guests in random collaboration integration test
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-02-22 12:03:45 -08:00
b43945d6c6 Allow languages to be registered at any time
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
Co-Authored-By: Antonio Scandurra <me@as-cii.com>
2022-02-22 10:35:20 -08:00
03402adaeb Show worktree root name for symbol when there are multiple worktrees
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
Co-Authored-By: Max Brunsfeld <max@zed.dev>
2022-02-22 18:57:41 +01:00
23aa8da7a9 Sign symbols so that we can trust opening buffers for them from guests
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
Co-Authored-By: Max Brunsfeld <max@zed.dev>
2022-02-22 18:43:16 +01:00
Antonio ScandurraandNathan Sobo 447cc969f1 Don't serialize the full LSP symbol when collaborating
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-02-22 18:08:43 +01:00
Antonio ScandurraandNathan Sobo 19103bad64 Render paths in ProjectSymbolsView
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-02-22 17:48:14 +01:00
Antonio Scandurra f8762ff1ce Allow opening of buffers associated with a project symbol 2022-02-22 16:26:01 +01:00
Antonio Scandurra 416898db0e Retrieve project symbols over RPC 2022-02-22 14:50:06 +01:00
Antonio Scandurra 3948b5da7f WIP: Start on getting project symbols over RPC 2022-02-22 12:15:38 +01:00
Antonio Scandurra f8a219cca6 Syntax-highlight symbols based on their kind 2022-02-22 12:00:16 +01:00
Antonio Scandurra b14fd8b827 Update symbol matches as the query changes 2022-02-22 10:54:25 +01:00
Antonio Scandurra 0fc1d67784 Rename CompletionLabel to CodeLabel and add Project::symbols
This only works locally for now and we haven't implemented the
`RustLsp::label_for_symbol` method yet.
2022-02-22 10:01:08 +01:00
Antonio Scandurra 938214a99b Start on a new project_symbols crate 2022-02-22 08:42:12 +01:00
Nathan Sobo 40d8a92597 Merge pull request #475 from zed-industries/filter-input
Don't insert input in editor when control keys are pressed
2022-02-21 18:32:53 -08:00
Nathan Sobo 3ddad9b085 Don't insert input in editor when control keys are pressed 2022-02-21 18:21:27 -07:00
Nathan Sobo 1f255b3e84 v0.16.0 2022-02-21 18:10:10 -07:00
Nathan Sobo 43036ed7b4 Merge pull request #459 from zed-industries/spurious-macro-errors
Download language servers dynamically on startup
2022-02-21 17:08:50 -08:00
Nathan Sobo 6ce19ad1a2 Log an error instead of panicking when there's no LSP download dir 2022-02-21 17:44:00 -07:00
Max BrunsfeldandNathan Sobo bdb3c462f4 Assign language server download directory on startup
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-02-21 16:23:38 -08:00
Max BrunsfeldandNathan Sobo 79a0d152a3 Show more information in lsp status bar item
* Distinguish between checking for updates and downloading
* Show dismissable error message when downloading failed and there
  is no cached server.

Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-02-21 16:11:51 -08:00
Max BrunsfeldandNathan Sobo c9a4d76f2d Download language servers on-demand
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-02-21 13:54:52 -08:00
e92573c8d0 Don't offset text vertically with gutter margin
Fixes #467

Co-Authored-By: Antonio Scandurra <me@as-cii.com>
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com>
2022-02-21 11:41:46 -07:00
Nathan Sobo fbbf89fac2 Merge pull request #457 from zed-industries/find-improvements
Find improvements
2022-02-21 10:34:49 -08:00
Antonio Scandurra 82163040dd Revert "Temporarily allow uploading artifacts on all branches"
This reverts commit cb6c571548.
2022-02-21 18:04:29 +01:00
Antonio Scandurra d30399e056 Remove unused method 2022-02-21 17:31:43 +01:00
Antonio ScandurraandNathan Sobo 6149e8c4cb Remove rust-analyzer smoke test
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-02-21 17:28:55 +01:00
Antonio ScandurraandNathan Sobo ec875ff474 Show message indicating when we're downloading language servers
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-02-21 17:25:52 +01:00
Antonio ScandurraandNathan Sobo d7d78b8917 Use a Shared future to represent started language servers
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-02-21 17:04:47 +01:00
Antonio Scandurra 5967d87885 Download rust-analyzer from GitHub 2022-02-21 16:15:54 +01:00