cdk 0.14.2

Core Cashu Development Kit library implementing the Cashu protocol
Documentation
[[bench]]
harness = false
name = "dhke_benchmarks"
path = "benches/dhke_benchmarks.rs"

[dependencies.anyhow]
version = "1"

[dependencies.arc-swap]
version = "1.7.1"

[dependencies.async-trait]
version = "0.1"

[dependencies.bitcoin]
features = ["base64", "serde", "rand", "rand-std"]
version = "0.32.2"

[dependencies.cbor-diag]
version = "0.1.12"

[dependencies.cdk-common]
default-features = false
version = "=0.14.2"

[dependencies.cdk-prometheus]
default-features = false
optional = true
version = "=0.14.2"

[dependencies.ciborium]
default-features = false
features = ["std"]
version = "0.2.2"

[dependencies.futures]
default-features = false
features = ["async-await", "alloc"]
optional = true
version = "0.3.28"

[dependencies.jsonwebtoken]
optional = true
version = "9.2.0"

[dependencies.lightning]
default-features = false
features = ["std"]
version = "0.1.2"

[dependencies.lightning-invoice]
features = ["serde", "std"]
version = "0.33.0"

[dependencies.nostr-sdk]
default-features = false
features = ["nip04", "nip44", "nip59"]
optional = true
version = "0.43.0"

[dependencies.regex]
version = "1"

[dependencies.reqwest]
default-features = false
features = ["json", "rustls-tls", "rustls-tls-native-roots", "socks", "zstd", "brotli", "gzip", "deflate"]
optional = true
version = "0.12"

[dependencies.serde]
features = ["derive", "rc"]
version = "1"

[dependencies.serde_json]
version = "1"

[dependencies.serde_with]
version = "3"

[dependencies.thiserror]
version = "2"

[dependencies.tokio-util]
default-features = false
version = "0.7.11"

[dependencies.tracing]
default-features = false
features = ["attributes", "log"]
version = "0.1"

[dependencies.url]
version = "2.3"

[dependencies.utoipa]
features = ["preserve_order", "preserve_path_order"]
optional = true
version = "5.3.1"

[dependencies.uuid]
features = ["v4", "serde"]
version = "1.17"

[dependencies.web-time]
version = "1.1.0"

[dependencies.zeroize]
version = "1"

[dev-dependencies.anyhow]
version = "1"

[dev-dependencies.bip39]
features = ["rand"]
version = "2.0"

[dev-dependencies.cdk-fake-wallet]
version = "=0.14.2"

[dev-dependencies.cdk-sqlite]
default-features = true
version = "=0.14.2"

[dev-dependencies.criterion]
version = "0.6.0"

[dev-dependencies.rand]
version = "0.9.1"

[dev-dependencies.reqwest]
default-features = false
features = ["json", "rustls-tls", "rustls-tls-native-roots", "socks", "zstd", "brotli", "gzip", "deflate"]
version = "0.12"

[dev-dependencies.tokio]
default-features = false
features = ["rt", "macros", "test-util", "sync", "full"]
version = "1"

[dev-dependencies.tracing-subscriber]
features = ["env-filter"]
version = "0.3.18"

[dev-dependencies.ureq]
features = ["json"]
version = "3.1.0"

[[example]]
name = "auth_wallet"
path = "examples/auth_wallet.rs"
required-features = ["wallet", "auth"]

[[example]]
name = "bip353"
path = "examples/bip353.rs"
required-features = ["wallet", "bip353"]

[[example]]
name = "human_readable_payment"
path = "examples/human_readable_payment.rs"
required-features = ["wallet", "bip353"]

[[example]]
name = "melt-token"
path = "examples/melt-token.rs"
required-features = ["wallet"]

[[example]]
name = "mint-token"
path = "examples/mint-token.rs"
required-features = ["wallet"]

[[example]]
name = "mint-token-bolt12"
path = "examples/mint-token-bolt12.rs"
required-features = ["wallet"]

[[example]]
name = "mint-token-bolt12-with-custom-http"
path = "examples/mint-token-bolt12-with-custom-http.rs"
required-features = ["wallet"]

[[example]]
name = "mint-token-bolt12-with-stream"
path = "examples/mint-token-bolt12-with-stream.rs"
required-features = ["wallet"]

[[example]]
name = "p2pk"
path = "examples/p2pk.rs"
required-features = ["wallet"]

[[example]]
name = "payment_request"
path = "examples/payment_request.rs"
required-features = ["wallet", "nostr"]

[[example]]
name = "proof-selection"
path = "examples/proof-selection.rs"
required-features = ["wallet"]

