ruvector-solver 2.0.4

Sublinear-time solver for RuVector: O(log n) to O(√n) algorithms for sparse linear systems, PageRank, and spectral methods
Documentation
# THIS FILE IS AUTOMATICALLY GENERATED BY CARGO
#
# When uploading crates to the registry Cargo will automatically
# "normalize" Cargo.toml files for maximal compatibility
# with all versions of Cargo and also rewrite `path` dependencies
# to registry (e.g., crates.io) dependencies.
#
# If you are reading this file be aware that the original Cargo.toml
# will likely look very different (and much more reasonable).
# See Cargo.toml.orig for the original contents.

[package]
edition = "2021"
rust-version = "1.77"
name = "ruvector-solver"
version = "2.0.4"
authors = ["Ruvector Team"]
build = "build.rs"
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Sublinear-time solver for RuVector: O(log n) to O(√n) algorithms for sparse linear systems, PageRank, and spectral methods"
readme = "README.md"
keywords = [
    "linear-algebra",
    "sparse-matrix",
    "pagerank",
    "solver",
    "sublinear",
]
categories = [
    "mathematics",
    "science",
    "algorithms",
]
license = "MIT"
repository = "https://github.com/ruvnet/ruvector"

[features]
all-algorithms = [
    "neumann",
    "forward-push",
    "backward-push",
    "hybrid-random-walk",
    "true-solver",
    "cg",
    "bmssp",
]
backward-push = []
bmssp = []
cg = []
default = [
    "neumann",
    "cg",
    "forward-push",
]
forward-push = []
full = [
    "nalgebra-backend",
    "parallel",
    "all-algorithms",
]
hybrid-random-walk = ["getrandom"]
nalgebra-backend = ["nalgebra"]
neumann = []
parallel = [
    "rayon",
    "crossbeam",
]
simd = []
true-solver = ["neumann"]
wasm = []

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

[[test]]
name = "helpers"
path = "tests/helpers.rs"

[[test]]
name = "test_cg"
path = "tests/test_cg.rs"

[[test]]
name = "test_csr_matrix"
path = "tests/test_csr_matrix.rs"

[[test]]
name = "test_neumann"
path = "tests/test_neumann.rs"

[[test]]
name = "test_push"
path = "tests/test_push.rs"

[[test]]
name = "test_router"
path = "tests/test_router.rs"

[[test]]
name = "test_validation"
path = "tests/test_validation.rs"

[[bench]]
name = "solver_baseline"
path = "benches/solver_baseline.rs"
harness = false

[[bench]]
name = "solver_cg"
path = "benches/solver_cg.rs"
harness = false

[[bench]]
name = "solver_e2e"
path = "benches/solver_e2e.rs"
harness = false

[[bench]]
name = "solver_neumann"
path = "benches/solver_neumann.rs"
harness = false

[[bench]]
name = "solver_push"
path = "benches/solver_push.rs"
harness = false

[dependencies.crossbeam]
version = "0.8"
optional = true

[dependencies.dashmap]
version = "6.1"

[dependencies.getrandom]
version = "0.2"
optional = true

[dependencies.nalgebra]
version = "0.33"
features = ["std"]
optional = true
default-features = false

[dependencies.parking_lot]
version = "0.12"

[dependencies.rand]
version = "0.8"

[dependencies.rayon]
version = "1.10"
optional = true

[dependencies.serde]
version = "1.0"
features = [
    "derive",
    "derive",
]

[dependencies.thiserror]
version = "2.0"

[dependencies.tracing]
version = "0.1"

[dev-dependencies.approx]
version = "0.5"

[dev-dependencies.criterion]
version = "0.5"
features = ["html_reports"]

[dev-dependencies.proptest]
version = "1.5"

[target.'cfg(target_arch = "wasm32")'.dependencies.getrandom]
version = "0.2"
features = ["js"]