1
0
mirror of https://github.com/fafhrd91/actix-web synced 2024-11-27 17:52:56 +01:00
actix-web/actix-http/Cargo.toml

189 lines
4.6 KiB
TOML
Raw Normal View History

2019-03-26 19:54:35 +01:00
[package]
name = "actix-http"
version = "3.8.0"
authors = [
"Nikolay Kim <fafhrd91@gmail.com>",
"Rob Ede <robjtede@icloud.com>",
]
2023-12-16 11:20:28 +01:00
description = "HTTP types and services for the Actix ecosystem"
2019-03-28 20:45:41 +01:00
keywords = ["actix", "http", "framework", "async", "futures"]
2019-03-26 19:54:35 +01:00
homepage = "https://actix.rs"
2023-11-07 00:54:38 +01:00
repository = "https://github.com/actix/actix-web"
2021-10-20 23:32:05 +02:00
categories = [
"network-programming",
"asynchronous",
"web-programming::http-server",
"web-programming::websocket",
]
license.workspace = true
edition.workspace = true
rust-version.workspace = true
2019-03-26 19:54:35 +01:00
[package.metadata.docs.rs]
2024-02-04 00:55:01 +01:00
rustdoc-args = ["--cfg", "docsrs"]
features = [
"http2",
"ws",
"openssl",
"rustls-0_20",
"rustls-0_21",
"rustls-0_22",
"rustls-0_23",
2024-02-04 00:55:01 +01:00
"compress-brotli",
"compress-gzip",
"compress-zstd",
]
2019-03-26 19:54:35 +01:00
2024-06-10 04:39:06 +02:00
[package.metadata.cargo_check_external_types]
allowed_external_types = [
"actix_codec::*",
"actix_service::*",
"actix_tls::*",
"actix_utils::*",
"bytes::*",
"bytestring::*",
"encoding_rs::*",
"futures_core::*",
"h2::*",
"http::*",
"httparse::*",
"language_tags::*",
"mime::*",
"openssl::*",
"rustls::*",
"tokio_util::*",
"tokio::*",
]
2019-03-26 19:54:35 +01:00
[features]
default = []
2022-01-31 22:22:23 +01:00
# HTTP/2 protocol support
2024-06-20 00:40:22 +02:00
http2 = ["dep:h2"]
2022-01-31 22:22:23 +01:00
# WebSocket protocol implementation
ws = [
2024-06-20 00:40:22 +02:00
"dep:local-channel",
"dep:base64",
"dep:rand",
"dep:sha1",
2022-01-31 22:22:23 +01:00
]
# TLS via OpenSSL
openssl = ["__tls", "actix-tls/accept", "actix-tls/openssl"]
2019-08-02 00:26:30 +02:00
# TLS via Rustls v0.20
rustls = ["__tls", "rustls-0_20"]
# TLS via Rustls v0.20
rustls-0_20 = ["__tls", "actix-tls/accept", "actix-tls/rustls-0_20"]
# TLS via Rustls v0.21
rustls-0_21 = ["__tls", "actix-tls/accept", "actix-tls/rustls-0_21"]
2019-03-26 19:54:35 +01:00
2024-02-04 00:55:01 +01:00
# TLS via Rustls v0.22
rustls-0_22 = ["__tls", "actix-tls/accept", "actix-tls/rustls-0_22"]
2024-02-04 00:55:01 +01:00
# TLS via Rustls v0.23
rustls-0_23 = ["__tls", "actix-tls/accept", "actix-tls/rustls-0_23"]
2022-01-31 22:22:23 +01:00
# Compression codecs
2024-06-20 00:40:22 +02:00
compress-brotli = ["__compress", "dep:brotli"]
compress-gzip = ["__compress", "dep:flate2"]
compress-zstd = ["__compress", "dep:zstd"]
2019-03-26 23:14:32 +01:00
# Internal (PRIVATE!) features used to aid testing and checking feature status.
2022-01-31 22:22:23 +01:00
# Don't rely on these whatsoever. They are semver-exempt and may disappear at anytime.
__compress = []
# Internal (PRIVATE!) features used to aid checking feature status.
# Don't rely on these whatsoever. They may disappear at anytime.
__tls = []
2019-03-26 19:54:35 +01:00
[dependencies]
2022-01-31 22:22:23 +01:00
actix-service = "2"
2022-02-15 21:49:10 +01:00
actix-codec = "0.5"
2022-01-31 22:22:23 +01:00
actix-utils = "3"
actix-rt = { version = "2.2", default-features = false }
2019-12-02 18:33:39 +01:00
ahash = "0.8"
2023-05-06 12:38:51 +02:00
bitflags = "2"
bytes = "1"
bytestring = "1"
derive_more = "0.99.5"
encoding_rs = "0.8"
futures-core = { version = "0.3.17", default-features = false, features = ["alloc"] }
2023-03-02 17:21:13 +01:00
http = "0.2.7"
httparse = "1.5.1"
httpdate = "1.0.1"
2021-12-22 09:34:48 +01:00
itoa = "1"
language-tags = "0.3"
2023-03-11 23:14:58 +01:00
mime = "0.3.4"
2019-08-13 19:48:11 +02:00
percent-encoding = "2.1"
2021-04-01 16:26:13 +02:00
pin-project-lite = "0.2"
smallvec = "1.6.1"
2023-02-26 04:47:25 +01:00
tokio = { version = "1.24.2", features = [] }
tokio-util = { version = "0.7", features = ["io", "codec"] }
2022-03-10 04:12:29 +01:00
tracing = { version = "0.1.30", default-features = false, features = ["log"] }
2019-03-26 19:54:35 +01:00
2022-01-31 22:22:23 +01:00
# http2
2024-06-09 05:51:53 +02:00
h2 = { version = "0.3.26", optional = true }
2022-01-31 22:22:23 +01:00
# websockets
local-channel = { version = "0.1", optional = true }
2024-03-03 23:18:29 +01:00
base64 = { version = "0.22", optional = true }
2022-01-31 22:22:23 +01:00
rand = { version = "0.8", optional = true }
sha1 = { version = "0.10", optional = true }
2022-01-31 22:22:23 +01:00
# openssl/rustls
actix-tls = { version = "3.4", default-features = false, optional = true }
2022-01-31 22:22:23 +01:00
# compress-*
brotli = { version = "6", optional = true }
flate2 = { version = "1.0.13", optional = true }
zstd = { version = "0.13", optional = true }
2019-03-26 23:14:32 +01:00
2019-03-26 19:54:35 +01:00
[dev-dependencies]
2022-07-24 03:11:21 +02:00
actix-http-test = { version = "3", features = ["openssl"] }
2022-01-19 17:58:11 +01:00
actix-server = "2"
actix-tls = { version = "3.4", features = ["openssl", "rustls-0_23-webpki-roots"] }
actix-web = "4"
2021-06-17 18:57:58 +02:00
async-stream = "0.3"
2023-07-02 02:09:15 +02:00
criterion = { version = "0.5", features = ["html_reports"] }
divan = "0.1.8"
2024-03-04 00:43:54 +01:00
env_logger = "0.11"
futures-util = { version = "0.3.17", default-features = false, features = ["alloc"] }
memchr = "2.4"
2022-01-31 18:30:34 +01:00
once_cell = "1.9"
2024-05-19 11:12:32 +02:00
rcgen = "0.13"
regex = "1.3"
rustversion = "1"
2024-02-04 00:55:01 +01:00
rustls-pemfile = "2"
serde = { version = "1.0", features = ["derive"] }
serde_json = "1.0"
static_assertions = "1"
2023-07-02 02:09:15 +02:00
tls-openssl = { package = "openssl", version = "0.10.55" }
tls-rustls_023 = { package = "rustls", version = "0.23" }
2023-02-26 04:47:25 +01:00
tokio = { version = "1.24.2", features = ["net", "rt", "macros"] }
2020-02-07 01:42:16 +01:00
2024-07-07 04:54:00 +02:00
[lints]
workspace = true
2021-02-28 20:55:34 +01:00
[[example]]
name = "ws"
required-features = ["ws", "rustls-0_23"]
[[example]]
name = "tls_rustls"
required-features = ["http2", "rustls-0_23"]
[[bench]]
name = "response-body-compression"
harness = false
required-features = ["compress-brotli", "compress-gzip", "compress-zstd"]
[[bench]]
name = "date-formatting"
harness = false