http-client-2 6.6.2

Types and traits for http clients.
[package]
name = "http-client-2"
version = "6.6.2"
license = "MIT OR Apache-2.0"
repository = "https://github.com/http-rs/http-client"
documentation = "https://docs.rs/http-client"
description = "Types and traits for http clients."
keywords = ["http", "service", "client", "futures", "async"]
categories = ["asynchronous", "web-programming", "web-programming::http-client", "web-programming::websocket"]
authors = [
    "Yoshua Wuyts <yoshuawuyts@gmail.com>",
    "dignifiedquire <me@dignifiedquire.com>",
    "Jeremiah Senkpiel <fishrock123@rocketmail.com>"
]
readme = "README.md"
edition = "2018"

[package.metadata.docs.rs]
features = ["docs"]
rustdoc-args = ["--cfg", "feature=\"docs\""]

[features]
default = ["h1_client", "native-tls"]
docs = ["h1_client", "curl_client", "wasm_client", "hyper_client"]
h1_client = ["async-h1-2", "async-std", "dashmap", "deadpool", "futures"]
h1_client_rustls = ["h1_client", "rustls"]
native_client = ["curl_client", "wasm_client"]
curl_client = ["isahc", "async-std"]
wasm_client = ["js-sys", "web-sys", "wasm-bindgen", "wasm-bindgen-futures", "futures", "async-std"]
hyper_client = ["hyper", "hyper-tls", "http_types/hyperium_http", "futures-util", "tokio"]

native-tls = ["async-native-tls"]
rustls = ["async-tls", "rustls_crate"]

unstable-config = [] # deprecated

[dependencies]
async-trait = "0.1"
http_types = { version = "3.1.0", package = "http-types-2" }
log = "0.4"
cfg-if = "1.0"

# h1_client
async-h1-2 = { version = "2.4.0", package = "async-h1-2", optional = true }
async-std = { version = "1.13", default-features = false, optional = true }
async-native-tls = { version = "0.5", optional = true }
dashmap = { version = "6.1.0", optional = true }
deadpool = { version = "0.7.0", optional = true }
futures = { version = "0.3.31", optional = true }

# h1_client_rustls
async-tls = { version = "0.13.0", optional = true }
rustls_crate = { version = "0.23.29", optional = true, package = "rustls" }

# hyper_client
hyper = { version = "1.6.0", features = ["client", "http1"], optional = true }
hyper-tls = { version = "0.6.0", optional = true }
futures-util = { version = "0.3.31", features = ["io"], optional = true }
tokio = { version = "1.46.1", features = ["time"], optional = true }

# curl_client
[target.'cfg(not(target_arch = "wasm32"))'.dependencies]
isahc = { version = "1.7.2", optional = true, default-features = false, features = ["http2"]  }

# wasm_client
[target.'cfg(target_arch = "wasm32")'.dependencies]
js-sys = { version = "0.3.74", optional = true }
wasm-bindgen = { version = "0.2.99", optional = true }
wasm-bindgen-futures = { version = "0.4.49", optional = true }
futures = { version = "0.3.31", optional = true }
send_wrapper = { version = "0.6.0", features = ["futures"] }

[target.'cfg(target_arch = "wasm32")'.dependencies.web-sys]
version = "0.3.74"
optional = true
features = [
    "AbortSignal",
    "Headers",
    "ObserverCallback",
    "ReferrerPolicy",
    "Request",
    "RequestCache",
    "RequestCredentials",
    "RequestInit",
    "RequestMode",
    "RequestRedirect",
    "Response",
    "Window",
    "WorkerGlobalScope",
]

[dev-dependencies]
async-std = { version = "1.13.0", features = ["unstable", "attributes"] }
portpicker = "0.1.1"
tide = { version = "0.16.0", default-features = false, features = ["h1-server"] }
tide-rustls = { version = "0.3.0" }
tokio = { version = "1.46.1", features = ["macros"] }
serde = "1.0"
serde_json = "1.0"
mockito = "1.7.0"

[dev-dependencies.getrandom]
version = "0.2.16"
features = ["js"]