open-standards/joule-code/joule-code-rs/crates/joule-moq-ingest/Cargo.toml
2026-10-18 14:11:15 -04:00

48 lines
2.1 KiB
TOML

[package]
name = "joule-moq-ingest"
version = "0.1.0"
description = "A WebRTC ingest and egress gateway for WAI rooms: WHIP (RFC 9725) into MoQ room tracks, where it is the track's publisher and signs every group's receipts as the first hop, and WHEP (draft-ietf-wish-whep-05) out of them, verifying every object's receipt before it forwards it."
edition = "2024"
rust-version = "1.97"
license = "Apache-2.0"
repository = "https://github.com/transaction-science/open-standards"
[lib]
path = "src/lib.rs"
[[bin]]
name = "joule-moq-ingest"
path = "src/main.rs"
[dependencies]
joule-moq = { path = "../joule-moq" }
joule-moq-relay = { path = "../joule-moq-relay" }
# WebRTC, sans-IO (MIT OR Apache-2.0), with its pure-Rust crypto backend: DTLS by its own
# `dimpl`, SRTP and the rest on RustCrypto. No C library is linked.
str0m = { version = "=0.24.1", default-features = false, features = ["rust-crypto"] }
# The WHIP and WHEP resources (MIT).
hyper = { version = "=1.11.1", features = ["server", "http1"] }
hyper-util = { version = "=0.1.20", default-features = false, features = ["tokio"] }
http-body-util = "=0.1.5"
quinn = "0.11"
rustls = { version = "0.23", default-features = false, features = ["ring", "std"] }
tokio = { version = "1", features = ["rt-multi-thread", "macros", "sync", "time", "net", "io-util", "signal"] }
bytes = "1"
futures = "0.3"
tracing = "0.1"
tracing-subscriber = "0.3"
serde = { version = "1", features = ["derive"] }
serde_json = "1"
toml = "0.9"
ed25519-dalek = { version = "2", features = ["rand_core"] }
rand_core_06 = { package = "rand_core", version = "0.6", features = ["getrandom"] }
sha2 = "0.10"
blake3 = "1"
hex = "0.4"
base64 = "0.22"
thiserror = "2"
[dev-dependencies]
tokio = { version = "1", features = ["rt-multi-thread", "macros"] }
# The tests' HTTP client.
hyper = { version = "=1.11.1", features = ["client", "http1"] }