-
Notifications
You must be signed in to change notification settings - Fork 34
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
feat: collab entities in protobuf format #226
Conversation
4f84865
to
d32697c
Compare
de835d7
to
4df4072
Compare
The test failure is likely due to the regex_automata downgrade:
Going to find out how to resolve this. This is due to introduction of the |
464274d
to
6b16b39
Compare
Updated tracing-subscriber version due to: tokio-rs/tracing#2573 |
Added protobuf definition for CreateCollabParams and BatchCreateCollabParams. |
Just realized that we could potentially simplified this via: https://github.com/tokio-rs/prost?tab=readme-ov-file#tag-inference-for-existing-types . Exploring this now. |
CollabSnapshot is being called in get_last_snapshot etc, but those methods are not currently in use anywhere in AppFlowy. In other word, although we are serializing this struct, it is never deserialized back again. Is this intended? @appflowy |
c317305
to
7e88387
Compare
Had a discussion on this and confirmed that CollabSnapshot will be deprecated. |
@Horusiath @appflowy Any suggestion as to whether the generated code should be checked in? Right now we have both cases in different libraries and repositories across the org. |
@khorshuheng personally I'm not a fan of checking in the auto-generated code - it obscures the PR review - but it should be part of the build step. |
It needs to test it can be integrate with frontend application. Since it involves build.rs |
c2fbcf5
to
eeaf8e6
Compare
I will test this via AppFlowy-IO/AppFlowy#5745 |
…rialization method is not used
…flict with appflowy cloud
8ce39d4
to
aa6be8b
Compare
aa6be8b
to
d40b450
Compare
Currently, we are using bincode to serialize and deserialize Rust struct that needs to be transferred over the network. In order to achieve better backward compatibility and manage schema changes, we will be migrating to protobuf for serialization.
We will start with this PR, that creates the protobuf requires for the serialization/deserialization of these Rust struct:
Comments have been added to the protobuf based on my current understanding, which might not be accurate. Hence, review is needed to make sure that the comments are not misleading.
We will follow up with subsequent PRs that update the serialization and deserialization of the above structs.