mutiny-core 0.4.21

The core SDK for the mutiny node
cargo-features = ["per-package-target"]

[package]
name = "mutiny-core"
version = "0.4.21"
edition = "2021"
authors = ["Tony Giorgio <tony@mutinywallet.com>", "benthecarman <ben@mutinywallet.com>"]
description = "The core SDK for the mutiny node"
license = "MIT"
documentation = "https://docs.rs/mutiny-core"
homepage = "https://mutinywallet.com"
repository = "https://github.com/mutinywallet/mutiny-node"

[dependencies]
lnurl-rs = { version = "0.2.7", default-features = false, features = ["async", "async-https"] }

cfg-if = "1.0.0"
bip39 = { version = "2.0.0" }
bitcoin = { version = "0.29.2", default-features = false, features = ["serde", "secp-recovery", "rand"] }
bdk = { version = "1.0.0-alpha.1", default-features = false }
bdk_esplora = { version = "0.3.0", default-features = false, features = ["async-https"] }
bdk_chain = { version = "0.5.0", default-features = false, features = ["hashbrown"] }
bdk-macros = "0.6.0"
getrandom = { version = "0.2" }
serde = { version = "^1.0", features = ["derive"] }
serde_json = { version = "^1.0" }
uuid = { version = "1.1.2", features = ["v4"] }
esplora-client = { version = "0.5", default-features = false }
lightning = { version = "0.0.116", default-features = false, features = ["max_level_trace", "grind_signatures", "no-std"] }
lightning-invoice = { version = "0.24.0", default-features = false, features = ["no-std", "serde"] }
lightning-rapid-gossip-sync = { version = "0.0.116", default-features = false, features = ["no-std"] }
chrono = "0.4.22"
futures-util = { version = "0.3", default-features = false }
reqwest = { version = "0.11", default-features = false, features = ["json"] }
async-trait = "0.1.68"
url = { version = "2.3.1", features = ["serde"] }
nostr = { version = "0.23.0", default-features = false, features = ["nip47"] }
nostr-sdk = { version = "0.23.0", default-features = false }
cbc = { version = "0.1", features = ["alloc"] }
aes = { version = "0.8" }
jwt-compact = { version = "0.8.0-beta.1", features = ["es256k"] }
argon2 = { version = "0.5.0", features = ["password-hash", "alloc"] }
hashbrown = { version = "0.8" }

base64 = "0.13.0"
pbkdf2 = "0.11"
aes-gcm = "0.10.1"

log = "=0.4.18"
futures = "0.3.25"
thiserror = "1.0"
anyhow = "1.0"
miniscript = { version = "9.0.2", default-features = false, features = ["no-std"] }

# explict dep due to nightly - https://github.com/rust-lang/rust/issues/113152
proc-macro2 = "1.0.64"

[dev-dependencies]
wasm-bindgen-test = "0.3.33"
mockall = "0.11.2"

[features]
default = ["async-interface"]
# needed to make async ldk esplora work
async-interface = []
ignored_tests = ["test-utils"]
test-utils = []

[target.'cfg(target_arch = "wasm32")'.dependencies]
wasm-bindgen = "0.2.84"
wasm-bindgen-futures = { version = "0.4.33" }
web-sys = { version = "0.3.60", features = ["console"] }
js-sys = { version = "0.3.60" }
gloo-net = { version = "0.2.4" }
instant = { version = "0.1", features = ["wasm-bindgen"] }
getrandom = { version = "0.2", features = ["js"] }

[target.'cfg(not(target_arch = "wasm32"))'.dependencies]
tokio = { version = "1", features = ["rt"] }
tokio-tungstenite = { version = "0.19.0", features = ["native-tls"] }

[package.metadata.wasm-pack.profile.release]
wasm-opt = true