axum 0.6.20

Web framework that focuses on ergonomics and modularity
Documentation
[[bench]]
harness = false
name = "benches"
[build-dependencies.rustversion]
version = "1.0.9"
[dependencies.async-trait]
version = "0.1.67"

[dependencies.axum-core]
version = "0.3.4"

[dependencies.axum-macros]
optional = true
version = "0.3.8"

[dependencies.base64]
optional = true
version = "0.21.0"

[dependencies.bitflags]
version = "1.0"

[dependencies.bytes]
version = "1.0"

[dependencies.futures-util]
default-features = false
features = ["alloc"]
version = "0.3"

[dependencies.headers]
optional = true
version = "0.3.7"

[dependencies.http]
version = "0.2.9"

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

[dependencies.hyper]
features = ["stream"]
version = "0.14.24"

[dependencies.itoa]
version = "1.0.5"

[dependencies.matchit]
version = "0.7"

[dependencies.memchr]
version = "2.4.1"

[dependencies.mime]
version = "0.3.16"

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

[dependencies.percent-encoding]
version = "2.1"

[dependencies.pin-project-lite]
version = "0.2.7"

[dependencies.serde]
version = "1.0"

[dependencies.serde_json]
features = ["raw_value"]
optional = true
version = "1.0"

[dependencies.serde_path_to_error]
optional = true
version = "0.1.8"

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

[dependencies.sha1]
optional = true
version = "0.10"

[dependencies.sync_wrapper]
version = "0.1.1"

[dependencies.tokio]
features = ["time"]
optional = true
package = "tokio"
version = "1.25.0"

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

[dependencies.tower]
default-features = false
features = ["util"]
version = "0.4.13"

[dependencies.tower-http]
features = ["add-extension", "auth", "catch-panic", "compression-br", "compression-deflate", "compression-gzip", "cors", "decompression-br", "decompression-deflate", "decompression-gzip", "follow-redirect", "fs", "limit", "map-request-body", "map-response-body", "metrics", "normalize-path", "propagate-header", "redirect", "request-id", "sensitive-headers", "set-header", "set-status", "timeout", "trace", "util", "validate-request"]
optional = true
version = "0.4"

[dependencies.tower-layer]
version = "0.3.2"

[dependencies.tower-service]
version = "0.3"

[dependencies.tracing]
default-features = false
optional = true
version = "0.1"
[dev-dependencies.anyhow]
version = "1.0"

[dev-dependencies.axum-macros]
features = ["__private"]
version = "0.3.8"

[dev-dependencies.quickcheck]
version = "1.0"

[dev-dependencies.quickcheck_macros]
version = "1.0"

[dev-dependencies.reqwest]
default-features = false
features = ["json", "stream", "multipart"]
version = "0.11.14"

[dev-dependencies.rustversion]
version = "1.0.9"

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

[dev-dependencies.serde_json]
version = "1.0"

[dev-dependencies.time]
features = ["serde-human-readable"]
version = "0.3"

[dev-dependencies.tokio]
features = ["macros", "rt", "rt-multi-thread", "net", "test-util"]
package = "tokio"
version = "1.25.0"

[dev-dependencies.tokio-stream]
version = "0.1"

[dev-dependencies.tower]
features = ["util", "timeout", "limit", "load-shed", "steer", "filter"]
package = "tower"
version = "0.4.10"

[dev-dependencies.tower-http]
features = ["add-extension", "auth", "catch-panic", "compression-br", "compression-deflate", "compression-gzip", "cors", "decompression-br", "decompression-deflate", "decompression-gzip", "follow-redirect", "fs", "limit", "map-request-body", "map-response-body", "metrics", "normalize-path", "propagate-header", "redirect", "request-id", "sensitive-headers", "set-header", "set-status", "timeout", "trace", "util", "validate-request"]
version = "0.4"

[dev-dependencies.tracing]
version = "0.1"

[dev-dependencies.tracing-subscriber]
features = ["json"]
version = "0.3"

[dev-dependencies.uuid]
features = ["serde", "v4"]
version = "1.0"

[features]
__private_docs = ["tower/full", "dep:tower-http"]
default = ["form", "http1", "json", "matched-path", "original-uri", "query", "tokio", "tower-log"]
form = ["dep:serde_urlencoded"]
http1 = ["hyper/http1"]
http2 = ["hyper/http2"]
json = ["dep:serde_json", "dep:serde_path_to_error"]
macros = ["dep:axum-macros"]
matched-path = []
multipart = ["dep:multer"]
original-uri = []
query = ["dep:serde_urlencoded"]
tokio = ["dep:tokio", "hyper/server", "hyper/tcp", "hyper/runtime", "tower/make"]
tower-log = ["tower/log"]
tracing = ["dep:tracing", "axum-core/tracing"]
ws = ["tokio", "dep:tokio-tungstenite", "dep:sha1", "dep:base64"]

[package]
categories = ["asynchronous", "network-programming", "web-programming::http-server"]
description = "Web framework that focuses on ergonomics and modularity"
edition = "2021"
homepage = "https://github.com/tokio-rs/axum"
keywords = ["http", "web", "framework"]
license = "MIT"
name = "axum"
readme = "README.md"
repository = "https://github.com/tokio-rs/axum"
rust-version = "1.63"
version = "0.6.20"
[package.metadata.cargo-public-api-crates]
allowed = ["async_trait", "axum_core", "axum_macros", "bytes", "futures_core", "futures_sink", "futures_util", "headers", "headers_core", "http", "http_body", "hyper", "serde", "serde_json", "tower_layer", "tower_service"]
[package.metadata.docs.rs]
all-features = true
rustdoc-args = ["--cfg", "docsrs"]

[package.metadata.playground]
features = ["http1", "http2", "json", "multipart", "ws"]