fedimint-api-client 0.4.3

fedimint-api-client provides common code used by client.
Documentation
[package]
name = "fedimint-api-client"
version = {workspace = true}
authors = ["The Fedimint Developers"]
edition = "2021"
description = "fedimint-api-client provides common code used by client."
license = "MIT"
readme = "../README.md"
repository = "https://github.com/fedimint/fedimint"

# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html

[lib]
name = "fedimint_api_client"
path = "src/lib.rs"

[dependencies]
anyhow = { workspace = true }
async-trait = { workspace = true }
base64 = { workspace = true }
futures = { workspace = true }
itertools = { workspace = true }
jsonrpsee-core = { version = "0.24.0" }
lru = "0.12.3"
serde = { workspace = true }
serde_json = { workspace = true }
tokio = { version = "1.38.0", features = ["sync", "io-util"] }
thiserror = { workspace = true }
tracing = { workspace = true }
bitcoin = { workspace = true }
fedimint-core = { workspace = true }
fedimint-logging = { workspace = true }

[target.'cfg(not(target_family = "wasm"))'.dependencies]
jsonrpsee-ws-client = { version = "0.24.0", features = ["tls"], default-features = false }
tokio = { version = "1.38.0", features = ["full", "tracing"] }
tokio-rustls = { version = "0.26.0", default-features = false, features = ["logging", "tls12", "ring"] }
webpki-roots = { version = "0.26.3" }
rustls-pki-types = { version = "1.7.0" }

[target.'cfg(target_family = "wasm")'.dependencies]
jsonrpsee-wasm-client = { version = "0.24.0" }
async-lock = "3.4"
# getrandom is transitive dependency of rand
# on wasm, we need to enable the js backend
# see https://docs.rs/getrandom/latest/getrandom/#indirect-dependencies and https://docs.rs/getrandom/latest/getrandom/#webassembly-support
getrandom = { version = "0.2.15", features = ["js"] }
gloo-timers = { version = "0.3.0", features = ["futures"] }
wasm-bindgen-futures = "0.4.42"
js-sys = "0.3.69"

[dev-dependencies]
once_cell = { workspace = true }
tracing-subscriber = { version = "0.3.18", features = ["env-filter"] }
tokio-test = "0.4.4"

[package.metadata.cargo-udeps.ignore]
development = ["tokio-test"]