swactor/crates/distribution/Cargo.toml

68 lines
1.8 KiB
TOML
Raw Normal View History

[package]
name = "distribution"
version = "0.1.0"
edition = "2024"
[features]
default = []
iroh = ["dep:iroh", "dep:tokio", "dep:iroh-metrics"]
relay = [
"iroh",
"dep:iroh-relay",
"tokio/macros",
"tokio/signal",
]
# Standalone HTTP collector binary plus the post-processor for
# finalized bundles. Pulls axum + the file/tar/flate2 stack; library
# consumers that do not enable this feature stay free of those deps.
collector = [
"dep:axum",
"dep:tokio",
"tokio/macros",
"tokio/net",
"tokio/sync",
"tokio/time",
"tokio/fs",
"tokio/io-util",
"tokio/signal",
"dep:tar",
"dep:flate2",
]
[dependencies]
swactor = { path = "../..", features = ["serde", "transport"] }
swactor-transport = { path = "../transport" }
serde = { version = "1", features = ["derive"] }
serde_json = "1"
uuid = { version = "1", features = ["v4", "serde"] }
iroh = { version = "0.98", optional = true }
iroh-relay = { version = "0.98", features = ["server"], optional = true }
iroh-metrics = { version = "0.38", optional = true }
tokio = { version = "1", features = ["rt-multi-thread"], optional = true }
axum = { version = "0.8", optional = true }
tar = { version = "0.4", optional = true }
flate2 = { version = "1", optional = true }
[target.'cfg(target_os = "linux")'.dependencies]
libc = "0.2"
[dev-dependencies]
serde_json = "1"
iroh-relay = { version = "0.98", features = ["server", "test-utils"] }
tokio = { version = "1", features = ["rt-multi-thread", "macros", "net", "io-util", "time"] }
[[bin]]
name = "swactor-diag-collector"
path = "src/bin/swactor-diag-collector.rs"
required-features = ["collector"]
[[bin]]
name = "swactor-diag-postproc"
path = "src/bin/swactor-diag-postproc.rs"
required-features = ["collector"]
[[bin]]
name = "swactor-iroh-relay"
path = "src/bin/swactor-iroh-relay.rs"
required-features = ["relay"]