[dependencies.anyhow]
optional = true
version = "1"
[dependencies.async-trait]
version = "0.1"
[dependencies.base64]
version = "0.22"
[dependencies.brotli]
default-features = false
features = ["default"]
optional = true
version = "5.0"
[dependencies.bytes]
version = "1"
[dependencies.cookie]
features = ["percent-encode", "private", "signed"]
optional = true
version = "0.18"
[dependencies.encoding_rs]
optional = true
version = "0.8"
[dependencies.enumflags2]
version = "0.7"
[dependencies.eyre]
optional = true
version = "0.6"
[dependencies.flate2]
default-features = false
features = ["default"]
optional = true
version = "1.0"
[dependencies.form_urlencoded]
version = "1"
[dependencies.futures-channel]
version = "0.3"
[dependencies.futures-util]
default-features = false
features = ["io"]
version = "0.3"
[dependencies.headers]
version = "0.4"
[dependencies.http]
version = "1"
[dependencies.http-body-util]
version = "0.1"
[dependencies.hyper]
features = ["full", "http1", "client", "server"]
version = "1"
[dependencies.hyper-rustls]
default-features = false
features = ["native-tokio", "http1", "tls12", "logging"]
optional = true
version = "0.27"
[dependencies.hyper-util]
default-features = true
features = ["tokio"]
version = "0.1.2"
[dependencies.indexmap]
version = "2"
[dependencies.mime]
version = "0.3"
[dependencies.mime-infer]
version = "3"
[dependencies.multer]
version = "3"
[dependencies.multimap]
features = ["serde"]
version = "0.10"
[dependencies.native-tls]
features = ["alpn"]
optional = true
version = "0.2"
[dependencies.once_cell]
version = "1"
[dependencies.openssl]
optional = true
version = "0.10"
[dependencies.parking_lot]
version = "0.12"
[dependencies.percent-encoding]
version = "2"
[dependencies.pin-project]
version = "1"
[dependencies.quinn]
default-features = false
features = ["runtime-tokio", "ring", "tls-rustls"]
optional = true
version = "0.10"
[dependencies.rand]
version = "0.8"
[dependencies.rcgen]
optional = true
version = "0.13"
[dependencies.regex]
version = "1"
[dependencies.ring]
optional = true
version = "0.17"
[dependencies.rustls-pemfile]
optional = true
version = "2"
[dependencies.rustls-pemfile-old]
optional = true
package = "rustls-pemfile"
version = "1"
[dependencies.salvo-http3]
default-features = false
features = ["quinn"]
optional = true
version = "0.0.10"
[dependencies.salvo_macros]
default-features = false
version = "0.67.1"
[dependencies.serde]
features = ["derive"]
version = "1"
[dependencies.serde-xml-rs]
version = "0.6"
[dependencies.serde_json]
features = ["raw_value"]
version = "1"
[dependencies.serde_urlencoded]
optional = true
version = "0.7"
[dependencies.sync_wrapper]
version = "1.0"
[dependencies.tempfile]
version = "3"
[dependencies.thiserror]
version = "1"
[dependencies.tokio]
features = ["fs", "io-util", "macros", "net", "rt-multi-thread"]
version = "1"
[dependencies.tokio-native-tls]
optional = true
version = "0.3"
[dependencies.tokio-openssl]
optional = true
version = "0.6"
[dependencies.tokio-rustls]
default-features = false
features = ["logging", "tls12"]
optional = true
version = "0.26"
[dependencies.tokio-rustls-old]
optional = true
package = "tokio-rustls"
version = "0.24"
[dependencies.tokio-util]
features = ["io"]
version = "0.7"
[dependencies.tower]
default-features = false
features = ["buffer", "util"]
optional = true
version = "0.4"
[dependencies.tracing]
version = "0.1"
[dependencies.url]
optional = true
version = "2"
[dependencies.x509-parser]
optional = true
version = "0.16"
[dependencies.zstd]
default-features = false
features = ["default"]
optional = true
version = "0.13"
[dev-dependencies.fastrand]
version = "2"
[features]
acme = ["http1", "http2", "hyper-util/http1", "hyper-util/http2", "hyper-util/client-legacy", "dep:hyper-rustls", "dep:rcgen", "dep:ring", "ring", "dep:x509-parser", "dep:tokio-rustls", "dep:rustls-pemfile"]
cookie = ["dep:cookie"]
default = ["cookie", "fix-http1-request-uri", "server", "http1", "http2", "test", "ring"]
fix-http1-request-uri = ["http1"]
full = ["cookie", "fix-http1-request-uri", "server", "http1", "http2", "quinn", "rustls", "native-tls", "openssl", "unix", "test", "tower-compat", "anyhow", "eyre", "ring"]
http1 = []
http2 = ["hyper/http2"]
native-tls = ["http1", "http2", "dep:tokio-native-tls", "dep:native-tls"]
openssl = ["http2", "dep:openssl", "dep:tokio-openssl"]
quinn = ["dep:salvo-http3", "dep:quinn", "dep:tokio-rustls-old", "dep:rustls-pemfile-old", "rustls"]
ring = ["hyper-rustls?/ring", "tokio-rustls?/ring"]
rustls = ["http1", "http2", "dep:tokio-rustls", "dep:rustls-pemfile", "ring"]
server = []
test = ["dep:brotli", "dep:flate2", "dep:zstd", "dep:encoding_rs", "dep:serde_urlencoded", "dep:url", "tokio/macros"]
tower-compat = ["dep:tower"]
unix = ["http1"]
[lints.clippy]
future_not_send = "warn"
unwrap_used = "warn"
[lints.rust]
missing_docs = "warn"
unreachable_pub = "deny"
unsafe_code = "forbid"
[lints.rustdoc]
broken_intra_doc_links = "warn"
[package]
authors = ["Chrislearn Young <chrislearn@hotmail.com>", "driftluo <driftluo@foxmail.com>"]
categories = ["web-programming::http-server", "web-programming::websocket", "network-programming", "asynchronous"]
description = "Salvo is a powerful web framework that can make your work easier.\n"
edition = "2021"
homepage = "https://salvo.rs"
keywords = ["http", "async", "web", "framework", "server"]
license = "MIT OR Apache-2.0"
name = "salvo_core"
readme = "README.md"
repository = "https://github.com/salvo-rs/salvo"
version = "0.67.1"
[package.metadata.docs.rs]
all-features = true
rustdoc-args = ["--cfg", "docsrs"]
[target."cfg(unix)".dependencies.nix]
default-features = false
features = ["fs", "user"]
version = "0.28"