[package] name = "wtransport" version = "0.5.0" license = "MIT OR Apache-2.0" authors = ["Biagio Festa"] description = "Implementation of the WebTransport (over HTTP3) protocol" repository = "https://github.com/BiagioFesta/wtransport" keywords = ["webtransport"] categories = [ "network-programming", "asynchronous" ] edition = "2021" readme = "../README.md" workspace = ".." rust-version = "1.70" [[example]] name = "client" required-features = ["dangerous-configuration"] [[example]] name = "full" required-features = ["self-signed"] [[example]] name = "server" required-features = ["self-signed"] [[example]] name = "gencert" required-features = ["self-signed"] [dependencies] bytes = "1.4.0" pem = "3.0.4" quinn = { version = "0.11.5", default-features = false, features = ["runtime-tokio", "rustls"] } rcgen = { version = "0.13.1", optional = true } rustls = { version = "0.23.12", default-features = false, features = ["ring"] } rustls-native-certs = "0.8.0" rustls-pemfile = "2.1.3" rustls-pki-types = "1.8.0" sha2 = "0.10.8" socket2 = "0.5.3" thiserror = "1.0.40" time = "0.3.21" tokio = { version = "1.28.1", default-features = false, features = ["macros", "fs", "io-util"] } tracing = "0.1.37" url = "2.4.0" wtransport-proto = { version = "0.5.0", path = "../wtransport-proto", features = ["async"] } x509-parser = "0.16.0" [dev-dependencies] anyhow = "1.0.71" axum = "0.7.1" hyper = "1.0.1" tokio = { version = "1.28.1", default-features = false, features = ["rt-multi-thread"] } tracing-subscriber = { version = "0.3.17", features = ["env-filter"] } [features] default = ["self-signed"] dangerous-configuration = [] quinn = [] quinn-log = ["quinn/log"] self-signed = ["dep:rcgen"] [package.metadata.docs.rs] all-features = true rustdoc-args = ["--cfg", "docsrs"] [package.metadata.cargo_check_external_types] allowed_external_types = [ "bytes::bytes::Bytes", "quinn", "quinn::connection::Connection", "quinn::recv_stream::ReadError", "quinn::recv_stream::RecvStream", "quinn::send_stream::SendStream", "quinn::send_stream::WriteError", "quinn_proto::config::ClientConfig", "quinn_proto::config::EndpointConfig", "quinn_proto::config::ServerConfig", "quinn_proto::config::TransportConfig", "quinn_proto::connection::ConnectionError", "quinn_proto::crypto::HandshakeTokenKey", "rustls", "rustls::client::client_conn::ClientConfig", "rustls::server::server_conn::ServerConfig", "rustls::verify::ServerCertVerifier", "rustls::webpki::anchors::RootCertStore", "time", "time::duration::Duration", "time::offset_date_time::OffsetDateTime", "tokio::io::async_read::AsyncRead", "tokio::io::async_write::AsyncWrite", "wtransport_proto", "wtransport_proto::WEBTRANSPORT_ALPN", "wtransport_proto::ids::SessionId", "wtransport_proto::ids::StreamId", "wtransport_proto::varint::VarInt", ]