charms 0.3.0-dev

Enchant Bitcoin with your own spells ✨
Documentation
[package]
name = "charms"
description = "Enchant Bitcoin with your own spells ✨"
repository = "https://github.com/sigma0-dev/charms"

version.workspace = true
authors.workspace = true
edition.workspace = true
license.workspace = true

[workspace.package]
version = "0.3.0-dev"
edition = "2021"
authors = ["Ivan Mikushin <ivan@sigmazero.dev>"]
license = "MIT"

[dependencies]
anyhow = { workspace = true }
axum = { version = "0.8.1" }
bitcoin = { workspace = true, features = ["rand", "rand-std"] }
bitcoincore-rpc = { version = "0.19.0" }
charms-data = { path = "./charms-data", version = "0.3.0-dev" }
charms-spell-checker = { path = "charms-spell-checker", version = "0.3.0-dev" }
ciborium = { workspace = true }
clap = { version = "4.5.26", features = ["derive"] }
hex = { workspace = true }
rand = { workspace = true }
serde = { workspace = true, features = ["derive"] }
serde_json = { workspace = true }
serde_yaml = { workspace = true }
sp1-prover = { workspace = true }
sp1-sdk = { workspace = true }
tokio = { version = "1.43", features = ["full"] }
tracing = { version = "0.1" }
tracing-forest = { version = "0.1.6" }
tracing-subscriber = { version = "0.3", features = ["env-filter"] }

[dev-dependencies]
proptest = { workspace = true }
proptest-derive = { workspace = true }

[workspace]
members = [
    ".",
    "charms-data",
    "charms-sdk",
    "charms-spell-checker",
]

resolver = "2"

[workspace.dependencies]
anyhow = { version = "1.0.95" }
bitcoin = { version = "0.32.5" }
ciborium = { version = "0.2.2" }
ciborium-io = { version = "0.2.2" }
hex = { version = "0.4.3" }
proptest = { version = "1.6.0" }
proptest-derive = { version = "0.5.1" }
rand = { version = "0.8.5" }
serde = { version = "1.0" }
serde_json = { version = "1.0.135" }
serde_yaml = { version = "0.9.34" }
sp1-primitives = { version = "4.0.1" }
sp1-prover = { version = "4.0.1" }
sp1-sdk = { version = "4.0.1" }
sp1-verifier = { version = "4.0.1" }
sp1-zkvm = { version = "4.0.1" }
test-strategy = { version = "0.4.0" }

[profile.test]
lto = "off"
opt-level = 3

[profile.release]
lto = "fat"
opt-level = 3
strip = "symbols"

[patch.crates-io]
secp256k1 = { git = "https://github.com/sp1-patches/rust-secp256k1", tag = "patch-0.29.1-sp1-4.0.0" }
ecdsa-core = { git = "https://github.com/sp1-patches/signatures", package = "ecdsa", tag = "patch-0.16.9-sp1-4.0.0" }