[package]
name = "mmdb"
version = "3.2.6"
edition = "2024"
description = "The storage engine behind vsdb — a pure-Rust LSM-Tree key-value store"
license = "MIT"
authors = ["hui.fan@mail.ru"]
repository = "https://github.com/rust-util-collections/mmdb"
homepage = "https://github.com/rust-util-collections/mmdb"
documentation = "https://docs.rs/mmdb"
keywords = ["rocksdb", "leveldb", "kv", "database", "db"]
categories = ["database-implementations"]
readme = "README.md"
rust-version = "1.89"
exclude = [".github/"]

[dependencies]
crc32fast = "1"
lz4_flex = "0.13"
zstd = "0.13"
moka = { version = "0.12", features = ["sync"] }
parking_lot = "0.12"
ruc = "10.0.0"
thiserror = "2"
tracing = "0.1"
arc-swap = "1.8.2"

[target.'cfg(unix)'.dependencies]
libc = "0.2"

[dev-dependencies]
mmdb = { path = ".", features = ["test-utils"] }
tempfile = "3"
proptest = "1"
criterion = { version = "0.8", features = ["html_reports"] }

[[bench]]
name = "benchmarks"
harness = false

[profile.release]
lto = "thin"
codegen-units = 1
opt-level = 3

[features]
default = []
test-utils = []  # Exposes test helpers like DB::simulate_crash()
