actix-http: v3.13.6
Removes h2 from the TLS ALPN offer list when http2 crate feature is disabled.
Removes h2 from the TLS ALPN offer list when http2 crate feature is disabled.
Reject invalid WebSocket close-frame status codes, malformed payloads, and invalid UTF-8 close reasons. Deprecate the Parser::parse_close_payload() method in favor of Parser::try_parse_close_payload().
Reject WebSocket frames with reserved bits. Reject new WebSocket text or binary frames during a continuation.
Fix multipart field parsing when boundary delimiter is split across payload chunks. Improve detail in some error messages.
Add Error::add_response_mapper() to allow middleware to modify error-generated responses before they are sent. Remove the experimental experimental-io-uring crate feature.
Remove the experimental experimental-io-uring crate feature and its implementation, including the NamedFile::open_async() method. Add support for passing multiple root directories to Files::new. Add Files::try_compressed() to support serving pre-compressed static files. Fix handling of Range: bytes=0-. Fix panic in Files when use_hidden_files() is enabled and request paths contain . segments. Fix…
Close idle HTTP/1 keep-alive connections during graceful shutdown and let active connections finish only their current request before closing.
Close idle HTTP/1 keep-alive connections during graceful server shutdown and close active connections after their current request finishes.
Fix MessageBody implementation for ByteString to signal completion after yielding its contents. #4177
3.13.1 Fix HTTP/1 WebSocket upgrade responses being overwritten with Connection: close when the upgraded request payload remains open. #4115
4.14.0 Add HttpRequest::{cookies_raw,cookie_raw} and ServiceRequest::{cookies_raw,cookie_raw} for reading request cookies without percent-decoding names and values. #3542 Enable dual-stack IPv6 sockets on Windows when possible so that Actix-created listeners bound to [::] also accept IPv4 connections. Panic when calling Route::to() or Route::service() after Route::wrap() to prevent silently droppi…
3.13.0 When configured, gracefully close HTTP/1 connections after early responses to unread request bodies. #3967 Wake HTTP/1 payload receivers with an incomplete-payload error when the sender is dropped before EOF. #3100 Update foldhash dependency to 0.2.
0.8.0 Add multi-field multipart payload builders to actix_multipart::test. #3575 Add MultipartForm support for Option<Vec<T>> fields. #3577 Bound internal multipart parser buffering to prevent unbounded memory growth on malformed bodies. behavior change notice: There's now a cap for buffering (64KB). It can be changed with MultipartConfig::buffer_limit. Fix user-triggerable panic when parsing mult…
0.8.0 Minimum supported Rust version (MSRV) is now 1.88. Update darling dependency to 0.23.
Notice: This release contains a security fix. Users are encouraged to update to this version ASAP. SECURITY: Reject HTTP/1 requests with ambiguous request framing from Content-Length and Transfer-Encoding headers to prevent request smuggling. Encode the HTTP/1 Connection: Upgrade header in Camel-Case when camel-case header formatting is enabled.#3953 Fix HeaderMap iterators' len() and size_hint()…
Minimum supported Rust version (MSRV) is now 1.88. Fix empty streaming request bodies being sent with chunked transfer encoding.
Minimum supported Rust version (MSRV) is now 1.88. Improve HTTP/2 upload throughput by increasing default flow control window sizes. #3638 Add HttpServer::{h2_initial_window_size, h2_initial_connection_window_size} methods for tuning. #3638 Add HttpRequest::url_for_map and HttpRequest::url_for_iter methods for named URL parameters. #3895 Ignore unparsable cookies in Cookie request header. Add expe…
Minimum supported Rust version (MSRV) is now 1.88. Increase default HTTP/2 flow control window sizes. #3638 Expose configuration methods to improve upload throughput. #3638 Fix truncated body ending without error when connection closed abnormally. #3067 Add config/method for TCP_NODELAY. #3918 Do not compress 206 Partial Content responses. #3191 Fix lingering sockets and client stalls when respond…
Minimum supported Rust version (MSRV) is now 1.88. Support deserialize_any in PathDeserializer (enables derived #[serde(untagged)] enums in path segments). #2881 Fix stale path segment indices after path rewrites, preventing out-of-bounds access during extraction. #3562