[package]
name = "holt"
version = "0.3.3"
edition = "2021"
rust-version = "1.82"
autobenches = false
description = "An adaptive-radix-tree metadata storage engine for path-shaped keys, with per-blob concurrency and crash-safe persistence."
license = "MIT"
authors = ["the holt contributors"]
readme = "README.md"
repository = "https://github.com/feichai0017/holt"
homepage = "https://github.com/feichai0017/holt"
documentation = "https://docs.rs/holt"
keywords = ["art", "radix-tree", "metadata", "storage", "embedded"]
categories = ["database-implementations", "data-structures", "filesystem"]
[workspace]
members = [".", "crates/holt-ffi"]
exclude = ["benches", "fuzz", "verified"]
[dependencies]
crossbeam-channel = "0.5"
dashmap = "6"
crc32fast = { version = "1.4", default-features = false }
smallvec = "1"
tracing = { version = "0.1", default-features = false, optional = true }
[target.'cfg(unix)'.dependencies]
libc = "0.2"
[target.'cfg(target_os = "linux")'.dependencies]
io-uring = { version = "0.7", optional = true }
[dev-dependencies]
rand = "0.9"
tempfile = "3"
proptest = { version = "1", default-features = false, features = ["std", "fork", "timeout"] }
[features]
default = ["io-uring"]
io-uring = ["dep:io-uring"]
tracing = ["dep:tracing"]
metrics = []
[profile.release]
lto = "thin"
codegen-units = 1
opt-level = 3
[profile.bench]
inherits = "release"
[[example]]
name = "basic_kv"
path = "examples/basic_kv.rs"
[[example]]
name = "filesystem_meta"
path = "examples/filesystem_meta.rs"
[[example]]
name = "session_store"
path = "examples/session_store.rs"
[[example]]
name = "s3_metadata"
path = "examples/s3_metadata.rs"