[package] categories = ["api-bindings", "web-programming"] description = "A Matrix client library." homepage = "https://ruma.io/" keywords = ["matrix", "chat", "messaging", "ruma"] license = "MIT" name = "ruma-client" readme = "README.md" repository = "https://github.com/ruma/ruma" version = "0.12.0" edition = "2021" rust-version = { workspace = true } [package.metadata.docs.rs] all-features = true rustdoc-args = ["--cfg", "docsrs"] [features] client-api = ["dep:ruma-client-api"] # HTTP clients hyper = ["dep:hyper"] hyper-native-tls = ["hyper", "dep:hyper-tls"] hyper-rustls = ["hyper", "dep:hyper-rustls"] isahc = ["dep:isahc", "futures-lite"] reqwest = ["dep:reqwest"] reqwest-native-tls = ["reqwest", "reqwest?/native-tls"] reqwest-native-tls-alpn = ["reqwest", "reqwest?/native-tls-alpn"] reqwest-native-tls-vendored = ["reqwest", "reqwest?/native-tls-vendored"] reqwest-rustls-manual-roots = ["reqwest", "reqwest?/rustls-tls-manual-roots"] reqwest-rustls-webpki-roots = ["reqwest", "reqwest?/rustls-tls-webpki-roots"] reqwest-rustls-native-roots = ["reqwest", "reqwest?/rustls-tls-native-roots"] [dependencies] assign = { workspace = true } async-stream = "0.3.0" async-trait = "0.1.50" bytes = "1.0.1" futures-core = "0.3.8" futures-lite = { version = "1.11.3", optional = true } http = { workspace = true } hyper = { version = "0.14.2", optional = true, features = ["client", "http1", "http2", "tcp"] } hyper-rustls = { version = "0.24.0", optional = true, default-features = false } hyper-tls = { version = "0.5.0", optional = true } isahc = { version = "1.3.1", optional = true } reqwest = { version = "0.11.4", optional = true, default-features = false } ruma-client-api = { workspace = true, optional = true, features = ["client"] } ruma-common = { workspace = true, features = ["api"] } serde = { workspace = true } serde_html_form = { workspace = true } serde_json = { workspace = true } tracing = { version = "0.1.30", default-features = false, features = ["std"] } [dev-dependencies] ruma-client-api = { workspace = true, features = ["client"] } tokio-stream = "0.1.8"