[package]
name = "diskann-quantization"
version.workspace = true
description.workspace = true
authors.workspace = true
documentation.workspace = true
license.workspace = true
edition = "2024"
[dependencies]
bytemuck = { workspace = true, features = ["derive"] }
cfg-if = { workspace = true }
rand = { workspace = true }
thiserror = { workspace = true }
diskann-vector = { workspace = true }
diskann-wide = { workspace = true }
diskann-linalg = { workspace = true, optional = true }
rayon = { workspace = true, optional = true }
flatbuffers = { version = "25.2.10", optional = true }
half = { version = "2.6.0", features = ["bytemuck"] }
diskann-utils = { workspace = true }
[lints.clippy]
undocumented_unsafe_blocks = "warn"
unwrap_used = "warn"
expect_used = "warn"
panic = "warn"
uninlined_format_args = "allow"
[dev-dependencies]
cfg-if = { workspace = true }
serde = { workspace = true, features = ["derive"] }
serde_json = { workspace = true }
trybuild = "1.0.101"
rand_distr = { workspace = true }
[features]
default = ["rayon"]
linalg = ["dep:diskann-linalg"]
flatbuffers = ["dep:flatbuffers"]
rayon = ["dep:rayon", "diskann-utils/rayon"]
flatbuffers-build = []
codegen = []
[package.metadata.docs.rs]
features = ["rayon", "linalg", "flatbuffers"]
rustdoc-args = ["--cfg", "docsrs"]