Max Brunsfeld
22a6a243bc
Move project assertions into main assertion function
...
Co-authored-by: Antonio Scandurra <antonio@zed.dev>
2023-04-06 11:38:42 -07:00
Antonio Scandurra
4a61e2dfa4
Save server operations that were in the middle of being applied
...
Previously, if the test panicked before it had a chance to fully
apply an operation, it would end up not being saved in the plan.
With this commit we will mark the operation as applied before we
start processing it, and mark it as not applied if, once we're done,
we've found out that it couldn't be applied. This is consistent with
what we do for client operations.
2023-04-06 16:02:16 +02:00
Max Brunsfeld
bf3b8adf35
Avoid async fs call before checking if operation is applicable
...
This way, the executor isn't influenced by operations that aren't applicable.
2023-04-05 18:11:33 -07:00
Max Brunsfeld
1064b14779
Don't use TestPlan's rng in fake LSP handlers
...
These should use the test context's rng, so that they behave the same whether
a pre-recorded plan was used, or the plan is being generated.
2023-04-05 17:50:04 -07:00
Max Brunsfeld
8e68c7f808
Do include operations in serialized test plan if they cause a client to hang
2023-04-05 16:52:39 -07:00
Max Brunsfeld
661fba8640
Run executor until parked at end of each iteration of random collaboration test
...
Without this, the server doesn't get dropped at the end of the test, and we eventually run
out of file handles due to sqlite connections being retained.
2023-04-05 15:05:32 -07:00
Max Brunsfeld
781d66f628
Omit operations for non-existent users from serialized test plan
2023-04-05 15:04:27 -07:00
Max Brunsfeld
b251e249a7
Check for consistency between clients every time the system quiesces
2023-04-03 19:11:37 -07:00
Max Brunsfeld
5ecc9606af
Use synchronous locks in FakeFs
...
This way, the state can be accessed without running the deterministic
executor.
2023-04-03 18:15:07 -07:00
Max Brunsfeld
f95732e981
Fix bug where guest would drop BufferSaved messages while opening the buffer
2023-04-03 16:23:44 -07:00
Max Brunsfeld
543301f949
Avoid repeatedly loading/saving the test plan for each iteration
2023-04-03 15:58:11 -07:00
Max Brunsfeld
c960277349
Merge branch 'main' into randomized-tests-operation-script
2023-04-03 13:09:25 -07:00
Antonio Scandurra
5471217089
Use the same serde version across the entire workspace
2023-03-28 09:42:00 -07:00
Mikayla Maki
455cdc8b37
Add copilot crate
...
Refactor HTTP and github release downloading into util
Lazily download / upgrade the copilot LSP from Zed
Co-authored-by: Max <max@zed.dev>
Co-Authored-By: Antonio <antonio@zed.dev>
2023-03-28 09:41:59 -07:00
Julia
ed442cfc8c
Invoke npm from downloaded Node
2023-03-27 00:00:16 -04:00
Julia
edd6c85af7
Initial running of servers on downloaded Node
2023-03-27 00:00:16 -04:00
Max Brunsfeld
399f082415
Update wrong assertions after fixing missing event in FakeFs
2023-03-21 11:26:13 -07:00
Max Brunsfeld
fc828971f1
collab 0.8.2
2023-03-17 15:00:31 -07:00
Max Brunsfeld
691383ca68
Merge pull request #2305 from zed-industries/faster-access-token-validation
...
Faster access token validation
2023-03-17 14:56:30 -07:00
Max Brunsfeld
b8e8363a72
Add logging and metric for time spent hashing auth tokens
...
Co-authored-by: Mikayla Maki <mikayla@zed.dev>
2023-03-17 14:32:13 -07:00
Max Brunsfeld
623133ffa0
Reduce scrypt work factor to speed up websocket authentication
...
Co-authored-by: Mikayla Maki <mikayla@zed.dev>
2023-03-17 14:31:39 -07:00
Max Brunsfeld
9633a4b527
Return a 400, not a 500 when token validation fails
...
Co-authored-by: Antonio Scandurra <antonio@zed.dev>
2023-03-17 13:56:12 -07:00
Max Brunsfeld
26dae3c04e
Lookup access tokens by id when authenticating a connection
...
This avoids the cost of hashing an access token multiple times,
to compare it to all known access tokens for a given user.
Co-authored-by: Antonio Scandurra <antonio@zed.dev>
2023-03-17 11:13:50 -07:00
Antonio Scandurra
1af8f4be19
Deserialize Theme
directly into the heap to avoid stack overflow
...
Co-Authored-By: Julia Risley <julia@zed.dev>
2023-03-17 15:58:52 +01:00
Max Brunsfeld
9633732db7
collab 0.8.1
2023-03-16 14:21:35 -07:00
Max Brunsfeld
b9bc66aa9b
Log the delay when retrying a transaction
2023-03-16 13:07:38 -07:00
Max Brunsfeld
35280f7d80
Introduce a delay before retrying a transaction after a serialization failure
...
Co-authored-by: Antonio Scandurra <antonio@zed.dev>
2023-03-16 13:07:38 -07:00
Antonio Scandurra
a6ebc9bd26
collab 0.8.0
2023-03-14 18:21:16 +01:00
Antonio Scandurra
0f429243d7
Fix seed binary
2023-03-14 12:37:56 +01:00
Antonio Scandurra
cba41ef7c5
Create user record automatically when someone logs in on the website
...
Now that we are moving out of the private alpha, we should let everyone
in when they try to log into zed.dev.
2023-03-14 12:25:04 +01:00
Max Brunsfeld
f5c4a2a0dd
Fix failure to see screenshare tracks that were started prior to joining a call
...
Co-authored-by: Antonio Scandurra <antonio@zed.dev>
2023-03-13 11:15:22 -07:00
Max Brunsfeld
e60dea7049
collab 0.7.2
2023-03-13 10:11:44 -07:00
Antonio Scandurra
bca1acf6d3
Leave room on quit
...
Co-Authored-By: Max Brunsfeld <max@zed.dev>
2023-03-13 17:52:10 +01:00
Max Brunsfeld
e8b3d4e0fa
Encode db-max-connections env var as a string in k8s manifest
2023-03-10 17:19:16 -08:00
Max Brunsfeld
ff1c7db38f
collab 0.7.1
2023-03-10 16:36:03 -08:00
Mikayla Maki
37d01c7fb3
Merge pull request #2199 from zed-industries/welcome-experience
...
Welcome experience
2023-03-10 10:48:30 -08:00
Antonio Scandurra
8b7273e46e
Increase the amount of max connections to the database
2023-03-10 10:10:59 +01:00
Mikayla Maki
9187863d0e
re-add spaces removed by new setting
2023-03-09 00:45:05 -08:00
Antonio Scandurra
3daeabc1d6
collab 0.7.0
2023-03-09 09:30:04 +01:00
Antonio Scandurra
9328bb0153
Introduce Kubernetes liveness probe to ensure database works
2023-03-09 09:17:55 +01:00
Antonio Scandurra
89c283ecf0
Merge pull request #2252 from zed-industries/limit-messages-processed-in-parallel
...
Prevent collab server from being overwhelmed with messages
2023-03-09 08:51:48 +01:00
Mikayla Maki
152755b043
Add blank pane experience
2023-03-08 17:56:39 -08:00
Max Brunsfeld
14497027d4
collab 0.6.2
2023-03-08 12:22:16 -08:00
Antonio Scandurra
b4561b848d
Limit the number of parallel messages handled for any given connection
2023-03-08 17:04:01 +01:00
Julia
d173b1d412
Update db followers table when user leaves a project
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2023-03-07 18:56:03 -05:00
Julia
1e5aff9e51
Update collab integration test to new reconnect timeout
2023-03-07 12:23:18 -05:00
Julia
b9110c9268
Increase reconnect timeout
...
Co-Authored-By: Antonio Scandurra <me@as-cii.com>
2023-03-03 13:10:08 -08:00
Max Brunsfeld
e7b56f6342
adjust buffer-formatting assertion to reflect final newline addition
2023-02-28 21:52:00 -08:00
Max Brunsfeld
e910fd8493
collab 0.6.1
2023-02-24 09:44:23 -08:00
Julia
465d8cc2ff
Differentiate between follow state on a per-project basis
2023-02-24 00:07:17 -05:00
Antonio Scandurra
bbeb33bc7e
Fix error when deleting rooms containing projects on refresh
...
A foreign key violation was causing the server to never delete stale
rooms during `Database::refresh_room` due to having one or more project
records referencing the room.
2023-02-23 15:54:35 +01:00
Antonio Scandurra
74e0bed38f
Fix compilation errors after restructuring room_transaction
2023-02-23 15:17:22 +01:00
Antonio Scandurra
832549f1a3
Merge branch 'main' into call-ui-follow-up
2023-02-23 15:15:46 +01:00
Antonio Scandurra
9334267bd0
Tear down peer when signing out
2023-02-23 14:47:02 +01:00
Antonio Scandurra
1c636500de
Merge pull request #2200 from zed-industries/fix-slow-project-join
...
Hold room lock through the entirety of a `room_transaction`
2023-02-23 09:11:58 +01:00
Max Brunsfeld
111aff29cc
collab 0.6.0
2023-02-22 12:35:15 -08:00
Julia
0324ca3b08
Be more specific about clearing (leader, follower) row
...
Previously anyone unfollowing someone would clear all other rows for
other followers leading to an incorrect state, fix and test
Co-Authored-By: Max Brunsfeld <max@zed.dev>
2023-02-22 15:29:20 -05:00
Max Brunsfeld
0dc92bec5c
Retrieve room id from the project when following/unfollowing
...
Previously, we were accidentally using the project id as the room id.
2023-02-22 11:34:55 -05:00
Julia
e403b868b7
Add followers table to sqlite scheme for tests
...
Co-Authored-By: Antonio Scandurra <me@as-cii.com>
2023-02-22 11:22:37 -05:00
Julia
4513c40993
Following face piles finally take their first breath
2023-02-22 11:21:23 -05:00
Julia
4ffc8cd9fd
Fix deadlock in db get_room
...
Co-Authored-By: Max Brunsfeld <max@zed.dev>
2023-02-22 11:21:23 -05:00
Julia
2592ec7265
Initial tracking of unfollows on collab server
2023-02-22 11:21:23 -05:00
Julia
d6462c611c
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
8dd249a7cd
Hold room lock through the entirety of a room_transaction
...
Previously, when the host repeatedly sent `UpdateWorktree` messages,
new guests attempting to join a project would observe a severe slowdown
caused by a database serialization error (e.g., the coherence of the data
would get violated midway through `Database::join_project` due to worktree
entries being mutated as the user joined). Writing entries is pretty fast,
whereas reading all of them for a project can take more than 100ms.
Transactions that failed due to a serialization error are retried, but the guest
would keep retrying until the host finished writing because the guest's read
was slow.
This commit changes the semantics of `room_transaction` to acquire a room
lock before even starting the transaction and holding it all the way after
commit (storing it, as before, in the `RoomGuard`). This ensures that a fast
writer (the host) can't starve a slow reader (the guest), allowing the latter
to make progress by temporarily pausing writes by the former.
2023-02-22 16:04:29 +01:00
Max Brunsfeld
51cea1b1fb
Merge branch 'main' into randomized-tests-operation-script
2023-02-20 10:39:00 -08:00
Julia
bda37ffb9c
Enforce rustfmt on CI & clean up some let-else format errors
2023-02-20 13:27:35 -05:00
Max Brunsfeld
010eba509c
Make Project::save_buffer and ::save_buffers into methods
2023-02-20 09:42:44 -08:00
Max Brunsfeld
cdf64b6cad
Unify save and save_as for local worktrees
...
This fixes state propagation bugs due to missing RPC calls in save_as.
2023-02-17 17:21:48 -08:00
Max Brunsfeld
3a7cfc3901
Move the save and save_as code paths close together
2023-02-17 17:21:48 -08:00
Max Brunsfeld
eebce28b32
Respect UpdateBufferFile messages on guest buffers without file
...
Co-authored-by: Nathan Sobo <nathan@zed.dev>
2023-02-17 12:38:04 -08:00
Antonio Scandurra
7be868e372
Avoid creating more than one room when inviting multiple people at once
...
Previously, when initiating a call by calling multiple people, only
the first person would get the call while all the others would briefly
show a "pending" status but never get the call.
This would happen because `ActiveCall` was trying to a create a different
room for each person called, because the original room creation hadn't finished
and so a `ModelHandle<Room>` wasn't being store in the active call.
With this commit, only one room can be created at any given time and further
invites have to wait until that room creation is done.
2023-02-14 12:03:30 +01:00
Antonio Scandurra
087d51634d
Fix test that wasn't properly verifying disconnection from livekit
2023-02-14 10:46:29 +01:00
Mikayla Maki
ea39983f78
Removed old experiments settings and staff mode flag, added new StaffMode global that is set based on the webserver's staff bit
2023-01-27 15:43:12 -08:00
Kay Simmons
ea0dd8972f
Merge pull request #2090 from zed-industries/workspace-window-position-persistence
...
Workspace window position persistence
2023-01-27 15:24:01 -08:00
Kay Simmons
a1308d20ce
Merge pull request #2105 from zed-industries/fix-focus-stealing-when-collaborating
...
Limit focus grabbing in followed pane
2023-01-27 15:23:43 -08:00
Kay Simmons
0f93386071
Add run until parked to test_fs_operations to ensure both update chunks are completed before asserting the changes
2023-01-27 15:07:51 -08:00
Kay Simmons
77a4f907a0
removed invalid focus assertion
2023-01-27 13:43:36 -08:00
Antonio Scandurra
5431488a9a
collab 0.5.4
2023-01-27 11:07:12 +01:00
Antonio Scandurra
ac7618da17
Merge pull request #2103 from zed-industries/connection-staleness
...
Fix connection staleness issues
2023-01-27 11:01:24 +01:00
Max Brunsfeld
1b45911857
Omit hidden worktrees when showing projects in collaboration UI
2023-01-26 14:47:37 -08:00
Petros Amoiridis
73af155dd6
Refactor Database::remove_contact
...
Refactor it to avoid sending irrelevant messages to update the UI.
Co-Authored-By: Antonio Scandurra <me@as-cii.com>
2023-01-26 19:01:51 +02:00
Antonio Scandurra
74aeec360d
Cancel pending call when participant leaves room after a reconnection
...
Previously, if a user temporarily disconnected while there was a pending
call, we would fail to cancel such pending call when the caller left the
room. This was due to the caller reconnecting and having a different connection
id than the one originally used to initiate the call.
2023-01-26 16:44:55 +01:00
Kay Simmons
5eac797a93
mostly working now
2023-01-25 11:36:38 -08:00
Kay Simmons
15799f7af6
wip
2023-01-25 11:32:19 -08:00
Petros Amoiridis
e928c1c61e
Test removing a contact
...
Co-Authored-By: Antonio Scandurra <me@as-cii.com>
2023-01-25 17:31:42 +02:00
Petros Amoiridis
5d4eb2b7ae
Push responder and requester to remove_contacts
...
When we ask the server to remove a contact we need to push the requester and responder ids to `remove_contacts` so that when the UI updates, the correct contacts will disappear from the list.
Co-Authored-By: Antonio Scandurra <me@as-cii.com>
2023-01-25 13:10:29 +02:00
Max Brunsfeld
9c25d37dfc
Merge branch 'main' into randomized-tests-operation-script
...
In randomized integration test, incorporate random updates of existing
files into the test's new structure.
2023-01-24 12:39:24 -08:00
Mikayla Maki
d060114f00
Added complete scripts for generating third party license files
2023-01-23 12:47:12 -08:00
Max Brunsfeld
2f42af2ac3
Add confirm_quit setting
2023-01-20 13:02:38 -08:00
Antonio Scandurra
a58b39f884
Merge branch 'main' into optimize-large-multi-buffers
2023-01-19 16:18:21 +01:00
Max Brunsfeld
17b4bfdf98
Merge pull request #2045 from zed-industries/fewer-unsaved-prompts
...
Avoid prompting to save when closing an untitled buffer that is still open elsewhere
2023-01-18 15:10:19 -08:00
Mikayla Maki
203f569f2e
collab 0.5.3
2023-01-18 12:52:58 -08:00
Antonio Scandurra
8ca0f9ac99
Fix compile errors
2023-01-18 13:58:01 +01:00
Max Brunsfeld
8651320c9f
Make workspace items expose their underlying models, remove file-related methods
2023-01-17 17:21:06 -08:00
Joseph T. Lyons
c3b102f5a8
Add users to mailing list when using an invite link
2023-01-17 16:46:01 -05:00
Antonio Scandurra
dc88a67f50
Fix assertions
2023-01-17 18:09:45 +01:00
Antonio Scandurra
cc788dc5f7
Verify saved_version
, saved_version_fingerprint
and saved_mtime
2023-01-17 16:46:06 +01:00
Antonio Scandurra
2cd9db1cfe
Ensure Buffer::{is_dirty,has_conflict}
converge in randomized test
2023-01-17 16:32:51 +01:00
Max Brunsfeld
2c84b74126
Avoid retaining project in randomized test while LSP request is outstanding
2023-01-16 09:48:54 -08:00
Max Brunsfeld
1a9ff2420e
Clean up how applications are marked as inapplicable
2023-01-12 22:09:36 -08:00
Max Brunsfeld
e04d0be853
Remove unneeded log messages in randomized test
2023-01-12 14:30:53 -08:00
Max Brunsfeld
00e8625037
Simplify management of entity ids for different app contexts in randomized test
2023-01-12 14:30:10 -08:00
Max Brunsfeld
a3c7416218
Don't include user ids with MutateClients ops in serialized test plans
2023-01-12 14:28:31 -08:00
Max Brunsfeld
02f6928328
collab 0.5.2
2023-01-11 14:00:44 -08:00
Max Brunsfeld
74f8b493b2
collab 0.5.1
2023-01-11 13:25:28 -08:00
Max Brunsfeld
49379924cb
Avoid dropping is_complete column for backward compatibility
...
Co-authored-by: Antonio Scandurra <antonio@zed.dev>
2023-01-11 13:25:02 -08:00
Mikayla Maki
048da9ddce
collab 0.5.0
2023-01-11 10:50:16 -08:00
Mikayla Maki
a3da41bfad
Fix test failures due to dependency on Settings global in client for telemetry
...
co-authored-by: kay <kay@zed.dev>
2023-01-10 16:39:03 -08:00
Max Brunsfeld
576a9bb92c
Drop project's buffers when closing a remote project
2023-01-09 14:49:36 -08:00
Max Brunsfeld
5a4fa4b11e
Merge branch 'main' into randomized-tests-operation-script
2023-01-09 12:26:11 -08:00
Max Brunsfeld
3e3a703b60
Skip inapplicable operations when running an edited test plan
2023-01-09 11:36:53 -08:00
Antonio Scandurra
529ccbda3a
Introduce git index mutations to randomized collaboration test
...
The test now fails at the following seed:
```bash
SEED=850 ITERATIONS=1 OPERATIONS=131 cargo test --package=collab random
```
2023-01-08 08:52:16 -07:00
Max Brunsfeld
c503ba00b6
Add env vars to store and load test plan from JSON files
2023-01-06 17:51:25 -08:00
Nathan Sobo
213658f1e9
Fix tests that failed due to defaulting the grouping interval to zero in tests
2023-01-06 17:56:21 -07:00
Max Brunsfeld
2351f2bd0c
Tolerate failure to join remote projects in randomized test
2023-01-06 15:40:42 -08:00
Max Brunsfeld
99390a7237
Represent all randomized test actions as operations
2023-01-06 15:32:11 -08:00
Max Brunsfeld
210286da48
Make operations for all buffer manipulations
2023-01-06 15:32:11 -08:00
Max Brunsfeld
f1b3692a35
Tweak operation rates
2023-01-06 15:32:11 -08:00
Max Brunsfeld
f243633f3e
Set up flow for mutating clients via explicit operation values
2023-01-06 15:32:11 -08:00
Max Brunsfeld
ce8dd5a286
wip
2023-01-06 15:32:11 -08:00
Max Brunsfeld
a74c5073a4
Start work on allowing random collab test to be minimized
...
Represent operations as an explicit enum.
2023-01-06 15:32:11 -08:00
Antonio Scandurra
8487ae77e7
Share new worktrees when resharing project
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2023-01-06 12:58:19 -07:00
Nathan Sobo
1006ada458
Update scan_id on worktree entries when there is a conflict
...
Forgetting to do this meant we were unable to sync changes with reconnecting
guests in some cases.
2023-01-04 13:59:16 -07:00
Nathan Sobo
789bbf15b7
Update buffer files when synchronizing buffers
...
It's possible that the host was disconnected when attempting to notify
guests of a file save, so we need to transmit this in order to correctly
update the file's mtime.
Next failing seed OPERATIONS=200 SEED=6894
2023-01-04 12:33:48 -07:00
Nathan Sobo
1dd085fc92
Introduce completed_scan_id to worktree
...
We need to know the most recent scan id we have actually completed. This is to
handle the case where a guest disconnects when we're in the middle of streaming
worktree entries to them. When they reconnect, they need to report a scan_id
from before we started streaming the entries, because we have no record of when
the stream was interrupted.
Next failure:
SEED=5051 ITERATIONS=1 OPERATIONS=200 cargo test --release --package=collab random -- --nocapture
2023-01-03 18:26:57 -07:00
Nathan Sobo
90fb9b53ad
WIP
2023-01-03 13:30:14 -07:00
Nathan Sobo
8d70a22fa3
Record failing seed
2023-01-02 21:12:39 -07:00
Nathan Sobo
273988b8d5
Set transaction group interval to ZERO by default in tests
...
We were seeing non-deterministic behavior in randomized tests when
generating backtraces took enough time to cause transactions to group
in some cases, but not group in others.
Tests will need to explicitly opt into grouping if they want it by
setting the interval explicitly. We have tests in the text module that
currently test the history grouping explicitly, but I'm not sure
it's needed elsewhere.
2022-12-27 16:47:28 -07:00
Max Brunsfeld
599acf0daa
WIP - Panic immediately when detecting non-determinism via a change to the execution trace
2022-12-23 17:34:13 -08:00
Max Brunsfeld
42e74e7eef
Excluded deleted entries when initially sending worktrees to guests
...
Co-authored-by: Antonio Scandurra <antonio@zed.dev>
2022-12-22 11:18:10 -08:00
Antonio Scandurra
738e161bc6
WIP: failing test
...
SEED=882 RUST_LOG=collab::tests::randomized_integration_tests=info MAX_PEERS=2 ITERATIONS=1 OPERATIONS=49 cargo test --package=collab random -- --nocapture
2022-12-22 18:32:21 +01:00
Antonio Scandurra
559e14799c
Restructure randomized test to be a bit clearer and test more stuff
2022-12-22 17:54:25 +01:00
Max Brunsfeld
c321f5d94a
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
Max Brunsfeld
89da738fae
In randomized test, open remote projects via the room
...
Co-authored-by: Nathan Sobo <nathan@zed.dev>
2022-12-21 14:13:43 -08:00
Max Brunsfeld
8cd94060bb
💄 Avoid referring to all clients as guests in random integration test
2022-12-21 11:37:18 -08:00
Max Brunsfeld
d8ccdff9fc
Move randomized integration test into its own file
2022-12-21 11:26:24 -08:00
Antonio Scandurra
47348542ef
Synchronize buffers when either the host or a guest reconnects
2022-12-21 14:20:56 +01:00
Antonio Scandurra
b0336cd27e
Add failing test for buffer synchronization after disconnecting
2022-12-21 11:56:15 +01:00
Antonio Scandurra
ecd80c553c
Verify removing worktrees while host is offline
2022-12-21 11:47:01 +01:00
Max Brunsfeld
15f666a50a
Refresh project collaborator connection id for rejoined projects
2022-12-20 18:03:33 -08:00
Max Brunsfeld
213be3d6bd
Delete stale projects after cleanup interval, via server foreign key cascade
2022-12-20 17:27:42 -08:00
Max Brunsfeld
55800fc696
💄 Avoid repeated sql condition in rejoin_room
2022-12-20 17:23:52 -08:00
Max Brunsfeld
6a2066af6c
💄 Reduce indentation in Database::rejoin_room
2022-12-20 17:16:56 -08:00
Max Brunsfeld
cb8962691a
Remove unnecessary UnshareProject message sent to clients leaving a project
2022-12-20 16:58:44 -08:00
Max Brunsfeld
bb00134f5f
Clean up projects when leaving a room
2022-12-20 16:44:57 -08:00
Max Brunsfeld
21d6665c37
Merge branch 'main' into project-reconnection
2022-12-20 15:50:09 -08:00
Max Brunsfeld
6542b30d1f
Implement rejoining projects as guest when rejoining a room
...
Co-authored-by: Julia Risley <julia@zed.dev>
2022-12-20 15:02:26 -08:00
Max Brunsfeld
55ebfe8321
Handle unshared projects when rejoining a room
...
Also, construct remote projects via the room, to guarantee
that the room can manage the projects' sharing lifecycle.
Co-authored-by: Antonio Scandurra <antonio@zed.dev>
2022-12-20 11:10:46 -08:00
Antonio Scandurra
d31fd9bbf2
Support adding worktrees to project while host is offline
2022-12-20 17:42:08 +01:00
Antonio Scandurra
52babc51a0
Make host reconnection test pass when mutating worktree while offline
2022-12-20 17:30:58 +01:00