[dependencies.as_variant]
version = "1.2.0"
[dependencies.assert_matches]
optional = true
version = "1.5.0"
[dependencies.assert_matches2]
optional = true
version = "0.1.2"
[dependencies.async-trait]
version = "0.1.83"
[dependencies.bitflags]
features = ["serde"]
version = "2.6.0"
[dependencies.decancer]
version = "3.2.8"
[dependencies.eyeball]
features = ["tracing", "async-lock"]
version = "0.8.8"
[dependencies.eyeball-im]
features = ["tracing"]
version = "0.5.1"
[dependencies.futures-util]
version = "0.3.31"
[dependencies.growable-bloom-filter]
version = "2.1.1"
[dependencies.http]
optional = true
version = "1.1.0"
[dependencies.matrix-sdk-common]
version = "0.9.0"
[dependencies.matrix-sdk-crypto]
optional = true
version = "0.9.0"
[dependencies.matrix-sdk-store-encryption]
version = "0.9.0"
[dependencies.matrix-sdk-test]
optional = true
version = "0.7.0"
[dependencies.once_cell]
version = "1.20.2"
[dependencies.regex]
version = "1.11.1"
[dependencies.ruma]
features = ["client-api-c", "compat-upload-signatures", "compat-user-id", "compat-arbitrary-length-ids", "compat-tag-info", "compat-encrypted-stickers", "unstable-msc3401", "unstable-msc3266", "unstable-msc3488", "unstable-msc3489", "unstable-msc4075", "unstable-msc4140", "unstable-msc4171", "canonical-json", "unstable-msc3381", "unstable-msc2867", "rand"]
version = "0.12.0"
[dependencies.serde]
features = ["rc"]
version = "1.0.151"
[dependencies.serde_json]
version = "1.0.91"
[dependencies.thiserror]
version = "2.0.3"
[dependencies.tokio]
default-features = false
features = ["sync"]
version = "1.41.1"
[dependencies.tracing]
default-features = false
features = ["std"]
version = "0.1.40"
[dependencies.unicode-normalization]
version = "0.1.24"
[dependencies.uniffi]
optional = true
version = "0.28.0"
[dev-dependencies.assert_matches]
version = "1.5.0"
[dev-dependencies.assert_matches2]
version = "0.1.2"
[dev-dependencies.assign]
version = "1.1.1"
[dev-dependencies.futures-executor]
version = "0.3.21"
[dev-dependencies.http]
version = "1.1.0"
[dev-dependencies.matrix-sdk-test]
version = "0.7.0"
[dev-dependencies.similar-asserts]
version = "1.6.0"
[dev-dependencies.stream_assert]
version = "0.1.1"
[features]
automatic-room-key-forwarding = ["matrix-sdk-crypto?/automatic-room-key-forwarding"]
default = []
e2e-encryption = ["dep:matrix-sdk-crypto"]
experimental-sliding-sync = ["ruma/unstable-msc3575", "ruma/unstable-msc4186"]
js = ["matrix-sdk-common/js", "matrix-sdk-crypto?/js", "ruma/js", "matrix-sdk-store-encryption/js"]
message-ids = []
qrcode = ["matrix-sdk-crypto?/qrcode"]
test-send-sync = ["matrix-sdk-crypto?/test-send-sync"]
testing = ["dep:assert_matches", "dep:assert_matches2", "dep:http", "dep:matrix-sdk-test", "matrix-sdk-crypto?/testing"]
uniffi = ["dep:uniffi", "matrix-sdk-crypto?/uniffi", "matrix-sdk-common/uniffi"]
[lib]
name = "matrix_sdk_base"
path = "src/lib.rs"
[lints.clippy]
assigning_clones = "allow"
box_default = "allow"
cloned_instead_of_copied = "warn"
dbg_macro = "warn"
inefficient_to_string = "warn"
macro_use_imports = "warn"
mut_mut = "warn"
needless_borrow = "warn"
nonstandard_macro_braces = "warn"
redundant_clone = "warn"
str_to_string = "warn"
todo = "warn"
unused_async = "warn"
[lints.rust]
rust_2018_idioms = "warn"
semicolon_in_expressions_from_macros = "warn"
trivial_casts = "warn"
trivial_numeric_casts = "warn"
unused_extern_crates = "warn"
unused_import_braces = "warn"
unused_qualifications = "warn"
[lints.rust.unexpected_cfgs]
check-cfg = ["cfg(tarpaulin_include)", "cfg(ruma_unstable_exhaustive_types)"]
level = "warn"
priority = 0
[package]
authors = ["Damir Jelić <poljar@termina.org.uk>"]
autobenches = false
autobins = false
autoexamples = false
autolib = false
autotests = false
build = false
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 = "1.82"
version = "0.9.0"
[package.metadata.docs.rs]
all-features = true
rustdoc-args = ["--cfg", "docsrs"]
[target.'cfg(not(target_arch = "wasm32"))'.dev-dependencies.tokio]
default-features = false
features = ["sync", "rt-multi-thread", "macros"]
version = "1.41.1"
[target.'cfg(target_arch = "wasm32")'.dev-dependencies.wasm-bindgen-test]
version = "0.3.33"