generated from matrix-org/.github
-
Notifications
You must be signed in to change notification settings - Fork 7
Open
Description
It has grown organically so we could test JS/Rust SDK. It's now time to think about the API more before we open it up to everyone.
Thoughts on each part of the API:
ClientCreationOpts
: Addition of extra options in Add ClientCreationOpts.ExtraOpts and move rust specific options to it #144 keeps it extensible. We should cut down on as many fields as possible.Must...
variants: Remove them and decorate the Client API in tests withMust
variants. It's crazy that impls need to implementMustStartSyncing
ANDStartSyncing
, when the caller can just do theerr != nil
check on their end. Split the Client API in two #146Event
: re-check rust SDK and try to make it match the wire format for events as much as possible.GetNotification
: it's useful as other SDKs have push-notification-like code path, but it's very rust SDK specific currently.
RPC-wise:
RequestOwnUserVerification
andListenForVerificationRequests
: we need to implement them. Can probably poll like we do with the waiters?- Check RPC-only functions for sanity:
- Server.WaiterStart
- Server.WaiterPoll
Probably worth having a version handshake initially along with the port (e.g 56434 v1
). If we don't, we may have missing RPC functions or missing fields etc. This means we need to document the RPC API. Can we automate it?
Metadata
Metadata
Assignees
Labels
No labels