[package]
name = "rocksmap"
version = "0.1.0"
edition = "2021"
authors = ["Lokesh Kumar <lkumar94@gmail.com>"]
description = "A high-level, type-safe abstraction over RocksDB with zero unsafe code and ergonomic map-like APIs"
license = "MIT"
repository = "https://github.com/kumarlokesh/rocksmap"
homepage = "https://github.com/kumarlokesh/rocksmap"
documentation = "https://docs.rs/rocksmap"
readme = "README.md"
keywords = ["database", "rocksdb", "key-value", "storage", "embedded"]
categories = ["database", "api-bindings", "data-structures"]
exclude = ["benches/", "examples/", ".github/"]
[dependencies]
rocksdb = "0.21.0"
serde = { version = "1.0", features = ["derive"] }
bincode = "1.3"
thiserror = "1.0"
clap = { version = "4.4", features = ["derive"] }
serde_json = "1.0"
csv = "1.3"
anyhow = "1.0"
rand = "0.8"
tokio = { version = "1.0", features = ["full"], optional = true }
[dev-dependencies]
tempfile = "3.8"
criterion = { version = "0.5", features = ["html_reports"] }
[[bin]]
name = "rocksmap-cli"
path = "src/bin/cli.rs"
[[bench]]
name = "basic_ops"
harness = false
path = "benches/unit/basic_ops.rs"
[[bench]]
name = "batch_ops"
harness = false
path = "benches/unit/batch_ops.rs"
[[bench]]
name = "iterators"
harness = false
path = "benches/unit/iterators.rs"
[[bench]]
name = "read_heavy"
harness = false
path = "benches/integration/read_heavy.rs"
[[bench]]
name = "write_heavy"
harness = false
path = "benches/integration/write_heavy.rs"
[[bench]]
name = "mixed_workload"
harness = false
path = "benches/integration/mixed_workload.rs"
[features]
default = []
async = ["tokio"]