[package]
edition = "2024"
rust-version = "1.91"
name = "moq-uring"
version = "0.0.7"
authors = ["Luke Curley <kixelated@gmail.com>"]
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Experimental Linux io_uring support for Media over QUIC"
readme = "README.md"
keywords = [
"quic",
"io-uring",
"networking",
"linux",
]
categories = [
"asynchronous",
"network-programming",
"os::linux-apis",
]
license = "MIT OR Apache-2.0"
repository = "https://github.com/moq-dev/moq"
resolver = "2"
[features]
default = ["noq"]
noq = [
"dep:moq-noq-proto",
"dep:rustls",
"dep:rustls-platform-verifier",
]
qlog = ["moq-noq-proto?/qlog"]
[lib]
name = "moq_uring"
path = "src/lib.rs"
[[test]]
name = "allocations"
path = "tests/allocations.rs"
[[test]]
name = "echo"
path = "tests/echo.rs"
[[test]]
name = "ecn"
path = "tests/ecn.rs"
[[test]]
name = "endpoint"
path = "tests/endpoint.rs"
[[test]]
name = "identity"
path = "tests/identity.rs"
[[test]]
name = "qlog"
path = "tests/qlog.rs"
[[test]]
name = "session"
path = "tests/session.rs"
[[test]]
name = "support"
path = "tests/support.rs"
[[test]]
name = "teardown"
path = "tests/teardown.rs"
[[test]]
name = "web"
path = "tests/web.rs"
[[test]]
name = "workers"
path = "tests/workers.rs"
[[bench]]
name = "echo_noq"
path = "benches/echo_noq.rs"
harness = false
required-features = ["noq"]
[[bench]]
name = "session_lite"
path = "benches/session_lite.rs"
harness = false
[[bench]]
name = "udp_tokio"
path = "benches/udp_tokio.rs"
harness = false
[[bench]]
name = "udp_uring"
path = "benches/udp_uring.rs"
harness = false
[dev-dependencies.anyhow]
version = "1"
[dev-dependencies.criterion]
version = "0.8"
[dev-dependencies.tokio]
version = "1.48"
features = [
"macros",
"net",
"rt",
"sync",
"time",
]
[target.'cfg(target_os = "linux")'.dependencies.bytes]
version = "1"
[target.'cfg(target_os = "linux")'.dependencies.http]
version = "1"
[target.'cfg(target_os = "linux")'.dependencies.io-uring]
version = "0.7.14"
[target.'cfg(target_os = "linux")'.dependencies.kio]
version = "0.6.0"
[target.'cfg(target_os = "linux")'.dependencies.libc]
version = "0.2"
[target.'cfg(target_os = "linux")'.dependencies.moq-net]
version = "0.3.5"
[target.'cfg(target_os = "linux")'.dependencies.moq-noq-proto]
version = "1.3.1"
features = [
"bloom",
"tracing-log",
"rustls-aws-lc-rs",
]
optional = true
default-features = false
[target.'cfg(target_os = "linux")'.dependencies.moq-sock]
version = "0.1.0"
[target.'cfg(target_os = "linux")'.dependencies.rand]
version = "0.10"
[target.'cfg(target_os = "linux")'.dependencies.rustc-hash]
version = "2.1.3"
[target.'cfg(target_os = "linux")'.dependencies.rustls]
version = "0.23"
optional = true
[target.'cfg(target_os = "linux")'.dependencies.rustls-platform-verifier]
version = "0.7"
optional = true
[target.'cfg(target_os = "linux")'.dependencies.slab]
version = "0.4"
[target.'cfg(target_os = "linux")'.dependencies.thiserror]
version = "2"
[target.'cfg(target_os = "linux")'.dependencies.tracing]
version = "0.1"
[target.'cfg(target_os = "linux")'.dependencies.url]
version = "2"
[target.'cfg(target_os = "linux")'.dependencies.web-transport-proto]
version = "0.6"
[target.'cfg(target_os = "linux")'.dependencies.web-transport-trait]
version = "0.4"
[target.'cfg(target_os = "linux")'.dev-dependencies.io-uring]
version = "0.7.14"
[target.'cfg(target_os = "linux")'.dev-dependencies.libc]
version = "0.2"
[target.'cfg(target_os = "linux")'.dev-dependencies.moq-noq-udp]
version = "1.3.1"
[target.'cfg(target_os = "linux")'.dev-dependencies.nix]
version = "0.31.3"
features = [
"net",
"socket",
"uio",
]
[target.'cfg(target_os = "linux")'.dev-dependencies.rcgen]
version = "0.14"
features = [
"pem",
"aws_lc_rs",
]
default-features = false
[target.'cfg(target_os = "linux")'.dev-dependencies.rustls]
version = "0.23"
[target.'cfg(target_os = "linux")'.dev-dependencies.serde_json]
version = "1"
[target.'cfg(target_os = "linux")'.dev-dependencies.tempfile]
version = "3"
[target.'cfg(target_os = "linux")'.dev-dependencies.tracing]
version = "0.1"
[target.'cfg(target_os = "linux")'.dev-dependencies.web-transport-moq]
version = "1.3.1"
default-features = false