[package]
edition = "2021"
rust-version = "1.94.1"
name = "vantadb"
version = "0.1.4"
build = "build.rs"
exclude = ["test/"]
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "VantaDB: An embedded persistent memory and vector retrieval engine for local-first AI applications."
homepage = "https://vantadb.dev"
documentation = "https://docs.rs/vantadb"
readme = "README.md"
keywords = [
"database",
"vector",
"graph",
"embedded",
"rust",
]
categories = ["database-implementations"]
license = "Apache-2.0"
repository = "https://github.com/ness-e/Vantadb"
[badges.maintenance]
status = "actively-developed"
[features]
advanced-tokenizer = ["dep:tantivy"]
arrow = ["dep:arrow"]
cli = [
"dep:indicatif",
"dep:console",
"dep:clap",
"dep:clap_complete",
]
custom-allocator = ["mimalloc"]
default = [
"cli",
"arrow",
"rocksdb",
"fjall",
]
failpoints = ["dep:fail"]
fjall = ["dep:fjall"]
opentelemetry = [
"dep:opentelemetry",
"dep:tracing-opentelemetry",
"dep:opentelemetry_sdk",
"dep:opentelemetry-otlp",
"opentelemetry_sdk/rt-tokio",
]
python_sdk = ["pyo3"]
remote-inference = ["reqwest"]
rkyv-serialization = ["dep:rkyv"]
rocksdb = ["dep:rocksdb"]
server = [
"cli",
"dep:tokio",
"dep:axum",
"dep:tower",
"dep:tower_governor",
"dep:tower-http",
]
tls = [
"dep:axum-server",
"dep:rustls-pemfile",
]
[lib]
name = "vantadb"
path = "src/lib.rs"
[[bin]]
name = "crash_helper"
path = "src/bin/crash_helper.rs"
test = false
[[bin]]
name = "lock_helper"
path = "src/bin/lock_helper.rs"
test = false
[[bin]]
name = "vanta-cli"
path = "src/bin/vanta-cli.rs"
test = false
required-features = ["cli"]
[[test]]
name = "antilocality_layout"
path = "tests/storage/antilocality_layout.rs"
[[test]]
name = "backend_tests"
path = "tests/storage/backend_tests.rs"
[[test]]
name = "basic_node"
path = "tests/core/basic_node.rs"
[[test]]
name = "benchmark_datasets"
path = "tests/benchmark_datasets.rs"
required-features = ["cli"]
[[test]]
name = "benchmark_internal"
path = "tests/benchmark_internal.rs"
[[test]]
name = "chaos_integrity"
path = "tests/storage/chaos_integrity.rs"
required-features = ["failpoints"]
[[test]]
name = "cli_tests"
path = "tests/cli_tests.rs"
required-features = ["cli"]
[[test]]
name = "columnar"
path = "tests/logic/columnar.rs"
required-features = ["arrow"]
[[test]]
name = "competitive_bench"
path = "tests/certification/competitive_bench.rs"
[[test]]
name = "concurrency_parity"
path = "tests/concurrency_parity.rs"
[[test]]
name = "core_invariants"
path = "tests/storage/core_invariants.rs"
[[test]]
name = "crash_injection"
path = "tests/storage/crash_injection.rs"
[[test]]
name = "derived_index_prefix_scan"
path = "tests/derived_index_prefix_scan.rs"
[[test]]
name = "derived_index_recovery"
path = "tests/derived_index_recovery.rs"
[[test]]
name = "derived_indexes"
path = "tests/derived_indexes.rs"
[[test]]
name = "durability_recovery"
path = "tests/durability_recovery.rs"
[[test]]
name = "edge_cases"
path = "tests/edge_cases.rs"
[[test]]
name = "executor"
path = "tests/logic/executor.rs"
[[test]]
name = "file_locking_stress"
path = "tests/file_locking_stress.rs"
required-features = ["cli"]
[[test]]
name = "fjall_cold_copy_restore"
path = "tests/fjall_cold_copy_restore.rs"
[[test]]
name = "fuzz_proptest"
path = "tests/fuzz_proptest.rs"
[[test]]
name = "gc"
path = "tests/storage/gc.rs"
[[test]]
name = "governor"
path = "tests/logic/governor.rs"
[[test]]
name = "graph"
path = "tests/core/graph.rs"
[[test]]
name = "hardware_profiles"
path = "tests/certification/hardware_profiles.rs"
[[test]]
name = "hnsw"
path = "tests/core/hnsw.rs"
[[test]]
name = "hnsw_recall_certification"
path = "tests/certification/hnsw_recall.rs"
[[test]]
name = "hnsw_validation"
path = "tests/certification/hnsw_validation.rs"
[[test]]
name = "hybrid_ranking_metrics"
path = "tests/certification/hybrid_ranking_metrics.rs"
required-features = ["cli"]
[[test]]
name = "hybrid_retrieval_quality"
path = "tests/certification/hybrid_retrieval_quality.rs"
[[test]]
name = "index_reconstruction"
path = "tests/index_reconstruction.rs"
[[test]]
name = "integration"
path = "tests/logic/integration.rs"
[[test]]
name = "memory"
path = "tests/memory/backpressure.rs"
[[test]]
name = "memory_api"
path = "tests/memory_api.rs"
[[test]]
name = "memory_brutality"
path = "tests/memory_brutality.rs"
[[test]]
name = "memory_eviction"
path = "tests/memory/eviction.rs"
[[test]]
name = "memory_export_import"
path = "tests/memory_export_import.rs"
[[test]]
name = "memory_telemetry"
path = "tests/memory_telemetry.rs"
[[test]]
name = "mmap_hnsw"
path = "tests/memory/mmap_hnsw.rs"
required-features = ["cli"]
[[test]]
name = "mmap_index"
path = "tests/storage/mmap_index.rs"
[[test]]
name = "multi_process_lock"
path = "tests/storage/multi_process_lock.rs"
[[test]]
name = "multilingual_tokenizer_integration"
path = "tests/multilingual_tokenizer_integration.rs"
[[test]]
name = "mutations"
path = "tests/storage/mutations.rs"
[[test]]
name = "operational_metrics"
path = "tests/operational_metrics.rs"
[[test]]
name = "parser"
path = "tests/logic/parser.rs"
[[test]]
name = "prefetch_benchmark"
path = "tests/prefetch_benchmark.rs"
required-features = ["cli"]
[[test]]
name = "property_durability"
path = "tests/property_durability.rs"
[[test]]
name = "python_sdk_boundary"
path = "tests/api/python.rs"
[[test]]
name = "schema_evolution"
path = "tests/schema_evolution.rs"
[[test]]
name = "sift_validation"
path = "tests/certification/sift_validation.rs"
[[test]]
name = "storage"
path = "tests/storage/storage.rs"
[[test]]
name = "stress_protocol"
path = "tests/certification/stress_protocol.rs"
[[test]]
name = "structured_api_v2"
path = "tests/api/structured_api_v2.rs"
[[test]]
name = "text_index_recovery"
path = "tests/text_index_recovery.rs"
[[test]]
name = "tombstone_ann_vstore"
path = "tests/storage/tombstone_ann_vstore.rs"
[[test]]
name = "vector_scale_check"
path = "tests/core/vector_scale_check.rs"
[[test]]
name = "version_coherence"
path = "tests/version_coherence.rs"
[[test]]
name = "wal_resilience"
path = "tests/storage/wal_resilience.rs"
[[bench]]
name = "bench_concurrent"
path = "benches/bench_concurrent.rs"
harness = false
[[bench]]
name = "high_density"
path = "benches/high_density.rs"
harness = false
[[bench]]
name = "hnsw_pure"
path = "benches/hnsw_pure.rs"
harness = false
[[bench]]
name = "hybrid_queries"
path = "benches/hybrid_queries.rs"
harness = false
[[bench]]
name = "stress_test"
path = "benches/stress_test.rs"
harness = false
[[bench]]
name = "tokenizer_bench"
path = "benches/tokenizer_bench.rs"
[dependencies.anyhow]
version = "1"
[dependencies.arc-swap]
version = "1.7"
[dependencies.arrow]
version = "58"
features = ["ipc"]
optional = true
[dependencies.axum]
version = "0.8"
optional = true
[dependencies.axum-server]
version = "0.7"
features = ["tls-rustls"]
optional = true
[dependencies.bincode]
version = "2.0"
features = ["serde"]
[dependencies.chrono]
version = "0.4"
features = ["serde"]
[dependencies.clap]
version = "4.4"
features = [
"derive",
"env",
]
optional = true
[dependencies.clap_complete]
version = "4.4"
optional = true
[dependencies.console]
version = "0.16"
optional = true
[dependencies.cpufeatures]
version = "0.3"
[dependencies.crc32c]
version = "0.5"
[dependencies.dashmap]
version = "6"
[dependencies.fail]
version = "0.5"
features = ["failpoints"]
optional = true
[dependencies.fjall]
version = "3.1"
optional = true
[dependencies.fs2]
version = "0.4"
[dependencies.indicatif]
version = "0.18"
optional = true
[dependencies.memmap2]
version = "0.9"
[dependencies.mimalloc]
version = "0.1"
optional = true
[dependencies.nom]
version = "7"
[dependencies.num-traits]
version = "0.2"
[dependencies.opentelemetry]
version = "0.32.0"
optional = true
[dependencies.opentelemetry-otlp]
version = "0.32.0"
features = [
"grpc-tonic",
"trace",
]
optional = true
[dependencies.opentelemetry_sdk]
version = "0.32.1"
optional = true
[dependencies.parking_lot]
version = "0.12"
[dependencies.prometheus]
version = "0.14"
[dependencies.pyo3]
version = "0.29"
features = [
"extension-module",
"chrono",
]
optional = true
[dependencies.rand]
version = "0.9"
[dependencies.rayon]
version = "1.12"
[dependencies.reqwest]
version = "0.13"
features = [
"json",
"blocking",
]
optional = true
[dependencies.rkyv]
version = "0.8"
optional = true
[dependencies.rocksdb]
version = "0.22"
features = ["lz4"]
optional = true
default-features = false
[dependencies.rustls-pemfile]
version = "2"
optional = true
[dependencies.serde]
version = "1"
features = ["derive"]
[dependencies.serde_json]
version = "1.0"
[dependencies.sysinfo]
version = "0.30"
[dependencies.tantivy]
version = "0.22"
features = ["stopwords"]
optional = true
[dependencies.thiserror]
version = "2"
[dependencies.tokio]
version = "1"
features = [
"rt",
"rt-multi-thread",
"net",
"sync",
"signal",
"macros",
]
optional = true
[dependencies.tower]
version = "0.5"
features = ["util"]
optional = true
[dependencies.tower-http]
version = "0.6.11"
features = ["trace"]
optional = true
[dependencies.tower_governor]
version = "0.8"
optional = true
[dependencies.tracing]
version = "0.1"
[dependencies.tracing-opentelemetry]
version = "0.33.0"
optional = true
[dependencies.tracing-subscriber]
version = "0.3"
features = [
"env-filter",
"fmt",
"json",
]
[dependencies.twox-hash]
version = "2.1.2"
[dependencies.wide]
version = ">=1.2, <2"
[dependencies.zerocopy]
version = "0.8"
features = ["derive"]
[dev-dependencies.console]
version = "0.16"
[dev-dependencies.criterion]
version = "0.8"
features = [
"html_reports",
"async_tokio",
]
[dev-dependencies.futures]
version = "0.3"
[dev-dependencies.http]
version = "1"
[dev-dependencies.indicatif]
version = "0.18"
[dev-dependencies.proptest]
version = "1.5"
[dev-dependencies.tempfile]
version = "3"
[dev-dependencies.tokio]
version = "1"
features = [
"rt-multi-thread",
"sync",
"time",
"fs",
"macros",
"io-util",
]
[dev-dependencies.tower]
version = "0.5"
features = ["util"]
[build-dependencies.clap]
version = "4.4"
features = [
"derive",
"env",
]
optional = true
[build-dependencies.clap_complete]
version = "4.4"
optional = true
[target.'cfg(target_os = "macos")'.dependencies.mach2]
version = "0.6"
[target."cfg(unix)".dependencies.libc]
version = "0.2"
[target."cfg(windows)".dependencies.windows-sys]
version = "0.52"
features = [
"Win32_System_ProcessStatus",
"Win32_System_Threading",
"Win32_System_Memory",
"Win32_Foundation",
]
[profile.ci]
opt-level = 2
lto = "off"
codegen-units = 16
inherits = "release"
[profile.dev]
opt-level = 1
debug = 1
strip = "none"
[profile.release]
opt-level = 3
lto = "thin"
codegen-units = 1
[profile.test]
opt-level = 0
debug = 0