Conrad Irwin
6734472b64
Add a role column to the database and start using it
...
We cannot yet stop using `admin` because stable will continue writing
it.
2023-10-11 20:05:57 -06:00
Mikayla
66fad069b4
Rename release channel to enviroment
2023-10-10 13:23:03 -07:00
6912545774
Update channel rooms to be ephemeral
...
Remove redundant live kit initialization code
Fix bug in recent channel links changes where channel rooms would have the incorrect release set
co-authored-by: Conrad Irwin <conrad.irwin@gmail.com >
co-authored-by: Max <max@zed.dev >
2023-10-10 12:39:16 -07:00
Conrad Irwin
928230ecb2
Only allow one release channel in a call
2023-10-09 12:59:18 -06:00
Max Brunsfeld and Mikayla
2e8040aeda
Avoid N+1 query for channels with notes changes
...
Also, start work on new timing for recording observed notes edits.
Co-authored-by: Mikayla <mikayla@zed.dev >
2023-10-02 15:58:34 -07:00
Mikayla
ec0d8fe1ba
Add database implementation of channel message change tracking
2023-10-01 22:32:11 -07:00
Mikayla
2a02ec0b87
Channel notifications from the server works
2023-10-01 22:30:21 -07:00
Mikayla
09289bb995
Add observed_channel_notes table and implement note diffing
2023-10-01 22:26:27 -07:00
Max Brunsfeld
26b0382f31
Undo making project optional on stored follower states
...
Following works without a project, but following in unshared projects does
not need to be replicated to other participants.
2023-09-28 14:21:44 -07:00
Max Brunsfeld and Conrad
13f4957210
Rename color_index to participant_index
...
Co-authored-by: Conrad <conrad@zed.dev >
2023-09-28 11:37:22 -07:00
0976bdc78d
Assign unique color indices to room participants, use those instead of replica_ids
...
Co-authored-by: Conrad <conrad@zed.dev >
Co-authored-by: Antonio <antonio@zed.dev >
2023-09-28 11:06:09 -07:00
Max Brunsfeld
c8fee1d696
Make project id optional when following - server only
2023-09-21 13:14:15 -07:00
Max Brunsfeld
699e14abaf
Start work on restoring server-side code for chat messages
2023-09-07 16:32:49 -07:00
Mikayla
60ecd0b28d
Update database and RPC to provide configured feature flags
2023-08-25 14:34:32 -07:00
Max Brunsfeld and Mikayla
006d2204b6
Simplify buffer_operations schema
...
Co-authored-by: Mikayla <mikayla@zed.dev >
2023-08-23 18:37:01 -07:00
Max Brunsfeld and Mikayla
992eddbff0
Snapshot channel notes buffers when everyone leaves
...
Co-authored-by: Mikayla <mikayla@zed.dev >
2023-08-23 18:37:01 -07:00
Max Brunsfeld
e3d0d2f3b0
WIP
2023-08-23 18:34:43 -07:00
Mikayla
88351a58a1
WIP: pass synchronize channel buffers integration test
2023-08-23 18:34:43 -07:00
Max Brunsfeld
a47eaf190e
Start work on storing channel buffers
2023-08-23 18:34:43 -07:00
Max Brunsfeld and Mikayla
b66ac35330
Represent channel relationships using paths table
...
Co-authored-by: Mikayla <mikayla@zed.dev >
2023-08-09 10:36:27 -07:00
Mikayla Maki and max
f63051148b
Add ability to join a room from a channel ID
...
co-authored-by: max <max@zed.dev >
2023-07-31 16:53:57 -07:00
Max Brunsfeld and Mikayla
0886ea1dcb
Set up basic RPC for managing channels
...
Co-authored-by: Mikayla <mikayla@zed.dev >
2023-07-28 17:05:56 -07:00
Mikayla Maki
dade666d51
implement recursive channel query
2023-07-28 13:24:43 -07:00
Mikayla Maki
e7a7350529
WIP: Channel CRUD
2023-07-28 13:24:43 -07:00
Max Brunsfeld
3881f754ce
WIP
2023-07-28 13:24:43 -07:00
Max Brunsfeld
e7aacf59c8
Add a bit to each entry indicating if it's outside of the worktree root
2023-06-22 10:34:28 -07:00
Mikayla Maki
35ef109e8d
Merge branch 'main' into stream-git-statuses
2023-06-07 14:12:58 -07:00
Mikayla Maki
d478937043
Add statuses to test integration
2023-06-05 12:06:23 -07:00
Max Brunsfeld
a2a96774fc
Replicate project-specific settings when collaborating
2023-05-30 18:08:03 -07:00
Mikayla Maki
d0c4ee38de
Add integration test for git status
2023-05-10 17:37:36 -07:00
Mikayla Maki and Max
1d5c06465c
Finished RepositoryEntry refactoring, smoke tests passing
...
co-authored-by: Max <max@zed.dev >
2023-05-08 14:33:59 -07:00
Mikayla Maki and Max
46db4cbb79
WIP: Add repository entries to collab and synchronize when rejoining the room
...
co-authored-by: Max <max@zed.dev >
2023-05-08 14:33:59 -07:00
Julia and Antonio Scandurra
84e1237d45
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
Max Brunsfeld and Antonio Scandurra
2f31103b22
Avoid dropping is_complete column for backward compatibility
...
Co-authored-by: Antonio Scandurra <antonio@zed.dev >
2023-01-11 13:25:02 -08:00
Nathan Sobo
01d051d43d
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
Max Brunsfeld and Julia Risley
2dd709e002
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
Antonio Scandurra
7ad68a05d7
Allow nulls in projects.host_connection_{id,server_id}
...
The server version on stable won't be able to fill values for those
columns when we deploy the migration to preview.
With this commit we're also dropping the unused `worktree_extensions`
and `project_activity_periods` tables. The last version of the server
on stable (0.2.6) doesn't contain any code that accesses those tables.
2022-12-15 11:30:51 +01:00
Antonio Scandurra
21a1f1881d
Re-add server_id indices for room_participants/project_collaborators
2022-12-15 09:58:25 +01:00
Max Brunsfeld
c50083fff9
Fix stale server queries, use foreign keys from connectionsn to servers
2022-12-14 17:34:24 -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
929faa1772
Move creation of room_id index into its own migration
2022-12-13 13:57:41 +01:00
Antonio Scandurra
ed8737d08d
Always cast connection ids to i32
...
Postgres doesn't support unsigned types. This also adds indices to
support querying `project_collaborators` and `room_participants`
by connection id.
2022-12-12 11:43:08 +01:00
Antonio Scandurra
8071e4abab
Rename connection_lost to answering_connection_lost
2022-12-12 11:43:08 +01:00
Antonio Scandurra
bfec91b3ba
Introduce random reconnections in the randomized test
2022-12-12 11:43:08 +01:00
Antonio Scandurra
7b91966883
Re-join room when client temporarily loses connection
2022-12-12 11:43:08 +01:00
Antonio Scandurra
1dde768596
Don't drop unregistered column in reconnection support migration
...
We don't use this column anymore because, when a project is unshared, we
simply remove it from the `projects` table. However, this column is expected
in the stable version of the server and the database is shared between stable
and preview. If we dropped it, stable would start throwing errors.
2022-12-09 08:11:18 +01:00
Antonio Scandurra
b2ce835207
Remove project_id foreign key from room_participants
2022-12-05 15:16:06 +01:00
Antonio Scandurra
21f5e6d8a6
Clear stale data on startup
...
This is a stopgap measure until we introduce reconnection support.
2022-12-02 16:30:00 +01:00
Antonio Scandurra
0ddca2b768
Finish porting remaining db methods to sea-orm
2022-12-02 13:58:23 +01:00