libp2p-webrtc 0.4.0-alpha.4

WebRTC transport for libp2p
Documentation
[package]
name = "libp2p-webrtc"
version = "0.4.0-alpha.4"
authors = ["Parity Technologies <admin@parity.io>"]
description = "WebRTC transport for libp2p"
repository = "https://github.com/libp2p/rust-libp2p"
license = "MIT"
edition = "2021"
rust-version = "1.60.0"
keywords = ["peer-to-peer", "libp2p", "networking"]
categories = ["network-programming", "asynchronous"]

[dependencies]
async-trait = "0.1"
asynchronous-codec = "0.6.1"
bytes = "1"
futures = "0.3"
futures-timer = "3"
hex = "0.4"
if-watch = "3.0"
libp2p-core = { version = "0.39.0", path = "../../core"  }
libp2p-noise = { version = "0.42.0", path = "../../transports/noise" }
libp2p-identity = { version = "0.1.0", path = "../../identity" }
log = "0.4"
multihash = { version = "0.17.0", default-features = false, features = ["sha2"] }
quick-protobuf = "0.8"
quick-protobuf-codec = { version = "0.1", path = "../../misc/quick-protobuf-codec" }
rand = "0.8"
rcgen = "0.9.3"
serde = { version = "1.0", features = ["derive"] }
stun = "0.4"
thiserror = "1"
tinytemplate = "1.2"
tokio = { version = "1.19", features = ["net"], optional = true}
tokio-util = { version = "0.7", features = ["compat"], optional = true }
webrtc = { version = "0.6.0", optional = true }

[features]
tokio = ["dep:tokio", "dep:tokio-util", "dep:webrtc", "if-watch/tokio"]
pem = ["webrtc?/pem"]

[dev-dependencies]
anyhow = "1.0"
env_logger = "0.10"
hex-literal = "0.3"
libp2p-swarm = { path = "../../swarm", features = ["macros", "tokio"] }
libp2p-ping = { path = "../../protocols/ping" }
tokio = { version = "1.19", features = ["full"] }
unsigned-varint = { version = "0.7", features = ["asynchronous_codec"] }
void = "1"
quickcheck = "1.0.3"

[[test]]
name = "smoke"
required-features = ["tokio"]

[[example]]
name = "listen_ping"
required-features = ["tokio"]