# 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 believe there's an error in this file please file an
# issue against the rust-lang/cargo repository. If you're
# editing this file be aware that the upstream Cargo.toml
# will likely look very different (and much more reasonable)

[package]
edition = "2018"
name = "hyper-rustls"
version = "0.20.0"
authors = ["Joseph Birr-Pixton <jpixton@gmail.com>"]
description = "Rustls+hyper integration for pure rust HTTPS"
homepage = "https://github.com/ctz/hyper-rustls"
readme = "README.md"
license = "Apache-2.0/ISC/MIT"
repository = "https://github.com/ctz/hyper-rustls"

[[example]]
name = "client"
path = "examples/client.rs"
required-features = ["tokio-runtime"]

[[example]]
name = "server"
path = "examples/server.rs"
required-features = ["tokio-runtime"]
[dependencies.bytes]
version = "0.5"

[dependencies.ct-logs]
version = "^0.6"
optional = true

[dependencies.futures-util]
version = "0.3.1"

[dependencies.hyper]
version = "0.13.0"
default-features = false

[dependencies.log]
version = "0.4.4"

[dependencies.rustls]
version = "0.17"

[dependencies.rustls-native-certs]
version = "0.3.0"
optional = true

[dependencies.tokio]
version = "0.2.4"

[dependencies.tokio-rustls]
version = "0.13.0"

[dependencies.webpki]
version = "0.21.0"

[dependencies.webpki-roots]
version = "0.19"
optional = true
[dev-dependencies.tokio]
version = "0.2"
features = ["io-std", "macros", "dns", "stream"]

[features]
default = ["native-tokio"]
native-tokio = ["tokio-runtime", "rustls-native-certs"]
tokio-runtime = ["hyper/runtime", "ct-logs"]
webpki-tokio = ["tokio-runtime", "webpki-roots"]
