[package] name = "jsonrpsee-client-transport" description = "JSON-RPC client transports" version.workspace = true authors.workspace = true edition.workspace = true rust-version.workspace = true license.workspace = true repository.workspace = true documentation.workspace = true homepage.workspace = true keywords.workspace = true readme.workspace = true publish = true [dependencies] jsonrpsee-core = { workspace = true, features = ["client"] } tracing = "0.1.34" # optional thiserror = { version = "1", optional = true } futures-util = { version = "0.3.14", default-features = false, features = ["alloc"], optional = true } http = { version = "1", optional = true } tokio-util = { version = "0.7", features = ["compat"], optional = true } tokio = { version = "1.23.1", features = ["net", "time", "macros"], optional = true } pin-project = { version = "1", optional = true } url = { version = "2.4.0", optional = true } base64 = { version = "0.22", default-features = false, features = ["alloc"], optional = true } # tls tokio-rustls = { version = "0.26", default-features = false, optional = true, features = ["logging", "tls12", "ring"] } rustls-pki-types = { version = "1", optional = true } rustls-platform-verifier = { version = "0.3.1", optional = true } rustls = { version = "0.23", default-features = false, optional = true } # ws soketto = { version = "0.8", optional = true } # web-sys [target.'cfg(target_arch = "wasm32")'.dependencies] gloo-net = { version = "0.6.0", default-features = false, features = ["json", "websocket"], optional = true } futures-channel = { version = "0.3.14", default-features = false, optional = true } [features] tls = ["rustls", "tokio-rustls", "rustls-pki-types"] tls-rustls-platform-verifier = ["tls", "rustls-platform-verifier"] ws = [ "base64", "futures-util", "http", "tokio", "tokio-util", "soketto", "pin-project", "thiserror", "url", ] web = [ "gloo-net", "futures-channel", "futures-util", "thiserror", ] [package.metadata.docs.rs] all-features = true rustdoc-args = ["--cfg", "docsrs"] [package.metadata.playground] all-features = true