zpinger 0.7.0

Async, protocol-agnostic latency probe library: TCP / UDP / HTTP(S) / WebSocket / DNS / MQTT / gRPC / HLS / TLS / NTP / STUN / TURN / RTSP / RTMP / QUIC
Documentation
# THIS FILE IS AUTOMATICALLY GENERATED BY CARGO
#
# When uploading crates to the registry Cargo will automatically
# "normalize" Cargo.toml files for maximal compatibility
# with all versions of Cargo and also rewrite `path` dependencies
# to registry (e.g., crates.io) dependencies.
#
# If you are reading this file be aware that the original Cargo.toml
# will likely look very different (and much more reasonable).
# See Cargo.toml.orig for the original contents.

[package]
edition = "2021"
name = "zpinger"
version = "0.7.0"
authors = ["Zonda Yang <u226699@gmail.com>"]
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Async, protocol-agnostic latency probe library: TCP / UDP / HTTP(S) / WebSocket / DNS / MQTT / gRPC / HLS / TLS / NTP / STUN / TURN / RTSP / RTMP / QUIC"
homepage = "https://github.com/zondatw/knock_knock"
readme = "README.md"
keywords = [
    "ping",
    "latency",
    "network",
    "protocol",
    "async",
]
categories = [
    "network-programming",
    "asynchronous",
]
license = "MIT"
repository = "https://github.com/zondatw/knock_knock"

[features]
_tls = [
    "dep:rustls",
    "dep:tokio-rustls",
    "dep:rustls-pki-types",
    "dep:webpki-roots",
]
all = [
    "tcp",
    "udp",
    "dns",
    "http",
    "ws",
    "mqtt",
    "grpc",
    "hls",
    "tls",
    "ntp",
    "stun",
    "turn",
    "rtsp",
    "rtmp",
    "quic",
]
default = ["all"]
dns = []
grpc = [
    "dep:tonic",
    "dep:tonic-health",
]
hls = ["_tls"]
http = ["_tls"]
mqtt = ["_tls"]
ntp = []
quic = [
    "dep:quinn",
    "dep:rustls",
    "dep:rustls-pki-types",
    "dep:webpki-roots",
]
rtmp = ["_tls"]
rtsp = ["_tls"]
stun = []
tcp = []
tls = ["_tls"]
turn = []
udp = []
ws = [
    "_tls",
    "dep:tokio-tungstenite",
    "dep:futures-util",
]

[lib]
name = "zpinger"
path = "src/lib.rs"

[[test]]
name = "integration"
path = "tests/integration.rs"

[dependencies.async-trait]
version = "0.1"

[dependencies.futures-util]
version = "0.3"
features = ["sink"]
optional = true
default-features = false

[dependencies.quinn]
version = "0.11"
features = [
    "runtime-tokio",
    "rustls-ring",
]
optional = true
default-features = false

[dependencies.regex]
version = "1"

[dependencies.rustls]
version = "0.23"
features = [
    "std",
    "ring",
    "tls12",
    "logging",
]
optional = true
default-features = false

[dependencies.rustls-pki-types]
version = "1"
optional = true

[dependencies.tokio]
version = "1"
features = [
    "rt",
    "rt-multi-thread",
    "macros",
    "net",
    "io-util",
    "time",
    "sync",
]

[dependencies.tokio-rustls]
version = "0.26"
features = [
    "ring",
    "tls12",
]
optional = true
default-features = false

[dependencies.tokio-tungstenite]
version = "0.24"
features = ["handshake"]
optional = true
default-features = false

[dependencies.tonic]
version = "0.12"
features = [
    "channel",
    "tls",
    "tls-webpki-roots",
]
optional = true
default-features = false

[dependencies.tonic-health]
version = "0.12"
optional = true
default-features = false

[dependencies.webpki-roots]
version = "0.26"
optional = true

[dev-dependencies.tokio]
version = "1"
features = [
    "rt",
    "rt-multi-thread",
    "macros",
    "net",
    "io-util",
    "time",
    "sync",
]