[package]
edition = "2024"
name = "snarkos-node"
version = "4.5.0"
authors = ["The Aleo Team <hello@aleo.org>"]
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "A node for a decentralized operating system"
homepage = "https://aleo.org"
readme = "README.md"
keywords = [
"aleo",
"cryptography",
"blockchain",
"decentralized",
"zero-knowledge",
]
categories = [
"cryptography",
"cryptography::cryptocurrencies",
"os",
]
license = "Apache-2.0"
repository = "https://github.com/ProvableHQ/snarkOS"
[package.metadata.cargo-machete]
ignored = ["serde_json"]
[features]
cuda = [
"snarkvm/cuda",
"snarkos-account/cuda",
"snarkos-node-bft/cuda",
"snarkos-node-cdn/cuda",
"snarkos-node-consensus/cuda",
"snarkos-node-rest/cuda",
"snarkos-node-router/cuda",
"snarkos-node-sync/cuda",
]
default = []
history = ["snarkos-node-rest/history"]
locktick = [
"dep:locktick",
"snarkos-node-bft/locktick",
"snarkos-node-cdn/locktick",
"snarkos-node-consensus/locktick",
"snarkos-node-network/locktick",
"snarkos-node-rest/locktick",
"snarkos-node-router/locktick",
"snarkos-node-sync/locktick",
"snarkos-node-tcp/locktick",
"snarkos-utilities/locktick",
"snarkvm/locktick",
]
metrics = [
"snarkos-node-bft/metrics",
"snarkos-node-consensus/metrics",
"snarkos-node-router/metrics",
"snarkos-node-tcp/metrics",
]
serial = [
"snarkvm/serial",
"snarkos-node-bft/serial",
]
telemetry = [
"snarkos-node-bft/telemetry",
"snarkos-node-consensus/telemetry",
"snarkos-node-rest/telemetry",
]
test = []
timer = ["aleo-std/timer"]
[lib]
name = "snarkos_node"
path = "src/lib.rs"
[[test]]
name = "disconnect"
path = "tests/disconnect.rs"
[[test]]
name = "handshake"
path = "tests/handshake.rs"
[[test]]
name = "peering"
path = "tests/peering.rs"
[dependencies.aleo-std]
version = "1.0.1"
default-features = false
[dependencies.anyhow]
version = "1.0"
[dependencies.async-trait]
version = "0.1"
[dependencies.bytes]
version = "1"
[dependencies.colored]
version = "3"
[dependencies.futures-util]
version = "0.3"
features = ["sink"]
[dependencies.http]
version = "1"
[dependencies.indexmap]
version = "2"
default-features = false
[dependencies.locktick]
version = "0.4"
features = ["parking_lot"]
optional = true
[dependencies.lru]
version = "0.16"
[dependencies.num_cpus]
version = "1"
[dependencies.parking_lot]
version = "0.12"
[dependencies.rand]
version = "0.8"
default-features = false
[dependencies.reqwest]
version = "0.12"
features = [
"json",
"rustls-tls",
]
[dependencies.serde_json]
version = "1"
features = ["preserve_order"]
[dependencies.snarkos-account]
version = "=4.5.0"
[dependencies.snarkos-node-bft]
version = "=4.5.0"
[dependencies.snarkos-node-cdn]
version = "=4.5.0"
[dependencies.snarkos-node-consensus]
version = "=4.5.0"
[dependencies.snarkos-node-network]
version = "=4.5.0"
[dependencies.snarkos-node-rest]
version = "=4.5.0"
[dependencies.snarkos-node-router]
version = "=4.5.0"
[dependencies.snarkos-node-sync]
version = "=4.5.0"
[dependencies.snarkos-node-tcp]
version = "=4.5.0"
[dependencies.snarkos-utilities]
version = "=4.5.0"
[dependencies.snarkvm]
version = "=4.5.0"
default-features = false
[dependencies.time]
version = "0.3"
[dependencies.tokio]
version = "1.48"
features = [
"rt",
"signal",
]
[dependencies.tokio-stream]
version = "=0.1"
[dependencies.tokio-util]
version = "0.7"
[dependencies.tracing]
version = "0.1"
default-features = false
[dev-dependencies.deadline]
version = "0.2"
[dev-dependencies.paste]
version = "1"
[dev-dependencies.pea2pea]
version = "0.49"
[dev-dependencies.rand_chacha]
version = "0.3"
default-features = false
[dev-dependencies.snarkos-node-router]
version = "=4.5.0"
features = ["test"]
[dev-dependencies.tracing-subscriber]
version = "=0.3.19"
features = [
"env-filter",
"fmt",
]