Skip to content

Releases: actix/actix-web

Actix web 0.7.4

23 Aug 19:57
Compare
Choose a tag to compare

Changes

Added

  • Added HttpServer::maxconn() and HttpServer::maxconnrate(),
    accept backpressure #250

  • Allow to customize connection handshake process via HttpServer::listen_with()
    and HttpServer::bind_with() methods

  • Support making client connections via tokio-uds's UnixStream when "uds" feature is enabled #472

Changed

  • It is allowed to use function with up to 10 parameters for handler with extractor parameters.
    Route::with_config()/Route::with_async_config() always passes configuration objects as tuple
    even for handler with one parameter.

  • native-tls - 0.2

  • Content-Disposition is re-worked. Its parser is now more robust and handles quoted content better. See #461

Fixed

  • Use zlib instead of raw deflate for decoding and encoding payloads with
    Content-Encoding: deflate.

  • Fixed headers formating for CORS Middleware Access-Control-Expose-Headers #436

  • Fix adding multiple response headers #446

  • Client includes port in HOST header when it is not default(e.g. not 80 and 443). #448

  • Panic during access without routing being set #452

  • Fixed http/2 error handling

Deprecated

  • HttpServer::no_http2() is deprecated, use OpensslAcceptor::with_flags() or
    RustlsAcceptor::with_flags() instead

  • HttpServer::listen_tls(), HttpServer::listen_ssl(), HttpServer::listen_rustls() have been
    deprecated in favor of HttpServer::listen_with() with specific acceptor.

  • HttpServer::bind_tls(), HttpServer::bind_ssl(), HttpServer::bind_rustls() have been
    deprecated in favor of HttpServer::bind_with() with specific acceptor.

Actix web 0.7.3

01 Aug 18:01
Compare
Choose a tag to compare

Changes

Added

  • Support HTTP/2 with rustls #36

  • Allow TestServer to open a websocket on any URL (TestServer::ws_at()) #433

Fixed

  • Fixed failure 0.1.2 compatibility

  • Do not override HOST header for client request #428

  • Gz streaming, use flate2::write::GzDecoder #228

  • HttpRequest::url_for is not working with scopes #429

Actix web 0.7.2

26 Jul 16:12
Compare
Choose a tag to compare

Changes

Added

  • Add implementation of FromRequest<S> for Option<T> and Result<T, Error>

  • Allow to handle application prefix, i.e. allow to handle /app path
    for application with /app prefix.
    Check App::prefix()
    api doc.

  • Add CookieSessionBackend::http_only method to set HttpOnly directive of cookies

Changed

  • Upgrade to cookie 0.11

  • Removed the timestamp from the default logger middleware

Fixed

  • Missing response header "content-encoding" #421

  • Fix stream draining for http/2 connections #290

Actix web 0.7.1

21 Jul 13:01
Compare
Choose a tag to compare

Changes

Fixed

  • Fixed default_resource 'not yet implemented' panic #410

Actix web 0.7.0

21 Jul 11:24
Compare
Choose a tag to compare

Changes

Added

  • Add fs::StaticFileConfig to provide means of customizing static
    file services. It allows to map mime to Content-Disposition,
    specify whether to use ETag and Last-Modified and allowed methods.

  • Add .has_prefixed_resource() method to router::ResourceInfo
    for route matching with prefix awareness

  • Add HttpMessage::readlines() for reading line by line.

  • Add ClientRequestBuilder::form() for sending application/x-www-form-urlencoded requests.

  • Add method to configure custom error handler to Form extractor.

  • Add methods to HttpResponse to retrieve, add, and delete cookies

  • Add .set_content_type() and .set_content_disposition() methods
    to fs::NamedFile to allow overriding the values inferred by default

  • Add fs::file_extension_to_mime() helper function to get the MIME
    type for a file extension

  • Add .content_disposition() method to parse Content-Disposition of
    multipart fields

  • Re-export actix::prelude::* as actix_web::actix module.

  • HttpRequest::url_for_static() for a named route with no variables segments

  • Propagation of the application's default resource to scopes that haven't set a default resource.

Changed

  • Min rustc version is 1.26

  • Use tokio instead of tokio-core

  • CookieSessionBackend sets percent encoded cookies for outgoing HTTP messages.

  • Became possible to use enums with query extractor.
    Issue #371.
    Example

  • HttpResponse::into_builder() now moves cookies into the builder
    instead of dropping them

  • For safety and performance reasons Handler::handle() uses &self instead of &mut self

  • Handler::handle() uses &HttpRequest instead of HttpRequest

  • Added header User-Agent: Actix-web/<current_version> to default headers when building a request

  • port Extensions type from http create, we don't need Send + Sync

  • HttpRequest::query() returns Ref<HashMap<String, String>>

  • HttpRequest::cookies() returns Ref<Vec<Cookie<'static>>>

  • StaticFiles::new() returns Result<StaticFiles<S>, Error> instead of StaticFiles<S>

  • StaticFiles uses the default handler if the file does not exist

Removed

  • Remove Route::with2() and Route::with3() use tuple of extractors instead.

  • Remove HttpMessage::range()

Actix web 0.6.15

11 Jul 07:39
Compare
Choose a tag to compare

Changes

Fixed

  • Fix h2 compatibility #352

  • Fix duplicate tail of StaticFiles with index_file. #344

Actix web 0.6.14

21 Jun 03:59
Compare
Choose a tag to compare

Changes

Added

  • Allow to disable masking for websockets client

Fixed

  • SendRequest execution fails with the "internal error: entered unreachable code" #329

Actix web 0.6.13

13 Jun 12:07
Compare
Choose a tag to compare

Changes

Fixed

  • http/2 end-of-frame is not set if body is empty bytes #307

  • InternalError can trigger memory unsafety #301

  • Fix docs.rs build

Actix web 0.6.11

05 Jun 17:38
Compare
Choose a tag to compare

Changes

  • Support chunked encoding for UrlEncoded body #262

  • HttpRequest::url_for() for a named route with no variables segments #265

  • Middleware::response() is not invoked if error result was returned by another Middleware::start() #255

  • CORS: Do not validate Origin header on non-OPTION requests #271

  • Fix multipart upload "Incomplete" error #282

Actix web 0.6.10

24 May 15:57
Compare
Choose a tag to compare

Changes

Added

  • Allow to use path without traling slashes for scope registration #241

  • Allow to set encoding for exact NamedFile #239

Fixed

  • TestServer::post() actually sends GET request #240