bp-core 0.12.0-beta.4

Bitcoin protocol core library (BP Core Lib)
Documentation
[workspace]
members = [
    "consensus",
    "dbc",
    "seals",
    "."
]
default-members = [
    "consensus",
    "dbc",
    "seals",
    "."
]

[workspace.package]
version = "0.12.0-beta.4"
authors = ["Dr Maxim Orlovsky <orlovsky@lnp-bp.org>"]
homepage = "https://github.com/BP-WG"
repository = "https://github.com/BP-WG/bp-core"
rust-version = "1.81.0" # Due to the need of `Error` trait in `core`
edition = "2021"
license = "Apache-2.0"

[workspace.dependencies]
amplify = "4.8.0"
strict_encoding = "2.8.1"
strict_types = "2.8.1"
commit_verify = "0.12.0-beta.4"
single_use_seals = "0.12.0-beta.4"
bp-consensus = { version = "0.12.0-beta.4", path = "./consensus" }
bp-dbc = { version = "0.12.0-beta.4", path = "./dbc" }
bp-seals = { version = "0.12.0-beta.4", path = "./seals" }
secp256k1 = { version = "0.30.0", features = ["global-context", "rand"] }
serde = { version = "1", features = ["derive"] }

[package]
name = "bp-core"
version = { workspace = true }
description = "Bitcoin protocol core library (BP Core Lib)"
keywords = ["lnp-bp", "smart-contracts", "bitcoin", "blockchain"]
categories = ["cryptography"]
authors = { workspace = true }
repository = { workspace = true }
homepage = { workspace = true }
edition = { workspace = true }
license = { workspace = true }
rust-version = { workspace = true }
readme = "README.md"
exclude = [".github", "primitives", "dbc", "seals"]

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

[[bin]]
name = "bpcore-stl"
required-features = ["stl"]

[dependencies]
amplify = { workspace = true }
strict_encoding = { workspace = true }
strict_types = { workspace = true, optional = true }
commit_verify = { workspace = true }
single_use_seals = { workspace = true }
bp-consensus = { workspace = true }
bp-dbc = { workspace = true }
bp-seals = { workspace = true }
serde = { workspace = true, optional = true }

[features]
default = []
all = ["chrono", "serde", "stl"]
chrono = ["bp-consensus/chrono"]
serde = [
    "dep:serde",
    "bp-consensus/serde",
    "bp-dbc/serde",
    "bp-seals/serde",
]
stl = ["strict_types", "strict_types/armor", "bp-consensus/stl", "commit_verify/stl"]

[target.'cfg(target_arch = "wasm32")'.dependencies]
wasm-bindgen = "0.2"
rand = { version = "0.8.4", optional = true }
getrandom = { version = "0.2", features = ["js"] }

[target.'cfg(target_arch = "wasm32")'.dev-dependencies]
wasm-bindgen-test = "0.3"

[package.metadata.docs.rs]
features = ["all"]

[patch.crates-io]
commit_verify = { git = "https://github.com/LNP-BP/client_side_validation", branch = "v0.12" }
single_use_seals = { git = "https://github.com/LNP-BP/client_side_validation", branch = "v0.12" }