Commit Graph
41 Commits
Author SHA1 Message Date
Max Brunsfeld d9d52b8aa5 When loggin in, send user id instead of creating a new watch channel 2021-08-24 13:11:37 -07:00
Nathan SoboandAntonio Scandurra 39ad7f6a60 Make RPC client's current user_id observable
Co-Authored-By: Antonio Scandurra <me@as-cii.com>
2021-08-24 08:37:32 -06:00
Nathan SoboandAntonio Scandurra 9b636fb81e Add "Zed > Sign" In menu item
Co-Authored-By: Antonio Scandurra <me@as-cii.com>
2021-08-24 08:29:36 -06:00
Max Brunsfeld 10868cf0ea Start work on sending channel messages 2021-08-19 18:04:49 -07:00
Max Brunsfeld 620b988e22 WIP 2021-08-19 13:07:28 -07:00
Max BrunsfeldandNathan Sobo 86c819757d Move Arc outside of rpc::Client
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-08-19 12:56:50 -07:00
5338b30c00 Remove remaining instances of router
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
Co-Authored-By: Max Brunsfeld <max@zed.dev>
2021-08-19 19:38:17 +02:00
Antonio Scandurra d6412fdbde Delete old Peer implementation and adapt previous code paths
This still doesn't compile but should be close.
2021-08-19 15:02:30 +02:00
Nathan Sobo 3f5db7284d Remove shared_worktrees map from ClientState
Each worktree instance now handles its own messages.
2021-08-18 19:16:40 -06:00
Nathan SoboandMax Brunsfeld 37f24d10ec Subscribe to worktree messages at the entity level
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com>
2021-08-18 19:06:46 -06:00
541f58e12c Start on subscribing to messages in channel entity instances
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com>
Co-Authored-By: Antonio Scandurra <me@as-cii.com>
2021-08-18 11:45:29 -06:00
Max Brunsfeld ff822c9158 wip 2021-08-06 14:47:18 -07:00
391ad489ff Rename zed-rpc to zrpc
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
Co-Authored-By: Max Brunsfeld <max@zed.dev>
2021-07-13 18:22:00 +02:00
Antonio Scandurra ccff27a157 Ignore whitespaces surrounding a shared worktree's URL 2021-07-12 14:16:36 +02:00
Nathan Sobo 4aab70d7fb Remove authentication at the RPC layer
This means we can remove IOHandler and return a simple future that is Send
2021-07-09 21:57:10 -06:00
Nathan Sobo 89ef4d760d Send an Authorization HTTP header when connecting web sockets 2021-07-09 21:27:33 -06:00
Max Brunsfeld eeebc761b6 Restructure Peer to handle connections' messages in order 2021-07-09 16:27:34 -07:00
Max BrunsfeldandNathan Sobo b2aa961b4f Allow rpc client to connect to an in-memory stream
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-07-08 17:38:54 -07:00
Antonio ScandurraandMax Brunsfeld 7335e70eb7 Use async-tungstenite's built-in TLS connector
Co-Authored-By: Max Brunsfeld <max@zed.dev>
2021-07-07 19:55:26 +02:00
Antonio ScandurraandMax Brunsfeld 024684e46c Improve logging when there is an error in the RPC layer
Co-Authored-By: Max Brunsfeld <max@zed.dev>
2021-07-07 19:36:53 +02:00
cb9002254f Use a websocket to connect to the server
Co-Authored-By: Max Brunsfeld <max@zed.dev>
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-07-07 18:49:38 +02:00
Antonio Scandurra ee962eab9b Revert "Start work on handling TLS for the RPC endpoint"
This reverts commit 193c704875.
2021-07-07 15:19:00 +02:00
Max Brunsfeld 193c704875 Start work on handling TLS for the RPC endpoint 2021-07-06 16:27:57 -07:00
Antonio Scandurra 61222b4fe5 Expose Client::disconnect to force disconnection 2021-07-05 10:18:12 +02:00
Max Brunsfeld 899b9cd5ad Avoid deadlocks on rpc state by switching to an RwLock 2021-07-02 15:55:16 -07:00
Max Brunsfeld 9d51fe88e9 Serialize RPC sends and responses using a channel 2021-07-01 22:02:27 -07:00
Nathan Sobo 0fde7a55ef Store shared buffers on LocalWorktree
It's okay for our domain objects to model remote state. We should minimize what we need to store in the rpc::ClientState struct.
2021-06-29 21:01:43 -06:00
Nathan Sobo bbf803d7dc Store a reference to the LangageRegistry on the Worktree 2021-06-29 20:07:37 -06:00
Antonio Scandurra 65aa9733d7 Restructure RPC state to also keep track of remote worktrees on guests 2021-06-28 15:35:36 +02:00
Nathan SoboandMax Brunsfeld 7ee0862b99 Notify host when guests close buffers
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com>
2021-06-25 11:33:40 -07:00
Antonio Scandurra d59267a7ef Move remote module from workspace to worktree 2021-06-25 12:14:04 +02:00
Max BrunsfeldandNathan Sobo 6a166554e8 Add public method for connecting to RPC server with a given address
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-06-23 18:05:03 -07:00
Antonio Scandurra 02321af08a Respond to proto::OpenBuffer requests 2021-06-23 16:20:02 +02:00
Max Brunsfeld dc8e216fcb WIP - Maintain a set of open buffers on a LocalWorktree 2021-06-22 12:29:58 -07:00
Nathan SoboandMax Brunsfeld a364839e93 Replace FileHandle with File entity that subscribes to Worktree update events
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com>
2021-06-21 20:40:40 -06:00
Antonio Scandurra 7489e86c47 Fix deadlock when comparing FileHandles when handles are the same 2021-06-21 16:18:18 +02:00
Antonio Scandurra f4d6fbe14f Issue only one OpenFile and CloseFile request per handle 2021-06-21 12:04:38 +02:00
Nathan SoboandMax Brunsfeld 0deaa3a61d WIP
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com>
2021-06-18 17:26:12 -06:00
Max Brunsfeld 7a88e44264 Add menu command to join worktree using URL on clipboard
Introduce rpc::Client struct that wraps zed_rpc::Peer
2021-06-17 20:42:36 -07:00
Antonio Scandurra 4d28d03e3f Rename handle_message to on_message 2021-06-17 17:25:10 +02:00
Antonio Scandurra 82ac7e2072 Move handle_messages into an extension method for Arc<Peer> 2021-06-17 16:32:28 +02:00