[package]
edition = "2021"
name = "ruvector-postgres"
version = "2.0.1"
authors = ["ruv.io Team <info@ruv.io>"]
build = "build.rs"
exclude = [
"docker/",
"tests/",
"benches/",
"examples/",
]
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "High-performance PostgreSQL vector database extension v2 - pgvector drop-in replacement with 230+ SQL functions, SIMD acceleration, Flash Attention, GNN layers, hybrid search, multi-tenancy, self-healing, and self-learning capabilities"
homepage = "https://github.com/ruvnet/ruvector"
documentation = "https://docs.rs/ruvector-postgres"
readme = "README.md"
keywords = [
"postgresql",
"vector-database",
"embeddings",
"pgvector",
"hnsw",
]
categories = [
"database",
"science",
"algorithms",
]
license = "MIT"
repository = "https://github.com/ruvnet/ruvector"
[package.metadata.pgrx]
pg14 = "pg14"
pg15 = "pg15"
pg16 = "pg16"
pg17 = "pg17"
[features]
ai-complete = [
"learning",
"attention",
"gnn",
"routing",
"gated-transformer",
]
all-features = [
"ai-complete",
"graph-complete",
"embeddings",
]
attention = []
default = ["pg17"]
embeddings = ["dep:fastembed"]
gated-transformer = ["dep:ruvector-mincut-gated-transformer"]
gnn = []
graph = []
graph-complete = [
"hyperbolic",
"sparse",
"graph",
]
hyperbolic = []
index-all = [
"index-hnsw",
"index-ivfflat",
]
index-hnsw = []
index-ivfflat = []
learning = []
neon-compat = []
pg14 = [
"pgrx/pg14",
"pgrx-tests/pg14",
]
pg15 = [
"pgrx/pg15",
"pgrx-tests/pg15",
]
pg16 = [
"pgrx/pg16",
"pgrx-tests/pg16",
]
pg17 = [
"pgrx/pg17",
"pgrx-tests/pg17",
]
pg_test = []
quant-all = ["quantization-all"]
quantization-all = [
"quantization-scalar",
"quantization-product",
"quantization-binary",
]
quantization-binary = []
quantization-product = []
quantization-scalar = []
routing = []
simd-auto = []
simd-avx2 = []
simd-avx512 = []
simd-native = []
simd-neon = []
sparse = []
[lib]
name = "ruvector_postgres"
crate-type = [
"cdylib",
"lib",
]
path = "src/lib.rs"
[[bin]]
name = "download-models"
path = "scripts/download_models.rs"
required-features = ["embeddings"]
[[bin]]
name = "pgrx_embed_ruvector-postgres"
path = "src/bin/pgrx_embed.rs"
[dependencies.bincode]
version = "1.3"
[dependencies.bitvec]
version = "1.0"
[dependencies.chrono]
version = "0.4"
[dependencies.crossbeam]
version = "0.8"
[dependencies.dashmap]
version = "6.0"
[dependencies.fastembed]
version = "5"
optional = true
[dependencies.half]
version = "2.4"
features = [
"std",
"serde",
]
[dependencies.home]
version = "=0.5.9"
[dependencies.lazy_static]
version = "1.4"
[dependencies.memmap2]
version = "0.9"
[dependencies.once_cell]
version = "1.19"
[dependencies.ordered-float]
version = "4.2"
[dependencies.parking_lot]
version = "0.12"
[dependencies.pgrx]
version = "0.12"
[dependencies.priority-queue]
version = "2.0"
[dependencies.rand]
version = "0.8"
[dependencies.rand_chacha]
version = "0.3"
[dependencies.rayon]
version = "1.10"
[dependencies.rkyv]
version = "0.8"
[dependencies.ruvector-mincut-gated-transformer]
version = "0.1.0"
optional = true
[dependencies.serde]
version = "1.0"
features = ["derive"]
[dependencies.serde_json]
version = "1.0"
[dependencies.simsimd]
version = "5.9"
[dependencies.thiserror]
version = "1.0"
[dependencies.tracing]
version = "0.1"
[dev-dependencies.approx]
version = "0.5"
[dev-dependencies.criterion]
version = "0.5"
[dev-dependencies.pgrx-tests]
version = "0.12"
[dev-dependencies.proptest]
version = "1.4"
[dev-dependencies.rand]
version = "0.8"
[dev-dependencies.tempfile]
version = "3.10"