Cargo Features

ruma-client-api has no features set by default.

[dependencies]
ruma-client-api = { version = "0.20.0", features = ["client", "server", "compat-empty-string-null", "compat-unset-avatar", "compat-get-3pids", "compat-upload-signatures", "unstable-msc2666", "unstable-msc2448", "unstable-msc2654", "unstable-msc2965", "unstable-msc2967", "unstable-msc3266", "unstable-msc3488", "unstable-msc3575", "unstable-msc3814", "unstable-msc3843", "unstable-msc3983", "unstable-msc4108", "unstable-msc4121", "unstable-msc4140", "unstable-msc4151", "unstable-msc4186"] }
client

OutgoingRequest and IncomingResponse implementations

server

IncomingRequest and OutgoingResponse implementations

compat-empty-string-null

Allow some mandatory fields in requests / responses to be missing, defaulting them to an empty string in deserialization.

compat-unset-avatar

Unset avatars by sending an empty string, same as what Element Web does, c.f. https://github.com/matrix-org/matrix-spec/issues/378#issuecomment-1055831264

compat-get-3pids

Always serialize the threepids response field in get_3pids::v3::Response, even if its value is an empty list.

compat-upload-signatures

Accept message as an alias for error in upload_signatures::v3::Failure, since that's what Synapse sends.

unstable-msc2666

Affects membership::mutual_rooms

unstable-msc2448

Affects create_content::Request.generate_blurhash, create_content::Response.blurhash, get_avatar_url::Response.blurhash, get_profile::Response.blurhash, set_avatar_url::Request.blurhash

unstable-msc2654

Affects v3::JoinedRoom.unread_count

unstable-msc2965

Affects discover_homeserver::Response.authentication, discover_homeserver::AuthenticationServerInfo, discovery::get_authentication_issuer

unstable-msc2967

Affects error::AuthenticateError, error::AuthenticateAttrs

unstable-msc3266

Affects room::get_summary

unstable-msc3488

Affects discover_homeserver::Response.tile_server, discover_homeserver::TileServerInfo

unstable-msc3575

Affects discover_homeserver::Response.sliding_sync_proxy, discover_homeserver::SlidingSyncProxyInfo, sync_events::v4

unstable-msc3814

Affects ruma-client-api::dehydrated_device

unstable-msc3843
unstable-msc3983

Affects claim_keys::v4

unstable-msc4108

Affects ruma-client-api::rendezvous

unstable-msc4121
unstable-msc4140

Affects ruma-client-api::delayed_events

unstable-msc4151

Affects room::report_room

unstable-msc4186

Affects sync_events::v5