[workspace] members = [ "crates/ruvector-core", "crates/ruvector-node", "crates/ruvector-wasm", "crates/ruvector-cli", "crates/ruvector-bench", "crates/ruvector-metrics", "crates/ruvector-filter", "crates/ruvector-router-core", "crates/ruvector-router-cli", "crates/ruvector-router-ffi", "crates/ruvector-router-wasm", "crates/ruvector-server", "crates/ruvector-snapshot", "crates/ruvector-tiny-dancer-core", "crates/ruvector-tiny-dancer-wasm", "crates/ruvector-tiny-dancer-node", "crates/ruvector-collections", "crates/ruvector-cluster", "crates/ruvector-raft", "crates/ruvector-replication", "crates/ruvector-graph", "crates/ruvector-graph-node", "crates/ruvector-graph-wasm", "crates/ruvector-gnn", "crates/ruvector-gnn-node", "crates/ruvector-gnn-wasm", ] resolver = "2" [workspace.package] version = "0.1.15" edition = "2021" rust-version = "1.77" license = "MIT" authors = ["Ruvector Team"] repository = "https://github.com/ruvnet/ruvector" [workspace.dependencies] # Core functionality redb = "2.1" memmap2 = "0.9" hnsw_rs = "0.3" simsimd = "5.9" rayon = "1.10" crossbeam = "0.8" # Serialization rkyv = "0.8" bincode = { version = "2.0.0-rc.3", features = ["serde"] } serde = { version = "1.0", features = ["derive"] } serde_json = "1.0" # Node.js bindings napi = { version = "2.16", default-features = false, features = ["napi9", "async", "tokio_rt"] } napi-derive = "2.16" # WASM wasm-bindgen = "0.2" wasm-bindgen-futures = "0.4" js-sys = "0.3" web-sys = { version = "0.3", features = ["Worker", "MessagePort", "console"] } getrandom = { version = "0.3", features = ["wasm_js"] } # Async runtime tokio = { version = "1.41", features = ["rt-multi-thread", "sync", "macros"] } futures = "0.3" # Error handling and utilities thiserror = "2.0" anyhow = "1.0" tracing = "0.1" tracing-subscriber = { version = "0.3", features = ["env-filter"] } # Math and numerics ndarray = "0.16" rand = "0.8" rand_distr = "0.4" # Time and UUID chrono = "0.4" uuid = { version = "1.11", features = ["v4", "serde", "js"] } # CLI clap = { version = "4.5", features = ["derive", "cargo"] } indicatif = "0.17" console = "0.15" # Testing and benchmarking criterion = { version = "0.5", features = ["html_reports"] } proptest = "1.5" mockall = "0.13" # Performance dashmap = "6.1" parking_lot = "0.12" once_cell = "1.20" [profile.release] opt-level = 3 lto = "fat" codegen-units = 1 strip = true panic = "abort" [profile.bench] inherits = "release" debug = true [profile.dev] opt-level = 0 debug = true [profile.test]