fedimint-api-client 0.5.0

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"

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

[features]
default = ["tor"]
tor = [
    "dep:strum",
    "dep:curve25519-dalek",
    "arti-client/tokio",
    "arti-client/rustls",
    "arti-client/onion-service-client",
]

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

[dependencies]
anyhow = { workspace = true }
async-trait = { workspace = true }
base64 = { workspace = true }
bitcoin = { workspace = true }
fedimint-core = { workspace = true }
fedimint-logging = { workspace = true }
futures = { workspace = true }
itertools = { workspace = true }
jsonrpsee-core = { version = "0.24.7" }
lru = "0.12.5"
serde = { workspace = true }
serde_json = { workspace = true }
thiserror = { workspace = true }
tokio = { workspace = true }
tracing = { workspace = true }

[target.'cfg(not(target_family = "wasm"))'.dependencies]
jsonrpsee-ws-client = { version = "0.24.7", features = [
    "tls",
], default-features = false }
tokio-rustls = { version = "0.26.0", default-features = false, features = [
    "logging",
    "tls12",
    "ring",
] }
webpki-roots = { version = "0.26.6" }
rustls-pki-types = { version = "1.10.0" }
arti-client = { version = "0.20.0", default-features = false, package = "fedimint-arti-client", optional = true }
strum = { workspace = true, optional = true }
# We need to pin this arti's `curve25519-dalek` dependency, due to `https://rustsec.org/advisories/RUSTSEC-2024-0344` vulnerability
# It's been updated by https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/2211, should be removed in next release.
curve25519-dalek = { version = ">=4.1.3", optional = true }

[target.'cfg(target_family = "wasm")'.dependencies]
jsonrpsee-wasm-client = "0.24.7"