rustbond 0.1.3

A Rust implementation of the MetalBond route distribution protocol
Documentation
[workspace]

[package]
name = "rustbond"
version = "0.1.3"
edition = "2021"
license = "Apache-2.0"
description = "A Rust implementation of the MetalBond route distribution protocol"
homepage = "https://github.com/maltej/rustbond"
repository = "https://github.com/maltej/rustbond"
readme = "README.md"
keywords = ["networking", "routing", "overlay", "metalbond"]
categories = ["network-programming"]

[dependencies]
# Async runtime
tokio = { version = "1", features = ["full"] }

# Protobuf
prost = "0.13"

# Error handling
thiserror = "2"

# Logging
tracing = "0.1"

# Network address types
ipnet = "2"

# Random for retry intervals
rand = "0.8"

# Fast, non-poisoning locks
parking_lot = "0.12"

# Async utilities (for combining watch receivers)
futures = "0.3"

# Netlink for kernel route installation (optional)
rtnetlink = { version = "0.14", optional = true }
netlink-packet-route = { version = "0.19", optional = true }

[features]
default = []
netlink = ["rtnetlink", "netlink-packet-route"]

[dev-dependencies]
tracing-subscriber = { version = "0.3", features = ["env-filter"] }
tokio = { version = "1", features = ["full", "test-util"] }
clap = { version = "4", features = ["derive"] }

[build-dependencies]
prost-build = "0.13"

[[example]]
name = "client"
path = "examples/client.rs"

[[example]]
name = "server"
path = "examples/server.rs"