[package] name = "lsmtree" version = "0.1.1" edition = "2021" repository = "https://github.com/al8n/lsmtree" description = "Implements a Sparse Merkle tree for a key-value store. The tree implements the same optimisations specified in the libra whitepaper, to reduce the number of hash operations required per tree operation to O(k) where k is the number of non-empty elements in the tree." license = "MIT/Apache-2.0" keywords = ["merkletree", "merkle", "merkle-tree", "sparse_merkle_tree", "smt"] categories = ["cryptography", "data-structures", "no-std"] [[bench]] path = "benches/bench.rs" name = "bench" harness = false [profile.bench] opt-level = 3 debug = false codegen-units = 1 lto = 'thin' incremental = false debug-assertions = false overflow-checks = false rpath = false [features] default = ["std"] std = ["bytes/default"] [dependencies] bytes = { version = "1.2", default-features = false } digest = "0.10" [target.'cfg(target_arch = "aarch64")'.dev-dependencies] sha2 = { version = "0.10", features = ["asm-aarch64"]} [dev-dependencies] criterion = "0.3" tempfile = "3" parking_lot = "0.12" rand = "0.8" sha2 = "0.10" hashbrown = "0.12" [package.metadata.docs.rs] all-features = true rustdoc-args = ["--cfg", "docsrs"]