Commit graph

27 commits

Author SHA1 Message Date
Antonio Scandurra
2a779d3529 Rename {Add,Remove}Guest to {Add,Remove}Peer 2021-07-05 10:24:39 +02:00
Max Brunsfeld
08991db882 Implement Copy for peer::Receipt 2021-07-02 15:54:42 -07:00
Antonio Scandurra
569a4a1e2d WIP: Save remote buffers 2021-07-02 17:02:17 +02:00
Max Brunsfeld
9d51fe88e9 Serialize RPC sends and responses using a channel 2021-07-01 22:02:27 -07:00
Antonio Scandurra
ed9036f3fc Send a CloseWorktree message when a shared Worktree is dropped 2021-06-30 17:00:29 +02:00
Antonio Scandurra
7704291432 Maintain a set of peers as they join and leave the worktree 2021-06-30 13:22:22 +02:00
Antonio Scandurra
65aa9733d7 Restructure RPC state to also keep track of remote worktrees on guests 2021-06-28 15:35:36 +02:00
Max Brunsfeld
b9952bad8b Send and receive buffer operations
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-06-25 16:26:35 -07:00
Antonio Scandurra
02321af08a Respond to proto::OpenBuffer requests 2021-06-23 16:20:02 +02:00
Max Brunsfeld
cabf6b1f58 Emit a diff event when worktree's snapshot is updated
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-06-21 17:07:56 -07:00
Antonio Scandurra
7489e86c47 Fix deadlock when comparing FileHandles when handles are the same 2021-06-21 16:18:18 +02:00
Antonio Scandurra
2905ce3ba7 WIP: Load remote history 2021-06-21 12:15:58 +02:00
Nathan Sobo
0deaa3a61d WIP
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com>
2021-06-18 17:26:12 -06:00
Antonio Scandurra
f9d8e952f2 WIP 2021-06-18 19:28:39 +02:00
Antonio Scandurra
89d25458ac Add worktree to workspace when joining a remote worktree 2021-06-18 14:52:38 +02:00
Max Brunsfeld
cdfb33b283 Add a name to EnvelopedMessage for logging purposes 2021-06-17 20:48:26 -07:00
Max Brunsfeld
3a78f053f6 Use strings for paths and buffer contents 2021-06-17 16:25:30 -07:00
Antonio Scandurra
9de4d73ffb Move RpcClient to zed_rpc and rename it to Peer
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-06-16 18:01:26 +02:00
Max Brunsfeld
8b66e0aa7e WIP - Allow RpcClient to register handlers for incoming messages 2021-06-15 17:22:48 -07:00
Max Brunsfeld
3db215418c Allow RpcClient to encapsulate arbitrarily many connections 2021-06-15 14:12:42 -07:00
Max Brunsfeld
e88f33851e Flatten protobuf message namespace
* Remove `FromClient`/`FromServer` distinction.
* Remove `subscribe` concept - clients will need to handle
  unprompted messages from the server.

Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-06-15 13:06:50 -07:00
Antonio Scandurra
301531ae04 Test RpcClient::subscribe 2021-06-15 10:46:23 +02:00
Antonio Scandurra
cd1a4c49cf Use a fixed-length delimiter for encoding/decoding messages in RPC
Co-Authored-By: Max Brunsfeld <max@zed.dev>
2021-06-14 18:33:34 +02:00
Max Brunsfeld
b2b1ce5e81 Start work on RpcClient 2021-06-11 14:47:13 -07:00
Max Brunsfeld
86ff599285 Use tiny_http for handling login HTTP request
Our manual HTTP parsing and encoding was not working with Safari.

Co-Authored-By: Antonio Scandurra <me@as-cii.com>
2021-06-11 10:28:00 -07:00
Max Brunsfeld
9c5c9fdc36 Add initial messages for setting up a worktree share 2021-06-09 18:14:30 -07:00
Max Brunsfeld
a10f4bb4ff Introduce zed_rpc::proto module containing protobuf stream logic
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-06-09 13:19:12 -07:00