[package] name = "actix-web-lab" version = "0.23.0" description = "In-progress extractors and middleware for Actix Web" authors = ["Rob Ede "] keywords = ["actix", "http", "web", "framework", "async"] categories = [ "network-programming", "asynchronous", "web-programming::http-server", "web-programming::websocket", ] repository.workspace = true license.workspace = true edition.workspace = true rust-version.workspace = true [package.metadata.docs.rs] all-features = true rustdoc-args = ["--cfg", "docsrs"] [package.metadata.cargo_check_external_types] allowed_external_types = [ "actix_http::*", "actix_service::*", "actix_utils::*", "actix_web_lab_derive::*", "actix_web::*", "arc_swap::*", "bytes::*", "bytestring::*", "futures_core::*", "http::*", "mime::*", "serde_json::*", "serde::*", "tokio::*", ] [features] default = ["derive"] derive = ["actix-web-lab-derive"] cbor = ["serde_cbor_2"] msgpack = ["rmp-serde"] spa = ["actix-files"] [dependencies] actix-web-lab-derive = { version = "=0.23.0", optional = true } actix-http = "3" actix-router = "0.5" actix-service = "2" actix-utils = "3" actix-web = { version = "4.9", default-features = false } ahash = "0.8" arc-swap = "1.1" bytes = "1" bytestring = "1" csv = "1.1" derive_more = { version = "1", features = ["display", "error"] } form_urlencoded = "1" futures-core = "0.3.17" futures-util = { version = "0.3.31", default-features = false, features = ["std"] } http = "0.2.7" impl-more = "0.1.3" itertools = "0.13" local-channel = "0.1" mediatype = "0.19" mime = "0.3" pin-project-lite = "0.2.7" regex = "1.11.0" serde = "1" serde_html_form = "0.2" serde_json = "1" serde_path_to_error = "0.1" tokio = { version = "1.40.0", features = ["sync", "macros"] } tokio-stream = "0.1.16" tracing = { version = "0.1.30", features = ["log"] } # cbor serde_cbor_2 = { version = "0.12.0-dev", optional = true } # msgpack rmp-serde = { version = "1", optional = true } # spa actix-files = { version = "0.6", optional = true } [dev-dependencies] actix-web-lab-derive = "=0.23.0" actix-web = { version = "4", features = ["rustls-0_23"] } async_zip = { version = "0.0.17", features = ["deflate", "tokio"] } base64 = "0.22" digest = "0.10" ed25519-dalek = "2" env_logger = "0.11" futures-util = { version = "0.3.31", default-features = false, features = ["std", "io"] } generic-array = "0.14" hex = "0.4" hex-literal = "0.4" hmac = { version = "0.12", features = ["reset"] } rand = "0.8" rustls = "0.23" rustls-pemfile = "2" serde = { version = "1", features = ["derive"] } sha2 = "0.10" static_assertions = "1.1" time = { version = "0.3", features = ["formatting"] } tokio = { version = "1.40.0", features = ["full"] } tokio-util = { version = "0.7", features = ["compat"] } [[example]] name = "cbor" required-features = ["cbor"] [[example]] name = "msgpack" required-features = ["msgpack"] [[example]] name = "spa" required-features = ["spa"] [lints] workspace = true