Commit Graph
2840 Commits
Author SHA1 Message Date
Antonio Scandurra c33d554675 Don't render sample item twice in UniformList 2022-02-15 12:02:58 +01:00
Antonio Scandurra 56e4591d6f Fix panic caused by reusing the same handler for diagnostic status 2022-02-15 10:49:03 +01:00
Antonio Scandurra 17b13b9362 Wait for request and response version before resolving completions 2022-02-15 10:17:35 +01:00
Antonio Scandurra 809b843ceb Render "Sign in" label only for current user 2022-02-15 09:17:32 +01:00
Max Brunsfeld 4e748b188e WIP - Wait for code action anchors to be valid 2022-02-14 18:05:43 -08:00
Max BrunsfeldandNathan Sobo d358072c74 Include the desired version in a SaveBuffer RPC request
When handling this messages on the host, wait until the desired
version has been observed before performing the save.

Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-02-14 17:51:26 -08:00
Max BrunsfeldandNathan Sobo 8d06049124 Ensure worktree updates are applied in order
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-02-14 16:19:29 -08:00
Nathan SoboandMax Brunsfeld 28ba49b47b Wait for buffer if it doesn't exist when deserializing a reference
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com>
2022-02-14 15:55:37 -07:00
Max BrunsfeldandNathan Sobo e9250e647b Fix mouse event handler for code actions indicator
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-02-14 14:06:55 -08:00
Max BrunsfeldandNathan Sobo ddc1f237a6 Panic if element state is used twice in the same frame
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-02-14 14:04:27 -08:00
Max BrunsfeldandNathan Sobo 7b666af0cf Get chat integration tests passing
* Don't send a chat message before the previous chat message
  is acknowledged.
* Fix emitting of notifications in RPC server

Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-02-14 12:38:10 -08:00
Max Brunsfeld bf6ae0d8f8 Restore logic for storing operations on buffers that are still being opened 2022-02-14 11:59:22 -08:00
Max BrunsfeldandAntonio Scandurra fe46b89500 Remove logic for preserving RPC message order between peers
* On the server, spawn a separate task for each incoming message
* In the peer, eliminate the barrier that was used to enforce ordering
  of responses with respect to other incoming messages

Co-Authored-By: Antonio Scandurra <me@as-cii.com>
2022-02-14 10:51:12 -08:00
Antonio Scandurra 90576cf32f Request code actions inside of task to avoid spamming the LSP 2022-02-14 17:49:03 +01:00
Antonio Scandurra ae75648f0d v0.15.0 2022-02-14 17:26:40 +01:00
Antonio ScandurraandNathan Sobo 298c991c93 Ensure that zed package version matches git tag before packaging a release
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-02-14 17:17:48 +01:00
Antonio Scandurra f742f63007 Merge pull request #446 from zed-industries/assists
Implement code actions
2022-02-14 16:09:20 +01:00
Antonio Scandurra fadb94afb2 Use selection instead of just the cursor when fetching code actions 2022-02-14 14:13:36 +01:00
Antonio Scandurra 1eea2f3653 Add integration test for code actions 2022-02-14 11:42:56 +01:00
Antonio Scandurra 68917c78be Implement Server::add_request_handler in terms of ::add_message_handler 2022-02-14 09:31:31 +01:00
Antonio Scandurra 1aff42302c Rename subscribe to add_{message,request}_handler in Client
This makes it easier to distinguish between messages and requests.
2022-02-14 09:25:31 +01:00
Antonio Scandurra 6a6cd68df4 🎨 2022-02-14 09:22:10 +01:00
Antonio Scandurra 03812a6cdc Pass write(true) when creating a file in RealFs 2022-02-14 09:12:32 +01:00
Antonio Scandurra a19735c05f Ensure client always responds when receiving a request 2022-02-13 12:21:35 +01:00
Antonio Scandurra a41eb5a663 Ensure server always responds when receiving a request 2022-02-13 10:21:01 +01:00
Antonio Scandurra 331667c00e WIP: Start auditing all forward_request calls on the server
When the host returns an error after a server has forwarded a request,
we want to surface that error to the guest. At the moment, the server
just returns early leaving some requests unresponded on the guest.

