Cargo Features

[dependencies]
matrix-sdk = { version = "0.7.1", default-features = false, features = ["e2e-encryption", "js", "sqlite", "bundled-sqlite", "indexeddb", "qrcode", "automatic-room-key-forwarding", "markdown", "native-tls", "rustls-tls", "socks", "sso-login", "image-proc", "image-rayon", "experimental-oidc", "experimental-sliding-sync", "experimental-widgets", "docsrs", "testing", "anyhow", "eyre"] }
default = automatic-room-key-forwarding, e2e-encryption, native-tls, sqlite

These default features are set whenever matrix-sdk is added without default-features = false somewhere in the dependency tree.

e2e-encryption default automatic-room-key-forwarding docsrs? qrcode?

Enables e2e-encryption and message-ids of matrix-sdk-base, e2e-encryption of optional matrix-sdk-indexeddb, crypto-store of optional matrix-sdk-sqlite

Affects error::RoomKeyImportError, matrix-sdk::encryption

js

Enables js of matrix-sdk-base and matrix-sdk-common

sqlite default bundled-sqlite? docsrs?

Enables state-store of matrix-sdk-sqlite

bundled-sqlite = sqlite

Enables bundled of optional matrix-sdk-sqlite

indexeddb docsrs?

Enables matrix-sdk-indexeddb

qrcode docsrs? = e2e-encryption

Enables qrcode of matrix-sdk-base

automatic-room-key-forwarding default = e2e-encryption

Enables automatic-room-key-forwarding of matrix-sdk-base

markdown

Enables markdown of ruma ^0.9.3

native-tls default

Enables native-tls of reqwest ^0.11.10

reqwest:

Enables native-tls specific functionality not available by default.

rustls-tls

Enables rustls-tls of reqwest ^0.11.10

socks

Enables socks of reqwest ^0.11.10

sso-login docsrs?

Enables hyper ^0.14.20, rand, and tower ^0.4.13

Affects login_builder::SsoLoginBuilder

image-proc docsrs? image-rayon?

Enables image ^0.24.2

Affects attachment::generate_image_thumbnail, error::ImageError

image-rayon = image-proc

Enables jpeg_rayon of optional image ^0.24.2

experimental-oidc

Enables sha2 and tower ^0.4.13, chrono, language-tags, mas-oidc-client ^0.7.0, and rand, unstable-msc2967 of ruma ^0.9.3

Affects matrix-sdk::oidc

experimental-sliding-sync

Enables eyeball-im-util ^0.5.1, experimental-sliding-sync of matrix-sdk-base, gzip of reqwest ^0.11.10

Affects matrix-sdk::sliding_sync

experimental-widgets

Enables language-tags and uuid

Affects matrix-sdk::widget

docsrs = e2e-encryption, image-proc, indexeddb, qrcode, sqlite, sso-login
testing

Enables testing of matrix-sdk-base, optional matrix-sdk-indexeddb, and optional matrix-sdk-sqlite

matrix-sdk-base:

helpers for testing features build upon this

Features from optional dependencies

anyhow implicit feature

Enables anyhow

anyhow:

Flexible concrete Error type built on std::error::Error

eyre implicit feature

Enables eyre

eyre:

Flexible concrete Error Reporting type built on std::error::Error with customizable Reports