[package] name = "exonum-merkledb" version = "1.0.0" edition = "2018" authors = ["The Exonum Team "] homepage = "https://exonum.com/" repository = "https://github.com/exonum/exonum" documentation = "https://docs.rs/exonum-merkledb" readme = "README.md" license = "Apache-2.0" links = "exonum_protobuf_merkledb" keywords = ["exonum", "cryptography", "database", "merkelize", "patricia"] categories = ["cryptography", "database", "data-structures"] description = "Persistent storage implementation based on RocksDB which provides APIs to work with Merkelized data structures." [dependencies] exonum-crypto = { path = "../crypto", version = "1.0.0", features = ["with-serde"]} exonum-proto = { path = "../proto", version = "1.0.0", optional = true } anyhow = "1.0.26" byteorder = "1.3" chrono = "0.4.6" crossbeam = "0.7.3" ctor = "0.1.13" enum-primitive-derive = "0.1" leb128 = "0.2" num-traits = "0.2" protobuf = { version = "2.8.1", features = ["with-serde"], optional = true } rocksdb = { version = "0.13", default-features = false } rust_decimal = "1.0" serde = "1.0" serde_derive = "1.0" smallvec = "1.0" tempfile = "3.0" thiserror = "1.0" uuid = { version = "0.8", features = ["v4"] } [dev-dependencies] exonum-derive = { version = "1.0.0", path = "../derive" } assert_matches = "1.3.0" bincode = "1.1" criterion = "0.3" hex = "0.4.0" modifier = "0.1" proptest = "0.9" pretty_assertions = "0.6" rand = "0.7" rand_xorshift = "0.2.0" serde_json = "1.0" url = "2.0.0" [[bench]] name = "criterion" path = "benches/lib.rs" harness = false [features] default = ["rocksdb_snappy", "with-protobuf"] with-protobuf = ["with-serde", "protobuf", "exonum-proto"] with-serde = [] # Compression options passed to RocksDB backend. rocksdb_snappy = ["rocksdb/snappy"] rocksdb_lz4 = ["rocksdb/lz4"] rocksdb_zlib = ["rocksdb/zlib"] rocksdb_zstd = ["rocksdb/zstd"] rocksdb_bzip2 = ["rocksdb/bzip2"] # Enables long benchmarks; does not influence main crate code. long_benchmarks = [] # Enables `unsafe` optimizations / experimental features. # Strongly discouraged for use in production. yolo = [] [build-dependencies] exonum-build = { version = "1.0.0", path = "../build" }