Files
consensus/pkg/rust/Cargo.toml
T
2026-09-08 09:54:26 -07:00

65 lines
1.8 KiB
TOML

[package]
name = "lux-consensus"
version = "1.23.1"
edition = "2021"
description = "Lux Consensus SDK — pure-Rust Quasar post-quantum probabilistic consensus (Wave / FPC / Photon / Focus / Quasar PQ finality via hybrid BLS12-381 + Pulsar = P3Q)"
license-file = "LICENSE"
repository = "https://github.com/luxfi/consensus"
homepage = "https://lux.network"
readme = "README.md"
keywords = ["consensus", "post-quantum", "quasar", "probabilistic", "lux"]
categories = ["cryptography", "algorithms", "network-programming"]
authors = ["Lux Industries Inc."]
exclude = ["target/"]
[package.metadata.docs.rs]
no-default-features = true
rustdoc-args = ["--cfg", "docsrs"]
[dependencies]
hex = "0.4"
libc = "0.2"
# BLS12-381 signatures for Quasar consensus
blst = "0.3"
# Optional GPU acceleration dependencies
# MLX (Apple Silicon) - via C++ bindings
mlx-sys = { version = "0.1", optional = true }
# BLAKE3 for fast hashing (SIMD optimized)
blake3 = { version = "1.5", optional = true }
# Parallel processing
rayon = { version = "1.10", optional = true }
[lib]
name = "lux_consensus"
path = "src/lib.rs"
crate-type = ["rlib"]
[features]
default = []
# CPU-optimized with SIMD (no GPU)
simd = ["blake3", "rayon"]
# Apple Silicon GPU acceleration via MLX
mlx = ["mlx-sys", "simd"]
# NVIDIA GPU acceleration via CUDA (future)
cuda = ["simd"]
# Full GPU acceleration (MLX on macOS, CUDA on Linux/Windows)
gpu = ["mlx", "cuda"]
# [[example]]
# name = "basic_usage"
# path = "examples/basic_usage.rs"
[dev-dependencies]
criterion = { version = "0.7.0", features = ["html_reports"] }
# Reads conformance/corpus.json — the Go-generated finality standard this crate
# is checked against. Tests only; it is not in the shipped crate.
serde_json = "1.0"
[[bench]]
name = "consensus_bench"
harness = false