[[example]]
name = "token-proofs"
path = "examples/token-proofs.rs"
required-features = ["wallet"]

[[example]]
name = "wallet"
path = "examples/wallet.rs"
required-features = ["wallet"]

[features]
auth = ["dep:jsonwebtoken", "cdk-common/auth", "cdk-common/auth"]
bench = []
bip353 = ["dep:hickory-resolver"]
default = ["mint", "wallet", "auth", "nostr", "bip353"]
http_subscription = []
mint = ["dep:futures", "dep:reqwest", "cdk-common/mint", "cdk-signatory"]
nostr = ["wallet", "dep:nostr-sdk"]
prometheus = ["dep:cdk-prometheus"]
swagger = ["mint", "dep:utoipa", "cdk-common/swagger"]
tor = ["wallet", "dep:arti-client", "dep:arti-hyper", "dep:hyper", "dep:http", "dep:rustls", "dep:tor-rtcompat", "dep:tls-api", "dep:tls-api-native-tls"]
wallet = ["dep:futures", "dep:reqwest", "cdk-common/wallet", "dep:rustls"]

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

[package]
authors = ["CDK Developers"]
autobenches = false
autobins = false
autoexamples = false
autolib = false
autotests = false
build = false
description = "Core Cashu Development Kit library implementing the Cashu protocol"
edition = "2021"
homepage = "https://github.com/cashubtc/cdk"
license = "MIT"
name = "cdk"
readme = "README.md"
repository = "https://github.com/cashubtc/cdk.git"
rust-version = "1.85.0"
version = "0.14.2"

[target.'cfg(not(target_arch = "wasm32"))'.dependencies.arti-client]
default-features = false
features = ["tokio", "rustls"]
optional = true
version = "0.19.0"

[target.'cfg(not(target_arch = "wasm32"))'.dependencies.arti-hyper]
optional = true
version = "0.19.0"

[target.'cfg(not(target_arch = "wasm32"))'.dependencies.cdk-signatory]
default-features = false
features = ["grpc"]
optional = true
version = "=0.14.2"

[target.'cfg(not(target_arch = "wasm32"))'.dependencies.getrandom]
version = "0.2"

[target.'cfg(not(target_arch = "wasm32"))'.dependencies.hickory-resolver]
features = ["dnssec-ring"]
optional = true
version = "0.25.2"

[target.'cfg(not(target_arch = "wasm32"))'.dependencies.http]
optional = true
version = "0.2"

[target.'cfg(not(target_arch = "wasm32"))'.dependencies.hyper]
features = ["client", "http1", "http2"]
optional = true
version = "0.14"

[target.'cfg(not(target_arch = "wasm32"))'.dependencies.rustls]
default-features = false
features = ["ring"]
optional = true
version = "0.23.27"

[target.'cfg(not(target_arch = "wasm32"))'.dependencies.tls-api]
optional = true
version = "0.9"

[target.'cfg(not(target_arch = "wasm32"))'.dependencies.tls-api-native-tls]
optional = true
version = "0.9"

[target.'cfg(not(target_arch = "wasm32"))'.dependencies.tokio]
default-features = false
features = ["rt", "macros", "test-util", "sync", "rt-multi-thread", "time", "macros", "sync"]
version = "1"

[target.'cfg(not(target_arch = "wasm32"))'.dependencies.tokio-tungstenite]
default-features = false
features = ["rustls", "rustls-tls-native-roots", "connect"]
version = "0.26.0"

[target.'cfg(not(target_arch = "wasm32"))'.dependencies.tor-rtcompat]
features = ["tokio", "rustls"]
optional = true
version = "0.19.0"

[target.'cfg(target_arch = "wasm32")'.dependencies.cdk-signatory]
default-features = false
version = "=0.14.2"

[target.'cfg(target_arch = "wasm32")'.dependencies.getrandom]
features = ["js"]
version = "0.2"

[target.'cfg(target_arch = "wasm32")'.dependencies.gloo-timers]
features = ["futures"]
version = "0.3"

[target.'cfg(target_arch = "wasm32")'.dependencies.ring]
features = ["wasm32_unknown_unknown_js"]
version = "0.17.14"

[target.'cfg(target_arch = "wasm32")'.dependencies.rustls]
default-features = false
features = ["ring"]
optional = true
version = "0.23.27"

[target.'cfg(target_arch = "wasm32")'.dependencies.tokio]
default-features = false
features = ["rt", "macros", "test-util", "sync", "rt", "macros", "sync", "time"]
version = "1"

[target.'cfg(target_arch = "wasm32")'.dependencies.uuid]
features = ["v4", "serde", "js"]
version = "1.17"