[package] name = "accumulators" version = "0.4.9" edition = "2021" license-file = "LICENSE" description = "Complete package of multiple Accumulators with Stores and hashing functions (Hashers)" homepage = "https://herodotus.dev/" repository = "https://github.com/HerodotusDev/rust-accumulators" documentation = "https://github.com/HerodotusDev/rust-accumulators/blob/main/README.md" readme = "README.md" keywords = ["accumulators", "mmr", "merkle", "tree", "incremental"] categories = ["cryptography", "data-structures", "database"] exclude = [".github", ".vscode"] [dependencies] tokio = { version = "1.33.0", features = ["full"] } # Async runtime sqlx = { version = "0.7", features = [ "runtime-tokio", "sqlite", ] } # SQLite for rust thiserror = "1.0" # Error handling async-trait = "0.1.74" # Async traits hex = "0.4.3" # Hex encoding tiny-keccak = "2.0.2" # Keccak hashing starknet = "0.6.0" # StarkNet pedersen starknet-crypto = "0.6.0" # StarkNet poseidon uuid = { version = "1.4.1", features = ["v4"] } # UUID parking_lot = "0.12.1" # Sync mutex num-bigint = "0.4.4" # Bigints in hashers (TODO: double check if needed) num-traits = "0.2.17" # Bigints in hashers (TODO: double check if needed) indexmap = "2.1.0" strum = "0.25" # better enums strum_macros = "0.25" # better enums [dev-dependencies] criterion = { version = "0.4", features = [ "html_reports", "async", ] } # Benchmarking [[bench]] name = "mmr_benchmark" harness = false [[bench]] name = "incremental_benchmark" harness = false [features] default = ["store", "hasher"] all = [ "store", "sqlite", "memory", "hasher", "keccak", "poseidon", "pedersen", "mmr", "stacked_mmr", "draft_mmr", "merkle_tree", "incremental_merkle_tree", ] store = [] sqlite = ["store"] memory = ["store"] hasher = [] keccak = ["hasher"] poseidon = ["hasher"] pedersen = ["hasher"] mmr = ["hasher", "store"] stacked_mmr = ["mmr"] draft_mmr = ["stacked_mmr"] merkle_tree = ["hasher", "store"] incremental_merkle_tree = ["merkle_tree"]