tidecoin 0.33.0-beta

General purpose library for using and interoperating with Tidecoin.
# THIS FILE IS AUTOMATICALLY GENERATED BY CARGO
#
# When uploading crates to the registry Cargo will automatically
# "normalize" Cargo.toml files for maximal compatibility
# with all versions of Cargo and also rewrite `path` dependencies
# to registry (e.g., crates.io) dependencies.
#
# If you are reading this file be aware that the original Cargo.toml
# will likely look very different (and much more reasonable).
# See Cargo.toml.orig for the original contents.

[package]
edition = "2021"
rust-version = "1.94.1"
name = "tidecoin"
version = "0.33.0-beta"
authors = ["Tidecoin Foundation <falcon1024@protonmail.com>"]
build = "build.rs"
exclude = [
    "tests",
    "contrib",
]
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "General purpose library for using and interoperating with Tidecoin."
documentation = "https://docs.rs/tidecoin/"
readme = "README.md"
keywords = [
    "crypto",
    "tidecoin",
]
categories = ["cryptography::cryptocurrencies"]
license = "CC0-1.0"
repository = "https://github.com/tidecoin/rust-tidecoin/"

[package.metadata.docs.rs]
all-features = true
rustdoc-args = [
    "--cfg",
    "docsrs",
]

[package.metadata.rbmt.test]
examples = ["serde:std serde"]
exact_features = [[
    "std",
    "serde",
]]

[package.metadata.rbmt.prerelease]
enabled = true

[features]
arbitrary = [
    "dep:arbitrary",
    "units/arbitrary",
    "primitives/arbitrary",
    "hashes/arbitrary",
    "network/arbitrary",
]
default = [
    "std",
    "rand",
    "p2p",
    "pow",
]
p2p = ["dep:p2p_messages"]
pow = [
    "dep:scrypt",
    "dep:rust-yespower",
]
rand = ["rand_core/getrandom"]
serde = [
    "dep:serde",
    "consensus_core/serde",
    "hashes/serde",
    "internals/serde",
    "network/serde",
    "primitives/serde",
    "units/serde",
]
std = [
    "base58/std",
    "bech32/std",
    "consensus_core/std",
    "encoding/std",
    "hashes/std",
    "hex-stable/std",
    "internals/std",
    "io/std",
    "network/std",
    "primitives/std",
    "units/std",
]
tidecoin-node-validation = [
    "std",
    "rand",
    "dep:node_parity",
]

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

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

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

[[example]]
name = "serde"
path = "examples/serde.rs"
required-features = [
    "std",
    "serde",
]

[dependencies.arbitrary]
version = "1.4.1"
optional = true

[dependencies.base58]
version = "0.4.0"
features = ["alloc"]
default-features = false
package = "tidecoin-base58ck"

[dependencies.bech32]
version = "0.11.0"
features = ["alloc"]
default-features = false

[dependencies.consensus_core]
version = "0.1.0"
features = ["hex"]
default-features = false
package = "tidecoin-consensus-core"

[dependencies.encoding]
version = "0.1.0"
features = ["alloc"]
default-features = false
package = "tidecoin-consensus-encoding"

[dependencies.fips204]
version = "0.4"
features = [
    "ml-dsa-44",
    "ml-dsa-65",
    "ml-dsa-87",
]
default-features = false

[dependencies.hashes]
version = "0.20.0"
features = [
    "alloc",
    "hex",
]
default-features = false
package = "tidecoin_hashes"

[dependencies.hex-stable]
version = "1.0.0"
features = ["alloc"]
default-features = false
package = "hex-conservative"

[dependencies.internals]
version = "0.5.0"
features = [
    "alloc",
    "hex",
]
default-features = false
package = "tidecoin-internals"

[dependencies.io]
version = "0.5.0"
features = [
    "alloc",
    "hashes",
]
default-features = false
package = "tidecoin-io"

[dependencies.ml-kem]
version = "0.3.0-rc.2"
features = ["zeroize"]
default-features = false

[dependencies.network]
version = "0.1.0"
features = ["alloc"]
default-features = false
package = "tidecoin-network-kind"

[dependencies.node_parity]
version = "0.1.0"
optional = true
package = "tidecoin-node-parity"

[dependencies.p2p_messages]
version = "0.1.0"
optional = true
default-features = false
package = "tidecoin-p2p-messages"

[dependencies.primitives]
version = "0.102.0"
features = [
    "alloc",
    "hex",
]
default-features = false
package = "tidecoin-primitives"

[dependencies.rand_core]
version = "0.6"
default-features = false

[dependencies.rust-yespower]
version = "0.2.0"
optional = true
default-features = false

[dependencies.scrypt]
version = "0.11"
optional = true
default-features = false

[dependencies.serde]
version = "1.0.195"
features = [
    "derive",
    "alloc",
]
optional = true
default-features = false

[dependencies.tide-fn-dsa-kgen]
version = "0.4.0"
default-features = false

[dependencies.tide-fn-dsa-sign]
version = "0.4.0"
default-features = false

[dependencies.units]
version = "0.3.0"
features = ["alloc"]
default-features = false
package = "tidecoin-units"

[dependencies.zeroize]
version = "1.8"
features = ["alloc"]
default-features = false

[dev-dependencies.bincode]
version = "1.3.1"

[dev-dependencies.serde_json]
version = "1.0.68"

[dev-dependencies.serde_test]
version = "1.0.19"

[lints.clippy]
redundant_clone = "warn"
use_self = "warn"

[lints.rust.unexpected_cfgs]
level = "deny"
priority = 0
check-cfg = [
    "cfg(fuzzing)",
    "cfg(kani)",
]