[package] authors = ["Damir Jelić "] description = "The base component to build a Matrix client library." edition = "2021" homepage = "https://github.com/matrix-org/matrix-rust-sdk" keywords = ["matrix", "chat", "messaging", "ruma", "nio"] license = "Apache-2.0" name = "matrix-sdk-base" readme = "README.md" repository = "https://github.com/matrix-org/matrix-rust-sdk" rust-version = { workspace = true } version = "0.6.1" [package.metadata.docs.rs] all-features = true rustdoc-args = ["--cfg", "docsrs"] [features] default = [] e2e-encryption = ["dep:matrix-sdk-crypto"] js = ["matrix-sdk-common/js", "matrix-sdk-crypto?/js", "ruma/js", "matrix-sdk-store-encryption/js"] qrcode = ["matrix-sdk-crypto?/qrcode"] experimental-sliding-sync = ["ruma/unstable-msc3575"] # helpers for testing features build upon this testing = ["dep:http"] [dependencies] async-stream = { workspace = true } async-trait = { workspace = true } dashmap = { workspace = true } futures-channel = "0.3.21" futures-core = "0.3.21" futures-signals = { version = "0.3.30", default-features = false } futures-util = { version = "0.3.21", default-features = false } http = { workspace = true, optional = true } matrix-sdk-common = { version = "0.6.0", path = "../matrix-sdk-common" } matrix-sdk-crypto = { version = "0.6.0", path = "../matrix-sdk-crypto", optional = true } matrix-sdk-store-encryption = { version = "0.2.0", path = "../matrix-sdk-store-encryption" } once_cell = { workspace = true } ruma = { workspace = true, features = ["canonical-json"] } serde = { workspace = true, features = ["rc"] } serde_json = { workspace = true } thiserror = { workspace = true } tracing = { workspace = true } zeroize = { workspace = true, features = ["zeroize_derive"] } [dev-dependencies] assign = "1.1.1" ctor = { workspace = true } futures = { version = "0.3.21", default-features = false, features = ["executor"] } http = { workspace = true } matrix-sdk-test = { version = "0.6.0", path = "../../testing/matrix-sdk-test" } tracing-subscriber = { version = "0.3.11", features = ["env-filter"] } [target.'cfg(not(target_arch = "wasm32"))'.dev-dependencies] tokio = { version = "1.24.2", default-features = false, features = ["rt-multi-thread", "macros"] } [target.'cfg(target_arch = "wasm32")'.dev-dependencies] wasm-bindgen-test = "0.3.33"