[dependencies.anyhow]
optional = true
version = "1.0.95"
[dependencies.anymap2]
version = "0.13.0"
[dependencies.aquamarine]
version = "0.6.0"
[dependencies.as_variant]
version = "1.3.0"
[dependencies.assert_matches2]
optional = true
version = "0.1.2"
[dependencies.async-channel]
version = "2.3.1"
[dependencies.async-stream]
version = "0.3.5"
[dependencies.async-trait]
version = "0.1.85"
[dependencies.axum]
optional = true
version = "0.8.1"
[dependencies.bytes]
version = "1.9.0"
[dependencies.bytesize]
version = "2.0.1"
[dependencies.cfg-if]
version = "1.0.0"
[dependencies.event-listener]
version = "5.4.0"
[dependencies.eyeball]
features = ["tracing"]
version = "0.8.8"
[dependencies.eyeball-im]
features = ["tracing"]
version = "0.7.0"
[dependencies.eyre]
optional = true
version = "0.6.12"
[dependencies.futures-core]
version = "0.3.31"
[dependencies.futures-util]
version = "0.3.31"
[dependencies.http]
version = "1.2.0"
[dependencies.imbl]
features = ["serde"]
version = "5.0.0"
[dependencies.indexmap]
version = "2.7.1"
[dependencies.js_int]
version = "0.2.2"
[dependencies.language-tags]
version = "0.3.2"
[dependencies.matrix-sdk-base]
version = "0.12.0"
[dependencies.matrix-sdk-common]
version = "0.12.0"
[dependencies.matrix-sdk-ffi-macros]
optional = true
version = "0.7.0"
[dependencies.matrix-sdk-indexeddb]
default-features = false
optional = true
version = "0.12.0"
[dependencies.matrix-sdk-sqlite]
default-features = false
optional = true
version = "0.12.0"
[dependencies.matrix-sdk-test]
optional = true
version = "0.12.0"
[dependencies.mime]
version = "0.3.17"
[dependencies.mime2ext]
version = "0.1.53"
[dependencies.oauth2]
default-features = false
features = ["reqwest", "timing-resistant-secret-traits"]
version = "5.0.0"
[dependencies.once_cell]
version = "1.20.2"
[dependencies.percent-encoding]
version = "2.3.1"
[dependencies.pin-project-lite]
version = "0.2.16"
[dependencies.rand]
optional = true
version = "0.8.5"
[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", "unstable-msc4278", "unstable-msc4286", "rand", "unstable-msc2448", "unstable-msc2965", "unstable-msc3930", "unstable-msc3245-v1-compat", "unstable-msc4230", "unstable-msc2967", "unstable-msc4108", "unstable-msc4278"]
version = "0.12.3"
[dependencies.serde]
features = ["rc"]
version = "1.0.217"
[dependencies.serde_html_form]
version = "0.2.7"
[dependencies.serde_json]
version = "1.0.138"
[dependencies.sha2]
version = "0.10.8"
[dependencies.tempfile]
version = "3.16.0"
[dependencies.thiserror]
version = "2.0.11"
[dependencies.tokio-stream]
features = ["sync"]
version = "0.1.17"
[dependencies.tokio-util]
version = "0.7.13"
[dependencies.tower]
features = ["util"]
optional = true
version = "0.5.2"
[dependencies.tracing]
default-features = false
features = ["std", "attributes"]
version = "0.1.40"
[dependencies.uniffi]
optional = true
version = "0.28.0"
[dependencies.url]
features = ["serde"]
version = "2.5.4"
[dependencies.urlencoding]
version = "2.1.3"
[dependencies.uuid]
features = ["serde", "v4"]
optional = true
version = "1.12.1"
[dependencies.vodozemac]
features = ["insecure-pk-encryption"]
version = "0.9.0"
[dependencies.zeroize]
version = "1.8.1"
[dev-dependencies.anyhow]
version = "1.0.95"
[dev-dependencies.assert-json-diff]
version = "2.0.2"
[dev-dependencies.assert_matches]
version = "1.5.0"
[dev-dependencies.assert_matches2]
version = "0.1.2"
[dev-dependencies.dirs]
version = "6.0.0"
[dev-dependencies.futures-executor]
version = "0.3.31"
[dev-dependencies.insta]
features = ["json", "redactions"]
version = "1.42.1"
[dev-dependencies.matrix-sdk-base]
features = ["testing"]
version = "0.12.0"
[dev-dependencies.matrix-sdk-test]
version = "0.12.0"
[dev-dependencies.serde_urlencoded]
version = "0.7.1"
[dev-dependencies.similar-asserts]
version = "1.6.1"
[dev-dependencies.stream_assert]
version = "0.1.1"
[dev-dependencies.tokio-test]
version = "0.4.4"
[dev-dependencies.tracing-subscriber]
features = ["env-filter"]
version = "0.3.18"
[features]
automatic-room-key-forwarding = ["e2e-encryption", "matrix-sdk-base/automatic-room-key-forwarding"]
bundled-sqlite = ["sqlite", "matrix-sdk-sqlite?/bundled"]
default = ["e2e-encryption", "automatic-room-key-forwarding", "sqlite", "native-tls"]
docsrs = ["e2e-encryption", "sqlite", "indexeddb", "sso-login", "qrcode"]
e2e-encryption = ["matrix-sdk-base/e2e-encryption", "matrix-sdk-sqlite?/crypto-store", "matrix-sdk-indexeddb?/e2e-encryption"]
experimental-send-custom-to-device = ["e2e-encryption", "matrix-sdk-base/experimental-send-custom-to-device"]
experimental-widgets = ["dep:uuid"]
indexeddb = ["matrix-sdk-indexeddb/state-store"]
js = ["matrix-sdk-common/js", "matrix-sdk-base/js"]
local-server = ["dep:axum", "dep:rand", "dep:tower"]
markdown = ["ruma/markdown"]
native-tls = ["reqwest/native-tls"]
qrcode = ["e2e-encryption", "matrix-sdk-base/qrcode"]
rustls-tls = ["reqwest/rustls-tls"]
socks = ["reqwest/socks"]
sqlite = ["dep:matrix-sdk-sqlite", "matrix-sdk-sqlite?/state-store", "matrix-sdk-sqlite?/event-cache"]
sso-login = ["local-server"]
testing = ["matrix-sdk-sqlite?/testing", "matrix-sdk-indexeddb?/testing", "matrix-sdk-base/testing", "wiremock", "matrix-sdk-test", "assert_matches2"]
uniffi = ["dep:uniffi", "matrix-sdk-base/uniffi", "dep:matrix-sdk-ffi-macros"]
unstable-msc4274 = ["ruma/unstable-msc4274", "matrix-sdk-base/unstable-msc4274"]
[lib]
name = "matrix_sdk"
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 = "build.rs"
description = "A high level Matrix client-server 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"
readme = "README.md"
repository = "https://github.com/matrix-org/matrix-rust-sdk"
rust-version = "1.85"
version = "0.12.0"
[package.metadata.docs.rs]
features = ["docsrs"]
rustdoc-args = ["--cfg", "docsrs", "--generate-link-to-definition"]
[target.'cfg(not(target_family = "wasm"))'.dependencies.backon]
version = "1.5.0"
[target.'cfg(not(target_family = "wasm"))'.dependencies.reqwest]
default-features = false
features = ["stream", "gzip", "http2"]
version = "0.12.12"
[target.'cfg(not(target_family = "wasm"))'.dependencies.tokio]
default-features = false
features = ["sync", "fs", "rt", "macros"]
version = "1.43.1"
[target.'cfg(not(target_family = "wasm"))'.dependencies.wiremock]
optional = true
version = "0.6.2"
[target.'cfg(not(target_family = "wasm"))'.dev-dependencies.proptest]
default-features = false
features = ["std"]
version = "1.6.0"
[target.'cfg(not(target_family = "wasm"))'.dev-dependencies.tokio]
default-features = false
features = ["sync", "rt-multi-thread", "macros"]
version = "1.43.1"
[target.'cfg(not(target_family = "wasm"))'.dev-dependencies.wiremock]
version = "0.6.2"
[target.'cfg(target_family = "wasm")'.dependencies.gloo-timers]
features = ["futures"]
version = "0.3.0"
[target.'cfg(target_family = "wasm")'.dependencies.reqwest]
default-features = false
features = ["gzip", "http2"]
version = "0.12.12"
[target.'cfg(target_family = "wasm")'.dependencies.tokio]
default-features = false
features = ["sync", "macros"]
version = "1.43.1"
[target.'cfg(target_family = "wasm")'.dev-dependencies.wasm-bindgen-test]
version = "0.3.50"
[[test]]
name = "integration"
path = "tests/integration/main.rs"
required-features = ["testing"]