volo-http 0.5.1

HTTP framework implementation of volo.
[badges.maintenance]
status = "actively-developed"

[dependencies.ahash]
version = "0.8"

[dependencies.async-broadcast]
optional = true
version = "0.7"

[dependencies.bytes]
version = "1"

[dependencies.chrono]
default-features = false
features = ["std", "clock"]
optional = true
version = "0.4"

[dependencies.cookie]
features = ["percent-encode"]
optional = true
version = "0.18"

[dependencies.cookie_store]
optional = true
version = "0.22"

[dependencies.faststr]
features = ["serde"]
version = "0.2.21"

[dependencies.futures]
version = "0.3"

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

[dependencies.hickory-resolver]
optional = true
version = "0.25"

[dependencies.http]
version = "1"

[dependencies.http-body]
version = "1"

[dependencies.http-body-util]
version = "0.1"

[dependencies.hyper]
version = "1.6"

[dependencies.hyper-util]
features = ["tokio"]
version = "0.1.11"

[dependencies.ipnet]
optional = true
version = "2"

[dependencies.itoa]
version = "1"

[dependencies.linkedbytes]
version = "0.1.9"

[dependencies.matchit]
optional = true
version = "0.9"

[dependencies.memchr]
optional = true
version = "2"

[dependencies.metainfo]
version = "0.7.14"

[dependencies.mime]
version = "0.3"

[dependencies.mime_guess]
default-features = false
optional = true
version = "2"

[dependencies.motore]
version = "0.4.1"

[dependencies.multer]
optional = true
version = "3"

[dependencies.parking_lot]
version = "0.12"

[dependencies.paste]
version = "1"

[dependencies.pin-project]
version = "1"

[dependencies.scopeguard]
optional = true
version = "1"

[dependencies.serde]
optional = true
version = "1"

[dependencies.serde_urlencoded]
optional = true
version = "0.7"

[dependencies.simdutf8]
version = "0.1"

[dependencies.sonic-rs]
optional = true
version = "0.5"

[dependencies.thiserror]
version = "2"

[dependencies.tokio]
features = ["fs", "time", "macros", "rt", "signal", "parking_lot"]
version = "1"

[dependencies.tokio-native-tls]
optional = true
version = "0.3"

[dependencies.tokio-rustls]
optional = true
version = "0.26"

[dependencies.tokio-tungstenite]
optional = true
version = "0.28"

[dependencies.tokio-util]
features = ["io"]
version = "0.7"

[dependencies.tracing]
version = "0.1"

[dependencies.tungstenite]
optional = true
version = "0.28"

[dependencies.url]
version = "2"

[dependencies.volo]
version = "0.12"

[dev-dependencies.async-stream]
version = "0.3"

[dev-dependencies.libc]
version = "0.2"

[dev-dependencies.reqwest]
features = ["multipart"]
version = "0.12"

[dev-dependencies.serde]
features = ["derive"]
version = "1"

[dev-dependencies.tokio-test]
version = "0.4"

[features]
__serde = ["dep:serde"]
__tls = []
client = ["hyper/client", "dep:async-broadcast", "dep:chrono", "dep:hickory-resolver"]
cookie = ["dep:cookie", "dep:cookie_store"]
default = ["default-client", "default-server"]
default-client = ["client", "http1", "json"]
default-server = ["server", "http1", "query", "form", "json", "multipart"]
form = ["__serde", "dep:serde_urlencoded"]
full = ["client", "server", "http1", "http2", "query", "form", "json", "tls", "cookie", "multipart", "ws"]
http1 = ["hyper/http1", "hyper-util/http1"]
http2 = ["hyper/http2", "hyper-util/http2"]
json = ["__serde", "dep:sonic-rs"]
json-utf8-lossy = ["json", "sonic-rs/utf8_lossy"]
multipart = ["dep:multer"]
native-tls = ["__tls", "dep:tokio-native-tls", "volo/native-tls"]
native-tls-vendored = ["native-tls", "volo/native-tls-vendored"]
query = ["__serde", "dep:serde_urlencoded"]
rustls = ["__tls", "dep:tokio-rustls", "volo/rustls"]
server = ["hyper-util/server", "dep:ipnet", "dep:matchit", "dep:memchr", "dep:scopeguard", "dep:mime_guess"]
tls = ["rustls"]
ws = ["dep:tungstenite", "dep:tokio-tungstenite"]

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

[package]
authors = ["Volo Team <volo@cloudwego.io>"]
autobenches = false
autobins = false
autoexamples = false
autolib = false
autotests = false
build = false
categories = ["asynchronous", "network-programming", "web-programming"]
description = "HTTP framework implementation of volo."
documentation = "https://docs.rs/volo-http"
edition = "2024"
homepage = "https://www.cloudwego.io/docs/volo/"
keywords = ["async", "rpc", "http"]
license = "MIT OR Apache-2.0"
name = "volo-http"
readme = "README.md"
repository = "https://github.com/cloudwego/volo"
rust-version = "1.85.0"
version = "0.5.1"

[package.metadata.docs.rs]
all-features = true
rustdoc-args = ["--cfg", "docsrs"]