runar_node 0.1.0

Runar Node implementation
Documentation
[package]
name = "runar_node"
version = "0.1.0"
edition = "2021"
description = "Runar Node implementation"
authors = ["Runar Team"]
license = "MIT"
keywords = ["p2p", "encryption", "micro-services"]
categories = ["development-tools"]
repository = "https://github.com/runar-labs/runar-rust"
homepage = "https://github.com/runar-labs/runar-rust"
documentation = "https://docs.rs/runar_node"
readme = "README.md"
rust-version = "1.70"

[dependencies]
dashmap = "5"
arc-swap = "1.6"
anyhow = "1.0"
async-trait = { workspace = true }
tokio = { version = "1.28", features = ["full"] }
uuid = { version = "1.3", features = ["v4"] }
log = "0.4"
serde = { version = "1.0", features = ["derive"], default-features = false }
serde_json = "1.0"
thiserror = "1.0"
env_logger = "0.10"
chrono = "0.4"
rand = "0.9.0"
once_cell = "1"
ctor = "0.2"

# Local dependencies
runar_common = "0.1"
runar-keys = { version = "0.1", path = "../runar-keys" }
runar-serializer = { version = "0.1", path = "../runar-serializer" }
runar-serializer-macros = { version = "0.1", path = "../runar-serializer-macros" }
runar-schemas = { version = "0.1", path = "../runar-schemas" }
runar_macros_common = { version = "0.1", path = "../runar-macros-common" }


# Network dependencies
quinn = "0.11"
bytes = "1.4.0"
socket2 = "0.5.3"
rustls = { version = "0.23.28" }
rustls-pki-types = "1.12.0" # For Rustls certificate types
rustls-pemfile = "1.0.3"
rustls-native-certs = "0.6.2"
rcgen = "0.11.1"
bincode = "1.3.3"
serde_cbor = "0.11"
prost = { version = "0.12", default-features = false, features = ["std", "derive"] }
futures-util = "0.3.28"
tokio-tungstenite = { version = "0.18", features = ["rustls-tls-native-roots"] }
webpki-roots = "0.25.0"  # For system root certificates

# Certificate parsing for strict server-name verification
x509-parser = { version = "0.16", features = ["verify"] }

# For the example
tokio-stream = "0.1.14"
ring = { version = "0.17.14", features = ["std"] }
hex = "0.4.3"
p256 = { version = "0.13", features = ["ecdsa", "pkcs8"] }
pkcs8 = "0.10"
futures = "0.3"

[features]
default = []
 
[package.metadata.docs.rs]
all-features = true
rustdoc-args = ["--cfg", "docsrs"]
targets = [
    "x86_64-unknown-linux-gnu",
    "aarch64-unknown-linux-gnu",
    "x86_64-apple-darwin",
    "aarch64-apple-darwin",
    "x86_64-pc-windows-msvc",
    "aarch64-pc-windows-msvc",
]

[dev-dependencies]
tokio-test = "0.4"
criterion = { version = "0.5", features = ["async_tokio"] }
runar-test-utils = { path = "../runar-test-utils" }