2017-10-31 04:46:39 +01:00
|
|
|
# Changes
|
2019-09-25 06:28:41 +02:00
|
|
|
|
2021-01-02 01:12:18 +01:00
|
|
|
## Unreleased - 2021-xx-xx
|
2021-12-02 14:59:25 +01:00
|
|
|
### Added
|
|
|
|
* Methods on `AcceptLanguage`: `ranked` and `preference`. [#2480]
|
2021-12-02 18:04:40 +01:00
|
|
|
* `AcceptEncoding` typed header. [#2482]
|
2021-12-05 01:02:25 +01:00
|
|
|
* `Range` typed header. [#2485]
|
2021-12-04 20:40:47 +01:00
|
|
|
* `HttpResponse::map_into_{left,right}_body` and `HttpResponse::map_into_boxed_body`. [#2468]
|
|
|
|
* `ServiceResponse::map_into_{left,right}_body` and `HttpResponse::map_into_boxed_body`. [#2468]
|
2021-12-02 14:59:25 +01:00
|
|
|
|
|
|
|
### Changed
|
|
|
|
* Rename `Accept::{mime_precedence => ranked}`. [#2480]
|
|
|
|
* Rename `Accept::{mime_preference => preference}`. [#2480]
|
2021-12-04 20:41:15 +01:00
|
|
|
* Un-deprecate `App::data_factory`. [#2484]
|
2021-12-05 05:39:18 +01:00
|
|
|
* `HttpRequest::url_for` no longer constructs URLs with query or fragment components. [#2430]
|
2021-12-07 17:26:28 +01:00
|
|
|
* Remove `B` (body) type parameter on `App`. [#2493]
|
|
|
|
* Add `B` (body) type parameter on `Scope`. [#2492]
|
2021-12-02 14:59:25 +01:00
|
|
|
|
|
|
|
### Fixed
|
|
|
|
* Accept wildcard `*` items in `AcceptLanguage`. [#2480]
|
2021-12-04 20:40:47 +01:00
|
|
|
* Re-exports `dev::{BodySize, MessageBody, SizedStream}`. They are exposed through the `body` module. [#2468]
|
2021-12-02 18:04:40 +01:00
|
|
|
* Typed headers containing lists that require one or more items now enforce this minimum. [#2482]
|
2021-12-02 14:59:25 +01:00
|
|
|
|
2021-12-05 05:39:18 +01:00
|
|
|
[#2430]: https://github.com/actix/actix-web/pull/2430
|
2021-12-04 20:40:47 +01:00
|
|
|
[#2468]: https://github.com/actix/actix-web/pull/2468
|
2021-12-02 14:59:25 +01:00
|
|
|
[#2480]: https://github.com/actix/actix-web/pull/2480
|
2021-12-02 18:04:40 +01:00
|
|
|
[#2482]: https://github.com/actix/actix-web/pull/2482
|
2021-12-04 20:41:15 +01:00
|
|
|
[#2484]: https://github.com/actix/actix-web/pull/2484
|
2021-12-05 01:02:25 +01:00
|
|
|
[#2485]: https://github.com/actix/actix-web/pull/2485
|
2021-12-07 17:26:28 +01:00
|
|
|
[#2492]: https://github.com/actix/actix-web/pull/2492
|
|
|
|
[#2493]: https://github.com/actix/actix-web/pull/2493
|
2021-11-22 19:20:55 +01:00
|
|
|
|
|
|
|
|
2021-11-30 15:12:04 +01:00
|
|
|
## 4.0.0-beta.13 - 2021-11-30
|
|
|
|
### Changed
|
|
|
|
* Update `actix-tls` to `3.0.0-rc.1`. [#2474]
|
|
|
|
|
|
|
|
[#2474]: https://github.com/actix/actix-web/pull/2474
|
|
|
|
|
|
|
|
|
2021-11-22 19:20:55 +01:00
|
|
|
## 4.0.0-beta.12 - 2021-11-22
|
2021-11-16 22:41:35 +01:00
|
|
|
### Changed
|
|
|
|
* Compress middleware's response type is now `AnyBody<Encoder<B>>`. [#2448]
|
|
|
|
|
|
|
|
### Fixed
|
|
|
|
* Relax `Unpin` bound on `S` (stream) parameter of `HttpResponseBuilder::streaming`. [#2448]
|
|
|
|
|
|
|
|
### Removed
|
|
|
|
* `dev::ResponseBody` re-export; is function is replaced by the new `dev::AnyBody` enum. [#2446]
|
|
|
|
|
2021-11-22 19:20:55 +01:00
|
|
|
[#2446]: https://github.com/actix/actix-web/pull/2446
|
|
|
|
[#2448]: https://github.com/actix/actix-web/pull/2448
|
2021-11-15 05:03:33 +01:00
|
|
|
|
|
|
|
|
|
|
|
## 4.0.0-beta.11 - 2021-11-15
|
|
|
|
### Added
|
|
|
|
* Re-export `dev::ServerHandle` from `actix-server`. [#2442]
|
|
|
|
|
2021-10-26 10:24:38 +02:00
|
|
|
### Changed
|
2021-11-15 05:03:33 +01:00
|
|
|
* `ContentType::html` now produces `text/html; charset=utf-8` instead of `text/html`. [#2423]
|
|
|
|
* Update `actix-server` to `2.0.0-beta.9`. [#2442]
|
|
|
|
|
|
|
|
[#2423]: https://github.com/actix/actix-web/pull/2423
|
|
|
|
[#2442]: https://github.com/actix/actix-web/pull/2442
|
2021-10-20 23:32:05 +02:00
|
|
|
|
|
|
|
|
|
|
|
## 4.0.0-beta.10 - 2021-10-20
|
2021-09-11 18:27:50 +02:00
|
|
|
### Added
|
2021-09-12 23:41:08 +02:00
|
|
|
* Option to allow `Json` extractor to work without a `Content-Type` header present. [#2362]
|
2021-10-20 23:32:05 +02:00
|
|
|
* `#[actix_web::test]` macro for setting up tests with a runtime. [#2409]
|
2021-09-11 18:27:50 +02:00
|
|
|
|
2021-09-11 02:11:16 +02:00
|
|
|
### Changed
|
2021-09-11 17:48:47 +02:00
|
|
|
* Associated type `FromRequest::Config` was removed. [#2233]
|
2021-09-11 18:27:50 +02:00
|
|
|
* Inner field made private on `web::Payload`. [#2384]
|
2021-11-15 19:11:51 +01:00
|
|
|
* `Data::into_inner` and `Data::get_ref` no longer requires `T: Sized`. [#2403]
|
2021-10-20 03:00:11 +02:00
|
|
|
* Updated rustls to v0.20. [#2414]
|
2021-10-20 23:32:05 +02:00
|
|
|
* Minimum supported Rust version (MSRV) is now 1.52.
|
2021-09-09 02:35:41 +02:00
|
|
|
|
2021-10-11 19:28:09 +02:00
|
|
|
### Removed
|
2021-10-21 00:31:46 +02:00
|
|
|
* Useless `ServiceResponse::checked_expr` method. [#2401]
|
2021-10-11 19:28:09 +02:00
|
|
|
|
2021-09-11 02:11:16 +02:00
|
|
|
[#2233]: https://github.com/actix/actix-web/pull/2233
|
2021-09-11 18:27:50 +02:00
|
|
|
[#2362]: https://github.com/actix/actix-web/pull/2362
|
|
|
|
[#2384]: https://github.com/actix/actix-web/pull/2384
|
2021-10-11 19:28:09 +02:00
|
|
|
[#2401]: https://github.com/actix/actix-web/pull/2401
|
2021-10-21 00:31:46 +02:00
|
|
|
[#2403]: https://github.com/actix/actix-web/pull/2403
|
2021-10-20 23:32:05 +02:00
|
|
|
[#2409]: https://github.com/actix/actix-web/pull/2409
|
2021-10-20 03:00:11 +02:00
|
|
|
[#2414]: https://github.com/actix/actix-web/pull/2414
|
2021-09-11 17:48:47 +02:00
|
|
|
|
2021-09-09 02:35:41 +02:00
|
|
|
|
|
|
|
## 4.0.0-beta.9 - 2021-09-09
|
2021-07-12 17:55:41 +02:00
|
|
|
### Added
|
|
|
|
* Re-export actix-service `ServiceFactory` in `dev` module. [#2325]
|
|
|
|
|
2021-09-01 10:08:29 +02:00
|
|
|
### Changed
|
|
|
|
* Compress middleware will return 406 Not Acceptable when no content encoding is acceptable to the client. [#2344]
|
2021-09-03 19:00:43 +02:00
|
|
|
* Move `BaseHttpResponse` to `dev::Response`. [#2379]
|
2021-09-09 01:42:40 +02:00
|
|
|
* Enable `TestRequest::param` to accept more than just static strings. [#2172]
|
2021-09-03 19:00:43 +02:00
|
|
|
* Minimum supported Rust version (MSRV) is now 1.51.
|
2021-09-01 10:08:29 +02:00
|
|
|
|
|
|
|
### Fixed
|
|
|
|
* Fix quality parse error in Accept-Encoding header. [#2344]
|
2021-09-03 19:00:43 +02:00
|
|
|
* Re-export correct type at `web::HttpResponse`. [#2379]
|
2021-08-31 00:19:03 +02:00
|
|
|
|
2021-09-09 01:42:40 +02:00
|
|
|
[#2172]: https://github.com/actix/actix-web/pull/2172
|
2021-07-12 17:55:41 +02:00
|
|
|
[#2325]: https://github.com/actix/actix-web/pull/2325
|
2021-09-01 10:08:29 +02:00
|
|
|
[#2344]: https://github.com/actix/actix-web/pull/2344
|
2021-09-03 19:00:43 +02:00
|
|
|
[#2379]: https://github.com/actix/actix-web/pull/2379
|
2021-06-26 17:33:36 +02:00
|
|
|
|
|
|
|
|
|
|
|
## 4.0.0-beta.8 - 2021-06-26
|
2021-06-22 18:32:03 +02:00
|
|
|
### Added
|
2021-06-23 01:42:00 +02:00
|
|
|
* Add `ServiceRequest::parts_mut`. [#2177]
|
2021-06-22 18:32:03 +02:00
|
|
|
* Add extractors for `Uri` and `Method`. [#2263]
|
2021-06-23 22:30:06 +02:00
|
|
|
* Add extractors for `ConnectionInfo` and `PeerAddr`. [#2263]
|
|
|
|
* Add `Route::service` for using hand-written services as handlers. [#2262]
|
2021-06-22 18:32:03 +02:00
|
|
|
|
2021-06-19 21:21:13 +02:00
|
|
|
### Changed
|
|
|
|
* Change compression algorithm features flags. [#2250]
|
2021-06-22 16:50:58 +02:00
|
|
|
* Deprecate `App::data` and `App::data_factory`. [#2271]
|
2021-06-26 01:39:06 +02:00
|
|
|
* Smarter extraction of `ConnectionInfo` parts. [#2282]
|
2021-06-19 21:21:13 +02:00
|
|
|
|
2021-06-25 14:19:42 +02:00
|
|
|
### Fixed
|
|
|
|
* Scope and Resource middleware can access data items set on their own layer. [#2288]
|
|
|
|
|
2021-06-23 01:42:00 +02:00
|
|
|
[#2177]: https://github.com/actix/actix-web/pull/2177
|
2021-06-19 21:21:13 +02:00
|
|
|
[#2250]: https://github.com/actix/actix-web/pull/2250
|
2021-06-22 16:50:58 +02:00
|
|
|
[#2271]: https://github.com/actix/actix-web/pull/2271
|
2021-06-23 22:30:06 +02:00
|
|
|
[#2262]: https://github.com/actix/actix-web/pull/2262
|
2021-06-22 18:32:03 +02:00
|
|
|
[#2263]: https://github.com/actix/actix-web/pull/2263
|
2021-06-26 01:39:06 +02:00
|
|
|
[#2282]: https://github.com/actix/actix-web/pull/2282
|
2021-06-25 14:19:42 +02:00
|
|
|
[#2288]: https://github.com/actix/actix-web/pull/2288
|
2021-06-19 12:51:20 +02:00
|
|
|
|
2021-06-19 21:23:06 +02:00
|
|
|
|
2021-06-19 12:51:20 +02:00
|
|
|
## 4.0.0-beta.7 - 2021-06-17
|
2021-05-06 19:35:04 +02:00
|
|
|
### Added
|
|
|
|
* `HttpServer::worker_max_blocking_threads` for setting block thread pool. [#2200]
|
|
|
|
|
2021-04-28 02:23:12 +02:00
|
|
|
### Changed
|
2021-06-16 16:52:49 +02:00
|
|
|
* Adjusted default JSON payload limit to 2MB (from 32kb) and included size and limits in the `JsonPayloadError::Overflow` error variant. [#2162]
|
|
|
|
[#2162]: (https://github.com/actix/actix-web/pull/2162)
|
2021-05-09 21:12:48 +02:00
|
|
|
* `ServiceResponse::error_response` now uses body type of `Body`. [#2201]
|
|
|
|
* `ServiceResponse::checked_expr` now returns a `Result`. [#2201]
|
2021-04-28 02:23:12 +02:00
|
|
|
* Update `language-tags` to `0.3`.
|
2021-05-09 21:12:48 +02:00
|
|
|
* `ServiceResponse::take_body`. [#2201]
|
|
|
|
* `ServiceResponse::map_body` closure receives and returns `B` instead of `ResponseBody<B>` types. [#2201]
|
2021-06-17 18:57:58 +02:00
|
|
|
* All error trait bounds in server service builders have changed from `Into<Error>` to `Into<Response<AnyBody>>`. [#2253]
|
|
|
|
* All error trait bounds in message body and stream impls changed from `Into<Error>` to `Into<Box<dyn std::error::Error>>`. [#2253]
|
2021-06-10 17:25:21 +02:00
|
|
|
* `HttpServer::{listen_rustls(), bind_rustls()}` now honor the ALPN protocols in the configuation parameter. [#2226]
|
2021-06-05 18:19:45 +02:00
|
|
|
* `middleware::normalize` now will not try to normalize URIs with no valid path [#2246]
|
2021-05-09 21:12:48 +02:00
|
|
|
|
|
|
|
### Removed
|
|
|
|
* `HttpResponse::take_body` and old `HttpResponse::into_body` method that casted body type. [#2201]
|
2021-04-17 16:28:13 +02:00
|
|
|
|
2021-05-06 19:35:04 +02:00
|
|
|
[#2200]: https://github.com/actix/actix-web/pull/2200
|
2021-05-09 21:12:48 +02:00
|
|
|
[#2201]: https://github.com/actix/actix-web/pull/2201
|
2021-06-17 18:57:58 +02:00
|
|
|
[#2253]: https://github.com/actix/actix-web/pull/2253
|
2021-06-05 18:19:45 +02:00
|
|
|
[#2246]: https://github.com/actix/actix-web/pull/2246
|
2021-05-06 19:35:04 +02:00
|
|
|
|
2021-04-17 16:28:13 +02:00
|
|
|
|
|
|
|
## 4.0.0-beta.6 - 2021-04-17
|
2021-04-09 19:07:10 +02:00
|
|
|
### Added
|
|
|
|
* `HttpResponse` and `HttpResponseBuilder` structs. [#2065]
|
2021-04-02 10:37:51 +02:00
|
|
|
|
2021-04-12 11:30:28 +02:00
|
|
|
### Changed
|
|
|
|
* Most error types are now marked `#[non_exhaustive]`. [#2148]
|
2021-04-19 03:31:11 +02:00
|
|
|
* Methods on `ContentDisposition` that took `T: AsRef<str>` now take `impl AsRef<str>`.
|
2021-04-12 11:30:28 +02:00
|
|
|
|
2021-04-09 19:07:10 +02:00
|
|
|
[#2065]: https://github.com/actix/actix-web/pull/2065
|
2021-04-12 11:30:28 +02:00
|
|
|
[#2148]: https://github.com/actix/actix-web/pull/2148
|
|
|
|
|
2021-04-02 10:37:51 +02:00
|
|
|
|
|
|
|
## 4.0.0-beta.5 - 2021-04-02
|
2021-04-01 07:40:10 +02:00
|
|
|
### Added
|
2021-04-01 17:42:18 +02:00
|
|
|
* `Header` extractor for extracting common HTTP headers in handlers. [#2094]
|
2021-04-01 07:40:10 +02:00
|
|
|
* Added `TestServer::client_headers` method. [#2097]
|
|
|
|
|
2021-03-11 15:12:42 +01:00
|
|
|
### Fixed
|
|
|
|
* Double ampersand in Logger format is escaped correctly. [#2067]
|
|
|
|
|
2021-03-20 06:18:06 +01:00
|
|
|
### Changed
|
2021-04-02 10:37:51 +02:00
|
|
|
* `CustomResponder` would return error as `HttpResponse` when `CustomResponder::with_header` failed
|
|
|
|
instead of skipping. (Only the first error is kept when multiple error occur) [#2093]
|
2021-03-20 06:18:06 +01:00
|
|
|
|
2021-03-11 15:12:42 +01:00
|
|
|
### Removed
|
2021-03-11 01:43:03 +01:00
|
|
|
* The `client` mod was removed. Clients should now use `awc` directly.
|
|
|
|
[871ca5e4](https://github.com/actix/actix-web/commit/871ca5e4ae2bdc22d1ea02701c2992fa8d04aed7)
|
2021-04-02 09:26:59 +02:00
|
|
|
* Integration testing was moved to new `actix-test` crate. Namely these items from the `test`
|
|
|
|
module: `TestServer`, `TestServerConfig`, `start`, `start_with`, and `unused_addr`. [#2112]
|
2021-03-10 00:31:44 +01:00
|
|
|
|
2021-03-11 15:12:42 +01:00
|
|
|
[#2067]: https://github.com/actix/actix-web/pull/2067
|
2021-03-20 06:18:06 +01:00
|
|
|
[#2093]: https://github.com/actix/actix-web/pull/2093
|
2021-04-01 17:42:18 +02:00
|
|
|
[#2094]: https://github.com/actix/actix-web/pull/2094
|
|
|
|
[#2097]: https://github.com/actix/actix-web/pull/2097
|
2021-04-02 09:26:59 +02:00
|
|
|
[#2112]: https://github.com/actix/actix-web/pull/2112
|
2021-03-11 15:12:42 +01:00
|
|
|
|
2021-03-10 00:31:44 +01:00
|
|
|
|
|
|
|
## 4.0.0-beta.4 - 2021-03-09
|
2021-02-13 16:08:43 +01:00
|
|
|
### Changed
|
|
|
|
* Feature `cookies` is now optional and enabled by default. [#1981]
|
2021-03-10 00:31:44 +01:00
|
|
|
* `JsonBody::new` returns a default limit of 32kB to be consistent with `JsonConfig` and the default
|
|
|
|
behaviour of the `web::Json<T>` extractor. [#2010]
|
2021-02-13 16:08:43 +01:00
|
|
|
|
|
|
|
[#1981]: https://github.com/actix/actix-web/pull/1981
|
2021-02-18 16:20:20 +01:00
|
|
|
[#2010]: https://github.com/actix/actix-web/pull/2010
|
2021-02-10 13:10:03 +01:00
|
|
|
|
|
|
|
|
2021-02-10 13:45:46 +01:00
|
|
|
## 4.0.0-beta.3 - 2021-02-10
|
|
|
|
* Update `actix-web-codegen` to `0.5.0-beta.1`.
|
|
|
|
|
|
|
|
|
|
|
|
## 4.0.0-beta.2 - 2021-02-10
|
2021-01-09 14:17:19 +01:00
|
|
|
### Added
|
|
|
|
* The method `Either<web::Json<T>, web::Form<T>>::into_inner()` which returns the inner type for
|
|
|
|
whichever variant was created. Also works for `Either<web::Form<T>, web::Json<T>>`. [#1894]
|
2021-02-08 00:47:51 +01:00
|
|
|
* Add `services!` macro for helping register multiple services to `App`. [#1933]
|
2021-02-10 13:10:03 +01:00
|
|
|
* Enable registering a vec of services of the same type to `App` [#1933]
|
2021-01-09 14:17:19 +01:00
|
|
|
|
2021-01-08 23:17:19 +01:00
|
|
|
### Changed
|
|
|
|
* Rework `Responder` trait to be sync and returns `Response`/`HttpResponse` directly.
|
2021-02-10 13:10:03 +01:00
|
|
|
Making it simpler and more performant. [#1891]
|
|
|
|
* `ServiceRequest::into_parts` and `ServiceRequest::from_parts` can no longer fail. [#1893]
|
|
|
|
* `ServiceRequest::from_request` can no longer fail. [#1893]
|
2021-01-09 14:17:19 +01:00
|
|
|
* Our `Either` type now uses `Left`/`Right` variants (instead of `A`/`B`) [#1894]
|
2021-02-10 13:10:03 +01:00
|
|
|
* `test::{call_service, read_response, read_response_json, send_request}` take `&Service`
|
2021-02-07 02:00:40 +01:00
|
|
|
in argument [#1905]
|
2021-02-10 13:10:03 +01:00
|
|
|
* `App::wrap_fn`, `Resource::wrap_fn` and `Scope::wrap_fn` provide `&Service` in closure
|
|
|
|
argument. [#1905]
|
|
|
|
* `web::block` no longer requires the output is a Result. [#1957]
|
|
|
|
|
2021-01-16 00:37:33 +01:00
|
|
|
### Fixed
|
2021-02-10 13:10:03 +01:00
|
|
|
* Multiple calls to `App::data` with the same type now keeps the latest call's data. [#1906]
|
2021-01-16 00:37:33 +01:00
|
|
|
|
2021-01-09 14:17:19 +01:00
|
|
|
### Removed
|
|
|
|
* Public field of `web::Path` has been made private. [#1894]
|
|
|
|
* Public field of `web::Query` has been made private. [#1894]
|
2021-01-15 03:11:10 +01:00
|
|
|
* `TestRequest::with_header`; use `TestRequest::default().insert_header()`. [#1869]
|
2021-01-16 00:37:33 +01:00
|
|
|
* `AppService::set_service_data`; for custom HTTP service factories adding application data, use the
|
|
|
|
layered data model by calling `ServiceRequest::add_data_container` when handling
|
|
|
|
requests instead. [#1906]
|
2021-01-09 14:17:19 +01:00
|
|
|
|
2021-01-08 23:17:19 +01:00
|
|
|
[#1891]: https://github.com/actix/actix-web/pull/1891
|
2021-01-11 02:29:16 +01:00
|
|
|
[#1893]: https://github.com/actix/actix-web/pull/1893
|
2021-01-09 14:17:19 +01:00
|
|
|
[#1894]: https://github.com/actix/actix-web/pull/1894
|
2021-01-15 03:11:10 +01:00
|
|
|
[#1869]: https://github.com/actix/actix-web/pull/1869
|
2021-02-07 02:00:40 +01:00
|
|
|
[#1905]: https://github.com/actix/actix-web/pull/1905
|
2021-01-16 00:37:33 +01:00
|
|
|
[#1906]: https://github.com/actix/actix-web/pull/1906
|
2021-02-08 00:47:51 +01:00
|
|
|
[#1933]: https://github.com/actix/actix-web/pull/1933
|
2021-02-06 17:23:59 +01:00
|
|
|
[#1957]: https://github.com/actix/actix-web/pull/1957
|
2021-01-07 21:02:08 +01:00
|
|
|
|
2021-01-11 02:29:16 +01:00
|
|
|
|
2021-01-07 21:02:08 +01:00
|
|
|
## 4.0.0-beta.1 - 2021-01-07
|
2021-01-05 01:22:57 +01:00
|
|
|
### Added
|
2021-01-05 10:51:58 +01:00
|
|
|
* `Compat` middleware enabling generic response body/error type of middlewares like `Logger` and
|
|
|
|
`Compress` to be used in `middleware::Condition` and `Resource`, `Scope` services. [#1865]
|
2021-01-05 01:22:57 +01:00
|
|
|
|
2020-12-23 00:45:31 +01:00
|
|
|
### Changed
|
2021-01-04 00:47:04 +01:00
|
|
|
* Update `actix-*` dependencies to tokio `1.0` based versions. [#1813]
|
|
|
|
* Bumped `rand` to `0.8`.
|
|
|
|
* Update `rust-tls` to `0.19`. [#1813]
|
2020-12-26 22:46:19 +01:00
|
|
|
* Rename `Handler` to `HandlerService` and rename `Factory` to `Handler`. [#1852]
|
2021-01-05 10:51:58 +01:00
|
|
|
* The default `TrailingSlash` is now `Trim`, in line with existing documentation. See migration
|
|
|
|
guide for implications. [#1875]
|
|
|
|
* Rename `DefaultHeaders::{content_type => add_content_type}`. [#1875]
|
2020-12-28 01:44:15 +01:00
|
|
|
* MSRV is now 1.46.0.
|
2020-12-23 00:45:31 +01:00
|
|
|
|
2020-12-04 20:57:56 +01:00
|
|
|
### Fixed
|
2021-01-05 10:51:58 +01:00
|
|
|
* Added the underlying parse error to `test::read_body_json`'s panic message. [#1812]
|
|
|
|
|
|
|
|
### Removed
|
|
|
|
* Public modules `middleware::{normalize, err_handlers}`. All necessary middleware structs are now
|
|
|
|
exposed directly by the `middleware` module.
|
2021-01-09 17:04:19 +01:00
|
|
|
* Remove `actix-threadpool` as dependency. `actix_threadpool::BlockingError` error type can be imported
|
|
|
|
from `actix_web::error` module. [#1878]
|
2020-12-04 20:57:56 +01:00
|
|
|
|
|
|
|
[#1812]: https://github.com/actix/actix-web/pull/1812
|
2021-01-05 10:51:58 +01:00
|
|
|
[#1813]: https://github.com/actix/actix-web/pull/1813
|
2020-12-26 22:46:19 +01:00
|
|
|
[#1852]: https://github.com/actix/actix-web/pull/1852
|
2021-01-05 10:51:58 +01:00
|
|
|
[#1865]: https://github.com/actix/actix-web/pull/1865
|
|
|
|
[#1875]: https://github.com/actix/actix-web/pull/1875
|
2021-01-09 17:04:19 +01:00
|
|
|
[#1878]: https://github.com/actix/actix-web/pull/1878
|
2021-01-02 01:12:18 +01:00
|
|
|
|
2020-12-01 23:22:46 +01:00
|
|
|
## 3.3.2 - 2020-12-01
|
2020-11-29 17:35:35 +01:00
|
|
|
### Fixed
|
2020-12-01 23:22:46 +01:00
|
|
|
* Removed an occasional `unwrap` on `None` panic in `NormalizePathNormalization`. [#1762]
|
|
|
|
* Fix `match_pattern()` returning `None` for scope with empty path resource. [#1798]
|
|
|
|
* Increase minimum `socket2` version. [#1803]
|
2020-12-01 14:39:41 +01:00
|
|
|
|
2020-12-01 23:22:46 +01:00
|
|
|
[#1762]: https://github.com/actix/actix-web/pull/1762
|
2020-12-01 14:39:41 +01:00
|
|
|
[#1798]: https://github.com/actix/actix-web/pull/1798
|
2020-12-01 23:22:46 +01:00
|
|
|
[#1803]: https://github.com/actix/actix-web/pull/1803
|
|
|
|
|
|
|
|
|
|
|
|
## 3.3.1 - 2020-11-29
|
|
|
|
* Ensure `actix-http` dependency uses same `serde_urlencoded`.
|
2020-11-25 01:53:48 +01:00
|
|
|
|
|
|
|
|
|
|
|
## 3.3.0 - 2020-11-25
|
2020-11-20 19:02:41 +01:00
|
|
|
### Added
|
|
|
|
* Add `Either<A, B>` extractor helper. [#1788]
|
|
|
|
|
2020-11-05 17:36:15 +01:00
|
|
|
### Changed
|
2020-11-25 01:53:48 +01:00
|
|
|
* Upgrade `serde_urlencoded` to `0.7`. [#1773]
|
2020-10-30 04:15:22 +01:00
|
|
|
|
2020-11-25 01:53:48 +01:00
|
|
|
[#1773]: https://github.com/actix/actix-web/pull/1773
|
2020-11-20 19:02:41 +01:00
|
|
|
[#1788]: https://github.com/actix/actix-web/pull/1788
|
|
|
|
|
2020-10-30 04:15:22 +01:00
|
|
|
|
|
|
|
## 3.2.0 - 2020-10-30
|
2020-10-24 19:49:50 +02:00
|
|
|
### Added
|
|
|
|
* Implement `exclude_regex` for Logger middleware. [#1723]
|
|
|
|
* Add request-local data extractor `web::ReqData`. [#1748]
|
2020-10-29 19:38:49 +01:00
|
|
|
* Add ability to register closure for request middleware logging. [#1749]
|
2020-10-26 18:02:45 +01:00
|
|
|
* Add `app_data` to `ServiceConfig`. [#1757]
|
2020-10-30 03:03:26 +01:00
|
|
|
* Expose `on_connect` for access to the connection stream before request is handled. [#1754]
|
2020-10-24 19:49:50 +02:00
|
|
|
|
|
|
|
### Changed
|
2020-10-30 04:15:22 +01:00
|
|
|
* Updated actix-web-codegen dependency for access to new `#[route(...)]` multi-method macro.
|
2020-10-24 19:49:50 +02:00
|
|
|
* Print non-configured `Data<T>` type when attempting extraction. [#1743]
|
2020-10-24 21:31:23 +02:00
|
|
|
* Re-export bytes::Buf{Mut} in web module. [#1750]
|
2020-10-25 11:41:44 +01:00
|
|
|
* Upgrade `pin-project` to `1.0`.
|
2020-09-30 12:07:35 +02:00
|
|
|
|
2020-10-19 08:18:16 +02:00
|
|
|
[#1723]: https://github.com/actix/actix-web/pull/1723
|
2020-10-20 18:35:34 +02:00
|
|
|
[#1743]: https://github.com/actix/actix-web/pull/1743
|
2020-10-24 19:49:50 +02:00
|
|
|
[#1748]: https://github.com/actix/actix-web/pull/1748
|
2020-10-24 21:31:23 +02:00
|
|
|
[#1750]: https://github.com/actix/actix-web/pull/1750
|
2020-10-30 03:03:26 +01:00
|
|
|
[#1754]: https://github.com/actix/actix-web/pull/1754
|
2020-10-29 19:38:49 +01:00
|
|
|
[#1749]: https://github.com/actix/actix-web/pull/1749
|
2020-10-24 19:49:50 +02:00
|
|
|
|
2020-09-30 12:07:35 +02:00
|
|
|
|
|
|
|
## 3.1.0 - 2020-09-29
|
2020-09-25 13:50:59 +02:00
|
|
|
### Changed
|
2020-09-30 12:07:35 +02:00
|
|
|
* Add `TrailingSlash::MergeOnly` behaviour to `NormalizePath`, which allows `NormalizePath`
|
|
|
|
to retain any trailing slashes. [#1695]
|
|
|
|
* Remove bound `std::marker::Sized` from `web::Data` to support storing `Arc<dyn Trait>`
|
|
|
|
via `web::Data::from` [#1710]
|
2020-09-15 14:14:14 +02:00
|
|
|
|
2020-09-30 12:07:35 +02:00
|
|
|
### Fixed
|
|
|
|
* `ResourceMap` debug printing is no longer infinitely recursive. [#1708]
|
|
|
|
|
|
|
|
[#1695]: https://github.com/actix/actix-web/pull/1695
|
2020-09-25 18:42:49 +02:00
|
|
|
[#1708]: https://github.com/actix/actix-web/pull/1708
|
2020-09-30 12:07:35 +02:00
|
|
|
[#1710]: https://github.com/actix/actix-web/pull/1710
|
|
|
|
|
2020-09-15 14:14:14 +02:00
|
|
|
|
|
|
|
## 3.0.2 - 2020-09-15
|
2020-09-15 12:32:31 +02:00
|
|
|
### Fixed
|
|
|
|
* `NormalizePath` when used with `TrailingSlash::Trim` no longer trims the root path "/". [#1678]
|
|
|
|
|
|
|
|
[#1678]: https://github.com/actix/actix-web/pull/1678
|
2020-09-13 04:24:44 +02:00
|
|
|
|
|
|
|
|
|
|
|
## 3.0.1 - 2020-09-13
|
2020-09-13 01:55:39 +02:00
|
|
|
### Changed
|
|
|
|
* `middleware::normalize::TrailingSlash` enum is now accessible. [#1673]
|
2020-09-10 13:54:27 +02:00
|
|
|
|
2020-09-13 04:24:44 +02:00
|
|
|
[#1673]: https://github.com/actix/actix-web/pull/1673
|
|
|
|
|
|
|
|
|
2020-09-11 14:50:10 +02:00
|
|
|
## 3.0.0 - 2020-09-11
|
|
|
|
* No significant changes from `3.0.0-beta.4`.
|
|
|
|
|
|
|
|
|
2020-09-10 13:54:27 +02:00
|
|
|
## 3.0.0-beta.4 - 2020-09-09
|
2020-08-19 13:21:52 +02:00
|
|
|
### Added
|
2021-02-24 17:19:40 +01:00
|
|
|
* `middleware::NormalizePath` now has configurable behavior for either always having a trailing
|
2020-09-02 23:12:07 +02:00
|
|
|
slash, or as the new addition, always trimming trailing slashes. [#1639]
|
2020-08-24 11:13:35 +02:00
|
|
|
|
|
|
|
### Changed
|
2020-09-02 23:12:07 +02:00
|
|
|
* Update actix-codec and actix-utils dependencies. [#1634]
|
|
|
|
* `FormConfig` and `JsonConfig` configurations are now also considered when set
|
|
|
|
using `App::data`. [#1641]
|
2020-09-09 10:20:54 +02:00
|
|
|
* `HttpServer::maxconn` is renamed to the more expressive `HttpServer::max_connections`. [#1655]
|
|
|
|
* `HttpServer::maxconnrate` is renamed to the more expressive
|
|
|
|
`HttpServer::max_connection_rate`. [#1655]
|
2020-08-24 11:13:35 +02:00
|
|
|
|
2020-09-02 23:12:07 +02:00
|
|
|
[#1639]: https://github.com/actix/actix-web/pull/1639
|
|
|
|
[#1641]: https://github.com/actix/actix-web/pull/1641
|
|
|
|
[#1634]: https://github.com/actix/actix-web/pull/1634
|
2020-09-09 10:20:54 +02:00
|
|
|
[#1655]: https://github.com/actix/actix-web/pull/1655
|
2020-08-19 13:21:52 +02:00
|
|
|
|
2020-08-17 18:08:40 +02:00
|
|
|
## 3.0.0-beta.3 - 2020-08-17
|
2020-08-17 17:28:39 +02:00
|
|
|
### Changed
|
|
|
|
* Update `rustls` to 0.18
|
2020-08-17 12:32:38 +02:00
|
|
|
|
2020-08-24 11:13:35 +02:00
|
|
|
|
2020-08-17 12:32:38 +02:00
|
|
|
## 3.0.0-beta.2 - 2020-08-17
|
2020-07-20 18:40:58 +02:00
|
|
|
### Changed
|
|
|
|
* `PayloadConfig` is now also considered in `Bytes` and `String` extractors when set
|
|
|
|
using `App::data`. [#1610]
|
2020-07-21 01:54:26 +02:00
|
|
|
* `web::Path` now has a public representation: `web::Path(pub T)` that enables
|
|
|
|
destructuring. [#1594]
|
2020-08-09 16:51:38 +02:00
|
|
|
* `ServiceRequest::app_data` allows retrieval of non-Data data without splitting into parts to
|
|
|
|
access `HttpRequest` which already allows this. [#1618]
|
2020-08-14 02:24:35 +02:00
|
|
|
* Re-export all error types from `awc`. [#1621]
|
2020-07-21 09:40:30 +02:00
|
|
|
* MSRV is now 1.42.0.
|
2020-07-20 18:40:58 +02:00
|
|
|
|
2020-07-18 17:17:00 +02:00
|
|
|
### Fixed
|
|
|
|
* Memory leak of app data in pooled requests. [#1609]
|
|
|
|
|
2020-07-21 01:54:26 +02:00
|
|
|
[#1594]: https://github.com/actix/actix-web/pull/1594
|
2020-07-18 17:17:00 +02:00
|
|
|
[#1609]: https://github.com/actix/actix-web/pull/1609
|
2020-07-20 18:40:58 +02:00
|
|
|
[#1610]: https://github.com/actix/actix-web/pull/1610
|
2020-08-14 02:24:35 +02:00
|
|
|
[#1618]: https://github.com/actix/actix-web/pull/1618
|
|
|
|
[#1621]: https://github.com/actix/actix-web/pull/1621
|
2020-06-17 09:58:23 +02:00
|
|
|
|
2020-06-18 16:45:30 +02:00
|
|
|
|
2020-07-15 01:44:44 +02:00
|
|
|
## 3.0.0-beta.1 - 2020-07-13
|
|
|
|
### Added
|
2020-06-18 16:45:30 +02:00
|
|
|
* Re-export `actix_rt::main` as `actix_web::main`.
|
2020-06-23 01:58:20 +02:00
|
|
|
* `HttpRequest::match_pattern` and `ServiceRequest::match_pattern` for extracting the matched
|
|
|
|
resource pattern.
|
2020-06-27 17:22:16 +02:00
|
|
|
* `HttpRequest::match_name` and `ServiceRequest::match_name` for extracting matched resource name.
|
2020-06-18 16:45:30 +02:00
|
|
|
|
2020-06-17 09:58:23 +02:00
|
|
|
### Changed
|
|
|
|
* Fix actix_http::h1::dispatcher so it returns when HW_BUFFER_SIZE is reached. Should reduce peak memory consumption during large uploads. [#1550]
|
2020-06-19 15:34:14 +02:00
|
|
|
* Migrate cookie handling to `cookie` crate. Actix-web no longer requires `ring` dependency.
|
2020-07-03 02:08:24 +02:00
|
|
|
* MSRV is now 1.41.1
|
2020-06-17 09:58:23 +02:00
|
|
|
|
2020-06-17 11:54:20 +02:00
|
|
|
### Fixed
|
|
|
|
* `NormalizePath` improved consistency when path needs slashes added _and_ removed.
|
|
|
|
|
2020-05-09 01:31:26 +02:00
|
|
|
|
2020-07-15 01:44:44 +02:00
|
|
|
## 3.0.0-alpha.3 - 2020-05-21
|
2020-05-16 01:27:03 +02:00
|
|
|
### Added
|
|
|
|
* Add option to create `Data<T>` from `Arc<T>` [#1509]
|
|
|
|
|
2020-05-09 01:31:26 +02:00
|
|
|
### Changed
|
|
|
|
* Resources and Scopes can now access non-overridden data types set on App (or containing scopes) when setting their own data. [#1486]
|
2020-05-15 02:07:27 +02:00
|
|
|
* Fix audit issue logging by default peer address [#1485]
|
2020-05-13 02:57:37 +02:00
|
|
|
* Bump minimum supported Rust version to 1.40
|
2020-05-19 02:34:37 +02:00
|
|
|
* Replace deprecated `net2` crate with `socket2`
|
|
|
|
|
2020-05-15 02:07:27 +02:00
|
|
|
[#1485]: https://github.com/actix/actix-web/pull/1485
|
2020-05-16 01:27:03 +02:00
|
|
|
[#1509]: https://github.com/actix/actix-web/pull/1509
|
2020-05-15 02:07:27 +02:00
|
|
|
|
2020-05-07 23:46:13 +02:00
|
|
|
## [3.0.0-alpha.2] - 2020-05-08
|
2020-03-18 02:51:06 +01:00
|
|
|
|
|
|
|
### Changed
|
|
|
|
|
2020-04-14 03:33:19 +02:00
|
|
|
* `{Resource,Scope}::default_service(f)` handlers now support app data extraction. [#1452]
|
2020-03-18 02:51:06 +01:00
|
|
|
* Implement `std::error::Error` for our custom errors [#1422]
|
2020-05-09 01:31:26 +02:00
|
|
|
* NormalizePath middleware now appends trailing / so that routes of form /example/ respond to /example requests. [#1433]
|
2020-05-07 23:46:13 +02:00
|
|
|
* Remove the `failure` feature and support.
|
2020-03-18 02:51:06 +01:00
|
|
|
|
|
|
|
[#1422]: https://github.com/actix/actix-web/pull/1422
|
2020-05-09 01:31:26 +02:00
|
|
|
[#1433]: https://github.com/actix/actix-web/pull/1433
|
2020-04-14 03:33:19 +02:00
|
|
|
[#1452]: https://github.com/actix/actix-web/pull/1452
|
2020-05-09 01:31:26 +02:00
|
|
|
[#1486]: https://github.com/actix/actix-web/pull/1486
|
2020-03-18 02:51:06 +01:00
|
|
|
|
2020-05-15 02:07:27 +02:00
|
|
|
|
2020-03-11 19:24:15 +01:00
|
|
|
## [3.0.0-alpha.1] - 2020-03-11
|
2020-01-10 18:34:31 +01:00
|
|
|
|
2020-02-23 09:33:28 +01:00
|
|
|
### Added
|
|
|
|
|
|
|
|
* Add helper function for creating routes with `TRACE` method guard `web::trace()`
|
2020-04-05 21:12:44 +02:00
|
|
|
* Add convenience functions `test::read_body_json()` and `test::TestRequest::send_request()` for testing.
|
2020-02-23 09:33:28 +01:00
|
|
|
|
2020-01-10 18:34:31 +01:00
|
|
|
### Changed
|
|
|
|
|
2020-01-28 10:28:09 +01:00
|
|
|
* Use `sha-1` crate instead of unmaintained `sha1` crate
|
2020-03-11 19:24:15 +01:00
|
|
|
* Skip empty chunks when returning response from a `Stream` [#1308]
|
2020-02-22 23:08:22 +01:00
|
|
|
* Update the `time` dependency to 0.2.7
|
2020-03-04 07:20:14 +01:00
|
|
|
* Update `actix-tls` dependency to 2.0.0-alpha.1
|
|
|
|
* Update `rustls` dependency to 0.17
|
Upgrade `time` to 0.2.5 (#1254)
* Use `OffsetDateTime` instead of `PrimitiveDateTime`
* Parse time strings with `PrimitiveDateTime::parse` instead of `OffsetDateTime::parse`
* Remove unused `time` dependency from actix-multipart
* Fix a few errors with time related tests from the `time` upgrade
* Implement logic to convert a RFC 850 two-digit year into a full length year, and organize time parsing related functions
* Upgrade `time` to 0.2.2
* Correctly parse C's asctime time format using time 0.2's new format patterns
* Update CHANGES.md
* Use `time` without any of its deprecated functions
* Enforce a UTC time offset when converting an `OffsetDateTime` into a Header value
* Use the more readable version of `Duration::seconds(0)`, `Duration::zero()`
* Remove unneeded conversion of time::Duration to std::time::Duration
* Use `OffsetDateTime::as_seconds_f64` instead of manually calculating the amount of seconds from nanoseconds
* Replace a few additional instances of `Duration::seconds(0)` with `Duration::zero()`
* Truncate any nanoseconds from a supplied `Duration` within `Cookie::set_max_age` to ensure two Cookies with the same amount whole seconds equate to one another
* Fix the actix-http::cookie::do_not_panic_on_large_max_ages test
* Convert `Cookie::max_age` and `Cookie::expires` examples to `time` 0.2
Mainly minor changes. Type inference can be used alongside the new
`time::parse` method, such that the type doesn't need to be specified.
This will be useful if a refactoring takes place that changes the type.
There are also new macros, which are used where possible.
One change that is not immediately obvious, in `HttpDate`, there was an
unnecessary conditional. As the time crate allows for negative durations
(and can perform arithmetic with such), the if/else can be removed
entirely.
Time v0.2.3 also has some bug fixes, which is why I am not using a more
general v0.2 in Cargo.toml.
v0.2.3 has been yanked, as it was backwards imcompatible. This version
reverts the breaking change, while still supporting rustc back to
1.34.0.
* Add missing `time::offset` macro import
* Fix type confusion when using `time::parse` followed by `using_offset`
* Update `time` to 0.2.5
* Update CHANGES.md
Co-authored-by: Jacob Pratt <the.z.cuber@gmail.com>
2020-01-28 12:44:22 +01:00
|
|
|
|
2020-03-11 19:24:15 +01:00
|
|
|
[#1308]: https://github.com/actix/actix-web/pull/1308
|
|
|
|
|
2019-12-25 17:21:00 +01:00
|
|
|
## [2.0.0] - 2019-12-25
|
2019-12-22 14:12:22 +01:00
|
|
|
|
|
|
|
### Changed
|
|
|
|
|
|
|
|
* Rename `HttpServer::start()` to `HttpServer::run()`
|
|
|
|
|
2019-12-25 09:10:28 +01:00
|
|
|
* Allow to gracefully stop test server via `TestServer::stop()`
|
|
|
|
|
2019-12-25 17:13:52 +01:00
|
|
|
* Allow to specify multi-patterns for resources
|
2019-12-22 14:12:22 +01:00
|
|
|
|
2019-12-20 12:36:48 +01:00
|
|
|
## [2.0.0-rc] - 2019-12-20
|
2019-12-16 12:22:26 +01:00
|
|
|
|
|
|
|
### Changed
|
|
|
|
|
|
|
|
* Move `BodyEncoding` to `dev` module #1220
|
|
|
|
|
2019-12-20 11:11:51 +01:00
|
|
|
* Allow to set `peer_addr` for TestRequest #1074
|
|
|
|
|
2019-12-20 12:45:35 +01:00
|
|
|
* Make web::Data deref to Arc<T> #1214
|
|
|
|
|
2019-12-20 12:13:09 +01:00
|
|
|
* Rename `App::register_data()` to `App::app_data()`
|
|
|
|
|
|
|
|
* `HttpRequest::app_data<T>()` returns `Option<&T>` instead of `Option<&Data<T>>`
|
|
|
|
|
2019-12-20 11:04:51 +01:00
|
|
|
### Fixed
|
|
|
|
|
|
|
|
* Fix `AppConfig::secure()` is always false. #1202
|
|
|
|
|
|
|
|
|
2019-12-15 17:51:14 +01:00
|
|
|
## [2.0.0-alpha.6] - 2019-12-15
|
|
|
|
|
|
|
|
### Fixed
|
|
|
|
|
|
|
|
* Fixed compilation with default features off
|
|
|
|
|
2019-12-13 07:16:43 +01:00
|
|
|
## [2.0.0-alpha.5] - 2019-12-13
|
|
|
|
|
|
|
|
### Added
|
|
|
|
|
|
|
|
* Add test server, `test::start()` and `test::start_with()`
|
|
|
|
|
2019-12-08 15:22:39 +01:00
|
|
|
## [2.0.0-alpha.4] - 2019-12-08
|
|
|
|
|
2019-12-07 19:06:04 +01:00
|
|
|
### Deleted
|
|
|
|
|
2020-09-30 12:07:35 +02:00
|
|
|
* Delete HttpServer::run(), it is not useful with async/await
|
2019-12-07 19:06:04 +01:00
|
|
|
|
2019-12-07 08:00:03 +01:00
|
|
|
## [2.0.0-alpha.3] - 2019-12-07
|
2019-12-05 18:35:43 +01:00
|
|
|
|
|
|
|
### Changed
|
|
|
|
|
|
|
|
* Migrate to tokio 0.2
|
|
|
|
|
|
|
|
|
2019-11-25 12:59:14 +01:00
|
|
|
## [2.0.0-alpha.1] - 2019-11-22
|
2019-11-20 05:05:16 +01:00
|
|
|
|
|
|
|
### Changed
|
|
|
|
|
2019-11-25 12:59:14 +01:00
|
|
|
* Migrated to `std::future`
|
|
|
|
|
2019-11-20 05:05:16 +01:00
|
|
|
* Remove implementation of `Responder` for `()`. (#1167)
|
|
|
|
|
|
|
|
|
2019-11-14 03:55:37 +01:00
|
|
|
## [1.0.9] - 2019-11-14
|
2019-10-01 10:05:38 +02:00
|
|
|
|
|
|
|
### Added
|
|
|
|
|
|
|
|
* Add `Payload::into_inner` method and make stored `def::Payload` public. (#1110)
|
|
|
|
|
2019-10-15 01:05:54 +02:00
|
|
|
### Changed
|
|
|
|
|
|
|
|
* Support `Host` guards when the `Host` header is unset (e.g. HTTP/2 requests) (#1129)
|
|
|
|
|
2019-11-14 03:55:37 +01:00
|
|
|
|
2019-09-25 11:39:09 +02:00
|
|
|
## [1.0.8] - 2019-09-25
|
2019-09-18 02:36:39 +02:00
|
|
|
|
|
|
|
### Added
|
|
|
|
|
|
|
|
* Add `Scope::register_data` and `Resource::register_data` methods, parallel to
|
|
|
|
`App::register_data`.
|
2019-09-13 07:56:24 +02:00
|
|
|
|
2019-09-18 02:36:39 +02:00
|
|
|
* Add `middleware::Condition` that conditionally enables another middleware
|
|
|
|
|
2019-09-13 07:56:24 +02:00
|
|
|
* Allow to re-construct `ServiceRequest` from `HttpRequest` and `Payload`
|
2019-09-09 12:24:57 +02:00
|
|
|
|
2019-09-25 11:16:51 +02:00
|
|
|
* Add `HttpServer::listen_uds` for ability to listen on UDS FD rather than path,
|
|
|
|
which is useful for example with systemd.
|
|
|
|
|
2019-09-25 06:28:41 +02:00
|
|
|
### Changed
|
|
|
|
|
2020-09-30 12:07:35 +02:00
|
|
|
* Make UrlEncodedError::Overflow more informative
|
2017-10-24 08:25:32 +02:00
|
|
|
|
2019-09-25 06:28:41 +02:00
|
|
|
* Use actix-testing for testing utils
|
|
|
|
|
|
|
|
|
2019-08-29 05:36:16 +02:00
|
|
|
## [1.0.7] - 2019-08-29
|
|
|
|
|
|
|
|
### Fixed
|
|
|
|
|
|
|
|
* Request Extensions leak #1062
|
|
|
|
|
|
|
|
|
2019-08-28 17:40:24 +02:00
|
|
|
## [1.0.6] - 2019-08-28
|
2019-07-19 07:07:52 +02:00
|
|
|
|
|
|
|
### Added
|
|
|
|
|
|
|
|
* Re-implement Host predicate (#989)
|
|
|
|
|
2020-09-30 12:07:35 +02:00
|
|
|
* Form implements Responder, returning a `application/x-www-form-urlencoded` response
|
2019-07-20 13:59:10 +02:00
|
|
|
|
2019-08-23 17:02:03 +02:00
|
|
|
* Add `into_inner` to `Data`
|
|
|
|
|
2019-08-28 17:32:17 +02:00
|
|
|
* Add `test::TestRequest::set_form()` convenience method to automatically serialize data and set
|
|
|
|
the header in test requests.
|
|
|
|
|
2019-07-19 11:47:44 +02:00
|
|
|
### Changed
|
|
|
|
|
|
|
|
* `Query` payload made `pub`. Allows user to pattern-match the payload.
|
|
|
|
|
2019-08-28 17:40:24 +02:00
|
|
|
* Enable `rust-tls` feature for client #1045
|
|
|
|
|
2019-08-13 20:03:24 +02:00
|
|
|
* Update serde_urlencoded to 0.6.1
|
|
|
|
|
|
|
|
* Update url to 2.1
|
2019-08-13 19:48:11 +02:00
|
|
|
|
2019-07-19 07:07:52 +02:00
|
|
|
|
2019-07-18 13:51:51 +02:00
|
|
|
## [1.0.5] - 2019-07-18
|
2019-07-18 10:31:18 +02:00
|
|
|
|
|
|
|
### Added
|
|
|
|
|
2019-07-18 13:24:12 +02:00
|
|
|
* Unix domain sockets (HttpServer::bind_uds) #92
|
|
|
|
|
2019-07-18 10:31:18 +02:00
|
|
|
* Actix now logs errors resulting in "internal server error" responses always, with the `error`
|
|
|
|
logging level
|
|
|
|
|
|
|
|
### Fixed
|
|
|
|
|
|
|
|
* Restored logging of errors through the `Logger` middleware
|
|
|
|
|
2019-07-18 13:24:12 +02:00
|
|
|
|
2019-07-17 08:07:12 +02:00
|
|
|
## [1.0.4] - 2019-07-17
|
2019-07-01 05:37:03 +02:00
|
|
|
|
2019-07-11 10:42:58 +02:00
|
|
|
### Added
|
|
|
|
|
|
|
|
* Add `Responder` impl for `(T, StatusCode) where T: Responder`
|
|
|
|
|
2019-07-17 07:33:05 +02:00
|
|
|
* Allow to access app's resource map via
|
|
|
|
`ServiceRequest::resource_map()` and `HttpRequest::resource_map()` methods.
|
|
|
|
|
2019-07-01 05:37:03 +02:00
|
|
|
### Changed
|
|
|
|
|
|
|
|
* Upgrade `rand` dependency version to 0.7
|
|
|
|
|
2019-07-17 07:33:05 +02:00
|
|
|
|
2019-06-28 10:36:20 +02:00
|
|
|
## [1.0.3] - 2019-06-28
|
2019-06-18 08:43:25 +02:00
|
|
|
|
2019-06-28 06:43:52 +02:00
|
|
|
### Added
|
|
|
|
|
|
|
|
* Support asynchronous data factories #850
|
|
|
|
|
2019-06-18 08:43:25 +02:00
|
|
|
### Changed
|
|
|
|
|
|
|
|
* Use `encoding_rs` crate instead of unmaintained `encoding` crate
|
|
|
|
|
2019-06-28 06:43:52 +02:00
|
|
|
|
2019-06-17 08:33:00 +02:00
|
|
|
## [1.0.2] - 2019-06-17
|
|
|
|
|
2019-06-18 08:43:25 +02:00
|
|
|
### Changed
|
2019-06-17 08:33:00 +02:00
|
|
|
|
|
|
|
* Move cors middleware to `actix-cors` crate.
|
|
|
|
|
|
|
|
* Move identity middleware to `actix-identity` crate.
|
|
|
|
|
|
|
|
|
2019-06-17 08:23:30 +02:00
|
|
|
## [1.0.1] - 2019-06-17
|
2019-06-12 05:26:46 +02:00
|
|
|
|
2019-06-28 06:43:52 +02:00
|
|
|
### Added
|
2019-06-12 05:26:46 +02:00
|
|
|
|
2019-06-12 13:02:45 +02:00
|
|
|
* Add support for PathConfig #903
|
|
|
|
|
2019-06-12 05:26:46 +02:00
|
|
|
* Add `middleware::identity::RequestIdentity` trait to `get_identity` from `HttpMessage`.
|
|
|
|
|
2019-06-18 08:43:25 +02:00
|
|
|
### Changed
|
2019-06-12 05:26:46 +02:00
|
|
|
|
2019-06-15 05:34:16 +02:00
|
|
|
* Move cors middleware to `actix-cors` crate.
|
2019-06-12 11:52:48 +02:00
|
|
|
|
|
|
|
* Move identity middleware to `actix-identity` crate.
|
2019-06-12 05:26:46 +02:00
|
|
|
|
2019-06-15 05:34:16 +02:00
|
|
|
* Disable default feature `secure-cookies`.
|
|
|
|
|
2019-06-12 12:15:06 +02:00
|
|
|
* Allow to test an app that uses async actors #897
|
|
|
|
|
2019-06-12 12:45:05 +02:00
|
|
|
* Re-apply patch from #637 #894
|
|
|
|
|
2019-06-15 18:12:20 +02:00
|
|
|
### Fixed
|
|
|
|
|
|
|
|
* HttpRequest::url_for is broken with nested scopes #915
|
|
|
|
|
2019-06-12 05:26:46 +02:00
|
|
|
|
2019-06-05 04:27:25 +02:00
|
|
|
## [1.0.0] - 2019-06-05
|
2019-05-22 20:18:33 +02:00
|
|
|
|
2019-06-28 06:43:52 +02:00
|
|
|
### Added
|
2019-05-22 20:18:33 +02:00
|
|
|
|
2019-06-03 19:41:32 +02:00
|
|
|
* Add `Scope::configure()` method.
|
|
|
|
|
2019-05-23 06:25:51 +02:00
|
|
|
* Add `ServiceRequest::set_payload()` method.
|
|
|
|
|
2019-05-22 20:18:33 +02:00
|
|
|
* Add `test::TestRequest::set_json()` convenience method to automatically
|
|
|
|
serialize data and set header in test requests.
|
2019-06-04 18:33:43 +02:00
|
|
|
|
|
|
|
* Add macros for head, options, trace, connect and patch http methods
|
2019-05-22 20:18:33 +02:00
|
|
|
|
2019-06-18 08:43:25 +02:00
|
|
|
### Changed
|
2019-05-23 14:21:02 +02:00
|
|
|
|
|
|
|
* Drop an unnecessary `Option<_>` indirection around `ServerBuilder` from `HttpServer`. #863
|
|
|
|
|
2019-05-22 20:18:33 +02:00
|
|
|
### Fixed
|
|
|
|
|
2019-05-31 10:09:21 +02:00
|
|
|
* Fix Logger request time format, and use rfc3339. #867
|
|
|
|
|
2019-05-22 20:18:33 +02:00
|
|
|
* Clear http requests pool on app service drop #860
|
|
|
|
|
|
|
|
|
2019-05-18 19:49:59 +02:00
|
|
|
## [1.0.0-rc] - 2019-05-18
|
2019-05-15 19:31:40 +02:00
|
|
|
|
2021-02-24 17:19:40 +01:00
|
|
|
### Added
|
2019-05-14 22:54:30 +02:00
|
|
|
|
2019-05-17 22:10:46 +02:00
|
|
|
* Add `Query<T>::from_query()` to extract parameters from a query string. #846
|
2019-05-14 22:54:30 +02:00
|
|
|
* `QueryConfig`, similar to `JsonConfig` for customizing error handling of query extractors.
|
|
|
|
|
2019-06-18 08:43:25 +02:00
|
|
|
### Changed
|
2019-05-13 05:04:08 +02:00
|
|
|
|
|
|
|
* `JsonConfig` is now `Send + Sync`, this implies that `error_handler` must be `Send + Sync` too.
|
|
|
|
|
2019-05-15 19:31:40 +02:00
|
|
|
### Fixed
|
|
|
|
|
|
|
|
* Codegen with parameters in the path only resolves the first registered endpoint #841
|
|
|
|
|
|
|
|
|
2019-05-12 19:49:21 +02:00
|
|
|
## [1.0.0-beta.4] - 2019-05-12
|
2019-05-12 18:42:05 +02:00
|
|
|
|
2021-02-24 17:19:40 +01:00
|
|
|
### Added
|
2019-05-12 18:42:05 +02:00
|
|
|
|
|
|
|
* Allow to set/override app data on scope level
|
|
|
|
|
2019-06-18 08:43:25 +02:00
|
|
|
### Changed
|
2019-05-10 23:45:30 +02:00
|
|
|
|
|
|
|
* `App::configure` take an `FnOnce` instead of `Fn`
|
2019-05-12 19:49:21 +02:00
|
|
|
* Upgrade actix-net crates
|
|
|
|
|
2019-05-18 18:54:23 +02:00
|
|
|
|
2019-05-05 04:43:49 +02:00
|
|
|
## [1.0.0-beta.3] - 2019-05-04
|
|
|
|
|
2019-04-29 18:34:14 +02:00
|
|
|
### Added
|
|
|
|
|
|
|
|
* Add helper function for executing futures `test::block_fn()`
|
|
|
|
|
2019-04-29 18:26:12 +02:00
|
|
|
### Changed
|
|
|
|
|
2019-05-05 04:43:49 +02:00
|
|
|
* Extractor configuration could be registered with `App::data()`
|
|
|
|
or with `Resource::data()` #775
|
|
|
|
|
|
|
|
* Route data is unified with app data, `Route::data()` moved to resource
|
|
|
|
level to `Resource::data()`
|
|
|
|
|
2019-05-04 17:42:27 +02:00
|
|
|
* CORS handling without headers #702
|
|
|
|
|
2021-02-24 17:19:40 +01:00
|
|
|
* Allow constructing `Data` instances to avoid double `Arc` for `Send + Sync` types.
|
2019-04-29 18:26:12 +02:00
|
|
|
|
2019-05-01 21:40:56 +02:00
|
|
|
### Fixed
|
|
|
|
|
|
|
|
* Fix `NormalizePath` middleware impl #806
|
|
|
|
|
2019-05-05 04:43:49 +02:00
|
|
|
### Deleted
|
|
|
|
|
|
|
|
* `App::data_factory()` is deleted.
|
|
|
|
|
2019-04-29 18:26:12 +02:00
|
|
|
|
2019-04-24 22:00:30 +02:00
|
|
|
## [1.0.0-beta.2] - 2019-04-24
|
|
|
|
|
2019-04-22 23:22:08 +02:00
|
|
|
### Added
|
|
|
|
|
2019-04-25 00:29:15 +02:00
|
|
|
* Add raw services support via `web::service()`
|
2019-04-24 19:25:46 +02:00
|
|
|
|
2019-04-22 23:22:08 +02:00
|
|
|
* Add helper functions for reading response body `test::read_body()`
|
|
|
|
|
2019-04-25 00:29:15 +02:00
|
|
|
* Add support for `remainder match` (i.e "/path/{tail}*")
|
2019-04-23 06:22:17 +02:00
|
|
|
|
2019-04-25 00:29:15 +02:00
|
|
|
* Extend `Responder` trait, allow to override status code and headers.
|
2019-04-23 06:22:17 +02:00
|
|
|
|
2019-04-25 00:42:34 +02:00
|
|
|
* Store visit and login timestamp in the identity cookie #502
|
|
|
|
|
2019-04-22 23:22:08 +02:00
|
|
|
### Changed
|
|
|
|
|
|
|
|
* `.to_async()` handler can return `Responder` type #792
|
|
|
|
|
2019-04-24 06:21:49 +02:00
|
|
|
### Fixed
|
|
|
|
|
|
|
|
* Fix async web::Data factory handling
|
|
|
|
|
|
|
|
|
2019-04-21 06:16:51 +02:00
|
|
|
## [1.0.0-beta.1] - 2019-04-20
|
2019-04-15 04:52:12 +02:00
|
|
|
|
|
|
|
### Added
|
|
|
|
|
2019-04-16 19:11:38 +02:00
|
|
|
* Add helper functions for reading test response body,
|
2019-04-15 04:52:12 +02:00
|
|
|
`test::read_response()` and test::read_response_json()`
|
|
|
|
|
2019-04-16 19:11:38 +02:00
|
|
|
* Add `.peer_addr()` #744
|
|
|
|
|
2019-04-20 20:18:04 +02:00
|
|
|
* Add `NormalizePath` middleware
|
|
|
|
|
2019-04-15 16:32:49 +02:00
|
|
|
### Changed
|
|
|
|
|
|
|
|
* Rename `RouterConfig` to `ServiceConfig`
|
|
|
|
|
2019-04-15 16:44:07 +02:00
|
|
|
* Rename `test::call_success` to `test::call_service`
|
|
|
|
|
2019-04-19 01:03:13 +02:00
|
|
|
* Removed `ServiceRequest::from_parts()` as it is unsafe to create from parts.
|
|
|
|
|
2019-04-20 02:23:17 +02:00
|
|
|
* `CookieIdentityPolicy::max_age()` accepts value in seconds
|
|
|
|
|
2019-04-15 04:52:12 +02:00
|
|
|
### Fixed
|
|
|
|
|
|
|
|
* Fixed `TestRequest::app_data()`
|
|
|
|
|
|
|
|
|
2019-04-14 17:09:32 +02:00
|
|
|
## [1.0.0-alpha.6] - 2019-04-14
|
2019-04-13 23:50:54 +02:00
|
|
|
|
|
|
|
### Changed
|
|
|
|
|
2021-02-24 17:19:40 +01:00
|
|
|
* Allow using any service as default service.
|
2019-04-14 07:25:00 +02:00
|
|
|
|
2019-04-13 23:50:54 +02:00
|
|
|
* Remove generic type for request payload, always use default.
|
|
|
|
|
|
|
|
* Removed `Decompress` middleware. Bytes, String, Json, Form extractors
|
|
|
|
automatically decompress payload.
|
|
|
|
|
2019-04-14 01:35:25 +02:00
|
|
|
* Make extractor config type explicit. Add `FromRequest::Config` associated type.
|
|
|
|
|
2019-04-13 23:50:54 +02:00
|
|
|
|
2019-04-12 23:00:45 +02:00
|
|
|
## [1.0.0-alpha.5] - 2019-04-12
|
|
|
|
|
2019-04-11 05:47:28 +02:00
|
|
|
### Added
|
|
|
|
|
|
|
|
* Added async io `TestBuffer` for testing.
|
|
|
|
|
2019-04-12 23:00:45 +02:00
|
|
|
### Deleted
|
|
|
|
|
|
|
|
* Removed native-tls support
|
|
|
|
|
2019-04-11 05:47:28 +02:00
|
|
|
|
2019-04-08 08:42:05 +02:00
|
|
|
## [1.0.0-alpha.4] - 2019-04-08
|
2019-04-04 00:09:31 +02:00
|
|
|
|
|
|
|
### Added
|
|
|
|
|
|
|
|
* `App::configure()` allow to offload app configuration to different methods
|
2019-04-03 21:28:58 +02:00
|
|
|
|
2019-04-04 02:41:42 +02:00
|
|
|
* Added `URLPath` option for logger
|
|
|
|
|
2019-04-04 00:25:52 +02:00
|
|
|
* Added `ServiceRequest::app_data()`, returns `Data<T>`
|
|
|
|
|
|
|
|
* Added `ServiceFromRequest::app_data()`, returns `Data<T>`
|
|
|
|
|
2019-04-03 21:28:58 +02:00
|
|
|
### Changed
|
|
|
|
|
2019-04-07 23:43:07 +02:00
|
|
|
* `FromRequest` trait refactoring
|
|
|
|
|
2019-04-03 21:28:58 +02:00
|
|
|
* Move multipart support to actix-multipart crate
|
|
|
|
|
2019-04-10 21:43:31 +02:00
|
|
|
### Fixed
|
|
|
|
|
|
|
|
* Fix body propagation in Response::from_error. #760
|
|
|
|
|
2019-04-03 21:28:58 +02:00
|
|
|
|
2019-04-03 06:49:31 +02:00
|
|
|
## [1.0.0-alpha.3] - 2019-04-02
|
|
|
|
|
2019-04-01 05:43:00 +02:00
|
|
|
### Changed
|
|
|
|
|
|
|
|
* Renamed `TestRequest::to_service()` to `TestRequest::to_srv_request()`
|
|
|
|
|
|
|
|
* Renamed `TestRequest::to_response()` to `TestRequest::to_srv_response()`
|
|
|
|
|
2019-04-02 22:35:01 +02:00
|
|
|
* Removed `Deref` impls
|
|
|
|
|
2019-03-30 18:04:38 +01:00
|
|
|
### Removed
|
|
|
|
|
|
|
|
* Removed unused `actix_web::web::md()`
|
|
|
|
|
|
|
|
|
2019-03-29 19:59:38 +01:00
|
|
|
## [1.0.0-alpha.2] - 2019-03-29
|
|
|
|
|
2019-03-30 06:06:14 +01:00
|
|
|
### Added
|
|
|
|
|
2021-02-24 17:19:40 +01:00
|
|
|
* Rustls support
|
2019-03-30 06:06:14 +01:00
|
|
|
|
2019-03-29 19:59:38 +01:00
|
|
|
### Changed
|
|
|
|
|
2021-02-24 17:19:40 +01:00
|
|
|
* Use forked cookie
|
2019-03-30 06:06:14 +01:00
|
|
|
|
2021-02-24 17:19:40 +01:00
|
|
|
* Multipart::Field renamed to MultipartField
|
2019-03-29 19:59:38 +01:00
|
|
|
|
2019-03-28 21:46:26 +01:00
|
|
|
## [1.0.0-alpha.1] - 2019-03-28
|
2019-03-25 00:17:59 +01:00
|
|
|
|
|
|
|
### Changed
|
|
|
|
|
2019-03-28 21:46:26 +01:00
|
|
|
* Complete architecture re-design.
|
|
|
|
|
2019-03-25 00:17:59 +01:00
|
|
|
* Return 405 response if no matching route found within resource #538
|