[package]
edition = "2024"
rust-version = "1.91"
name = "moq-net"
version = "0.3.13"
authors = ["Luke Curley"]
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "The networking layer for Media over QUIC: real-time pub/sub with built-in caching, fan-out, and prioritization."
readme = "README.md"
keywords = [
"quic",
"http3",
"webtransport",
"media",
"live",
]
categories = [
"multimedia",
"network-programming",
"web-programming",
]
license = "MIT OR Apache-2.0"
repository = "https://github.com/moq-dev/moq"
resolver = "2"
[package.metadata.cargo-shear]
ignored = ["getrandom"]
[features]
fuzz = []
[lib]
name = "moq_net"
path = "src/lib.rs"
[[example]]
name = "fuzz-seeds"
path = "examples/fuzz-seeds.rs"
required-features = ["fuzz"]
[[test]]
name = "announce_covering_route"
path = "tests/announce_covering_route.rs"
[[test]]
name = "announce_to_serve"
path = "tests/announce_to_serve.rs"
[[test]]
name = "broadcast_close"
path = "tests/broadcast_close.rs"
[[test]]
name = "catalog_resume_snapshot"
path = "tests/catalog_resume_snapshot.rs"
[[test]]
name = "datagram"
path = "tests/datagram.rs"
[[test]]
name = "dial_split_horizon"
path = "tests/dial_split_horizon.rs"
[[test]]
name = "fetch_cancel"
path = "tests/fetch_cancel.rs"
[[test]]
name = "fetch_from_feed"
path = "tests/fetch_from_feed.rs"
[[test]]
name = "finished_broadcast_mock"
path = "tests/finished_broadcast_mock.rs"
[[test]]
name = "goaway"
path = "tests/goaway.rs"
[[test]]
name = "group_charge"
path = "tests/group_charge.rs"
[[test]]
name = "history_groups"
path = "tests/history_groups.rs"
[[test]]
name = "idle_cancel_refetch"
path = "tests/idle_cancel_refetch.rs"
[[test]]
name = "idle_session"
path = "tests/idle_session.rs"
[[test]]
name = "late_lower_group"
path = "tests/late_lower_group.rs"
[[test]]
name = "legacy_reconnect"
path = "tests/legacy_reconnect.rs"
[[test]]
name = "loom"
path = "tests/loom.rs"
[[test]]
name = "mesh_withdraw"
path = "tests/mesh_withdraw.rs"
[[test]]
name = "rejoin"
path = "tests/rejoin.rs"
[[test]]
name = "session_close"
path = "tests/session_close.rs"
[[test]]
name = "settled_end_survives_abort"
path = "tests/settled_end_survives_abort.rs"
[[test]]
name = "subscribe_tracks"
path = "tests/subscribe_tracks.rs"
[[test]]
name = "subscription_end_integrity"
path = "tests/subscription_end_integrity.rs"
[[test]]
name = "track_abort_over_session"
path = "tests/track_abort_over_session.rs"
[[test]]
name = "track_info_cancel"
path = "tests/track_info_cancel.rs"
[[test]]
name = "track_tail"
path = "tests/track_tail.rs"
[[test]]
name = "wasm"
path = "tests/wasm.rs"
[[bench]]
name = "announce"
path = "benches/announce.rs"
harness = false
required-features = ["fuzz"]
[[bench]]
name = "frame"
path = "benches/frame.rs"
harness = false
required-features = ["fuzz"]
[[bench]]
name = "group"
path = "benches/group.rs"
harness = false
[[bench]]
name = "origin"
path = "benches/origin.rs"
harness = false
[[bench]]
name = "priority"
path = "benches/priority.rs"
harness = false
[[bench]]
name = "session"
path = "benches/session.rs"
harness = false
[[bench]]
name = "stats"
path = "benches/stats.rs"
harness = false
[[bench]]
name = "track"
path = "benches/track.rs"
harness = false
[[bench]]
name = "varint"
path = "benches/varint.rs"
harness = false
required-features = ["fuzz"]
[dependencies.arrayvec]
version = "0.7"
[dependencies.bytes]
version = "1"
[dependencies.futures]
version = "0.3"
[dependencies.kio]
version = "0.6.2"
[dependencies.moq-pattern]
version = "0.1.2"
features = ["serde"]
[dependencies.num_enum]
version = "0.7"
[dependencies.rand]
version = "0.10.1"
[dependencies.serde]
version = "1"
features = ["derive"]
[dependencies.slab]
version = "0.4.12"
[dependencies.thiserror]
version = "2"
[dependencies.tracing]
version = "0.1"
[dependencies.web-async]
version = "0.1.5"
features = ["tracing"]
[dependencies.web-transport-trait]
version = "0.4"
[dev-dependencies.criterion]
version = "0.8"
[dev-dependencies.serde_json]
version = "1"
[dev-dependencies.tokio]
version = "1.48"
features = [
"macros",
"io-util",
"sync",
"test-util",
"time",
"rt",
]
[target."cfg(loom)".dev-dependencies.loom]
version = "0.7.2"
features = ["futures"]
[target.'cfg(target_family = "wasm")'.dev-dependencies.getrandom]
version = "0.4"
features = ["wasm_js"]
[target.'cfg(target_family = "wasm")'.dev-dependencies.wasm-bindgen-test]
version = "=0.3.77"
[lints.rust.unexpected_cfgs]
level = "warn"
priority = 0
check-cfg = ["cfg(loom)"]