sqlitegraph 1.2.2

Embedded graph database with full ACID transactions, HNSW vector search, and dual backend support
Documentation
[package]
name = "sqlitegraph"
version = "1.2.2"
edition = "2024"
description = "Embedded graph database with full ACID transactions, HNSW vector search, and dual backend support"
license = "GPL-3.0-or-later"
repository = "https://github.com/oldnordic/sqlitegraph"
documentation = "https://docs.rs/sqlitegraph"
readme = "README.md"
keywords = ["graph", "database", "sqlite", "embedded", "vector"]
categories = ["database", "data-structures"]
exclude = [
    "docs/internal/**",
    ".codemcp/**",
    ".splice-backup/**",
    "benches/*.json",
    "benches/*.txt",
]

[lib]
name = "sqlitegraph"
path = "src/lib.rs"

[dependencies]
rusqlite = { version = "0.31", features = ["bundled"] }
r2d2 = "0.8"
r2d2_sqlite = "0.24"
thiserror = "1"
serde = { version = "1", features = ["derive"] }
serde_json = "1"
bincode = "1.3"
ahash = "0.8"
parking_lot = "0.12"
rand = "0.8"
arc-swap = "1"
bytemuck = { version = "1.13", features = ["derive"] }
binrw = "0.13"
memmap2 = "0.9"
log = "0.4"
rayon = "1.10"

[dev-dependencies]
criterion = { version = "0.5", features = ["html_reports"] }
assert_cmd = "2"
tempfile = "3"
rand = "0.8"


[features]
default = ["sqlite-backend"]

# Backend selection
sqlite-backend = []          # SQLite backend (mature, ACID transactions)
native-v2 = ["v2_io_exclusive_std"]  # Native V2 backend (high performance, production ready)

# Development/debug features
debug = []                   # Enable debug/info logging (disabled in release for zero overhead)
trace_v2_io = []             # Debug V2 I/O operations (development only)
bench-ci = []                # CI benchmarking
dependency-monitoring = []   # Enable dependency health monitoring

# Legacy compatibility
v2_experimental = ["native-v2"]  # Alias for backwards compatibility
v2_io_exclusive_mmap = []    # MMAP-based I/O (advanced users)
v2_io_exclusive_std = []     # std::fs-based I/O (stable)

# Note: Profile configurations moved to workspace root Cargo.toml for proper workspace behavior

# Phase 8 Backend Comparison Benchmarks
[[bench]]
name = "bfs"
harness = false

[[bench]]
name = "k_hop"
harness = false

[[bench]]
name = "insert"
harness = false

[[bench]]
name = "hnsw"
harness = false

# Phase 7 Performance Optimization
[[bench]]
name = "comprehensive_performance"
harness = false

# Phase 7.01: Parallel WAL Recovery
[[bench]]
name = "wal_recovery_benchmarks"
harness = false

# Phase 15: Multi-layer HNSW benchmarks
[[bench]]
name = "hnsw_multilayer"
harness = false

# Phase 19: Connection pool performance benchmarks
[[bench]]
name = "connection_pool"
harness = false

# Phase 23: V2 performance benchmarks
[[bench]]
name = "v2_performance"
harness = false

# Phase 32: Prefetch window tuning benchmarks
[[bench]]
name = "prefetch_bench"
harness = false

# Phase 36: IO-12 Validation benchmarks
[[bench]]
name = "io12_validation"
harness = false