[package]
edition = "2021"
rust-version = "1.75"
name = "neumann_server"
version = "0.4.0"
authors = ["Lukin Ackroyd <lukin@scrunchee.ai>"]
build = "build.rs"
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "gRPC server exposing Neumann database via QueryRouter"
homepage = "https://scrunchee.ai"
readme = "README.md"
keywords = [
"database",
"grpc",
"tensor",
"server",
]
categories = [
"database",
"network-programming",
]
license = "MIT OR Apache-2.0"
repository = "https://github.com/Shadylukin/Neumann"
[lib]
name = "neumann_server"
path = "src/lib.rs"
[[bin]]
name = "neumann_server"
path = "src/main.rs"
[[example]]
name = "web_preview"
path = "examples/web_preview.rs"
[[test]]
name = "grpc_integration"
path = "tests/grpc_integration.rs"
[[test]]
name = "grpc_vector_collections"
path = "tests/grpc_vector_collections.rs"
[[test]]
name = "grpc_vector_points"
path = "tests/grpc_vector_points.rs"
[[test]]
name = "integration"
path = "tests/integration.rs"
[[test]]
name = "web_integration"
path = "tests/web_integration.rs"
[[bench]]
name = "web_bench"
path = "benches/web_bench.rs"
harness = false
[dependencies.axum]
version = "0.8"
features = [
"json",
"macros",
]
[dependencies.bytes]
version = "1"
[dependencies.dashmap]
version = "6"
[dependencies.graph_engine]
version = "=0.4.0"
[dependencies.maud]
version = "0.27"
features = ["axum"]
[dependencies.neumann_parser]
version = "=0.4.0"
[dependencies.opentelemetry]
version = "0.31"
features = ["metrics"]
[dependencies.opentelemetry-otlp]
version = "0.31"
features = [
"metrics",
"grpc-tonic",
]
[dependencies.opentelemetry_sdk]
version = "0.31"
features = [
"rt-tokio",
"metrics",
]
[dependencies.parking_lot]
version = "0.12"
[dependencies.prost]
version = "0.14"
[dependencies.query_router]
version = "=0.4.0"
[dependencies.relational_engine]
version = "=0.4.0"
[dependencies.serde]
version = "1"
features = ["derive"]
[dependencies.serde_json]
version = "1"
[dependencies.tensor_blob]
version = "=0.4.0"
[dependencies.tensor_cache]
version = "=0.4.0"
[dependencies.tensor_checkpoint]
version = "=0.4.0"
[dependencies.tensor_spatial]
version = "=0.4.0"
[dependencies.tensor_store]
version = "=0.4.0"
[dependencies.tensor_unified]
version = "=0.4.0"
[dependencies.tensor_vault]
version = "=0.4.0"
[dependencies.thiserror]
version = "2"
[dependencies.tokio]
version = "1"
features = [
"rt-multi-thread",
"sync",
"signal",
"macros",
"time",
"net",
]
[dependencies.tokio-stream]
version = "0.1"
[dependencies.tonic]
version = "0.14"
features = [
"gzip",
"tls-ring",
]
[dependencies.tonic-prost]
version = "0.14"
[dependencies.tonic-reflection]
version = "0.14"
[dependencies.tonic-web]
version = "0.14"
[dependencies.tower]
version = "0.5"
features = [
"limit",
"load-shed",
"timeout",
]
[dependencies.tower-http]
version = "0.6"
features = [
"cors",
"trace",
"limit",
]
[dependencies.tracing]
version = "0.1"
[dependencies.tracing-subscriber]
version = "0.3"
features = ["env-filter"]
[dependencies.urlencoding]
version = "2"
[dependencies.uuid]
version = "1"
features = ["v4"]
[dependencies.vector_engine]
version = "=0.4.0"
[dependencies.x509-parser]
version = "0.18"
[dev-dependencies.criterion]
version = "0.8"
features = ["html_reports"]
[dev-dependencies.futures]
version = "0.3"
[dev-dependencies.http-body-util]
version = "0.1"
[dev-dependencies.query_router]
version = "=0.4.0"
[dev-dependencies.tempfile]
version = "3"
[dev-dependencies.tokio-stream]
version = "0.1"
[dev-dependencies.tokio-test]
version = "0.4"
[dev-dependencies.tower]
version = "0.5"
features = ["util"]
[build-dependencies.tonic-prost-build]
version = "0.14"
[lints.clippy]
all = "warn"
expect_used = "deny"
multiple_crate_versions = "allow"
nursery = "warn"
panic = "deny"
pedantic = "warn"
unwrap_used = "deny"
[lints.clippy.cargo]
level = "warn"
priority = -1
[lints.rust]
missing_docs = "warn"
unsafe_code = "forbid"