mirror of
https://github.com/actix/actix-web.git
synced 2024-11-10 19:01:05 +00:00
174 lines
4.7 KiB
TOML
174 lines
4.7 KiB
TOML
[package]
|
|
name = "actix-web"
|
|
version = "4.5.1"
|
|
description = "Actix Web is a powerful, pragmatic, and extremely fast web framework for Rust"
|
|
authors = [
|
|
"Nikolay Kim <fafhrd91@gmail.com>",
|
|
"Rob Ede <robjtede@icloud.com>",
|
|
]
|
|
keywords = ["actix", "http", "web", "framework", "async"]
|
|
categories = [
|
|
"network-programming",
|
|
"asynchronous",
|
|
"web-programming::http-server",
|
|
"web-programming::websocket"
|
|
]
|
|
homepage = "https://actix.rs"
|
|
repository = "https://github.com/actix/actix-web"
|
|
license.workspace = true
|
|
edition.workspace = true
|
|
rust-version.workspace = true
|
|
|
|
[package.metadata.docs.rs]
|
|
rustdoc-args = ["--cfg", "docsrs"]
|
|
features = [
|
|
"macros",
|
|
"openssl",
|
|
"rustls-0_20",
|
|
"rustls-0_21",
|
|
"rustls-0_22",
|
|
"compress-brotli",
|
|
"compress-gzip",
|
|
"compress-zstd",
|
|
"cookies",
|
|
"secure-cookies",
|
|
]
|
|
|
|
|
|
[lib]
|
|
name = "actix_web"
|
|
path = "src/lib.rs"
|
|
|
|
[features]
|
|
default = ["macros", "compress-brotli", "compress-gzip", "compress-zstd", "cookies", "http2", "unicode"]
|
|
|
|
# Brotli algorithm content-encoding support
|
|
compress-brotli = ["actix-http/compress-brotli", "__compress"]
|
|
# Gzip and deflate algorithms content-encoding support
|
|
compress-gzip = ["actix-http/compress-gzip", "__compress"]
|
|
# Zstd algorithm content-encoding support
|
|
compress-zstd = ["actix-http/compress-zstd", "__compress"]
|
|
|
|
# Routing and runtime proc macros
|
|
macros = ["actix-macros", "actix-web-codegen"]
|
|
|
|
# Cookies support
|
|
cookies = ["cookie"]
|
|
|
|
# Secure & signed cookies
|
|
secure-cookies = ["cookies", "cookie/secure"]
|
|
|
|
http2 = ["actix-http/http2"]
|
|
|
|
# TLS via OpenSSL
|
|
openssl = ["http2", "actix-http/openssl", "actix-tls/accept", "actix-tls/openssl"]
|
|
|
|
# TLS via Rustls v0.20
|
|
rustls = ["rustls-0_20"]
|
|
# TLS via Rustls v0.20
|
|
rustls-0_20 = ["http2", "actix-http/rustls-0_20", "actix-tls/accept", "actix-tls/rustls-0_20"]
|
|
# TLS via Rustls v0.21
|
|
rustls-0_21 = ["http2", "actix-http/rustls-0_21", "actix-tls/accept", "actix-tls/rustls-0_21"]
|
|
# TLS via Rustls v0.22
|
|
rustls-0_22 = ["http2", "actix-http/rustls-0_22", "actix-tls/accept", "actix-tls/rustls-0_22"]
|
|
|
|
# Full unicode support
|
|
unicode = ["dep:regex", "actix-router/unicode"]
|
|
|
|
# Internal (PRIVATE!) features used to aid testing and checking feature status.
|
|
# Don't rely on these whatsoever. They may disappear at anytime.
|
|
__compress = []
|
|
|
|
# io-uring feature only available for Linux OSes.
|
|
experimental-io-uring = ["actix-server/io-uring"]
|
|
|
|
[dependencies]
|
|
actix-codec = "0.5"
|
|
actix-macros = { version = "0.2.3", optional = true }
|
|
actix-rt = { version = "2.6", default-features = false }
|
|
actix-server = "2"
|
|
actix-service = "2"
|
|
actix-utils = "3"
|
|
actix-tls = { version = "3.3", default-features = false, optional = true }
|
|
|
|
actix-http = { version = "3.6", features = ["ws"] }
|
|
actix-router = { version = "0.5", default-features = false, features = ["http"] }
|
|
actix-web-codegen = { version = "4.2", optional = true }
|
|
|
|
ahash = "0.8"
|
|
bytes = "1"
|
|
bytestring = "1"
|
|
cfg-if = "1"
|
|
cookie = { version = "0.16", features = ["percent-encode"], optional = true }
|
|
derive_more = "0.99.8"
|
|
encoding_rs = "0.8"
|
|
futures-core = { version = "0.3.17", default-features = false }
|
|
futures-util = { version = "0.3.17", default-features = false }
|
|
itoa = "1"
|
|
language-tags = "0.3"
|
|
log = "0.4"
|
|
mime = "0.3"
|
|
once_cell = "1.5"
|
|
pin-project-lite = "0.2.7"
|
|
regex = { version = "1.5.5", optional = true }
|
|
regex-lite = "0.1"
|
|
serde = "1.0"
|
|
serde_json = "1.0"
|
|
serde_urlencoded = "0.7"
|
|
smallvec = "1.6.1"
|
|
socket2 = "0.5"
|
|
time = { version = "0.3", default-features = false, features = ["formatting"] }
|
|
url = "2.1"
|
|
|
|
[dev-dependencies]
|
|
actix-files = "0.6"
|
|
actix-test = { version = "0.1", features = ["openssl", "rustls-0_22"] }
|
|
awc = { version = "3", features = ["openssl"] }
|
|
|
|
brotli = "3.3.3"
|
|
const-str = "0.5"
|
|
criterion = { version = "0.5", features = ["html_reports"] }
|
|
env_logger = "0.11"
|
|
flate2 = "1.0.13"
|
|
futures-util = { version = "0.3.17", default-features = false, features = ["std"] }
|
|
rand = "0.8"
|
|
rcgen = "0.12"
|
|
rustls-pemfile = "2"
|
|
serde = { version = "1.0", features = ["derive"] }
|
|
static_assertions = "1"
|
|
tls-openssl = { package = "openssl", version = "0.10.55" }
|
|
tls-rustls = { package = "rustls", version = "0.22" }
|
|
tokio = { version = "1.24.2", features = ["rt-multi-thread", "macros"] }
|
|
zstd = "0.13"
|
|
|
|
[[test]]
|
|
name = "test_server"
|
|
required-features = ["compress-brotli", "compress-gzip", "compress-zstd", "cookies"]
|
|
|
|
[[test]]
|
|
name = "compression"
|
|
required-features = ["compress-brotli", "compress-gzip", "compress-zstd"]
|
|
|
|
[[example]]
|
|
name = "basic"
|
|
required-features = ["compress-gzip"]
|
|
|
|
[[example]]
|
|
name = "uds"
|
|
required-features = ["compress-gzip"]
|
|
|
|
[[example]]
|
|
name = "on-connect"
|
|
required-features = []
|
|
|
|
[[bench]]
|
|
name = "server"
|
|
harness = false
|
|
|
|
[[bench]]
|
|
name = "service"
|
|
harness = false
|
|
|
|
[[bench]]
|
|
name = "responder"
|
|
harness = false
|