[package]
edition = "2021"
rust-version = "1.89"
name = "velesdb-core"
version = "3.2.1"
authors = ["Julien Lange <contact@wiscale.fr>"]
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "High-performance vector database engine written in Rust"
homepage = "https://velesdb.com"
documentation = "https://deepwiki.com/cyberlife-coder/VelesDB"
readme = "README.md"
keywords = [
"vector-database",
"embeddings",
"rag",
"local-first",
"semantic-search",
]
categories = [
"database",
"data-structures",
"algorithms",
"science",
]
license-file = "LICENSE"
repository = "https://github.com/cyberlife-coder/velesdb"
[features]
bench-sift1m = [
"dep:flate2",
"dep:tar",
"dep:ureq",
"dep:sha2",
]
default = ["persistence"]
gpu = [
"wgpu",
"pollster",
"bytemuck",
]
internal-bench = []
loom = ["dep:loom"]
openapi = ["dep:utoipa"]
persistence = [
"dep:memmap2",
"dep:rayon",
"dep:tokio",
"dep:ndarray",
"dep:fs2",
]
test-fault-injection = []
update-check = [
"dep:reqwest",
"dep:tokio",
"dep:sha2",
"dep:hex",
"dep:hostname",
"dep:whoami",
]
[lib]
name = "velesdb_core"
path = "src/lib.rs"
[[example]]
name = "crash_driver"
path = "examples/crash_driver.rs"
required-features = ["persistence"]
[[example]]
name = "profile_batch_insert"
path = "examples/profile_batch_insert.rs"
required-features = ["persistence"]
[[example]]
name = "simd_precision_check"
path = "examples/simd_precision_check.rs"
[[test]]
name = "auto_reindex_bdd"
path = "tests/auto_reindex_bdd.rs"
[[test]]
name = "bdd"
path = "tests/bdd.rs"
[[test]]
name = "bitmap_prefilter_integration"
path = "tests/bitmap_prefilter_integration.rs"
[[test]]
name = "bulk_insert_v2_integration"
path = "tests/bulk_insert_v2_integration.rs"
[[test]]
name = "chunked_insert_recall"
path = "tests/chunked_insert_recall.rs"
required-features = ["persistence"]
[[test]]
name = "coverage_ordered_index_scan_branches"
path = "tests/coverage_ordered_index_scan_branches.rs"
[[test]]
name = "crash_recovery_tests"
path = "tests/crash_recovery_tests.rs"
[[test]]
name = "crud_dedup_parity_tests"
path = "tests/crud_dedup_parity_tests.rs"
[[test]]
name = "deferred_indexer_integration"
path = "tests/deferred_indexer_integration.rs"
[[test]]
name = "epic_features_integration_tests"
path = "tests/epic_features_integration_tests.rs"
[[test]]
name = "histogram_selectivity_bdd"
path = "tests/histogram_selectivity_bdd.rs"
[[test]]
name = "hnsw_dedup_parity_tests"
path = "tests/hnsw_dedup_parity_tests.rs"
[[test]]
name = "hybrid_credibility_tests"
path = "tests/hybrid_credibility_tests.rs"
[[test]]
name = "integration_scenarios"
path = "tests/integration_scenarios.rs"
[[test]]
name = "internal_bench_feature_tests"
path = "tests/internal_bench_feature_tests.rs"
[[test]]
name = "loom_tests"
path = "tests/loom_tests.rs"
[[test]]
name = "match_prefilter_e2e_tests"
path = "tests/match_prefilter_e2e_tests.rs"
[[test]]
name = "match_similarity_dimension_guard"
path = "tests/match_similarity_dimension_guard.rs"
[[test]]
name = "match_where_alias_property"
path = "tests/match_where_alias_property.rs"
[[test]]
name = "match_where_metadata_conditions"
path = "tests/match_where_metadata_conditions.rs"
[[test]]
name = "numeric_casts"
path = "tests/numeric_casts.rs"
[[test]]
name = "ordered_index_advisor"
path = "tests/ordered_index_advisor.rs"
[[test]]
name = "ordered_index_multikey"
path = "tests/ordered_index_multikey.rs"
[[test]]
name = "ordered_index_order_by_equivalence"
path = "tests/ordered_index_order_by_equivalence.rs"
[[test]]
name = "pq_adc_e2e_tests"
path = "tests/pq_adc_e2e_tests.rs"
[[test]]
name = "property_index_e2e_tests"
path = "tests/property_index_e2e_tests.rs"
[[test]]
name = "public_facade_tests"
path = "tests/public_facade_tests.rs"
[[test]]
name = "pushdown_join_e2e_tests"
path = "tests/pushdown_join_e2e_tests.rs"
[[test]]
name = "recall_validation"
path = "tests/recall_validation.rs"
[[test]]
name = "scalar_order_by_limit_integration"
path = "tests/scalar_order_by_limit_integration.rs"
[[test]]
name = "scale_recall_100k"
path = "tests/scale_recall_100k.rs"
required-features = ["persistence"]
[[test]]
name = "secondary_index_persistence"
path = "tests/secondary_index_persistence.rs"
[[test]]
name = "secondary_index_tests"
path = "tests/secondary_index_tests.rs"
[[test]]
name = "sift1m_loader_unit_tests"
path = "tests/sift1m_loader_unit_tests.rs"
[[test]]
name = "simd_property_tests"
path = "tests/simd_property_tests.rs"
[[test]]
name = "stress_concurrency_tests"
path = "tests/stress_concurrency_tests.rs"
[[test]]
name = "use_cases_integration_tests"
path = "tests/use_cases_integration_tests.rs"
[[test]]
name = "velesql_cheatsheet_docs"
path = "tests/velesql_cheatsheet_docs.rs"
[[test]]
name = "velesql_executor_conformance"
path = "tests/velesql_executor_conformance.rs"
[[test]]
name = "velesql_parser_conformance"
path = "tests/velesql_parser_conformance.rs"
[[test]]
name = "velesql_planner_golden"
path = "tests/velesql_planner_golden.rs"
[[test]]
name = "velesql_spec_corrected_examples"
path = "tests/velesql_spec_corrected_examples.rs"
[[test]]
name = "wal_recovery_e2e_tests"
path = "tests/wal_recovery_e2e_tests.rs"
[[bench]]
name = "agent_memory_benchmark"
path = "benches/agent_memory_benchmark.rs"
harness = false
[[bench]]
name = "aggregation_benchmark"
path = "benches/aggregation_benchmark.rs"
harness = false
[[bench]]
name = "avx512_comparison_i9"
path = "benches/avx512_comparison_i9.rs"
harness = false
[[bench]]
name = "bench_helpers"
path = "benches/bench_helpers.rs"
[[bench]]
name = "bitmap_prefilter_benchmark"
path = "benches/bitmap_prefilter_benchmark.rs"
harness = false
[[bench]]
name = "bm25_benchmark"
path = "benches/bm25_benchmark.rs"
harness = false
[[bench]]
name = "bulk_insert_v2_benchmark"
path = "benches/bulk_insert_v2_benchmark.rs"
harness = false
[[bench]]
name = "capture_sift1m_fingerprints"
path = "benches/capture_sift1m_fingerprints.rs"
harness = false
required-features = ["bench-sift1m"]
[[bench]]
name = "chunked_insert_recall_benchmark"
path = "benches/chunked_insert_recall_benchmark.rs"
harness = false
[[bench]]
name = "column_filter_benchmark"
path = "benches/column_filter_benchmark.rs"
harness = false
[[bench]]
name = "concurrency_benchmark"
path = "benches/concurrency_benchmark.rs"
harness = false
[[bench]]
name = "diagnose_simd"
path = "benches/diagnose_simd.rs"
harness = false
[[bench]]
name = "dual_precision_benchmark"
path = "benches/dual_precision_benchmark.rs"
harness = false
[[bench]]
name = "edge_store_benchmark"
path = "benches/edge_store_benchmark.rs"
harness = false
[[bench]]
name = "filter_benchmark"
path = "benches/filter_benchmark.rs"
harness = false
[[bench]]
name = "gpu_benchmark"
path = "benches/gpu_benchmark.rs"
harness = false
required-features = ["gpu"]
[[bench]]
name = "gpu_rtx4090"
path = "benches/gpu_rtx4090.rs"
harness = false
required-features = ["gpu"]
[[bench]]
name = "gpu_traversal_benchmark"
path = "benches/gpu_traversal_benchmark.rs"
harness = false
required-features = ["gpu"]
[[bench]]
name = "graph_traversal_v2"
path = "benches/graph_traversal_v2.rs"
harness = false
[[bench]]
name = "hnsw_benchmark"
path = "benches/hnsw_benchmark.rs"
harness = false
[[bench]]
name = "hnsw_comparison_benchmark"
path = "benches/hnsw_comparison_benchmark.rs"
harness = false
[[bench]]
name = "hnsw_tuning"
path = "benches/hnsw_tuning.rs"
harness = false
[[bench]]
name = "i9_14900k_benchmark"
path = "benches/i9_14900k_benchmark.rs"
harness = false
[[bench]]
name = "import_benchmark"
path = "benches/import_benchmark.rs"
harness = false
[[bench]]
name = "match_parser_benchmark"
path = "benches/match_parser_benchmark.rs"
harness = false
[[bench]]
name = "orderby_similarity_benchmark"
path = "benches/orderby_similarity_benchmark.rs"
harness = false
[[bench]]
name = "overhead_benchmark"
path = "benches/overhead_benchmark.rs"
harness = false
[[bench]]
name = "parallel_benchmark"
path = "benches/parallel_benchmark.rs"
harness = false
[[bench]]
name = "perf_benchmark"
path = "benches/perf_benchmark.rs"
harness = false
[[bench]]
name = "portable_simd_eval"
path = "benches/portable_simd_eval.rs"
[[bench]]
name = "pq_hnsw_benchmark"
path = "benches/pq_hnsw_benchmark.rs"
harness = false
[[bench]]
name = "pq_recall_benchmark"
path = "benches/pq_recall_benchmark.rs"
harness = false
[[bench]]
name = "pq_recall_multidist"
path = "benches/pq_recall_multidist.rs"
harness = false
[[bench]]
name = "prefetch_tuning_benchmark"
path = "benches/prefetch_tuning_benchmark.rs"
[[bench]]
name = "property_index_benchmark"
path = "benches/property_index_benchmark.rs"
harness = false
[[bench]]
name = "quantization_benchmark"
path = "benches/quantization_benchmark.rs"
harness = false
[[bench]]
name = "recall_benchmark"
path = "benches/recall_benchmark.rs"
harness = false
[[bench]]
name = "recall_comprehensive"
path = "benches/recall_comprehensive.rs"
harness = false
[[bench]]
name = "recall_perf_validation"
path = "benches/recall_perf_validation.rs"
harness = false
[[bench]]
name = "scalability_benchmark"
path = "benches/scalability_benchmark.rs"
harness = false
[[bench]]
name = "scalability_quick"
path = "benches/scalability_quick.rs"
harness = false
required-features = ["internal-bench"]
[[bench]]
name = "scale_benchmark"
path = "benches/scale_benchmark.rs"
harness = false
[[bench]]
name = "search_benchmark"
path = "benches/search_benchmark.rs"
harness = false
[[bench]]
name = "search_layer_benchmark"
path = "benches/search_layer_benchmark.rs"
harness = false
[[bench]]
name = "sift1m_recall"
path = "benches/sift1m_recall.rs"
harness = false
required-features = ["bench-sift1m"]
[[bench]]
name = "simd_benchmark"
path = "benches/simd_benchmark.rs"
harness = false
[[bench]]
name = "similarity_benchmark"
path = "benches/similarity_benchmark.rs"
harness = false
[[bench]]
name = "smoke_test"
path = "benches/smoke_test.rs"
harness = false
[[bench]]
name = "sparse_benchmark"
path = "benches/sparse_benchmark.rs"
harness = false
[[bench]]
name = "trigram_benchmark"
path = "benches/trigram_benchmark.rs"
harness = false
[[bench]]
name = "velesql_benchmark"
path = "benches/velesql_benchmark.rs"
harness = false
[[bench]]
name = "velesql_execution_benchmark"
path = "benches/velesql_execution_benchmark.rs"
harness = false
[dependencies.arc-swap]
version = "1.9"
[dependencies.bytemuck]
version = "1.14"
features = ["derive"]
optional = true
[dependencies.bytes]
version = "1.11"
[dependencies.dashmap]
version = "6.2"
[dependencies.figment]
version = "0.10"
features = [
"toml",
"env",
]
[dependencies.flate2]
version = "1"
optional = true
[dependencies.fs2]
version = "0.4"
optional = true
[dependencies.half]
version = "2.4"
features = [
"std",
"serde",
]
[dependencies.hex]
version = "0.4"
optional = true
[dependencies.hostname]
version = "0.4"
optional = true
[dependencies.indexmap]
version = "2.14"
[dependencies.loom]
version = "0.7"
optional = true
[dependencies.memmap2]
version = "0.9"
optional = true
[dependencies.ndarray]
version = "0.17"
optional = true
default-features = false
[dependencies.parking_lot]
version = "0.12"
[dependencies.pest]
version = "2.7"
[dependencies.pest_derive]
version = "2.7"
[dependencies.pollster]
version = "0.4"
optional = true
[dependencies.postcard]
version = "1"
features = [
"alloc",
"use-std",
]
[dependencies.rand]
version = "0.10"
[dependencies.rayon]
version = "1.12"
optional = true
[dependencies.reqwest]
version = "0.13"
features = ["json"]
optional = true
[dependencies.roaring]
version = "0.11"
features = ["serde"]
[dependencies.rustc-hash]
version = "2.1"
[dependencies.serde]
version = "1.0"
features = ["derive"]
[dependencies.serde_json]
version = "1.0"
[dependencies.sha2]
version = "0.11"
optional = true
[dependencies.smallvec]
version = "1"
features = ["serde"]
[dependencies.tar]
version = "0.4"
optional = true
[dependencies.thiserror]
version = "2.0"
[dependencies.tokio]
version = "1.52"
features = ["full"]
optional = true
[dependencies.toml]
version = "1.1"
[dependencies.tracing]
version = "0.1"
[dependencies.ureq]
version = "2"
features = ["tls"]
optional = true
[dependencies.utoipa]
version = "5"
optional = true
[dependencies.wgpu]
version = "29"
optional = true
[dependencies.whoami]
version = "1.5"
optional = true
[dev-dependencies.clap]
version = "4.6"
features = ["derive"]
[dev-dependencies.criterion]
version = "0.5"
[dev-dependencies.proptest]
version = "1.5"
[dev-dependencies.rand_distr]
version = "0.6"
[dev-dependencies.serial_test]
version = "3.5"
[dev-dependencies.tempfile]
version = "3.14"
[dev-dependencies.tokio-test]
version = "0.4"
[target.'cfg(not(target_arch = "wasm32"))'.dependencies.uuid]
version = "1.23"
features = [
"v4",
"serde",
]
[target.'cfg(target_arch = "wasm32")'.dependencies.getrandom_03]
version = "0.3"
features = ["wasm_js"]
package = "getrandom"
[target.'cfg(target_arch = "wasm32")'.dependencies.getrandom_04]
version = "0.4"
features = ["wasm_js"]
package = "getrandom"
[target.'cfg(target_os = "linux")'.dependencies.libc]
version = "0.2"
[target.'cfg(target_os = "windows")'.dependencies.windows-sys]
version = "0.61"
features = [
"Win32_Foundation",
"Win32_System_Ioctl",
"Win32_System_IO",
]
[lints.clippy]
assertions_on_constants = "allow"
cast_lossless = "allow"
cast_possible_truncation = "warn"
cast_possible_wrap = "warn"
cast_precision_loss = "warn"
cast_sign_loss = "warn"
collapsible_if = "allow"
derive_partial_eq_without_eq = "allow"
doc_markdown = "allow"
if_not_else = "allow"
implicit_hasher = "allow"
imprecise_flops = "allow"
large_stack_arrays = "allow"
manual_assert = "allow"
manual_let_else = "allow"
match_single_binding = "allow"
missing_const_for_fn = "allow"
missing_errors_doc = "allow"
missing_panics_doc = "allow"
module_name_repetitions = "allow"
non_send_fields_in_send_ty = "warn"
option_if_let_else = "allow"
ptr_as_ptr = "allow"
redundant_clone = "allow"
redundant_pub_crate = "allow"
set_contains_or_insert = "allow"
significant_drop_in_scrutinee = "allow"
significant_drop_tightening = "allow"
single_match_else = "allow"
struct_field_names = "allow"
suboptimal_flops = "allow"
too_many_lines = "allow"
uninlined_format_args = "allow"
unnecessary_cast = "allow"
unused_async = "allow"
unused_peekable = "allow"
unused_self = "allow"
use_self = "allow"
used_underscore_binding = "allow"
useless_let_if_seq = "allow"
wildcard_imports = "allow"
[lints.clippy.pedantic]
level = "warn"
priority = -1
[lints.rust.unexpected_cfgs]
level = "warn"
priority = 0
check-cfg = ["cfg(loom)"]