[package]
name = "iroh-quinn-proto"
version = "0.12.0"
edition.workspace = true
rust-version.workspace = true
license.workspace = true
repository.workspace = true
description = "State machine for the QUIC transport protocol"
keywords.workspace = true
categories.workspace = true
workspace = ".."
[package.metadata.docs.rs]
all-features = true
[features]
default = ["rustls", "log"]
rustls = ["dep:rustls", "ring"]
ring = ["dep:ring"]
platform-verifier = ["dep:rustls-platform-verifier"]
log = ["tracing/log"]
[dependencies]
arbitrary = { workspace = true, optional = true }
bytes = { workspace = true }
rustc-hash = { workspace = true }
rand = { workspace = true }
ring = { workspace = true, optional = true }
rustls = { workspace = true, optional = true }
rustls-platform-verifier = { workspace = true, optional = true }
slab = { workspace = true }
thiserror = { workspace= true }
tinyvec = { workspace = true, features = ["alloc"] }
tracing = { workspace = true }
[dev-dependencies]
assert_matches = { workspace = true }
hex-literal = { workspace = true }
rcgen = { workspace = true }
tracing-subscriber = { workspace = true }
lazy_static = "1"
[lints.rust]
unexpected_cfgs = { level = "warn", check-cfg = ['cfg(fuzzing)'] }