I started auditing all the code paths where we do that, but I am
wondering whether there's some other approach that would prevent us
from repeating this mistake in other code paths.
2022-02-12 14:12:13 +01:00
Antonio Scandurra 2dbea2804c Deserialize buffers synchronously when deserializing project transaction
On guests, this ensures we never miss updates to subsequent buffers in
the project transaction that arrive while we're waiting for edits on a
prior buffer in the transaction.
2022-02-12 13:56:07 +01:00
Antonio Scandurra 8d3b7e996f Proceed with saving a buffer even if formatting fails 2022-02-12 13:02:19 +01:00
Antonio Scandurra a2100627c3 Refresh diagnostics and code actions more selectively 2022-02-12 13:01:55 +01:00
Antonio Scandurra cbe93af3a8 Reduce number of iterations on test_editing_while_guest_opens_buffer
I think this was mistakenly increased as part of some other change.
2022-02-12 13:01:18 +01:00
Antonio Scandurra ca052b4a4d Make test_propagate_saves_and_fs_changes more robust
...by using a condition that awaits on the actual paths as opposed
to the simple file counts.
2022-02-12 12:37:51 +01:00
Antonio Scandurra e354133be0 Remove stray log statements 2022-02-12 12:32:57 +01:00
Antonio Scandurra f2b4a0665f Fix integration test verifying the rename behavior
Specifically, the test now ensures that the host's worktree observes a/file1's
change event *before* the rename occurs, otherwise when interpreting the change
event it will mistakenly think that the file has been deleted (because its path
has changed) and will subsequently fail to detect the rename, causing the test
to fail.
2022-02-12 12:26:39 +01:00
Antonio Scandurra 7b9ff42679 Apply worktree updates in the order they were received 2022-02-12 11:56:20 +01:00
Antonio Scandurra 5a7d391d73 Ensure response barrier is always dropped, even if request is canceled 2022-02-12 10:23:50 +01:00
Max Brunsfeld 174c9d7ab0 Adjust multibuffer history test to reflect new behavior 2022-02-11 16:55:00 -08:00
Max Brunsfeld 8d6504826c Reduce logging in lsp tests 2022-02-11 16:37:50 -08:00
Max Brunsfeld d84fc3beec Remove Buffer::apply_lsp_edits
Always use `edits_from_lsp`.
2022-02-11 16:22:19 -08:00
Max Brunsfeld d4b9d9e820 Inline MultiBuffer::format
Put all the logic in Editor. Add an `all_buffers` method so the editor can
format all of the buffers by itself.
2022-02-11 16:22:19 -08:00
Max Brunsfeld 06bb8d2779 Fix panic when canceling with a pending selection 2022-02-11 15:31:54 -08:00
01664d494c Restructure fake language server to setup request handlers in advance
Co-Authored-By: Antonio Scandurra <me@as-cii.com>
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-02-11 15:08:56 -08:00
680d1fedc2 Always call set_selections in mouse selection methods
Co-Authored-By: Antonio Scandurra <me@as-cii.com>
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-02-11 09:52:18 -08:00
947fe848c1 Make multibuffer anchor's buffer_id optional
Avoid using 0 for a buffer id on Anchor::min and max

Co-Authored-By: Antonio Scandurra <me@as-cii.com>
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-02-11 09:51:47 -08:00
Nathan SoboandMax Brunsfeld fa194c8e14 Pass the pending selection to update_selections and set_selections
This helps us preserve our invariant of always having at least a pending selection in set_selections when comparing old and new cursor positions.

Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com>
2022-02-11 10:07:42 -07:00
Nathan Sobo ad9a0e2d4f Revert "Ensure there's always at least one selection in the editor"
This reverts commit b1a44b5816.
2022-02-11 09:21:04 -07:00
Antonio ScandurraandNathan Sobo 612a33147a Allow toggling of code actions
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-02-11 17:01:22 +01:00
Antonio ScandurraandNathan Sobo 7b28418979 Allow deployment of code actions from indicator
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-02-11 16:47:40 +01:00
Antonio ScandurraandNathan Sobo b1a44b5816 Ensure there's always at least one selection in the editor
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-02-11 16:25:26 +01:00
Antonio ScandurraandNathan Sobo a41725daee Render code actions indicator
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-02-11 16:01:15 +01:00
Antonio ScandurraandNathan Sobo 2fcdcac080 Fetch code actions on cursor movement instead of on-demand
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-02-11 14:41:19 +01:00