[package] authors = ["Damir Jelić "] description = "A high level Matrix client-server library." edition = "2018" homepage = "https://github.com/matrix-org/matrix-rust-sdk" keywords = ["matrix", "chat", "messaging", "ruma", "nio"] license = "Apache-2.0" name = "matrix-sdk" readme = "README.md" repository = "https://github.com/matrix-org/matrix-rust-sdk" # This isn't yet supported by the stable cargo, we'll enable it when it is. # rust-version = "1.54" version = "0.4.1" [package.metadata.docs.rs] features = ["docs"] rustdoc-args = ["--cfg", "feature=\"docs\""] [features] default = ["encryption", "qrcode", "sled_cryptostore", "sled_state_store", "require_auth_for_profile_requests", "native-tls"] encryption = ["matrix-sdk-base/encryption"] qrcode = ["encryption", "matrix-sdk-base/qrcode"] sled_state_store = ["matrix-sdk-base/sled_state_store"] sled_cryptostore = ["matrix-sdk-base/sled_cryptostore"] markdown = ["ruma/markdown"] native-tls = ["reqwest/native-tls"] rustls-tls = ["reqwest/rustls-tls"] socks = ["reqwest/socks"] sso_login = ["warp", "rand", "tokio-stream"] require_auth_for_profile_requests = [] appservice = ["ruma/appservice-api-s", "ruma/appservice-api-helper", "ruma/rand"] docs = ["encryption", "sled_cryptostore", "sled_state_store", "sso_login"] [dependencies] anyhow = { version = "1.0.42", optional = true } bytes = "1.0.1" dashmap = "4.0.2" event-listener = "2.5.1" futures = "0.3.15" http = "0.2.4" matrix-sdk-common = { version = "0.4.0", path = "../matrix-sdk-common" } mime = "0.3.16" rand = { version = "0.8.4", optional = true } serde = "1.0.126" serde_json = "1.0.64" thiserror = "1.0.25" tracing = "0.1.26" url = "2.2.2" zeroize = "1.3.0" [dependencies.matrix-sdk-base] version = "0.4.0" path = "../matrix-sdk-base" default_features = false [dependencies.reqwest] version = "0.11.3" default_features = false [dependencies.ruma] version = "0.4.0" features = ["client-api-c", "compat", "unstable-pre-spec"] [dependencies.tokio-stream] version = "0.1.6" features = ["net"] optional = true [dependencies.tracing-futures] version = "0.2.5" default-features = false features = ["std", "std-future"] [dependencies.warp] version = "0.3.1" default-features = false optional = true [target.'cfg(not(target_arch = "wasm32"))'.dependencies.backoff] version = "0.3.0" features = ["tokio"] [target.'cfg(not(target_arch = "wasm32"))'.dependencies] futures-timer = "3.0.2" [target.'cfg(not(target_arch = "wasm32"))'.dependencies.tokio] version = "1.7.1" default-features = false features = ["fs", "rt"] [target.'cfg(target_arch = "wasm32")'.dependencies.futures-timer] version = "3.0.2" features = ["wasm-bindgen"] [dev-dependencies] anyhow = "1.0" dirs = "3.0.2" lazy_static = "1.4.0" matches = "0.1.8" matrix-sdk-test = { version = "0.4.0", path = "../matrix-sdk-test" } mockito = "0.30.0" serde_json = "1.0.64" tempfile = "3.2.0" tokio = { version = "1.7.1", default-features = false, features = ["rt-multi-thread", "macros"] } tracing-subscriber = "0.2.18" [[example]] name = "emoji_verification" required-features = ["encryption"]