Commit Graph
325 Commits
Author SHA1 Message Date
Julia aae083923c Differentiate between follow state on a per-project basis 2023-02-24 00:07:17 -05:00
Max Brunsfeld c0ac9544ba Bump RPC protocol version number 2023-02-22 13:40:14 -08:00
JuliaandAntonio Scandurra a3d474af23 Begin tracking follow states on collab server
Co-Authored-By: Antonio Scandurra <me@as-cii.com>
2023-02-22 11:21:23 -05:00
Antonio Scandurra e49debafd4 Ensure proto::UpdateWorktree::removed_entries doesn't exceed chunk size
This was causing the database to panic because we were trying to remove too
many entries at once.
2023-01-26 17:26:31 +01:00
Mikayla Maki fc7532d74d Added complete scripts for generating third party license files 2023-01-23 12:47:12 -08:00
Antonio Scandurra 9bccb5bfdf Bump protocol version 2023-01-17 16:32:54 +01:00
Antonio Scandurra e2ecfdc72d Relay saved version metadata to ensure buffers modified state converges 2023-01-17 16:32:54 +01:00
Antonio Scandurra 26e3920cbd Include saved mtime and fingerprint when serializing buffers
This still doesn't include:

- An assertion in the randomized test to ensure buffers are not spuriously
marked as modified
- Sending an update when synchronizing buffers after a reconnection
2023-01-17 10:46:19 +01:00
Max Brunsfeld 5ed7caa711 Bump protocol version after reconnect support 2023-01-11 14:00:16 -08:00
Nathan Sobo 94bc34e332 Merge remote-tracking branch 'origin/main' into project-reconnection 2023-01-06 16:52:22 -07:00
Joseph Lyons d9a7e1fed6 Appease clippy 2023-01-01 23:50:45 -05:00
Antonio Scandurra 7fc0cd4c8b Respond with an error when client hasn't got a registered handle 2022-12-23 11:53:13 +01:00
Max BrunsfeldandNathan Sobo c07f90cb54 Assert that buffers' file state matches in randomized collab test
Co-authored-by: Nathan Sobo <nathan@zed.dev>
2022-12-21 15:38:44 -08:00
Antonio Scandurra 55c5989abc Synchronize buffers when either the host or a guest reconnects 2022-12-21 14:20:56 +01:00
Max Brunsfeld 8f2c51abec Merge branch 'main' into project-reconnection 2022-12-20 15:50:09 -08:00
Antonio Scandurra 458b07bc3a Make host reconnection test pass when mutating worktree while offline 2022-12-20 17:30:58 +01:00
Antonio Scandurra 75346960db Sketch out project reconnection routine on the server 2022-12-20 12:03:43 +01:00
Max BrunsfeldandNathan Sobo c9fa0ff03f Start work on rejoining rooms, supplying all project info at once
Co-authored-by: Nathan Sobo <nathan@zed.dev>
2022-12-19 17:50:43 -08:00
Antonio Scandurra 70f1e81296 WIP 2022-12-19 20:05:00 +01:00
Max Brunsfeld 5dbb5b5a25 Replicate pending selections separately from other selections
This fixes a panic that would occur when a leader created
a pending selection that overlapped another selection,
because the follower would attempt to treat that pending
selection as non-pending, which would violate the invariant
that selections are sorted and disjoint.
2022-12-17 14:00:53 -08:00
Antonio Scandurra e113a04990 Bump protocol version 2022-12-16 11:48:14 +01:00
Antonio Scandurra d9bedda67f Remove unnecessary PeerId parsing code 2022-12-16 11:45:42 +01:00
Antonio Scandurra e65429a22b 💄 2022-12-15 16:34:59 +01:00
Antonio Scandurra 7c312a10d9 Merge branch 'main' into fix-reconnects-after-deploy 2022-12-15 15:32:05 +01:00
Antonio Scandurra b4a4b40623 Use "id" nomenclature more consistently 2022-12-15 10:15:59 +01:00
Max Brunsfeld ea8b0afaa4 Bump RPC version due to multibuffer following PR 2022-12-14 15:34:22 -08:00
Max Brunsfeld a02df9136d Merge pull request #1921 from zed-industries/multibuffer-following
Allow following collaborators into editors with multi-excerpt buffers (refactors + find-all-refs)
2022-12-14 15:33:11 -08:00
Max Brunsfeld c5c2520d43 Introduce a ViewId message, identifying views across calls 2022-12-14 14:40:07 -08:00
Antonio Scandurra d661abda72 WIP 2022-12-14 18:02:39 +01:00
Antonio Scandurra f7070792a9 Introduce an epoch to ConnectionId and PeerId 2022-12-14 15:55:56 +01:00
Antonio Scandurra eb27691bc1 Include room_id in CallCanceled message
This ensures we don't accidentally cancel old calls.
2022-12-13 11:43:09 +01:00
Max Brunsfeld 3eb2f901b0 Merge branch 'main' into multibuffer-following 2022-12-12 11:47:39 -08:00
Antonio Scandurra 55447288ed Send diagnostic summaries synchronously 2022-12-05 19:07:06 +01:00
Antonio Scandurra 3fac823050 Merge branch 'main' into reconnections-2 2022-12-02 19:09:33 +01:00
Max Brunsfeld ce0c9a8dd4 Start work on following in multi-buffers 2022-11-29 14:50:43 -08:00
Max Brunsfeld 80f0d19ed7 Send full multibuffer anchors to following peers 2022-11-28 18:00:38 -08:00
Julia 10927128bd Bump protocol version back down as proto changes are non-breaking 2022-11-23 13:40:49 -05:00
JuliaandMax Brunsfeld 52be58fcb9 Collapse proto Point into the one kind of use case, utf-16 coords
Co-Authored-By: Max Brunsfeld <max@zed.dev>
2022-11-23 13:28:44 -05:00
Julia 06895033f3 Fixup compile errors 2022-11-22 02:49:47 -05:00
Antonio Scandurra 7b26fceb7b Remove version from Room
We won't need it once we add the per-room lock.
2022-11-18 20:18:48 +01:00
Antonio Scandurra 1e3cb72b20 Revert "Don't replace newer diagnostics with older ones"
This reverts commit b55a13831a.
2022-11-17 16:57:40 +01:00
Antonio Scandurra 915b7280d4 Revert "Wait for previous UpdateFollowers message ack before sending new ones"
This reverts commit ceb40613bc.
2022-11-17 16:57:32 +01:00
Antonio Scandurra ceb40613bc Wait for previous UpdateFollowers message ack before sending new ones 2022-11-17 14:12:00 +01:00
Antonio Scandurra b55a13831a Don't replace newer diagnostics with older ones 2022-11-17 12:21:51 +01:00
Nathan Sobo 42c0288c9f Move leave_project from Store to db module 2022-11-16 17:45:47 -07:00
Antonio Scandurra d054ca68e9 Wait for acknowledgment before sending the next diagnostic summary 2022-11-16 16:03:01 +01:00
Antonio ScandurraandNathan Sobo bf3e4936b5 Always use strings to represent paths over the wire
Previously, the protocol used a mix of strings and bytes without any consistency.

When we go to multiple platforms, we won't be able to mix encodings of paths anyway.
We don't know this is the right approach, but it at least makes things consistent
and easy to read in the database, on the wire, etc. Really, we should be using entry
ids etc to refer to entries on the wire anyway, but there's a chance this is the
wrong decision.

Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-11-15 16:46:17 +01:00
Antonio ScandurraandNathan Sobo ae2c64f47f Move Store::join_project to Db::join_project
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-11-15 16:37:51 +01:00
Antonio Scandurra 2de5763d4d Finish implementing Db::update_project 2022-11-15 09:01:51 +01:00
Antonio Scandurra 05b8ba4fd0 Wait for acknowledgment before sending the next project update 2022-11-14 15:32:49 +01:00