chronogrid/crates/chronogrid_net/Cargo.toml

63 lines
1.9 KiB
TOML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

[package]
name = "chronogrid_net"
description = "P2P mesh networking for ChronoGrid – libp2p over QUIC with Noise XK encryption"
version.workspace = true
edition.workspace = true
rust-version.workspace = true
publish = false
[dependencies]
# Ed25519 keypair generation and signing
ed25519-dalek = { version = "2", features = ["rand_core"] }
# Cryptographically-secure random number generation
rand = "0.8"
# SHA-256 for NodeId and SwarmKey fingerprint derivation
sha2 = "0.10"
# Hex encoding for NodeId and fingerprints
hex = "0.4"
# Serialization for keypair persistence
serde = { version = "1", features = ["derive"] }
serde_json = "1"
# Error handling
thiserror = "2"
# Zeroize sensitive key material on drop
zeroize = { version = "1", features = ["derive"] }
# ── libp2p networking stack ──────────────────────────────────────────────────
# Core libp2p with all required transport and behaviour features.
libp2p = { version = "0.54", features = [
"noise",
"quic",
"tcp",
"yamux",
"mdns",
"gossipsub",
"kad",
"identify",
"relay",
"request-response",
"tokio",
"macros",
] }
# Async runtime — required by libp2p tokio transport
tokio = { version = "1", features = ["full"] }
# Futures utilities for async stream handling
futures = "0.3"
# Logging / tracing
tracing = "0.1"
# Serialization for DeltaPacket (bincode binary format)
bincode = "1"
# LZ4 compression for delta payloads
lz4_flex = "0.11"
# ChaCha20-Poly1305 AEAD encryption for delta payloads
chacha20poly1305 = "0.10"
# Generic array for AEAD key/nonce types
generic-array = "0.14"
# async-trait for implementing libp2p request_response Codec
async-trait = "0.1"
[dev-dependencies]
tempfile = "3"
tokio = { version = "1", features = ["full", "test-util"] }
tracing-subscriber = { version = "0.3", features = ["env-filter"] }