# 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.73"
name = "concordium_base"
version = "7.0.0"
authors = ["Concordium AG <developers@concordium.com>"]
build = false
include = [
    "src/",
    "data/",
    "benches/",
]
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "A library that defines common types and functionality that are needed by Concordium Rust projects."
homepage = "https://github.com/Concordium/concordium-base"
readme = "README.md"
license-file = "LICENSE"
repository = "https://github.com/Concordium/concordium-base"

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

[lib]
name = "concordium_base"
crate-type = ["lib"]
path = "src/lib.rs"

[[bench]]
name = "aggr_dlog_commit_message"
path = "benches/aggr_dlog_commit_message.rs"
harness = false

[[bench]]
name = "aggregate_signatures"
path = "benches/aggregate_signatures.rs"
harness = false

[[bench]]
name = "bulletproofs"
path = "benches/bulletproofs.rs"
harness = false

[[bench]]
name = "commitment_to_share"
path = "benches/commitment_to_share.rs"
harness = false

[[bench]]
name = "compute_message"
path = "benches/compute_message.rs"
harness = false
required-features = ["internal-test-helpers"]

[[bench]]
name = "eddsa_benchmarks"
path = "benches/eddsa_benchmarks.rs"
harness = false

[[bench]]
name = "elgamal_benchmarks"
path = "benches/elgamal_benchmarks.rs"
harness = false

[[bench]]
name = "encrypted_transfers_benchmarks"
path = "benches/encrypted_transfers_benchmarks.rs"
harness = false

[[bench]]
name = "hash_bench"
path = "benches/hash_bench.rs"
harness = false

[[bench]]
name = "multiexp_bench"
path = "benches/multiexp_bench.rs"
harness = false

[[bench]]
name = "serialization_benches"
path = "benches/serialization_benches.rs"
harness = false

[[bench]]
name = "set_proof_bench"
path = "benches/set_proof_bench.rs"
harness = false

[[bench]]
name = "verify_cdi"
path = "benches/verify_cdi.rs"
harness = false

[dependencies.aes]
version = "0.8"
optional = true

[dependencies.anyhow]
version = "1.0"

[dependencies.ark-bls12-381]
version = "0.4"

[dependencies.ark-ec]
version = "0.4"

[dependencies.ark-ff]
version = "0.4"

[dependencies.ark-serialize]
version = "0.4"

[dependencies.ark-std]
version = "0.4"

[dependencies.base64]
version = "0.21"
optional = true

[dependencies.bs58]
version = "0.5"
features = ["check"]

[dependencies.byteorder]
version = "1.3"

[dependencies.cbc]
version = "0.1.2"
features = ["std"]
optional = true

[dependencies.chrono]
version = "0.4.35"
features = ["serde"]

[dependencies.concordium-contracts-common]
version = "9.1"
features = ["derive-serde"]

[dependencies.concordium_base_derive]
version = "1"

[dependencies.curve25519-dalek]
version = "4.1"
features = [
    "rand_core",
    "group",
]

[dependencies.derive_more]
version = "0.99"

[dependencies.ed25519-dalek]
version = "2.0"
features = ["rand_core"]

[dependencies.either]
version = "1.6"

[dependencies.ff]
version = "0.13"

[dependencies.hex]
version = "0.4"

[dependencies.hmac]
version = "0.12"
optional = true

[dependencies.itertools]
version = "0.10"

[dependencies.leb128]
version = "0.2"

[dependencies.libc]
version = "0.2"

[dependencies.nom]
version = "7.1.3"

[dependencies.num]
version = "0.4"

[dependencies.num-bigint]
version = "0.4"

[dependencies.num-traits]
version = "0.2"

[dependencies.pbkdf2]
version = "0.11"
optional = true

[dependencies.rand]
version = "0.8"

[dependencies.rand_chacha]
version = "0.3"
optional = true
default-features = false

[dependencies.rayon]
version = "1.7"

[dependencies.rust_decimal]
version = "1.25"
features = [
    "serde-float",
    "serde-arbitrary-precision",
]

[dependencies.serde]
version = "1.0"
features = ["derive"]

[dependencies.serde_json]
version = "1.0"

[dependencies.serde_with]
version = "3"

[dependencies.sha2]
version = "0.10"

[dependencies.sha3]
version = "0.10"

[dependencies.subtle]
version = "2.3"

[dependencies.thiserror]
version = "1.0"

[dependencies.zeroize]
version = "1.1"

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

[dev-dependencies.rand]
version = "0.8"
features = ["small_rng"]

[features]
default = []
encryption = [
    "cbc",
    "aes",
    "base64",
    "pbkdf2",
    "hmac",
]
ffi = ["rand_chacha"]
internal-test-helpers = []