[package]
name = "libp2p-quic"
version = "0.9.3"
authors = ["Parity Technologies <admin@parity.io>"]
edition = "2021"
rust-version = { workspace = true }
description = "TLS based QUIC transport implementation for libp2p"
repository = "https://github.com/libp2p/rust-libp2p"
license = "MIT"
[dependencies]
async-std = { version = "1.12.0", optional = true }
bytes = "1.5.0"
futures = "0.3.28"
futures-timer = "3.0.2"
if-watch = "3.1.0"
libp2p-core = { workspace = true }
libp2p-tls = { workspace = true }
libp2p-identity = { workspace = true }
log = "0.4"
parking_lot = "0.12.0"
quinn = { version = "0.10.2", default-features = false, features = ["tls-rustls", "futures-io"] }
rand = "0.8.5"
rustls = { version = "0.21.7", default-features = false }
thiserror = "1.0.49"
tokio = { version = "1.33.0", default-features = false, features = ["net", "rt", "time"], optional = true }
socket2 = "0.5.4"
ring = "0.16.20"
[features]
tokio = ["dep:tokio", "if-watch/tokio", "quinn/runtime-tokio"]
async-std = ["dep:async-std", "if-watch/smol", "quinn/runtime-async-std"]
[package.metadata.docs.rs]
all-features = true
rustdoc-args = ["--cfg", "docsrs"]
rustc-args = ["--cfg", "docsrs"]
[dev-dependencies]
async-std = { version = "1.12.0", features = ["attributes"] }
env_logger = "0.10.0"
libp2p-identity = { workspace = true, features = ["rand"] }
libp2p-muxer-test-harness = { path = "../../muxers/test-harness" }
libp2p-noise = { workspace = true }
libp2p-tcp = { workspace = true, features = ["async-io"] }
libp2p-yamux = { workspace = true }
quickcheck = "1"
tokio = { version = "1.33.0", features = ["macros", "rt-multi-thread", "time"] }
[[test]]
name = "stream_compliance"
required-features = ["async-std"]
[lints]
workspace = true