[package]
edition = "2021"
rust-version = "1.83"
name = "fusedb"
version = "0.3.0"
authors = ["David Aires <d.aires@easi.net>"]
build = false
exclude = [
".github/*",
"assets/*",
"htmlcov/*",
"coverage.xml",
"uv.lock",
".benchmarks/*",
]
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "A read-optimised binary database where many keys share one object — with zero duplication on disk."
homepage = "https://github.com/David-Aires/fusedb"
documentation = "https://docs.rs/fusedb"
readme = "README.md"
keywords = [
"database",
"key-value",
"lookup",
"enrichment",
"mmap",
]
categories = [
"database-implementations",
"data-structures",
]
license = "MIT"
repository = "https://github.com/David-Aires/fusedb"
[package.metadata.docs.rs]
features = ["msgpack"]
no-default-features = false
[features]
default = ["msgpack"]
msgpack = [
"dep:serde",
"dep:rmp-serde",
]
python = ["dep:pyo3"]
[lib]
name = "fusedb"
crate-type = [
"cdylib",
"rlib",
]
path = "src/lib.rs"
[[example]]
name = "interop"
path = "examples/interop.rs"
[[example]]
name = "quickstart"
path = "examples/quickstart.rs"
[[example]]
name = "watch"
path = "examples/watch.rs"
[[test]]
name = "interop"
path = "tests/interop.rs"
[[test]]
name = "rust_api"
path = "tests/rust_api.rs"
[[test]]
name = "watch"
path = "tests/watch.rs"
[[bench]]
name = "lookup"
path = "benches/lookup.rs"
harness = false
[dependencies.ahash]
version = "0.8"
[dependencies.crc32fast]
version = "1.4"
[dependencies.memmap2]
version = "0.9.11"
[dependencies.pyo3]
version = "=0.28.2"
optional = true
[dependencies.rmp-serde]
version = "1.3"
optional = true
[dependencies.serde]
version = "1.0"
optional = true
[dev-dependencies.criterion]
version = "0.5"
features = ["html_reports"]
[dev-dependencies.serde]
version = "1.0"
features = ["derive"]
[dev-dependencies.serde_json]
version = "1.0"
[dev-dependencies.tempfile]
version = "3"
[profile.bench]
opt-level = 3
lto = true
[profile.release]
opt-level = 3
lto = true
codegen-units = 1
strip = true