1
0
Fork 0
mirror of https://github.com/actix/actix-web.git synced 2024-05-19 16:58:14 +00:00

Revert "use dash hyphenation in changelogs"

This reverts commit 1ea619f2a1.
This commit is contained in:
Rob Ede 2021-12-22 08:18:44 +00:00
parent 1ea619f2a1
commit 212c6926f9
No known key found for this signature in database
GPG key ID: 97C636207D3EF933
10 changed files with 876 additions and 877 deletions

File diff suppressed because it is too large Load diff

View file

@ -4,42 +4,42 @@
## 0.6.0-beta.10 - 2021-12-11 ## 0.6.0-beta.10 - 2021-12-11
- No significant changes since `0.6.0-beta.9`. * No significant changes since `0.6.0-beta.9`.
## 0.6.0-beta.9 - 2021-11-22 ## 0.6.0-beta.9 - 2021-11-22
- Add crate feature `experimental-io-uring`, enabling async file I/O to be utilized. This feature is only available on Linux OSes with recent kernel versions. This feature is semver-exempt. [#2408] * Add crate feature `experimental-io-uring`, enabling async file I/O to be utilized. This feature is only available on Linux OSes with recent kernel versions. This feature is semver-exempt. [#2408]
- Add `NamedFile::open_async`. [#2408] * Add `NamedFile::open_async`. [#2408]
- Fix 304 Not Modified responses to omit the Content-Length header, as per the spec. [#2453] * Fix 304 Not Modified responses to omit the Content-Length header, as per the spec. [#2453]
- The `Responder` impl for `NamedFile` now has a boxed future associated type. [#2408] * The `Responder` impl for `NamedFile` now has a boxed future associated type. [#2408]
- The `Service` impl for `NamedFileService` now has a boxed future associated type. [#2408] * The `Service` impl for `NamedFileService` now has a boxed future associated type. [#2408]
- Add `impl Clone` for `FilesService`. [#2408] * Add `impl Clone` for `FilesService`. [#2408]
[#2408]: https://github.com/actix/actix-web/pull/2408 [#2408]: https://github.com/actix/actix-web/pull/2408
[#2453]: https://github.com/actix/actix-web/pull/2453 [#2453]: https://github.com/actix/actix-web/pull/2453
## 0.6.0-beta.8 - 2021-10-20 ## 0.6.0-beta.8 - 2021-10-20
- Minimum supported Rust version (MSRV) is now 1.52. * Minimum supported Rust version (MSRV) is now 1.52.
## 0.6.0-beta.7 - 2021-09-09 ## 0.6.0-beta.7 - 2021-09-09
- Minimum supported Rust version (MSRV) is now 1.51. * Minimum supported Rust version (MSRV) is now 1.51.
## 0.6.0-beta.6 - 2021-06-26 ## 0.6.0-beta.6 - 2021-06-26
- Added `Files::path_filter()`. [#2274] * Added `Files::path_filter()`. [#2274]
- `Files::show_files_listing()` can now be used with `Files::index_file()` to show files listing as a fallback when the index file is not found. [#2228] * `Files::show_files_listing()` can now be used with `Files::index_file()` to show files listing as a fallback when the index file is not found. [#2228]
[#2274]: https://github.com/actix/actix-web/pull/2274 [#2274]: https://github.com/actix/actix-web/pull/2274
[#2228]: https://github.com/actix/actix-web/pull/2228 [#2228]: https://github.com/actix/actix-web/pull/2228
## 0.6.0-beta.5 - 2021-06-17 ## 0.6.0-beta.5 - 2021-06-17
- `NamedFile` now implements `ServiceFactory` and `HttpServiceFactory` making it much more useful in routing. For example, it can be used directly as a default service. [#2135] * `NamedFile` now implements `ServiceFactory` and `HttpServiceFactory` making it much more useful in routing. For example, it can be used directly as a default service. [#2135]
- For symbolic links, `Content-Disposition` header no longer shows the filename of the original file. [#2156] * For symbolic links, `Content-Disposition` header no longer shows the filename of the original file. [#2156]
- `Files::redirect_to_slash_directory()` now works as expected when used with `Files::show_files_listing()`. [#2225] * `Files::redirect_to_slash_directory()` now works as expected when used with `Files::show_files_listing()`. [#2225]
- `application/{javascript, json, wasm}` mime type now have `inline` disposition by default. [#2257] * `application/{javascript, json, wasm}` mime type now have `inline` disposition by default. [#2257]
[#2135]: https://github.com/actix/actix-web/pull/2135 [#2135]: https://github.com/actix/actix-web/pull/2135
[#2156]: https://github.com/actix/actix-web/pull/2156 [#2156]: https://github.com/actix/actix-web/pull/2156
@ -48,130 +48,130 @@
## 0.6.0-beta.4 - 2021-04-02 ## 0.6.0-beta.4 - 2021-04-02
- Add support for `.guard` in `Files` to selectively filter `Files` services. [#2046] * Add support for `.guard` in `Files` to selectively filter `Files` services. [#2046]
[#2046]: https://github.com/actix/actix-web/pull/2046 [#2046]: https://github.com/actix/actix-web/pull/2046
## 0.6.0-beta.3 - 2021-03-09 ## 0.6.0-beta.3 - 2021-03-09
- No notable changes. * No notable changes.
## 0.6.0-beta.2 - 2021-02-10 ## 0.6.0-beta.2 - 2021-02-10
- Fix If-Modified-Since and If-Unmodified-Since to not compare using sub-second timestamps. [#1887] * Fix If-Modified-Since and If-Unmodified-Since to not compare using sub-second timestamps. [#1887]
- Replace `v_htmlescape` with `askama_escape`. [#1953] * Replace `v_htmlescape` with `askama_escape`. [#1953]
[#1887]: https://github.com/actix/actix-web/pull/1887 [#1887]: https://github.com/actix/actix-web/pull/1887
[#1953]: https://github.com/actix/actix-web/pull/1953 [#1953]: https://github.com/actix/actix-web/pull/1953
## 0.6.0-beta.1 - 2021-01-07 ## 0.6.0-beta.1 - 2021-01-07
- `HttpRange::parse` now has its own error type. * `HttpRange::parse` now has its own error type.
- Update `bytes` to `1.0`. [#1813] * Update `bytes` to `1.0`. [#1813]
[#1813]: https://github.com/actix/actix-web/pull/1813 [#1813]: https://github.com/actix/actix-web/pull/1813
## 0.5.0 - 2020-12-26 ## 0.5.0 - 2020-12-26
- Optionally support hidden files/directories. [#1811] * Optionally support hidden files/directories. [#1811]
[#1811]: https://github.com/actix/actix-web/pull/1811 [#1811]: https://github.com/actix/actix-web/pull/1811
## 0.4.1 - 2020-11-24 ## 0.4.1 - 2020-11-24
- Clarify order of parameters in `Files::new` and improve docs. * Clarify order of parameters in `Files::new` and improve docs.
## 0.4.0 - 2020-10-06 ## 0.4.0 - 2020-10-06
- Add `Files::prefer_utf8` option that adds UTF-8 charset on certain response types. [#1714] * Add `Files::prefer_utf8` option that adds UTF-8 charset on certain response types. [#1714]
[#1714]: https://github.com/actix/actix-web/pull/1714 [#1714]: https://github.com/actix/actix-web/pull/1714
## 0.3.0 - 2020-09-11 ## 0.3.0 - 2020-09-11
- No significant changes from 0.3.0-beta.1. * No significant changes from 0.3.0-beta.1.
## 0.3.0-beta.1 - 2020-07-15 ## 0.3.0-beta.1 - 2020-07-15
- Update `v_htmlescape` to 0.10 * Update `v_htmlescape` to 0.10
- Update `actix-web` and `actix-http` dependencies to beta.1 * Update `actix-web` and `actix-http` dependencies to beta.1
## 0.3.0-alpha.1 - 2020-05-23 ## 0.3.0-alpha.1 - 2020-05-23
- Update `actix-web` and `actix-http` dependencies to alpha * Update `actix-web` and `actix-http` dependencies to alpha
- Fix some typos in the docs * Fix some typos in the docs
- Bump minimum supported Rust version to 1.40 * Bump minimum supported Rust version to 1.40
- Support sending Content-Length when Content-Range is specified [#1384] * Support sending Content-Length when Content-Range is specified [#1384]
[#1384]: https://github.com/actix/actix-web/pull/1384 [#1384]: https://github.com/actix/actix-web/pull/1384
## 0.2.1 - 2019-12-22 ## 0.2.1 - 2019-12-22
- Use the same format for file URLs regardless of platforms * Use the same format for file URLs regardless of platforms
## 0.2.0 - 2019-12-20 ## 0.2.0 - 2019-12-20
- Fix BodyEncoding trait import #1220 * Fix BodyEncoding trait import #1220
## 0.2.0-alpha.1 - 2019-12-07 ## 0.2.0-alpha.1 - 2019-12-07
- Migrate to `std::future` * Migrate to `std::future`
## 0.1.7 - 2019-11-06 ## 0.1.7 - 2019-11-06
- Add an additional `filename*` param in the `Content-Disposition` header of * Add an additional `filename*` param in the `Content-Disposition` header of
`actix_files::NamedFile` to be more compatible. (#1151) `actix_files::NamedFile` to be more compatible. (#1151)
## 0.1.6 - 2019-10-14 ## 0.1.6 - 2019-10-14
- Add option to redirect to a slash-ended path `Files` #1132 * Add option to redirect to a slash-ended path `Files` #1132
## 0.1.5 - 2019-10-08 ## 0.1.5 - 2019-10-08
- Bump up `mime_guess` crate version to 2.0.1 * Bump up `mime_guess` crate version to 2.0.1
- Bump up `percent-encoding` crate version to 2.1 * Bump up `percent-encoding` crate version to 2.1
- Allow user defined request guards for `Files` #1113 * Allow user defined request guards for `Files` #1113
## 0.1.4 - 2019-07-20 ## 0.1.4 - 2019-07-20
- Allow to disable `Content-Disposition` header #686 * Allow to disable `Content-Disposition` header #686
## 0.1.3 - 2019-06-28 ## 0.1.3 - 2019-06-28
- Do not set `Content-Length` header, let actix-http set it #930 * Do not set `Content-Length` header, let actix-http set it #930
## 0.1.2 - 2019-06-13 ## 0.1.2 - 2019-06-13
- Content-Length is 0 for NamedFile HEAD request #914 * Content-Length is 0 for NamedFile HEAD request #914
- Fix ring dependency from actix-web default features for #741 * Fix ring dependency from actix-web default features for #741
## 0.1.1 - 2019-06-01 ## 0.1.1 - 2019-06-01
- Static files are incorrectly served as both chunked and with length #812 * Static files are incorrectly served as both chunked and with length #812
## 0.1.0 - 2019-05-25 ## 0.1.0 - 2019-05-25
- NamedFile last-modified check always fails due to nano-seconds in file modified date #820 * NamedFile last-modified check always fails due to nano-seconds in file modified date #820
## 0.1.0-beta.4 - 2019-05-12 ## 0.1.0-beta.4 - 2019-05-12
- Update actix-web to beta.4 * Update actix-web to beta.4
## 0.1.0-beta.1 - 2019-04-20 ## 0.1.0-beta.1 - 2019-04-20
- Update actix-web to beta.1 * Update actix-web to beta.1
## 0.1.0-alpha.6 - 2019-04-14 ## 0.1.0-alpha.6 - 2019-04-14
- Update actix-web to alpha6 * Update actix-web to alpha6
## 0.1.0-alpha.4 - 2019-04-08 ## 0.1.0-alpha.4 - 2019-04-08
- Update actix-web to alpha4 * Update actix-web to alpha4
## 0.1.0-alpha.2 - 2019-04-02 ## 0.1.0-alpha.2 - 2019-04-02
- Add default handler support * Add default handler support
## 0.1.0-alpha.1 - 2019-03-28 ## 0.1.0-alpha.1 - 2019-03-28
- Initial impl * Initial impl

View file

@ -4,125 +4,125 @@
## 3.0.0-beta.9 - 2021-12-11 ## 3.0.0-beta.9 - 2021-12-11
- No significant changes since `3.0.0-beta.8`. * No significant changes since `3.0.0-beta.8`.
## 3.0.0-beta.8 - 2021-11-30 ## 3.0.0-beta.8 - 2021-11-30
- Update `actix-tls` to `3.0.0-rc.1`. [#2474] * Update `actix-tls` to `3.0.0-rc.1`. [#2474]
[#2474]: https://github.com/actix/actix-web/pull/2474 [#2474]: https://github.com/actix/actix-web/pull/2474
## 3.0.0-beta.7 - 2021-11-22 ## 3.0.0-beta.7 - 2021-11-22
- Fix compatibility with experimental `io-uring` feature of `actix-rt`. [#2408] * Fix compatibility with experimental `io-uring` feature of `actix-rt`. [#2408]
[#2408]: https://github.com/actix/actix-web/pull/2408 [#2408]: https://github.com/actix/actix-web/pull/2408
## 3.0.0-beta.6 - 2021-11-15 ## 3.0.0-beta.6 - 2021-11-15
- `TestServer::stop` is now async and will wait for the server and system to shutdown. [#2442] * `TestServer::stop` is now async and will wait for the server and system to shutdown. [#2442]
- Update `actix-server` to `2.0.0-beta.9`. [#2442] * Update `actix-server` to `2.0.0-beta.9`. [#2442]
- Minimum supported Rust version (MSRV) is now 1.52. * Minimum supported Rust version (MSRV) is now 1.52.
[#2442]: https://github.com/actix/actix-web/pull/2442 [#2442]: https://github.com/actix/actix-web/pull/2442
## 3.0.0-beta.5 - 2021-09-09 ## 3.0.0-beta.5 - 2021-09-09
- Minimum supported Rust version (MSRV) is now 1.51. * Minimum supported Rust version (MSRV) is now 1.51.
## 3.0.0-beta.4 - 2021-04-02 ## 3.0.0-beta.4 - 2021-04-02
- Added `TestServer::client_headers` method. [#2097] * Added `TestServer::client_headers` method. [#2097]
[#2097]: https://github.com/actix/actix-web/pull/2097 [#2097]: https://github.com/actix/actix-web/pull/2097
## 3.0.0-beta.3 - 2021-03-09 ## 3.0.0-beta.3 - 2021-03-09
- No notable changes. * No notable changes.
## 3.0.0-beta.2 - 2021-02-10 ## 3.0.0-beta.2 - 2021-02-10
- No notable changes. * No notable changes.
## 3.0.0-beta.1 - 2021-01-07 ## 3.0.0-beta.1 - 2021-01-07
- Update `bytes` to `1.0`. [#1813] * Update `bytes` to `1.0`. [#1813]
[#1813]: https://github.com/actix/actix-web/pull/1813 [#1813]: https://github.com/actix/actix-web/pull/1813
## 2.1.0 - 2020-11-25 ## 2.1.0 - 2020-11-25
- Add ability to set address for `TestServer`. [#1645] * Add ability to set address for `TestServer`. [#1645]
- Upgrade `base64` to `0.13`. * Upgrade `base64` to `0.13`.
- Upgrade `serde_urlencoded` to `0.7`. [#1773] * Upgrade `serde_urlencoded` to `0.7`. [#1773]
[#1773]: https://github.com/actix/actix-web/pull/1773 [#1773]: https://github.com/actix/actix-web/pull/1773
[#1645]: https://github.com/actix/actix-web/pull/1645 [#1645]: https://github.com/actix/actix-web/pull/1645
## 2.0.0 - 2020-09-11 ## 2.0.0 - 2020-09-11
- Update actix-codec and actix-utils dependencies. * Update actix-codec and actix-utils dependencies.
## 2.0.0-alpha.1 - 2020-05-23 ## 2.0.0-alpha.1 - 2020-05-23
- Update the `time` dependency to 0.2.7 * Update the `time` dependency to 0.2.7
- Update `actix-connect` dependency to 2.0.0-alpha.2 * Update `actix-connect` dependency to 2.0.0-alpha.2
- Make `test_server` `async` fn. * Make `test_server` `async` fn.
- Bump minimum supported Rust version to 1.40 * Bump minimum supported Rust version to 1.40
- Replace deprecated `net2` crate with `socket2` * Replace deprecated `net2` crate with `socket2`
- Update `base64` dependency to 0.12 * Update `base64` dependency to 0.12
- Update `env_logger` dependency to 0.7 * Update `env_logger` dependency to 0.7
## 1.0.0 - 2019-12-13 ## 1.0.0 - 2019-12-13
- Replaced `TestServer::start()` with `test_server()` * Replaced `TestServer::start()` with `test_server()`
## 1.0.0-alpha.3 - 2019-12-07 ## 1.0.0-alpha.3 - 2019-12-07
- Migrate to `std::future` * Migrate to `std::future`
## 0.2.5 - 2019-09-17 ## 0.2.5 - 2019-09-17
- Update serde_urlencoded to "0.6.1" * Update serde_urlencoded to "0.6.1"
- Increase TestServerRuntime timeouts from 500ms to 3000ms * Increase TestServerRuntime timeouts from 500ms to 3000ms
- Do not override current `System` * Do not override current `System`
## 0.2.4 - 2019-07-18 ## 0.2.4 - 2019-07-18
- Update actix-server to 0.6 * Update actix-server to 0.6
## 0.2.3 - 2019-07-16 ## 0.2.3 - 2019-07-16
- Add `delete`, `options`, `patch` methods to `TestServerRunner` * Add `delete`, `options`, `patch` methods to `TestServerRunner`
## 0.2.2 - 2019-06-16 ## 0.2.2 - 2019-06-16
- Add .put() and .sput() methods * Add .put() and .sput() methods
## 0.2.1 - 2019-06-05 ## 0.2.1 - 2019-06-05
- Add license files * Add license files
## 0.2.0 - 2019-05-12 ## 0.2.0 - 2019-05-12
- Update awc and actix-http deps * Update awc and actix-http deps
## 0.1.1 - 2019-04-24 ## 0.1.1 - 2019-04-24
- Always make new connection for http client * Always make new connection for http client
## 0.1.0 - 2019-04-16 ## 0.1.0 - 2019-04-16
- No changes * No changes
## 0.1.0-alpha.3 - 2019-04-02 ## 0.1.0-alpha.3 - 2019-04-02
- Request functions accept path #743 * Request functions accept path #743
## 0.1.0-alpha.2 - 2019-03-29 ## 0.1.0-alpha.2 - 2019-03-29
- Added TestServerRuntime::load_body() method * Added TestServerRuntime::load_body() method
- Update actix-http and awc libraries * Update actix-http and awc libraries
## 0.1.0-alpha.1 - 2019-03-28 ## 0.1.0-alpha.1 - 2019-03-28
- Initial impl * Initial impl

View file

@ -2,22 +2,22 @@
## Unreleased - 2021-xx-xx ## Unreleased - 2021-xx-xx
### Changes ### Changes
- `HeaderMap::get_all` now returns a `std::slice::Iter`. [#2527] * `HeaderMap::get_all` now returns a `std::slice::Iter`. [#2527]
[#2527]: https://github.com/actix/actix-web/pull/2527 [#2527]: https://github.com/actix/actix-web/pull/2527
## 3.0.0-beta.16 - 2021-12-17 ## 3.0.0-beta.16 - 2021-12-17
### Added ### Added
- New method on `MessageBody` trait, `try_into_bytes`, with default implementation, for optimizations on body types that complete in exactly one poll. Replaces `is_complete_body` and `take_complete_body`. [#2522] * New method on `MessageBody` trait, `try_into_bytes`, with default implementation, for optimizations on body types that complete in exactly one poll. Replaces `is_complete_body` and `take_complete_body`. [#2522]
### Changed ### Changed
- Rename trait `IntoHeaderPair => TryIntoHeaderPair`. [#2510] * Rename trait `IntoHeaderPair => TryIntoHeaderPair`. [#2510]
- Rename `TryIntoHeaderPair::{try_into_header_pair => try_into_pair}`. [#2510] * Rename `TryIntoHeaderPair::{try_into_header_pair => try_into_pair}`. [#2510]
- Rename trait `IntoHeaderValue => TryIntoHeaderValue`. [#2510] * Rename trait `IntoHeaderValue => TryIntoHeaderValue`. [#2510]
### Removed ### Removed
- `MessageBody::{is_complete_body,take_complete_body}`. [#2522] * `MessageBody::{is_complete_body,take_complete_body}`. [#2522]
[#2510]: https://github.com/actix/actix-web/pull/2510 [#2510]: https://github.com/actix/actix-web/pull/2510
[#2522]: https://github.com/actix/actix-web/pull/2522 [#2522]: https://github.com/actix/actix-web/pull/2522
@ -25,43 +25,43 @@
## 3.0.0-beta.15 - 2021-12-11 ## 3.0.0-beta.15 - 2021-12-11
### Added ### Added
- Add timeout for canceling HTTP/2 server side connection handshake. Default to 5 seconds. [#2483] * Add timeout for canceling HTTP/2 server side connection handshake. Default to 5 seconds. [#2483]
- HTTP/2 handshake timeout can be configured with `ServiceConfig::client_timeout`. [#2483] * HTTP/2 handshake timeout can be configured with `ServiceConfig::client_timeout`. [#2483]
- `Response::map_into_boxed_body`. [#2468] * `Response::map_into_boxed_body`. [#2468]
- `body::EitherBody` enum. [#2468] * `body::EitherBody` enum. [#2468]
- `body::None` struct. [#2468] * `body::None` struct. [#2468]
- Impl `MessageBody` for `bytestring::ByteString`. [#2468] * Impl `MessageBody` for `bytestring::ByteString`. [#2468]
- `impl Clone for ws::HandshakeError`. [#2468] * `impl Clone for ws::HandshakeError`. [#2468]
- `#[must_use]` for `ws::Codec` to prevent subtle bugs. [#1920] * `#[must_use]` for `ws::Codec` to prevent subtle bugs. [#1920]
- `impl Default ` for `ws::Codec`. [#1920] * `impl Default ` for `ws::Codec`. [#1920]
- `header::QualityItem::{max, min}`. [#2486] * `header::QualityItem::{max, min}`. [#2486]
- `header::Quality::{MAX, MIN}`. [#2486] * `header::Quality::{MAX, MIN}`. [#2486]
- `impl Display` for `header::Quality`. [#2486] * `impl Display` for `header::Quality`. [#2486]
- Connection data set through the `on_connect_ext` callbacks is now accessible only from the new `Request::conn_data()` method. [#2491] * Connection data set through the `on_connect_ext` callbacks is now accessible only from the new `Request::conn_data()` method. [#2491]
- `Request::take_conn_data()`. [#2491] * `Request::take_conn_data()`. [#2491]
- `Request::take_req_data()`. [#2487] * `Request::take_req_data()`. [#2487]
- `impl Clone` for `RequestHead`. [#2487] * `impl Clone` for `RequestHead`. [#2487]
- New methods on `MessageBody` trait, `is_complete_body` and `take_complete_body`, both with default implementations, for optimizations on body types that are done in exactly one poll/chunk. [#2497] * New methods on `MessageBody` trait, `is_complete_body` and `take_complete_body`, both with default implementations, for optimizations on body types that are done in exactly one poll/chunk. [#2497]
- New `boxed` method on `MessageBody` trait for wrapping body type. [#2520] * New `boxed` method on `MessageBody` trait for wrapping body type. [#2520]
### Changed ### Changed
- Rename `body::BoxBody::{from_body => new}`. [#2468] * Rename `body::BoxBody::{from_body => new}`. [#2468]
- Body type for `Responses` returned from `Response::{new, ok, etc...}` is now `BoxBody`. [#2468] * Body type for `Responses` returned from `Response::{new, ok, etc...}` is now `BoxBody`. [#2468]
- The `Error` associated type on `MessageBody` type now requires `impl Error` (or similar). [#2468] * The `Error` associated type on `MessageBody` type now requires `impl Error` (or similar). [#2468]
- Error types using in service builders now require `Into<Response<BoxBody>>`. [#2468] * Error types using in service builders now require `Into<Response<BoxBody>>`. [#2468]
- `From` implementations on error types now return a `Response<BoxBody>`. [#2468] * `From` implementations on error types now return a `Response<BoxBody>`. [#2468]
- `ResponseBuilder::body(B)` now returns `Response<EitherBody<B>>`. [#2468] * `ResponseBuilder::body(B)` now returns `Response<EitherBody<B>>`. [#2468]
- `ResponseBuilder::finish()` now returns `Response<EitherBody<()>>`. [#2468] * `ResponseBuilder::finish()` now returns `Response<EitherBody<()>>`. [#2468]
### Removed ### Removed
- `ResponseBuilder::streaming`. [#2468] * `ResponseBuilder::streaming`. [#2468]
- `impl Future` for `ResponseBuilder`. [#2468] * `impl Future` for `ResponseBuilder`. [#2468]
- Remove unnecessary `MessageBody` bound on types passed to `body::AnyBody::new`. [#2468] * Remove unnecessary `MessageBody` bound on types passed to `body::AnyBody::new`. [#2468]
- Move `body::AnyBody` to `awc`. Replaced with `EitherBody` and `BoxBody`. [#2468] * Move `body::AnyBody` to `awc`. Replaced with `EitherBody` and `BoxBody`. [#2468]
- `impl Copy` for `ws::Codec`. [#1920] * `impl Copy` for `ws::Codec`. [#1920]
- `header::qitem` helper. Replaced with `header::QualityItem::max`. [#2486] * `header::qitem` helper. Replaced with `header::QualityItem::max`. [#2486]
- `impl TryFrom<u16>` for `header::Quality`. [#2486] * `impl TryFrom<u16>` for `header::Quality`. [#2486]
- `http` module. Most everything it contained is exported at the crate root. [#2488] * `http` module. Most everything it contained is exported at the crate root. [#2488]
[#2483]: https://github.com/actix/actix-web/pull/2483 [#2483]: https://github.com/actix/actix-web/pull/2483
[#2468]: https://github.com/actix/actix-web/pull/2468 [#2468]: https://github.com/actix/actix-web/pull/2468
@ -76,10 +76,10 @@
## 3.0.0-beta.14 - 2021-11-30 ## 3.0.0-beta.14 - 2021-11-30
### Changed ### Changed
- Guarantee ordering of `header::GetAll` iterator to be same as insertion order. [#2467] * Guarantee ordering of `header::GetAll` iterator to be same as insertion order. [#2467]
- Expose `header::map` module. [#2467] * Expose `header::map` module. [#2467]
- Implement `ExactSizeIterator` and `FusedIterator` for all `HeaderMap` iterators. [#2470] * Implement `ExactSizeIterator` and `FusedIterator` for all `HeaderMap` iterators. [#2470]
- Update `actix-tls` to `3.0.0-rc.1`. [#2474] * Update `actix-tls` to `3.0.0-rc.1`. [#2474]
[#2467]: https://github.com/actix/actix-web/pull/2467 [#2467]: https://github.com/actix/actix-web/pull/2467
[#2470]: https://github.com/actix/actix-web/pull/2470 [#2470]: https://github.com/actix/actix-web/pull/2470
@ -88,24 +88,24 @@
## 3.0.0-beta.13 - 2021-11-22 ## 3.0.0-beta.13 - 2021-11-22
### Added ### Added
- `body::AnyBody::empty` for quickly creating an empty body. [#2446] * `body::AnyBody::empty` for quickly creating an empty body. [#2446]
- `body::AnyBody::none` for quickly creating a "none" body. [#2456] * `body::AnyBody::none` for quickly creating a "none" body. [#2456]
- `impl Clone` for `body::AnyBody<S> where S: Clone`. [#2448] * `impl Clone` for `body::AnyBody<S> where S: Clone`. [#2448]
- `body::AnyBody::into_boxed` for quickly converting to a type-erased, boxed body type. [#2448] * `body::AnyBody::into_boxed` for quickly converting to a type-erased, boxed body type. [#2448]
### Changed ### Changed
- Rename `body::AnyBody::{Message => Body}`. [#2446] * Rename `body::AnyBody::{Message => Body}`. [#2446]
- Rename `body::AnyBody::{from_message => new_boxed}`. [#2448] * Rename `body::AnyBody::{from_message => new_boxed}`. [#2448]
- Rename `body::AnyBody::{from_slice => copy_from_slice}`. [#2448] * Rename `body::AnyBody::{from_slice => copy_from_slice}`. [#2448]
- Rename `body::{BoxAnyBody => BoxBody}`. [#2448] * Rename `body::{BoxAnyBody => BoxBody}`. [#2448]
- Change representation of `AnyBody` to include a type parameter in `Body` variant. Defaults to `BoxBody`. [#2448] * Change representation of `AnyBody` to include a type parameter in `Body` variant. Defaults to `BoxBody`. [#2448]
- `Encoder::response` now returns `AnyBody<Encoder<B>>`. [#2448] * `Encoder::response` now returns `AnyBody<Encoder<B>>`. [#2448]
### Removed ### Removed
- `body::AnyBody::Empty`; an empty body can now only be represented as a zero-length `Bytes` variant. [#2446] * `body::AnyBody::Empty`; an empty body can now only be represented as a zero-length `Bytes` variant. [#2446]
- `body::BodySize::Empty`; an empty body can now only be represented as a `Sized(0)` variant. [#2446] * `body::BodySize::Empty`; an empty body can now only be represented as a `Sized(0)` variant. [#2446]
- `EncoderError::Boxed`; it is no longer required. [#2446] * `EncoderError::Boxed`; it is no longer required. [#2446]
- `body::ResponseBody`; is function is replaced by the new `body::AnyBody` enum. [#2446] * `body::ResponseBody`; is function is replaced by the new `body::AnyBody` enum. [#2446]
[#2446]: https://github.com/actix/actix-web/pull/2446 [#2446]: https://github.com/actix/actix-web/pull/2446
[#2448]: https://github.com/actix/actix-web/pull/2448 [#2448]: https://github.com/actix/actix-web/pull/2448
@ -114,11 +114,11 @@
## 3.0.0-beta.12 - 2021-11-15 ## 3.0.0-beta.12 - 2021-11-15
### Changed ### Changed
- Update `actix-server` to `2.0.0-beta.9`. [#2442] * Update `actix-server` to `2.0.0-beta.9`. [#2442]
### Removed ### Removed
- `client` module. [#2425] * `client` module. [#2425]
- `trust-dns` feature. [#2425] * `trust-dns` feature. [#2425]
[#2425]: https://github.com/actix/actix-web/pull/2425 [#2425]: https://github.com/actix/actix-web/pull/2425
[#2442]: https://github.com/actix/actix-web/pull/2442 [#2442]: https://github.com/actix/actix-web/pull/2442
@ -126,21 +126,21 @@
## 3.0.0-beta.11 - 2021-10-20 ## 3.0.0-beta.11 - 2021-10-20
### Changed ### Changed
- Updated rustls to v0.20. [#2414] * Updated rustls to v0.20. [#2414]
- Minimum supported Rust version (MSRV) is now 1.52. * Minimum supported Rust version (MSRV) is now 1.52.
[#2414]: https://github.com/actix/actix-web/pull/2414 [#2414]: https://github.com/actix/actix-web/pull/2414
## 3.0.0-beta.10 - 2021-09-09 ## 3.0.0-beta.10 - 2021-09-09
### Changed ### Changed
- `ContentEncoding` is now marked `#[non_exhaustive]`. [#2377] * `ContentEncoding` is now marked `#[non_exhaustive]`. [#2377]
- Minimum supported Rust version (MSRV) is now 1.51. * Minimum supported Rust version (MSRV) is now 1.51.
### Fixed ### Fixed
- Remove slice creation pointing to potential uninitialized data on h1 encoder. [#2364] * Remove slice creation pointing to potential uninitialized data on h1 encoder. [#2364]
- Remove `Into<Error>` bound on `Encoder` body types. [#2375] * Remove `Into<Error>` bound on `Encoder` body types. [#2375]
- Fix quality parse error in Accept-Encoding header. [#2344] * Fix quality parse error in Accept-Encoding header. [#2344]
[#2364]: https://github.com/actix/actix-web/pull/2364 [#2364]: https://github.com/actix/actix-web/pull/2364
[#2375]: https://github.com/actix/actix-web/pull/2375 [#2375]: https://github.com/actix/actix-web/pull/2375
@ -150,15 +150,15 @@
## 3.0.0-beta.9 - 2021-08-09 ## 3.0.0-beta.9 - 2021-08-09
### Fixed ### Fixed
- Potential HTTP request smuggling vulnerabilities. [RUSTSEC-2021-0081](https://github.com/rustsec/advisory-db/pull/977) * Potential HTTP request smuggling vulnerabilities. [RUSTSEC-2021-0081](https://github.com/rustsec/advisory-db/pull/977)
## 3.0.0-beta.8 - 2021-06-26 ## 3.0.0-beta.8 - 2021-06-26
### Changed ### Changed
- Change compression algorithm features flags. [#2250] * Change compression algorithm features flags. [#2250]
### Removed ### Removed
- `downcast` and `downcast_get_type_id` macros. [#2291] * `downcast` and `downcast_get_type_id` macros. [#2291]
[#2291]: https://github.com/actix/actix-web/pull/2291 [#2291]: https://github.com/actix/actix-web/pull/2291
[#2250]: https://github.com/actix/actix-web/pull/2250 [#2250]: https://github.com/actix/actix-web/pull/2250
@ -166,37 +166,37 @@
## 3.0.0-beta.7 - 2021-06-17 ## 3.0.0-beta.7 - 2021-06-17
### Added ### Added
- Alias `body::Body` as `body::AnyBody`. [#2215] * Alias `body::Body` as `body::AnyBody`. [#2215]
- `BoxAnyBody`: a boxed message body with boxed errors. [#2183] * `BoxAnyBody`: a boxed message body with boxed errors. [#2183]
- Re-export `http` crate's `Error` type as `error::HttpError`. [#2171] * Re-export `http` crate's `Error` type as `error::HttpError`. [#2171]
- Re-export `StatusCode`, `Method`, `Version` and `Uri` at the crate root. [#2171] * Re-export `StatusCode`, `Method`, `Version` and `Uri` at the crate root. [#2171]
- Re-export `ContentEncoding` and `ConnectionType` at the crate root. [#2171] * Re-export `ContentEncoding` and `ConnectionType` at the crate root. [#2171]
- `Response::into_body` that consumes response and returns body type. [#2201] * `Response::into_body` that consumes response and returns body type. [#2201]
- `impl Default` for `Response`. [#2201] * `impl Default` for `Response`. [#2201]
- Add zstd support for `ContentEncoding`. [#2244] * Add zstd support for `ContentEncoding`. [#2244]
### Changed ### Changed
- The `MessageBody` trait now has an associated `Error` type. [#2183] * The `MessageBody` trait now has an associated `Error` type. [#2183]
- All error trait bounds in server service builders have changed from `Into<Error>` to `Into<Response<AnyBody>>`. [#2253] * 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] * All error trait bounds in message body and stream impls changed from `Into<Error>` to `Into<Box<dyn std::error::Error>>`. [#2253]
- Places in `Response` where `ResponseBody<B>` was received or returned now simply use `B`. [#2201] * Places in `Response` where `ResponseBody<B>` was received or returned now simply use `B`. [#2201]
- `header` mod is now public. [#2171] * `header` mod is now public. [#2171]
- `uri` mod is now public. [#2171] * `uri` mod is now public. [#2171]
- Update `language-tags` to `0.3`. * Update `language-tags` to `0.3`.
- Reduce the level from `error` to `debug` for the log line that is emitted when a `500 Internal Server Error` is built using `HttpResponse::from_error`. [#2201] * Reduce the level from `error` to `debug` for the log line that is emitted when a `500 Internal Server Error` is built using `HttpResponse::from_error`. [#2201]
- `ResponseBuilder::message_body` now returns a `Result`. [#2201] * `ResponseBuilder::message_body` now returns a `Result`. [#2201]
- Remove `Unpin` bound on `ResponseBuilder::streaming`. [#2253] * Remove `Unpin` bound on `ResponseBuilder::streaming`. [#2253]
- `HttpServer::{listen_rustls(), bind_rustls()}` now honor the ALPN protocols in the configuation parameter. [#2226] * `HttpServer::{listen_rustls(), bind_rustls()}` now honor the ALPN protocols in the configuation parameter. [#2226]
### Removed ### Removed
- Stop re-exporting `http` crate's `HeaderMap` types in addition to ours. [#2171] * Stop re-exporting `http` crate's `HeaderMap` types in addition to ours. [#2171]
- Down-casting for `MessageBody` types. [#2183] * Down-casting for `MessageBody` types. [#2183]
- `error::Result` alias. [#2201] * `error::Result` alias. [#2201]
- Error field from `Response` and `Response::error`. [#2205] * Error field from `Response` and `Response::error`. [#2205]
- `impl Future` for `Response`. [#2201] * `impl Future` for `Response`. [#2201]
- `Response::take_body` and old `Response::into_body` method that casted body type. [#2201] * `Response::take_body` and old `Response::into_body` method that casted body type. [#2201]
- `InternalError` and all the error types it constructed. [#2215] * `InternalError` and all the error types it constructed. [#2215]
- Conversion (`impl Into`) of `Response<Body>` and `ResponseBuilder` to `Error`. [#2215] * Conversion (`impl Into`) of `Response<Body>` and `ResponseBuilder` to `Error`. [#2215]
[#2171]: https://github.com/actix/actix-web/pull/2171 [#2171]: https://github.com/actix/actix-web/pull/2171
[#2183]: https://github.com/actix/actix-web/pull/2183 [#2183]: https://github.com/actix/actix-web/pull/2183
@ -211,27 +211,27 @@
## 3.0.0-beta.6 - 2021-04-17 ## 3.0.0-beta.6 - 2021-04-17
### Added ### Added
- `impl<T: MessageBody> MessageBody for Pin<Box<T>>`. [#2152] * `impl<T: MessageBody> MessageBody for Pin<Box<T>>`. [#2152]
- `Response::{ok, bad_request, not_found, internal_server_error}`. [#2159] * `Response::{ok, bad_request, not_found, internal_server_error}`. [#2159]
- Helper `body::to_bytes` for async collecting message body into Bytes. [#2158] * Helper `body::to_bytes` for async collecting message body into Bytes. [#2158]
### Changes ### Changes
- The type parameter of `Response` no longer has a default. [#2152] * The type parameter of `Response` no longer has a default. [#2152]
- The `Message` variant of `body::Body` is now `Pin<Box<dyn MessageBody>>`. [#2152] * The `Message` variant of `body::Body` is now `Pin<Box<dyn MessageBody>>`. [#2152]
- `BodyStream` and `SizedStream` are no longer restricted to Unpin types. [#2152] * `BodyStream` and `SizedStream` are no longer restricted to Unpin types. [#2152]
- Error enum types are marked `#[non_exhaustive]`. [#2161] * Error enum types are marked `#[non_exhaustive]`. [#2161]
### Removed ### Removed
- `cookies` feature flag. [#2065] * `cookies` feature flag. [#2065]
- Top-level `cookies` mod (re-export). [#2065] * Top-level `cookies` mod (re-export). [#2065]
- `HttpMessage` trait loses the `cookies` and `cookie` methods. [#2065] * `HttpMessage` trait loses the `cookies` and `cookie` methods. [#2065]
- `impl ResponseError for CookieParseError`. [#2065] * `impl ResponseError for CookieParseError`. [#2065]
- Deprecated methods on `ResponseBuilder`: `if_true`, `if_some`. [#2148] * Deprecated methods on `ResponseBuilder`: `if_true`, `if_some`. [#2148]
- `ResponseBuilder::json`. [#2148] * `ResponseBuilder::json`. [#2148]
- `ResponseBuilder::{set_header, header}`. [#2148] * `ResponseBuilder::{set_header, header}`. [#2148]
- `impl From<serde_json::Value> for Body`. [#2148] * `impl From<serde_json::Value> for Body`. [#2148]
- `Response::build_from`. [#2159] * `Response::build_from`. [#2159]
- Most of the status code builders on `Response`. [#2159] * Most of the status code builders on `Response`. [#2159]
[#2065]: https://github.com/actix/actix-web/pull/2065 [#2065]: https://github.com/actix/actix-web/pull/2065
[#2148]: https://github.com/actix/actix-web/pull/2148 [#2148]: https://github.com/actix/actix-web/pull/2148
@ -243,16 +243,16 @@
## 3.0.0-beta.5 - 2021-04-02 ## 3.0.0-beta.5 - 2021-04-02
### Added ### Added
- `client::Connector::handshake_timeout` method for customizing TLS connection handshake timeout. [#2081] * `client::Connector::handshake_timeout` method for customizing TLS connection handshake timeout. [#2081]
- `client::ConnectorService` as `client::Connector::finish` method's return type [#2081] * `client::ConnectorService` as `client::Connector::finish` method's return type [#2081]
- `client::ConnectionIo` trait alias [#2081] * `client::ConnectionIo` trait alias [#2081]
### Changed ### Changed
- `client::Connector` type now only have one generic type for `actix_service::Service`. [#2063] * `client::Connector` type now only have one generic type for `actix_service::Service`. [#2063]
### Removed ### Removed
- Common typed HTTP headers were moved to actix-web. [2094] * Common typed HTTP headers were moved to actix-web. [2094]
- `ResponseError` impl for `actix_utils::timeout::TimeoutError`. [#2127] * `ResponseError` impl for `actix_utils::timeout::TimeoutError`. [#2127]
[#2063]: https://github.com/actix/actix-web/pull/2063 [#2063]: https://github.com/actix/actix-web/pull/2063
[#2081]: https://github.com/actix/actix-web/pull/2081 [#2081]: https://github.com/actix/actix-web/pull/2081
@ -262,13 +262,13 @@
## 3.0.0-beta.4 - 2021-03-08 ## 3.0.0-beta.4 - 2021-03-08
### Changed ### Changed
- Feature `cookies` is now optional and disabled by default. [#1981] * Feature `cookies` is now optional and disabled by default. [#1981]
- `ws::hash_key` now returns array. [#2035] * `ws::hash_key` now returns array. [#2035]
- `ResponseBuilder::json` now takes `impl Serialize`. [#2052] * `ResponseBuilder::json` now takes `impl Serialize`. [#2052]
### Removed ### Removed
- Re-export of `futures_channel::oneshot::Canceled` is removed from `error` mod. [#1994] * Re-export of `futures_channel::oneshot::Canceled` is removed from `error` mod. [#1994]
- `ResponseError` impl for `futures_channel::oneshot::Canceled` is removed. [#1994] * `ResponseError` impl for `futures_channel::oneshot::Canceled` is removed. [#1994]
[#1981]: https://github.com/actix/actix-web/pull/1981 [#1981]: https://github.com/actix/actix-web/pull/1981
[#1994]: https://github.com/actix/actix-web/pull/1994 [#1994]: https://github.com/actix/actix-web/pull/1994
@ -277,48 +277,48 @@
## 3.0.0-beta.3 - 2021-02-10 ## 3.0.0-beta.3 - 2021-02-10
- No notable changes. * No notable changes.
## 3.0.0-beta.2 - 2021-02-10 ## 3.0.0-beta.2 - 2021-02-10
### Added ### Added
- `TryIntoHeaderPair` trait that allows using typed and untyped headers in the same methods. [#1869] * `TryIntoHeaderPair` trait that allows using typed and untyped headers in the same methods. [#1869]
- `ResponseBuilder::insert_header` method which allows using typed headers. [#1869] * `ResponseBuilder::insert_header` method which allows using typed headers. [#1869]
- `ResponseBuilder::append_header` method which allows using typed headers. [#1869] * `ResponseBuilder::append_header` method which allows using typed headers. [#1869]
- `TestRequest::insert_header` method which allows using typed headers. [#1869] * `TestRequest::insert_header` method which allows using typed headers. [#1869]
- `ContentEncoding` implements all necessary header traits. [#1912] * `ContentEncoding` implements all necessary header traits. [#1912]
- `HeaderMap::len_keys` has the behavior of the old `len` method. [#1964] * `HeaderMap::len_keys` has the behavior of the old `len` method. [#1964]
- `HeaderMap::drain` as an efficient draining iterator. [#1964] * `HeaderMap::drain` as an efficient draining iterator. [#1964]
- Implement `IntoIterator` for owned `HeaderMap`. [#1964] * Implement `IntoIterator` for owned `HeaderMap`. [#1964]
- `trust-dns` optional feature to enable `trust-dns-resolver` as client dns resolver. [#1969] * `trust-dns` optional feature to enable `trust-dns-resolver` as client dns resolver. [#1969]
### Changed ### Changed
- `ResponseBuilder::content_type` now takes an `impl TryIntoHeaderValue` to support using typed * `ResponseBuilder::content_type` now takes an `impl TryIntoHeaderValue` to support using typed
`mime` types. [#1894] `mime` types. [#1894]
- Renamed `TryIntoHeaderValue::{try_into => try_into_value}` to avoid ambiguity with std * Renamed `TryIntoHeaderValue::{try_into => try_into_value}` to avoid ambiguity with std
`TryInto` trait. [#1894] `TryInto` trait. [#1894]
- `Extensions::insert` returns Option of replaced item. [#1904] * `Extensions::insert` returns Option of replaced item. [#1904]
- Remove `HttpResponseBuilder::json2()`. [#1903] * Remove `HttpResponseBuilder::json2()`. [#1903]
- Enable `HttpResponseBuilder::json()` to receive data by value and reference. [#1903] * Enable `HttpResponseBuilder::json()` to receive data by value and reference. [#1903]
- `client::error::ConnectError` Resolver variant contains `Box<dyn std::error::Error>` type. [#1905] * `client::error::ConnectError` Resolver variant contains `Box<dyn std::error::Error>` type. [#1905]
- `client::ConnectorConfig` default timeout changed to 5 seconds. [#1905] * `client::ConnectorConfig` default timeout changed to 5 seconds. [#1905]
- Simplify `BlockingError` type to a unit struct. It's now only triggered when blocking thread pool * Simplify `BlockingError` type to a unit struct. It's now only triggered when blocking thread pool
is dead. [#1957] is dead. [#1957]
- `HeaderMap::len` now returns number of values instead of number of keys. [#1964] * `HeaderMap::len` now returns number of values instead of number of keys. [#1964]
- `HeaderMap::insert` now returns iterator of removed values. [#1964] * `HeaderMap::insert` now returns iterator of removed values. [#1964]
- `HeaderMap::remove` now returns iterator of removed values. [#1964] * `HeaderMap::remove` now returns iterator of removed values. [#1964]
### Removed ### Removed
- `ResponseBuilder::set`; use `ResponseBuilder::insert_header`. [#1869] * `ResponseBuilder::set`; use `ResponseBuilder::insert_header`. [#1869]
- `ResponseBuilder::set_header`; use `ResponseBuilder::insert_header`. [#1869] * `ResponseBuilder::set_header`; use `ResponseBuilder::insert_header`. [#1869]
- `ResponseBuilder::header`; use `ResponseBuilder::append_header`. [#1869] * `ResponseBuilder::header`; use `ResponseBuilder::append_header`. [#1869]
- `TestRequest::with_hdr`; use `TestRequest::default().insert_header()`. [#1869] * `TestRequest::with_hdr`; use `TestRequest::default().insert_header()`. [#1869]
- `TestRequest::with_header`; use `TestRequest::default().insert_header()`. [#1869] * `TestRequest::with_header`; use `TestRequest::default().insert_header()`. [#1869]
- `actors` optional feature. [#1969] * `actors` optional feature. [#1969]
- `ResponseError` impl for `actix::MailboxError`. [#1969] * `ResponseError` impl for `actix::MailboxError`. [#1969]
### Documentation ### Documentation
- Vastly improve docs and add examples for `HeaderMap`. [#1964] * Vastly improve docs and add examples for `HeaderMap`. [#1964]
[#1869]: https://github.com/actix/actix-web/pull/1869 [#1869]: https://github.com/actix/actix-web/pull/1869
[#1894]: https://github.com/actix/actix-web/pull/1894 [#1894]: https://github.com/actix/actix-web/pull/1894
@ -333,24 +333,24 @@
## 3.0.0-beta.1 - 2021-01-07 ## 3.0.0-beta.1 - 2021-01-07
### Added ### Added
- Add `Http3` to `Protocol` enum for future compatibility and also mark `#[non_exhaustive]`. * Add `Http3` to `Protocol` enum for future compatibility and also mark `#[non_exhaustive]`.
### Changed ### Changed
- Update `actix-*` dependencies to tokio `1.0` based versions. [#1813] * Update `actix-*` dependencies to tokio `1.0` based versions. [#1813]
- Bumped `rand` to `0.8`. * Bumped `rand` to `0.8`.
- Update `bytes` to `1.0`. [#1813] * Update `bytes` to `1.0`. [#1813]
- Update `h2` to `0.3`. [#1813] * Update `h2` to `0.3`. [#1813]
- The `ws::Message::Text` enum variant now contains a `bytestring::ByteString`. [#1864] * The `ws::Message::Text` enum variant now contains a `bytestring::ByteString`. [#1864]
### Removed ### Removed
- Deprecated `on_connect` methods have been removed. Prefer the new * Deprecated `on_connect` methods have been removed. Prefer the new
`on_connect_ext` technique. [#1857] `on_connect_ext` technique. [#1857]
- Remove `ResponseError` impl for `actix::actors::resolver::ResolverError` * Remove `ResponseError` impl for `actix::actors::resolver::ResolverError`
due to deprecate of resolver actor. [#1813] due to deprecate of resolver actor. [#1813]
- Remove `ConnectError::SslHandshakeError` and re-export of `HandshakeError`. * Remove `ConnectError::SslHandshakeError` and re-export of `HandshakeError`.
due to the removal of this type from `tokio-openssl` crate. openssl handshake due to the removal of this type from `tokio-openssl` crate. openssl handshake
error would return as `ConnectError::SslError`. [#1813] error would return as `ConnectError::SslError`. [#1813]
- Remove `actix-threadpool` dependency. Use `actix_rt::task::spawn_blocking`. * Remove `actix-threadpool` dependency. Use `actix_rt::task::spawn_blocking`.
Due to this change `actix_threadpool::BlockingError` type is moved into Due to this change `actix_threadpool::BlockingError` type is moved into
`actix_http::error` module. [#1878] `actix_http::error` module. [#1878]
@ -362,20 +362,20 @@
## 2.2.1 - 2021-08-09 ## 2.2.1 - 2021-08-09
### Fixed ### Fixed
- Potential HTTP request smuggling vulnerabilities. [RUSTSEC-2021-0081](https://github.com/rustsec/advisory-db/pull/977) * Potential HTTP request smuggling vulnerabilities. [RUSTSEC-2021-0081](https://github.com/rustsec/advisory-db/pull/977)
## 2.2.0 - 2020-11-25 ## 2.2.0 - 2020-11-25
### Added ### Added
- HttpResponse builders for 1xx status codes. [#1768] * HttpResponse builders for 1xx status codes. [#1768]
- `Accept::mime_precedence` and `Accept::mime_preference`. [#1793] * `Accept::mime_precedence` and `Accept::mime_preference`. [#1793]
- `TryFrom<u16>` and `TryFrom<f32>` for `http::header::Quality`. [#1797] * `TryFrom<u16>` and `TryFrom<f32>` for `http::header::Quality`. [#1797]
### Fixed ### Fixed
- Started dropping `transfer-encoding: chunked` and `Content-Length` for 1XX and 204 responses. [#1767] * Started dropping `transfer-encoding: chunked` and `Content-Length` for 1XX and 204 responses. [#1767]
### Changed ### Changed
- Upgrade `serde_urlencoded` to `0.7`. [#1773] * Upgrade `serde_urlencoded` to `0.7`. [#1773]
[#1773]: https://github.com/actix/actix-web/pull/1773 [#1773]: https://github.com/actix/actix-web/pull/1773
[#1767]: https://github.com/actix/actix-web/pull/1767 [#1767]: https://github.com/actix/actix-web/pull/1767
@ -386,12 +386,12 @@
## 2.1.0 - 2020-10-30 ## 2.1.0 - 2020-10-30
### Added ### Added
- Added more flexible `on_connect_ext` methods for on-connect handling. [#1754] * Added more flexible `on_connect_ext` methods for on-connect handling. [#1754]
### Changed ### Changed
- Upgrade `base64` to `0.13`. [#1744] * Upgrade `base64` to `0.13`. [#1744]
- Upgrade `pin-project` to `1.0`. [#1733] * Upgrade `pin-project` to `1.0`. [#1733]
- Deprecate `ResponseBuilder::{if_some, if_true}`. [#1760] * Deprecate `ResponseBuilder::{if_some, if_true}`. [#1760]
[#1760]: https://github.com/actix/actix-web/pull/1760 [#1760]: https://github.com/actix/actix-web/pull/1760
[#1754]: https://github.com/actix/actix-web/pull/1754 [#1754]: https://github.com/actix/actix-web/pull/1754
@ -400,28 +400,28 @@
## 2.0.0 - 2020-09-11 ## 2.0.0 - 2020-09-11
- No significant changes from `2.0.0-beta.4`. * No significant changes from `2.0.0-beta.4`.
## 2.0.0-beta.4 - 2020-09-09 ## 2.0.0-beta.4 - 2020-09-09
### Changed ### Changed
- Update actix-codec and actix-utils dependencies. * Update actix-codec and actix-utils dependencies.
- Update actix-connect and actix-tls dependencies. * Update actix-connect and actix-tls dependencies.
## 2.0.0-beta.3 - 2020-08-14 ## 2.0.0-beta.3 - 2020-08-14
### Fixed ### Fixed
- Memory leak of `client::pool::ConnectorPoolSupport`. [#1626] * Memory leak of `client::pool::ConnectorPoolSupport`. [#1626]
[#1626]: https://github.com/actix/actix-web/pull/1626 [#1626]: https://github.com/actix/actix-web/pull/1626
## 2.0.0-beta.2 - 2020-07-21 ## 2.0.0-beta.2 - 2020-07-21
### Fixed ### Fixed
- Potential UB in h1 decoder using uninitialized memory. [#1614] * Potential UB in h1 decoder using uninitialized memory. [#1614]
### Changed ### Changed
- Fix illegal chunked encoding. [#1615] * Fix illegal chunked encoding. [#1615]
[#1614]: https://github.com/actix/actix-web/pull/1614 [#1614]: https://github.com/actix/actix-web/pull/1614
[#1615]: https://github.com/actix/actix-web/pull/1615 [#1615]: https://github.com/actix/actix-web/pull/1615
@ -429,10 +429,10 @@
## 2.0.0-beta.1 - 2020-07-11 ## 2.0.0-beta.1 - 2020-07-11
### Changed ### Changed
- Migrate cookie handling to `cookie` crate. [#1558] * Migrate cookie handling to `cookie` crate. [#1558]
- Update `sha-1` to 0.9. [#1586] * Update `sha-1` to 0.9. [#1586]
- Fix leak in client pool. [#1580] * Fix leak in client pool. [#1580]
- MSRV is now 1.41.1. * MSRV is now 1.41.1.
[#1558]: https://github.com/actix/actix-web/pull/1558 [#1558]: https://github.com/actix/actix-web/pull/1558
[#1586]: https://github.com/actix/actix-web/pull/1586 [#1586]: https://github.com/actix/actix-web/pull/1586
@ -441,15 +441,15 @@
## 2.0.0-alpha.4 - 2020-05-21 ## 2.0.0-alpha.4 - 2020-05-21
### Changed ### Changed
- Bump minimum supported Rust version to 1.40 * Bump minimum supported Rust version to 1.40
- content_length function is removed, and you can set Content-Length by calling * content_length function is removed, and you can set Content-Length by calling
no_chunking function [#1439] no_chunking function [#1439]
- `BodySize::Sized64` variant has been removed. `BodySize::Sized` now receives a * `BodySize::Sized64` variant has been removed. `BodySize::Sized` now receives a
`u64` instead of a `usize`. `u64` instead of a `usize`.
- Update `base64` dependency to 0.12 * Update `base64` dependency to 0.12
### Fixed ### Fixed
- Support parsing of `SameSite=None` [#1503] * Support parsing of `SameSite=None` [#1503]
[#1439]: https://github.com/actix/actix-web/pull/1439 [#1439]: https://github.com/actix/actix-web/pull/1439
[#1503]: https://github.com/actix/actix-web/pull/1503 [#1503]: https://github.com/actix/actix-web/pull/1503
@ -457,13 +457,13 @@
## 2.0.0-alpha.3 - 2020-05-08 ## 2.0.0-alpha.3 - 2020-05-08
### Fixed ### Fixed
- Correct spelling of ConnectError::Unresolved [#1487] * Correct spelling of ConnectError::Unresolved [#1487]
- Fix a mistake in the encoding of websocket continuation messages wherein * Fix a mistake in the encoding of websocket continuation messages wherein
Item::FirstText and Item::FirstBinary are each encoded as the other. Item::FirstText and Item::FirstBinary are each encoded as the other.
### Changed ### Changed
- Implement `std::error::Error` for our custom errors [#1422] * Implement `std::error::Error` for our custom errors [#1422]
- Remove `failure` support for `ResponseError` since that crate * Remove `failure` support for `ResponseError` since that crate
will be deprecated in the near future. will be deprecated in the near future.
[#1422]: https://github.com/actix/actix-web/pull/1422 [#1422]: https://github.com/actix/actix-web/pull/1422
@ -472,12 +472,12 @@
## 2.0.0-alpha.2 - 2020-03-07 ## 2.0.0-alpha.2 - 2020-03-07
### Changed ### Changed
- Update `actix-connect` and `actix-tls` dependency to 2.0.0-alpha.1. [#1395] * Update `actix-connect` and `actix-tls` dependency to 2.0.0-alpha.1. [#1395]
- Change default initial window size and connection window size for HTTP2 to 2MB and 1MB * Change default initial window size and connection window size for HTTP2 to 2MB and 1MB
respectively to improve download speed for awc when downloading large objects. [#1394] respectively to improve download speed for awc when downloading large objects. [#1394]
- client::Connector accepts initial_window_size and initial_connection_window_size * client::Connector accepts initial_window_size and initial_connection_window_size
HTTP2 configuration. [#1394] HTTP2 configuration. [#1394]
- client::Connector allowing to set max_http_version to limit HTTP version to be used. [#1394] * client::Connector allowing to set max_http_version to limit HTTP version to be used. [#1394]
[#1394]: https://github.com/actix/actix-web/pull/1394 [#1394]: https://github.com/actix/actix-web/pull/1394
[#1395]: https://github.com/actix/actix-web/pull/1395 [#1395]: https://github.com/actix/actix-web/pull/1395
@ -485,61 +485,61 @@
## 2.0.0-alpha.1 - 2020-02-27 ## 2.0.0-alpha.1 - 2020-02-27
### Changed ### Changed
- Update the `time` dependency to 0.2.7. * Update the `time` dependency to 0.2.7.
- Moved actors messages support from actix crate, enabled with feature `actors`. * Moved actors messages support from actix crate, enabled with feature `actors`.
- Breaking change: trait MessageBody requires Unpin and accepting `Pin<&mut Self>` instead of * Breaking change: trait MessageBody requires Unpin and accepting `Pin<&mut Self>` instead of
`&mut self` in the poll_next(). `&mut self` in the poll_next().
- MessageBody is not implemented for &'static [u8] anymore. * MessageBody is not implemented for &'static [u8] anymore.
### Fixed ### Fixed
- Allow `SameSite=None` cookies to be sent in a response. * Allow `SameSite=None` cookies to be sent in a response.
## 1.0.1 - 2019-12-20 ## 1.0.1 - 2019-12-20
### Fixed ### Fixed
- Poll upgrade service's readiness from HTTP service handlers * Poll upgrade service's readiness from HTTP service handlers
- Replace brotli with brotli2 #1224 * Replace brotli with brotli2 #1224
## 1.0.0 - 2019-12-13 ## 1.0.0 - 2019-12-13
### Added ### Added
- Add websockets continuation frame support * Add websockets continuation frame support
### Changed ### Changed
- Replace `flate2-xxx` features with `compress` * Replace `flate2-xxx` features with `compress`
## 1.0.0-alpha.5 - 2019-12-09 ## 1.0.0-alpha.5 - 2019-12-09
### Fixed ### Fixed
- Check `Upgrade` service readiness before calling it * Check `Upgrade` service readiness before calling it
- Fix buffer remaining capacity calculation * Fix buffer remaining capacity calculation
### Changed ### Changed
- Websockets: Ping and Pong should have binary data #1049 * Websockets: Ping and Pong should have binary data #1049
## 1.0.0-alpha.4 - 2019-12-08 ## 1.0.0-alpha.4 - 2019-12-08
### Added ### Added
- Add impl ResponseBuilder for Error * Add impl ResponseBuilder for Error
### Changed ### Changed
- Use rust based brotli compression library * Use rust based brotli compression library
## 1.0.0-alpha.3 - 2019-12-07 ## 1.0.0-alpha.3 - 2019-12-07
### Changed ### Changed
- Migrate to tokio 0.2 * Migrate to tokio 0.2
- Migrate to `std::future` * Migrate to `std::future`
## 0.2.11 - 2019-11-06 ## 0.2.11 - 2019-11-06
### Added ### Added
- Add support for serde_json::Value to be passed as argument to ResponseBuilder.body() * Add support for serde_json::Value to be passed as argument to ResponseBuilder.body()
- Add an additional `filename*` param in the `Content-Disposition` header of * Add an additional `filename*` param in the `Content-Disposition` header of
`actix_files::NamedFile` to be more compatible. (#1151) `actix_files::NamedFile` to be more compatible. (#1151)
- Allow to use `std::convert::Infallible` as `actix_http::error::Error` * Allow to use `std::convert::Infallible` as `actix_http::error::Error`
### Fixed ### Fixed
- To be compatible with non-English error responses, `ResponseError` rendered with `text/plain; * To be compatible with non-English error responses, `ResponseError` rendered with `text/plain;
charset=utf-8` header [#1118] charset=utf-8` header [#1118]
[#1878]: https://github.com/actix/actix-web/pull/1878 [#1878]: https://github.com/actix/actix-web/pull/1878
@ -547,169 +547,169 @@
## 0.2.10 - 2019-09-11 ## 0.2.10 - 2019-09-11
### Added ### Added
- Add support for sending HTTP requests with `Rc<RequestHead>` in addition to sending HTTP requests * Add support for sending HTTP requests with `Rc<RequestHead>` in addition to sending HTTP requests
with `RequestHead` with `RequestHead`
### Fixed ### Fixed
- h2 will use error response #1080 * h2 will use error response #1080
- on_connect result isn't added to request extensions for http2 requests #1009 * on_connect result isn't added to request extensions for http2 requests #1009
## 0.2.9 - 2019-08-13 ## 0.2.9 - 2019-08-13
### Changed ### Changed
- Dropped the `byteorder`-dependency in favor of `stdlib`-implementation * Dropped the `byteorder`-dependency in favor of `stdlib`-implementation
- Update percent-encoding to 2.1 * Update percent-encoding to 2.1
- Update serde_urlencoded to 0.6.1 * Update serde_urlencoded to 0.6.1
### Fixed ### Fixed
- Fixed a panic in the HTTP2 handshake in client HTTP requests (#1031) * Fixed a panic in the HTTP2 handshake in client HTTP requests (#1031)
## 0.2.8 - 2019-08-01 ## 0.2.8 - 2019-08-01
### Added ### Added
- Add `rustls` support * Add `rustls` support
- Add `Clone` impl for `HeaderMap` * Add `Clone` impl for `HeaderMap`
### Fixed ### Fixed
- awc client panic #1016 * awc client panic #1016
- Invalid response with compression middleware enabled, but compression-related features * Invalid response with compression middleware enabled, but compression-related features
disabled #997 disabled #997
## 0.2.7 - 2019-07-18 ## 0.2.7 - 2019-07-18
### Added ### Added
- Add support for downcasting response errors #986 * Add support for downcasting response errors #986
## 0.2.6 - 2019-07-17 ## 0.2.6 - 2019-07-17
### Changed ### Changed
- Replace `ClonableService` with local copy * Replace `ClonableService` with local copy
- Upgrade `rand` dependency version to 0.7 * Upgrade `rand` dependency version to 0.7
## 0.2.5 - 2019-06-28 ## 0.2.5 - 2019-06-28
### Added ### Added
- Add `on-connect` callback, `HttpServiceBuilder::on_connect()` #946 * Add `on-connect` callback, `HttpServiceBuilder::on_connect()` #946
### Changed ### Changed
- Use `encoding_rs` crate instead of unmaintained `encoding` crate * Use `encoding_rs` crate instead of unmaintained `encoding` crate
- Add `Copy` and `Clone` impls for `ws::Codec` * Add `Copy` and `Clone` impls for `ws::Codec`
## 0.2.4 - 2019-06-16 ## 0.2.4 - 2019-06-16
### Fixed ### Fixed
- Do not compress NoContent (204) responses #918 * Do not compress NoContent (204) responses #918
## 0.2.3 - 2019-06-02 ## 0.2.3 - 2019-06-02
### Added ### Added
- Debug impl for ResponseBuilder * Debug impl for ResponseBuilder
- From SizedStream and BodyStream for Body * From SizedStream and BodyStream for Body
### Changed ### Changed
- SizedStream uses u64 * SizedStream uses u64
## 0.2.2 - 2019-05-29 ## 0.2.2 - 2019-05-29
### Fixed ### Fixed
- Parse incoming stream before closing stream on disconnect #868 * Parse incoming stream before closing stream on disconnect #868
## 0.2.1 - 2019-05-25 ## 0.2.1 - 2019-05-25
### Fixed ### Fixed
- Handle socket read disconnect * Handle socket read disconnect
## 0.2.0 - 2019-05-12 ## 0.2.0 - 2019-05-12
### Changed ### Changed
- Update actix-service to 0.4 * Update actix-service to 0.4
- Expect and upgrade services accept `ServerConfig` config. * Expect and upgrade services accept `ServerConfig` config.
### Deleted ### Deleted
- `OneRequest` service * `OneRequest` service
## 0.1.5 - 2019-05-04 ## 0.1.5 - 2019-05-04
### Fixed ### Fixed
- Clean up response extensions in response pool #817 * Clean up response extensions in response pool #817
## 0.1.4 - 2019-04-24 ## 0.1.4 - 2019-04-24
### Added ### Added
- Allow to render h1 request headers in `Camel-Case` * Allow to render h1 request headers in `Camel-Case`
### Fixed ### Fixed
- Read until eof for http/1.0 responses #771 * Read until eof for http/1.0 responses #771
## 0.1.3 - 2019-04-23 ## 0.1.3 - 2019-04-23
### Fixed ### Fixed
- Fix http client pool management * Fix http client pool management
- Fix http client wait queue management #794 * Fix http client wait queue management #794
## 0.1.2 - 2019-04-23 ## 0.1.2 - 2019-04-23
### Fixed ### Fixed
- Fix BorrowMutError panic in client connector #793 * Fix BorrowMutError panic in client connector #793
## 0.1.1 - 2019-04-19 ## 0.1.1 - 2019-04-19
### Changed ### Changed
- Cookie::max_age() accepts value in seconds * Cookie::max_age() accepts value in seconds
- Cookie::max_age_time() accepts value in time::Duration * Cookie::max_age_time() accepts value in time::Duration
- Allow to specify server address for client connector * Allow to specify server address for client connector
## 0.1.0 - 2019-04-16 ## 0.1.0 - 2019-04-16
### Added ### Added
- Expose peer addr via `Request::peer_addr()` and `RequestHead::peer_addr` * Expose peer addr via `Request::peer_addr()` and `RequestHead::peer_addr`
### Changed ### Changed
- `actix_http::encoding` always available * `actix_http::encoding` always available
- use trust-dns-resolver 0.11.0 * use trust-dns-resolver 0.11.0
## 0.1.0-alpha.5 - 2019-04-12 ## 0.1.0-alpha.5 - 2019-04-12
### Added ### Added
- Allow to use custom service for upgrade requests * Allow to use custom service for upgrade requests
- Added `h1::SendResponse` future. * Added `h1::SendResponse` future.
### Changed ### Changed
- MessageBody::length() renamed to MessageBody::size() for consistency * MessageBody::length() renamed to MessageBody::size() for consistency
- ws handshake verification functions take RequestHead instead of Request * ws handshake verification functions take RequestHead instead of Request
## 0.1.0-alpha.4 - 2019-04-08 ## 0.1.0-alpha.4 - 2019-04-08
### Added ### Added
- Allow to use custom `Expect` handler * Allow to use custom `Expect` handler
- Add minimal `std::error::Error` impl for `Error` * Add minimal `std::error::Error` impl for `Error`
### Changed ### Changed
- Export IntoHeaderValue * Export IntoHeaderValue
- Render error and return as response body * Render error and return as response body
- Use thread pool for response body compression * Use thread pool for response body compression
### Deleted ### Deleted
- Removed PayloadBuffer * Removed PayloadBuffer
## 0.1.0-alpha.3 - 2019-04-02 ## 0.1.0-alpha.3 - 2019-04-02
### Added ### Added
- Warn when an unsealed private cookie isn't valid UTF-8 * Warn when an unsealed private cookie isn't valid UTF-8
### Fixed ### Fixed
- Rust 1.31.0 compatibility * Rust 1.31.0 compatibility
- Preallocate read buffer for h1 codec * Preallocate read buffer for h1 codec
- Detect socket disconnection during protocol selection * Detect socket disconnection during protocol selection
## 0.1.0-alpha.2 - 2019-03-29 ## 0.1.0-alpha.2 - 2019-03-29
### Added ### Added
- Added ws::Message::Nop, no-op websockets message * Added ws::Message::Nop, no-op websockets message
### Changed ### Changed
- Do not use thread pool for decompression if chunk size is smaller than 2048. * Do not use thread pool for decompression if chunk size is smaller than 2048.
## 0.1.0-alpha.1 - 2019-03-28 ## 0.1.0-alpha.1 - 2019-03-28
- Initial impl * Initial impl

View file

@ -4,119 +4,119 @@
## 0.4.0-beta.10 - 2021-12-11 ## 0.4.0-beta.10 - 2021-12-11
- No significant changes since `0.4.0-beta.9`. * No significant changes since `0.4.0-beta.9`.
## 0.4.0-beta.9 - 2021-12-01 ## 0.4.0-beta.9 - 2021-12-01
- Polling `Field` after dropping `Multipart` now fails immediately instead of hanging forever. [#2463] * Polling `Field` after dropping `Multipart` now fails immediately instead of hanging forever. [#2463]
[#2463]: https://github.com/actix/actix-web/pull/2463 [#2463]: https://github.com/actix/actix-web/pull/2463
## 0.4.0-beta.8 - 2021-11-22 ## 0.4.0-beta.8 - 2021-11-22
- Ensure a correct Content-Disposition header is included in every part of a multipart message. [#2451] * Ensure a correct Content-Disposition header is included in every part of a multipart message. [#2451]
- Added `MultipartError::NoContentDisposition` variant. [#2451] * Added `MultipartError::NoContentDisposition` variant. [#2451]
- Since Content-Disposition is now ensured, `Field::content_disposition` is now infallible. [#2451] * Since Content-Disposition is now ensured, `Field::content_disposition` is now infallible. [#2451]
- Added `Field::name` method for getting the field name. [#2451] * Added `Field::name` method for getting the field name. [#2451]
- `MultipartError` now marks variants with inner errors as the source. [#2451] * `MultipartError` now marks variants with inner errors as the source. [#2451]
- `MultipartError` is now marked as non-exhaustive. [#2451] * `MultipartError` is now marked as non-exhaustive. [#2451]
[#2451]: https://github.com/actix/actix-web/pull/2451 [#2451]: https://github.com/actix/actix-web/pull/2451
## 0.4.0-beta.7 - 2021-10-20 ## 0.4.0-beta.7 - 2021-10-20
- Minimum supported Rust version (MSRV) is now 1.52. * Minimum supported Rust version (MSRV) is now 1.52.
## 0.4.0-beta.6 - 2021-09-09 ## 0.4.0-beta.6 - 2021-09-09
- Minimum supported Rust version (MSRV) is now 1.51. * Minimum supported Rust version (MSRV) is now 1.51.
## 0.4.0-beta.5 - 2021-06-17 ## 0.4.0-beta.5 - 2021-06-17
- No notable changes. * No notable changes.
## 0.4.0-beta.4 - 2021-04-02 ## 0.4.0-beta.4 - 2021-04-02
- No notable changes. * No notable changes.
## 0.4.0-beta.3 - 2021-03-09 ## 0.4.0-beta.3 - 2021-03-09
- No notable changes. * No notable changes.
## 0.4.0-beta.2 - 2021-02-10 ## 0.4.0-beta.2 - 2021-02-10
- No notable changes. * No notable changes.
## 0.4.0-beta.1 - 2021-01-07 ## 0.4.0-beta.1 - 2021-01-07
- Fix multipart consuming payload before header checks. [#1513] * Fix multipart consuming payload before header checks. [#1513]
- Update `bytes` to `1.0`. [#1813] * Update `bytes` to `1.0`. [#1813]
[#1813]: https://github.com/actix/actix-web/pull/1813 [#1813]: https://github.com/actix/actix-web/pull/1813
[#1513]: https://github.com/actix/actix-web/pull/1513 [#1513]: https://github.com/actix/actix-web/pull/1513
## 0.3.0 - 2020-09-11 ## 0.3.0 - 2020-09-11
- No significant changes from `0.3.0-beta.2`. * No significant changes from `0.3.0-beta.2`.
## 0.3.0-beta.2 - 2020-09-10 ## 0.3.0-beta.2 - 2020-09-10
- Update `actix-*` dependencies to latest versions. * Update `actix-*` dependencies to latest versions.
## 0.3.0-beta.1 - 2020-07-15 ## 0.3.0-beta.1 - 2020-07-15
- Update `actix-web` to 3.0.0-beta.1 * Update `actix-web` to 3.0.0-beta.1
## 0.3.0-alpha.1 - 2020-05-25 ## 0.3.0-alpha.1 - 2020-05-25
- Update `actix-web` to 3.0.0-alpha.3 * Update `actix-web` to 3.0.0-alpha.3
- Bump minimum supported Rust version to 1.40 * Bump minimum supported Rust version to 1.40
- Minimize `futures` dependencies * Minimize `futures` dependencies
- Remove the unused `time` dependency * Remove the unused `time` dependency
- Fix missing `std::error::Error` implement for `MultipartError`. * Fix missing `std::error::Error` implement for `MultipartError`.
## [0.2.0] - 2019-12-20 ## [0.2.0] - 2019-12-20
- Release * Release
## [0.2.0-alpha.4] - 2019-12-xx ## [0.2.0-alpha.4] - 2019-12-xx
- Multipart handling now handles Pending during read of boundary #1205 * Multipart handling now handles Pending during read of boundary #1205
## [0.2.0-alpha.2] - 2019-12-03 ## [0.2.0-alpha.2] - 2019-12-03
- Migrate to `std::future` * Migrate to `std::future`
## [0.1.4] - 2019-09-12 ## [0.1.4] - 2019-09-12
- Multipart handling now parses requests which do not end in CRLF #1038 * Multipart handling now parses requests which do not end in CRLF #1038
## [0.1.3] - 2019-08-18 ## [0.1.3] - 2019-08-18
- Fix ring dependency from actix-web default features for #741. * Fix ring dependency from actix-web default features for #741.
## [0.1.2] - 2019-06-02 ## [0.1.2] - 2019-06-02
- Fix boundary parsing #876 * Fix boundary parsing #876
## [0.1.1] - 2019-05-25 ## [0.1.1] - 2019-05-25
- Fix disconnect handling #834 * Fix disconnect handling #834
## [0.1.0] - 2019-05-18 ## [0.1.0] - 2019-05-18
- Release * Release
## [0.1.0-beta.4] - 2019-05-12 ## [0.1.0-beta.4] - 2019-05-12
- Handle cancellation of uploads #736 * Handle cancellation of uploads #736
- Upgrade to actix-web 1.0.0-beta.4 * Upgrade to actix-web 1.0.0-beta.4
## [0.1.0-beta.1] - 2019-04-21 ## [0.1.0-beta.1] - 2019-04-21
- Do not support nested multipart * Do not support nested multipart
- Split multipart support to separate crate * Split multipart support to separate crate
- Optimize multipart handling #634, #769 * Optimize multipart handling #634, #769

View file

@ -4,20 +4,20 @@
## 0.5.0-beta.3 - 2021-12-17 ## 0.5.0-beta.3 - 2021-12-17
- Minimum supported Rust version (MSRV) is now 1.52. * Minimum supported Rust version (MSRV) is now 1.52.
## 0.5.0-beta.2 - 2021-09-09 ## 0.5.0-beta.2 - 2021-09-09
- Introduce `ResourceDef::join`. [#380] * Introduce `ResourceDef::join`. [#380]
- Disallow prefix routes with tail segments. [#379] * Disallow prefix routes with tail segments. [#379]
- Enforce path separators on dynamic prefixes. [#378] * Enforce path separators on dynamic prefixes. [#378]
- Improve malformed path error message. [#384] * Improve malformed path error message. [#384]
- Prefix segments now always end with with a segment delimiter or end-of-input. [#2355] * Prefix segments now always end with with a segment delimiter or end-of-input. [#2355]
- Prefix segments with trailing slashes define a trailing empty segment. [#2355] * Prefix segments with trailing slashes define a trailing empty segment. [#2355]
- Support multi-pattern prefixes and joins. [#2356] * Support multi-pattern prefixes and joins. [#2356]
- `ResourceDef::pattern` now returns the first pattern in multi-pattern resources. [#2356] * `ResourceDef::pattern` now returns the first pattern in multi-pattern resources. [#2356]
- Support `build_resource_path` on multi-pattern resources. [#2356] * Support `build_resource_path` on multi-pattern resources. [#2356]
- Minimum supported Rust version (MSRV) is now 1.51. * Minimum supported Rust version (MSRV) is now 1.51.
[#378]: https://github.com/actix/actix-net/pull/378 [#378]: https://github.com/actix/actix-net/pull/378
[#379]: https://github.com/actix/actix-net/pull/379 [#379]: https://github.com/actix/actix-net/pull/379
@ -28,23 +28,23 @@
## 0.5.0-beta.1 - 2021-07-20 ## 0.5.0-beta.1 - 2021-07-20
- Fix a bug in multi-patterns where static patterns are interpreted as regex. [#366] * Fix a bug in multi-patterns where static patterns are interpreted as regex. [#366]
- Introduce `ResourceDef::pattern_iter` to get an iterator over all patterns in a multi-pattern resource. [#373] * Introduce `ResourceDef::pattern_iter` to get an iterator over all patterns in a multi-pattern resource. [#373]
- Fix segment interpolation leaving `Path` in unintended state after matching. [#368] * Fix segment interpolation leaving `Path` in unintended state after matching. [#368]
- Fix `ResourceDef` `PartialEq` implementation. [#373] * Fix `ResourceDef` `PartialEq` implementation. [#373]
- Re-work `IntoPatterns` trait, adding a `Patterns` enum. [#372] * Re-work `IntoPatterns` trait, adding a `Patterns` enum. [#372]
- Implement `IntoPatterns` for `bytestring::ByteString`. [#372] * Implement `IntoPatterns` for `bytestring::ByteString`. [#372]
- Rename `Path::{len => segment_count}` to be more descriptive of it's purpose. [#370] * Rename `Path::{len => segment_count}` to be more descriptive of it's purpose. [#370]
- Rename `ResourceDef::{resource_path => resource_path_from_iter}`. [#371] * Rename `ResourceDef::{resource_path => resource_path_from_iter}`. [#371]
- `ResourceDef::resource_path_from_iter` now takes an `IntoIterator`. [#373] * `ResourceDef::resource_path_from_iter` now takes an `IntoIterator`. [#373]
- Rename `ResourceDef::{resource_path_named => resource_path_from_map}`. [#371] * Rename `ResourceDef::{resource_path_named => resource_path_from_map}`. [#371]
- Rename `ResourceDef::{is_prefix_match => find_match}`. [#373] * Rename `ResourceDef::{is_prefix_match => find_match}`. [#373]
- Rename `ResourceDef::{match_path => capture_match_info}`. [#373] * Rename `ResourceDef::{match_path => capture_match_info}`. [#373]
- Rename `ResourceDef::{match_path_checked => capture_match_info_fn}`. [#373] * Rename `ResourceDef::{match_path_checked => capture_match_info_fn}`. [#373]
- Remove `ResourceDef::name_mut` and introduce `ResourceDef::set_name`. [#373] * Remove `ResourceDef::name_mut` and introduce `ResourceDef::set_name`. [#373]
- Rename `Router::{*_checked => *_fn}`. [#373] * Rename `Router::{*_checked => *_fn}`. [#373]
- Return type of `ResourceDef::name` is now `Option<&str>`. [#373] * Return type of `ResourceDef::name` is now `Option<&str>`. [#373]
- Return type of `ResourceDef::pattern` is now `Option<&str>`. [#373] * Return type of `ResourceDef::pattern` is now `Option<&str>`. [#373]
[#368]: https://github.com/actix/actix-net/pull/368 [#368]: https://github.com/actix/actix-net/pull/368
[#366]: https://github.com/actix/actix-net/pull/366 [#366]: https://github.com/actix/actix-net/pull/366
@ -56,10 +56,10 @@
## 0.4.0 - 2021-06-06 ## 0.4.0 - 2021-06-06
- When matching path parameters, `%25` is now kept in the percent-encoded form; no longer decoded to `%`. [#357] * When matching path parameters, `%25` is now kept in the percent-encoded form; no longer decoded to `%`. [#357]
- Path tail patterns now match new lines (`\n`) in request URL. [#360] * Path tail patterns now match new lines (`\n`) in request URL. [#360]
- Fixed a safety bug where `Path` could return a malformed string after percent decoding. [#359] * Fixed a safety bug where `Path` could return a malformed string after percent decoding. [#359]
- Methods `Path::{add, add_static}` now take `impl Into<Cow<'static, str>>`. [#345] * Methods `Path::{add, add_static}` now take `impl Into<Cow<'static, str>>`. [#345]
[#345]: https://github.com/actix/actix-net/pull/345 [#345]: https://github.com/actix/actix-net/pull/345
[#357]: https://github.com/actix/actix-net/pull/357 [#357]: https://github.com/actix/actix-net/pull/357
@ -68,68 +68,68 @@
## 0.3.0 - 2019-12-31 ## 0.3.0 - 2019-12-31
- Version was yanked previously. See https://crates.io/crates/actix-router/0.3.0 * Version was yanked previously. See https://crates.io/crates/actix-router/0.3.0
## 0.2.7 - 2021-02-06 ## 0.2.7 - 2021-02-06
- Add `Router::recognize_checked` [#247] * Add `Router::recognize_checked` [#247]
[#247]: https://github.com/actix/actix-net/pull/247 [#247]: https://github.com/actix/actix-net/pull/247
## 0.2.6 - 2021-01-09 ## 0.2.6 - 2021-01-09
- Use `bytestring` version range compatible with Bytes v1.0. [#246] * Use `bytestring` version range compatible with Bytes v1.0. [#246]
[#246]: https://github.com/actix/actix-net/pull/246 [#246]: https://github.com/actix/actix-net/pull/246
## 0.2.5 - 2020-09-20 ## 0.2.5 - 2020-09-20
- Fix `from_hex()` method * Fix `from_hex()` method
## 0.2.4 - 2019-12-31 ## 0.2.4 - 2019-12-31
- Add `ResourceDef::resource_path_named()` path generation method * Add `ResourceDef::resource_path_named()` path generation method
## 0.2.3 - 2019-12-25 ## 0.2.3 - 2019-12-25
- Add impl `IntoPattern` for `&String` * Add impl `IntoPattern` for `&String`
## 0.2.2 - 2019-12-25 ## 0.2.2 - 2019-12-25
- Use `IntoPattern` for `RouterBuilder::path()` * Use `IntoPattern` for `RouterBuilder::path()`
## 0.2.1 - 2019-12-25 ## 0.2.1 - 2019-12-25
- Add `IntoPattern` trait * Add `IntoPattern` trait
- Add multi-pattern resources * Add multi-pattern resources
## 0.2.0 - 2019-12-07 ## 0.2.0 - 2019-12-07
- Update http to 0.2 * Update http to 0.2
- Update regex to 1.3 * Update regex to 1.3
- Use bytestring instead of string * Use bytestring instead of string
## 0.1.5 - 2019-05-15 ## 0.1.5 - 2019-05-15
- Remove debug prints * Remove debug prints
## 0.1.4 - 2019-05-15 ## 0.1.4 - 2019-05-15
- Fix checked resource match * Fix checked resource match
## 0.1.3 - 2019-04-22 ## 0.1.3 - 2019-04-22
- Added support for `remainder match` (i.e "/path/{tail}*") * Added support for `remainder match` (i.e "/path/{tail}*")
## 0.1.2 - 2019-04-07 ## 0.1.2 - 2019-04-07
- Export `Quoter` type * Export `Quoter` type
- Allow to reset `Path` instance * Allow to reset `Path` instance
## 0.1.1 - 2019-04-03 ## 0.1.1 - 2019-04-03
- Get dynamic segment by name instead of iterator. * Get dynamic segment by name instead of iterator.
## 0.1.0 - 2019-03-09 ## 0.1.0 - 2019-03-09
- Initial release * Initial release

View file

@ -4,46 +4,46 @@
## 0.1.0-beta.9 - 2021-12-17 ## 0.1.0-beta.9 - 2021-12-17
- Re-export `actix_http::body::to_bytes`. [#2518] * Re-export `actix_http::body::to_bytes`. [#2518]
- Update `actix_web::test` re-exports. [#2518] * Update `actix_web::test` re-exports. [#2518]
[#2518]: https://github.com/actix/actix-web/pull/2518 [#2518]: https://github.com/actix/actix-web/pull/2518
## 0.1.0-beta.8 - 2021-12-11 ## 0.1.0-beta.8 - 2021-12-11
- No significant changes since `0.1.0-beta.7`. * No significant changes since `0.1.0-beta.7`.
## 0.1.0-beta.7 - 2021-11-22 ## 0.1.0-beta.7 - 2021-11-22
- Fix compatibility with experimental `io-uring` feature of `actix-rt`. [#2408] * Fix compatibility with experimental `io-uring` feature of `actix-rt`. [#2408]
[#2408]: https://github.com/actix/actix-web/pull/2408 [#2408]: https://github.com/actix/actix-web/pull/2408
## 0.1.0-beta.6 - 2021-11-15 ## 0.1.0-beta.6 - 2021-11-15
- No significant changes from `0.1.0-beta.5`. * No significant changes from `0.1.0-beta.5`.
## 0.1.0-beta.5 - 2021-10-20 ## 0.1.0-beta.5 - 2021-10-20
- Updated rustls to v0.20. [#2414] * Updated rustls to v0.20. [#2414]
- Minimum supported Rust version (MSRV) is now 1.52. * Minimum supported Rust version (MSRV) is now 1.52.
[#2414]: https://github.com/actix/actix-web/pull/2414 [#2414]: https://github.com/actix/actix-web/pull/2414
## 0.1.0-beta.4 - 2021-09-09 ## 0.1.0-beta.4 - 2021-09-09
- Minimum supported Rust version (MSRV) is now 1.51. * Minimum supported Rust version (MSRV) is now 1.51.
## 0.1.0-beta.3 - 2021-06-20 ## 0.1.0-beta.3 - 2021-06-20
- No significant changes from `0.1.0-beta.2`. * No significant changes from `0.1.0-beta.2`.
## 0.1.0-beta.2 - 2021-04-17 ## 0.1.0-beta.2 - 2021-04-17
- No significant changes from `0.1.0-beta.1`. * No significant changes from `0.1.0-beta.1`.
## 0.1.0-beta.1 - 2021-04-02 ## 0.1.0-beta.1 - 2021-04-02
- Move integration testing structs from `actix-web`. [#2112] * Move integration testing structs from `actix-web`. [#2112]
[#2112]: https://github.com/actix/actix-web/pull/2112 [#2112]: https://github.com/actix/actix-web/pull/2112

View file

@ -4,105 +4,105 @@
## 4.0.0-beta.8 - 2021-12-11 ## 4.0.0-beta.8 - 2021-12-11
- Add `ws:WsResponseBuilder` for building WebSocket session response. [#1920] * Add `ws:WsResponseBuilder` for building WebSocket session response. [#1920]
- Deprecate `ws::{start_with_addr, start_with_protocols}`. [#1920] * Deprecate `ws::{start_with_addr, start_with_protocols}`. [#1920]
- Minimum supported Rust version (MSRV) is now 1.52. * Minimum supported Rust version (MSRV) is now 1.52.
[#1920]: https://github.com/actix/actix-web/pull/1920 [#1920]: https://github.com/actix/actix-web/pull/1920
## 4.0.0-beta.7 - 2021-09-09 ## 4.0.0-beta.7 - 2021-09-09
- Minimum supported Rust version (MSRV) is now 1.51. * Minimum supported Rust version (MSRV) is now 1.51.
## 4.0.0-beta.6 - 2021-06-26 ## 4.0.0-beta.6 - 2021-06-26
- Update `actix` to `0.12`. [#2277] * Update `actix` to `0.12`. [#2277]
[#2277]: https://github.com/actix/actix-web/pull/2277 [#2277]: https://github.com/actix/actix-web/pull/2277
## 4.0.0-beta.5 - 2021-06-17 ## 4.0.0-beta.5 - 2021-06-17
- No notable changes. * No notable changes.
## 4.0.0-beta.4 - 2021-04-02 ## 4.0.0-beta.4 - 2021-04-02
- No notable changes. * No notable changes.
## 4.0.0-beta.3 - 2021-03-09 ## 4.0.0-beta.3 - 2021-03-09
- No notable changes. * No notable changes.
## 4.0.0-beta.2 - 2021-02-10 ## 4.0.0-beta.2 - 2021-02-10
- No notable changes. * No notable changes.
## 4.0.0-beta.1 - 2021-01-07 ## 4.0.0-beta.1 - 2021-01-07
- Update `pin-project` to `1.0`. * Update `pin-project` to `1.0`.
- Update `bytes` to `1.0`. [#1813] * Update `bytes` to `1.0`. [#1813]
- `WebsocketContext::text` now takes an `Into<bytestring::ByteString>`. [#1864] * `WebsocketContext::text` now takes an `Into<bytestring::ByteString>`. [#1864]
[#1813]: https://github.com/actix/actix-web/pull/1813 [#1813]: https://github.com/actix/actix-web/pull/1813
[#1864]: https://github.com/actix/actix-web/pull/1864 [#1864]: https://github.com/actix/actix-web/pull/1864
## 3.0.0 - 2020-09-11 ## 3.0.0 - 2020-09-11
- No significant changes from `3.0.0-beta.2`. * No significant changes from `3.0.0-beta.2`.
## 3.0.0-beta.2 - 2020-09-10 ## 3.0.0-beta.2 - 2020-09-10
- Update `actix-*` dependencies to latest versions. * Update `actix-*` dependencies to latest versions.
## [3.0.0-beta.1] - 2020-xx-xx ## [3.0.0-beta.1] - 2020-xx-xx
- Update `actix-web` & `actix-http` dependencies to beta.1 * Update `actix-web` & `actix-http` dependencies to beta.1
- Bump minimum supported Rust version to 1.40 * Bump minimum supported Rust version to 1.40
## [3.0.0-alpha.1] - 2020-05-08 ## [3.0.0-alpha.1] - 2020-05-08
- Update the actix-web dependency to 3.0.0-alpha.1 * Update the actix-web dependency to 3.0.0-alpha.1
- Update the actix dependency to 0.10.0-alpha.2 * Update the actix dependency to 0.10.0-alpha.2
- Update the actix-http dependency to 2.0.0-alpha.3 * Update the actix-http dependency to 2.0.0-alpha.3
## [2.0.0] - 2019-12-20 ## [2.0.0] - 2019-12-20
- Release * Release
## [2.0.0-alpha.1] - 2019-12-15 ## [2.0.0-alpha.1] - 2019-12-15
- Migrate to actix-web 2.0.0 * Migrate to actix-web 2.0.0
## [1.0.4] - 2019-12-07 ## [1.0.4] - 2019-12-07
- Allow comma-separated websocket subprotocols without spaces (#1172) * Allow comma-separated websocket subprotocols without spaces (#1172)
## [1.0.3] - 2019-11-14 ## [1.0.3] - 2019-11-14
- Update actix-web and actix-http dependencies * Update actix-web and actix-http dependencies
## [1.0.2] - 2019-07-20 ## [1.0.2] - 2019-07-20
- Add `ws::start_with_addr()`, returning the address of the created actor, along * Add `ws::start_with_addr()`, returning the address of the created actor, along
with the `HttpResponse`. with the `HttpResponse`.
- Add support for specifying protocols on websocket handshake #835 * Add support for specifying protocols on websocket handshake #835
## [1.0.1] - 2019-06-28 ## [1.0.1] - 2019-06-28
- Allow to use custom ws codec with `WebsocketContext` #925 * Allow to use custom ws codec with `WebsocketContext` #925
## [1.0.0] - 2019-05-29 ## [1.0.0] - 2019-05-29
- Update actix-http and actix-web * Update actix-http and actix-web
## [0.1.0-alpha.3] - 2019-04-02 ## [0.1.0-alpha.3] - 2019-04-02
- Update actix-http and actix-web * Update actix-http and actix-web
## [0.1.0-alpha.2] - 2019-03-29 ## [0.1.0-alpha.2] - 2019-03-29
- Update actix-http and actix-web * Update actix-http and actix-web
## [0.1.0-alpha.1] - 2019-03-28 ## [0.1.0-alpha.1] - 2019-03-28
- Initial impl * Initial impl

View file

@ -4,101 +4,101 @@
## 0.5.0-beta.6 - 2021-12-11 ## 0.5.0-beta.6 - 2021-12-11
- No significant changes since `0.5.0-beta.5`. * No significant changes since `0.5.0-beta.5`.
## 0.5.0-beta.5 - 2021-10-20 ## 0.5.0-beta.5 - 2021-10-20
- Improve error recovery potential when macro input is invalid. [#2410] * Improve error recovery potential when macro input is invalid. [#2410]
- Add `#[actix_web::test]` macro for setting up tests with a runtime. [#2409] * Add `#[actix_web::test]` macro for setting up tests with a runtime. [#2409]
- Minimum supported Rust version (MSRV) is now 1.52. * Minimum supported Rust version (MSRV) is now 1.52.
[#2410]: https://github.com/actix/actix-web/pull/2410 [#2410]: https://github.com/actix/actix-web/pull/2410
[#2409]: https://github.com/actix/actix-web/pull/2409 [#2409]: https://github.com/actix/actix-web/pull/2409
## 0.5.0-beta.4 - 2021-09-09 ## 0.5.0-beta.4 - 2021-09-09
- In routing macros, paths are now validated at compile time. [#2350] * In routing macros, paths are now validated at compile time. [#2350]
- Minimum supported Rust version (MSRV) is now 1.51. * Minimum supported Rust version (MSRV) is now 1.51.
[#2350]: https://github.com/actix/actix-web/pull/2350 [#2350]: https://github.com/actix/actix-web/pull/2350
## 0.5.0-beta.3 - 2021-06-17 ## 0.5.0-beta.3 - 2021-06-17
- No notable changes. * No notable changes.
## 0.5.0-beta.2 - 2021-03-09 ## 0.5.0-beta.2 - 2021-03-09
- Preserve doc comments when using route macros. [#2022] * Preserve doc comments when using route macros. [#2022]
- Add `name` attribute to `route` macro. [#1934] * Add `name` attribute to `route` macro. [#1934]
[#2022]: https://github.com/actix/actix-web/pull/2022 [#2022]: https://github.com/actix/actix-web/pull/2022
[#1934]: https://github.com/actix/actix-web/pull/1934 [#1934]: https://github.com/actix/actix-web/pull/1934
## 0.5.0-beta.1 - 2021-02-10 ## 0.5.0-beta.1 - 2021-02-10
- Use new call signature for `System::new`. * Use new call signature for `System::new`.
## 0.4.0 - 2020-09-20 ## 0.4.0 - 2020-09-20
- Added compile success and failure testing. [#1677] * Added compile success and failure testing. [#1677]
- Add `route` macro for supporting multiple HTTP methods guards. [#1674] * Add `route` macro for supporting multiple HTTP methods guards. [#1674]
[#1677]: https://github.com/actix/actix-web/pull/1677 [#1677]: https://github.com/actix/actix-web/pull/1677
[#1674]: https://github.com/actix/actix-web/pull/1674 [#1674]: https://github.com/actix/actix-web/pull/1674
## 0.3.0 - 2020-09-11 ## 0.3.0 - 2020-09-11
- No significant changes from `0.3.0-beta.1`. * No significant changes from `0.3.0-beta.1`.
## 0.3.0-beta.1 - 2020-07-14 ## 0.3.0-beta.1 - 2020-07-14
- Add main entry-point macro that uses re-exported runtime. [#1559] * Add main entry-point macro that uses re-exported runtime. [#1559]
[#1559]: https://github.com/actix/actix-web/pull/1559 [#1559]: https://github.com/actix/actix-web/pull/1559
## 0.2.2 - 2020-05-23 ## 0.2.2 - 2020-05-23
- Add resource middleware on actix-web-codegen [#1467] * Add resource middleware on actix-web-codegen [#1467]
[#1467]: https://github.com/actix/actix-web/pull/1467 [#1467]: https://github.com/actix/actix-web/pull/1467
## 0.2.1 - 2020-02-25 ## 0.2.1 - 2020-02-25
- Add `#[allow(missing_docs)]` attribute to generated structs [#1368] * Add `#[allow(missing_docs)]` attribute to generated structs [#1368]
- Allow the handler function to be named as `config` [#1290] * Allow the handler function to be named as `config` [#1290]
[#1368]: https://github.com/actix/actix-web/issues/1368 [#1368]: https://github.com/actix/actix-web/issues/1368
[#1290]: https://github.com/actix/actix-web/issues/1290 [#1290]: https://github.com/actix/actix-web/issues/1290
## 0.2.0 - 2019-12-13 ## 0.2.0 - 2019-12-13
- Generate code for actix-web 2.0 * Generate code for actix-web 2.0
## 0.1.3 - 2019-10-14 ## 0.1.3 - 2019-10-14
- Bump up `syn` & `quote` to 1.0 * Bump up `syn` & `quote` to 1.0
- Provide better error message * Provide better error message
## 0.1.2 - 2019-06-04 ## 0.1.2 - 2019-06-04
- Add macros for head, options, trace, connect and patch http methods * Add macros for head, options, trace, connect and patch http methods
## 0.1.1 - 2019-06-01 ## 0.1.1 - 2019-06-01
- Add syn "extra-traits" feature * Add syn "extra-traits" feature
## 0.1.0 - 2019-05-18 ## 0.1.0 - 2019-05-18
- Release * Release
## 0.1.0-beta.1 - 2019-04-20 ## 0.1.0-beta.1 - 2019-04-20
- Gen code for actix-web 1.0.0-beta.1 * Gen code for actix-web 1.0.0-beta.1
## 0.1.0-alpha.6 - 2019-04-14 ## 0.1.0-alpha.6 - 2019-04-14
- Gen code for actix-web 1.0.0-alpha.6 * Gen code for actix-web 1.0.0-alpha.6
## 0.1.0-alpha.1 - 2019-03-28 ## 0.1.0-alpha.1 - 2019-03-28
- Initial impl * Initial impl

View file

@ -1,75 +1,75 @@
# Changes # Changes
## Unreleased - 2021-xx-xx ## Unreleased - 2021-xx-xx
- Rename `Connector::{ssl => openssl}`. [#2503] * Rename `Connector::{ssl => openssl}`. [#2503]
- Improve `Client` instantiation efficiency when using `openssl` by only building connectors once. [#2503] * Improve `Client` instantiation efficiency when using `openssl` by only building connectors once. [#2503]
[#2503]: https://github.com/actix/actix-web/pull/2503 [#2503]: https://github.com/actix/actix-web/pull/2503
## 3.0.0-beta.14 - 2021-12-17 ## 3.0.0-beta.14 - 2021-12-17
- Add `ClientBuilder::add_default_header` and deprecate `ClientBuilder::header`. [#2510] * Add `ClientBuilder::add_default_header` and deprecate `ClientBuilder::header`. [#2510]
[#2510]: https://github.com/actix/actix-web/pull/2510 [#2510]: https://github.com/actix/actix-web/pull/2510
## 3.0.0-beta.13 - 2021-12-11 ## 3.0.0-beta.13 - 2021-12-11
- No significant changes since `3.0.0-beta.12`. * No significant changes since `3.0.0-beta.12`.
## 3.0.0-beta.12 - 2021-11-30 ## 3.0.0-beta.12 - 2021-11-30
- Update `actix-tls` to `3.0.0-rc.1`. [#2474] * Update `actix-tls` to `3.0.0-rc.1`. [#2474]
[#2474]: https://github.com/actix/actix-web/pull/2474 [#2474]: https://github.com/actix/actix-web/pull/2474
## 3.0.0-beta.11 - 2021-11-22 ## 3.0.0-beta.11 - 2021-11-22
- No significant changes from `3.0.0-beta.10`. * No significant changes from `3.0.0-beta.10`.
## 3.0.0-beta.10 - 2021-11-15 ## 3.0.0-beta.10 - 2021-11-15
- No significant changes from `3.0.0-beta.9`. * No significant changes from `3.0.0-beta.9`.
## 3.0.0-beta.9 - 2021-10-20 ## 3.0.0-beta.9 - 2021-10-20
- Updated rustls to v0.20. [#2414] * Updated rustls to v0.20. [#2414]
[#2414]: https://github.com/actix/actix-web/pull/2414 [#2414]: https://github.com/actix/actix-web/pull/2414
## 3.0.0-beta.8 - 2021-09-09 ## 3.0.0-beta.8 - 2021-09-09
### Changed ### Changed
- Send headers within the redirect requests. [#2310] * Send headers within the redirect requests. [#2310]
[#2310]: https://github.com/actix/actix-web/pull/2310 [#2310]: https://github.com/actix/actix-web/pull/2310
## 3.0.0-beta.7 - 2021-06-26 ## 3.0.0-beta.7 - 2021-06-26
### Changed ### Changed
- Change compression algorithm features flags. [#2250] * Change compression algorithm features flags. [#2250]
[#2250]: https://github.com/actix/actix-web/pull/2250 [#2250]: https://github.com/actix/actix-web/pull/2250
## 3.0.0-beta.6 - 2021-06-17 ## 3.0.0-beta.6 - 2021-06-17
- No significant changes since 3.0.0-beta.5. * No significant changes since 3.0.0-beta.5.
## 3.0.0-beta.5 - 2021-04-17 ## 3.0.0-beta.5 - 2021-04-17
### Removed ### Removed
- Deprecated methods on `ClientRequest`: `if_true`, `if_some`. [#2148] * Deprecated methods on `ClientRequest`: `if_true`, `if_some`. [#2148]
[#2148]: https://github.com/actix/actix-web/pull/2148 [#2148]: https://github.com/actix/actix-web/pull/2148
## 3.0.0-beta.4 - 2021-04-02 ## 3.0.0-beta.4 - 2021-04-02
### Added ### Added
- Add `Client::headers` to get default mut reference of `HeaderMap` of client object. [#2114] * Add `Client::headers` to get default mut reference of `HeaderMap` of client object. [#2114]
### Changed ### Changed
- `ConnectorService` type is renamed to `BoxConnectorService`. [#2081] * `ConnectorService` type is renamed to `BoxConnectorService`. [#2081]
- Fix http/https encoding when enabling `compress` feature. [#2116] * Fix http/https encoding when enabling `compress` feature. [#2116]
- Rename `TestResponse::header` to `append_header`, `set` to `insert_header`. `TestResponse` header * Rename `TestResponse::header` to `append_header`, `set` to `insert_header`. `TestResponse` header
methods now take `TryIntoHeaderPair` tuples. [#2094] methods now take `TryIntoHeaderPair` tuples. [#2094]
[#2081]: https://github.com/actix/actix-web/pull/2081 [#2081]: https://github.com/actix/actix-web/pull/2081
@ -80,16 +80,16 @@
## 3.0.0-beta.3 - 2021-03-08 ## 3.0.0-beta.3 - 2021-03-08
### Added ### Added
- `ClientResponse::timeout` for set the timeout of collecting response body. [#1931] * `ClientResponse::timeout` for set the timeout of collecting response body. [#1931]
- `ClientBuilder::local_address` for bind to a local ip address for this client. [#2024] * `ClientBuilder::local_address` for bind to a local ip address for this client. [#2024]
### Changed ### Changed
- Feature `cookies` is now optional and enabled by default. [#1981] * Feature `cookies` is now optional and enabled by default. [#1981]
- `ClientBuilder::connector` method would take `actix_http::client::Connector<T, U>` type. [#2008] * `ClientBuilder::connector` method would take `actix_http::client::Connector<T, U>` type. [#2008]
- Basic auth password now takes blank passwords as an empty string instead of Option. [#2050] * Basic auth password now takes blank passwords as an empty string instead of Option. [#2050]
### Removed ### Removed
- `ClientBuilder::default` function [#2008] * `ClientBuilder::default` function [#2008]
[#1931]: https://github.com/actix/actix-web/pull/1931 [#1931]: https://github.com/actix/actix-web/pull/1931
[#1981]: https://github.com/actix/actix-web/pull/1981 [#1981]: https://github.com/actix/actix-web/pull/1981
@ -100,18 +100,18 @@
## 3.0.0-beta.2 - 2021-02-10 ## 3.0.0-beta.2 - 2021-02-10
### Added ### Added
- `ClientRequest::insert_header` method which allows using typed headers. [#1869] * `ClientRequest::insert_header` method which allows using typed headers. [#1869]
- `ClientRequest::append_header` method which allows using typed headers. [#1869] * `ClientRequest::append_header` method which allows using typed headers. [#1869]
- `trust-dns` optional feature to enable `trust-dns-resolver` as client dns resolver. [#1969] * `trust-dns` optional feature to enable `trust-dns-resolver` as client dns resolver. [#1969]
### Changed ### Changed
- Relax default timeout for `Connector` to 5 seconds(original 1 second). [#1905] * Relax default timeout for `Connector` to 5 seconds(original 1 second). [#1905]
### Removed ### Removed
- `ClientRequest::set`; use `ClientRequest::insert_header`. [#1869] * `ClientRequest::set`; use `ClientRequest::insert_header`. [#1869]
- `ClientRequest::set_header`; use `ClientRequest::insert_header`. [#1869] * `ClientRequest::set_header`; use `ClientRequest::insert_header`. [#1869]
- `ClientRequest::set_header_if_none`; use `ClientRequest::insert_header_if_none`. [#1869] * `ClientRequest::set_header_if_none`; use `ClientRequest::insert_header_if_none`. [#1869]
- `ClientRequest::header`; use `ClientRequest::append_header`. [#1869] * `ClientRequest::header`; use `ClientRequest::append_header`. [#1869]
[#1869]: https://github.com/actix/actix-web/pull/1869 [#1869]: https://github.com/actix/actix-web/pull/1869
[#1905]: https://github.com/actix/actix-web/pull/1905 [#1905]: https://github.com/actix/actix-web/pull/1905
@ -120,32 +120,32 @@
## 3.0.0-beta.1 - 2021-01-07 ## 3.0.0-beta.1 - 2021-01-07
### Changed ### Changed
- Update `rand` to `0.8` * Update `rand` to `0.8`
- Update `bytes` to `1.0`. [#1813] * Update `bytes` to `1.0`. [#1813]
- Update `rust-tls` to `0.19`. [#1813] * Update `rust-tls` to `0.19`. [#1813]
[#1813]: https://github.com/actix/actix-web/pull/1813 [#1813]: https://github.com/actix/actix-web/pull/1813
## 2.0.3 - 2020-11-29 ## 2.0.3 - 2020-11-29
### Fixed ### Fixed
- Ensure `actix-http` dependency uses same `serde_urlencoded`. * Ensure `actix-http` dependency uses same `serde_urlencoded`.
## 2.0.2 - 2020-11-25 ## 2.0.2 - 2020-11-25
### Changed ### Changed
- Upgrade `serde_urlencoded` to `0.7`. [#1773] * Upgrade `serde_urlencoded` to `0.7`. [#1773]
[#1773]: https://github.com/actix/actix-web/pull/1773 [#1773]: https://github.com/actix/actix-web/pull/1773
## 2.0.1 - 2020-10-30 ## 2.0.1 - 2020-10-30
### Changed ### Changed
- Upgrade `base64` to `0.13`. [#1744] * Upgrade `base64` to `0.13`. [#1744]
- Deprecate `ClientRequest::{if_some, if_true}`. [#1760] * Deprecate `ClientRequest::{if_some, if_true}`. [#1760]
### Fixed ### Fixed
- Use `Accept-Encoding: identity` instead of `Accept-Encoding: br` when no compression feature * Use `Accept-Encoding: identity` instead of `Accept-Encoding: br` when no compression feature
is enabled [#1737] is enabled [#1737]
[#1737]: https://github.com/actix/actix-web/pull/1737 [#1737]: https://github.com/actix/actix-web/pull/1737
@ -155,209 +155,209 @@
## 2.0.0 - 2020-09-11 ## 2.0.0 - 2020-09-11
### Changed ### Changed
- `Client::build` was renamed to `Client::builder`. * `Client::build` was renamed to `Client::builder`.
## 2.0.0-beta.4 - 2020-09-09 ## 2.0.0-beta.4 - 2020-09-09
### Changed ### Changed
- Update actix-codec & actix-tls dependencies. * Update actix-codec & actix-tls dependencies.
## 2.0.0-beta.3 - 2020-08-17 ## 2.0.0-beta.3 - 2020-08-17
### Changed ### Changed
- Update `rustls` to 0.18 * Update `rustls` to 0.18
## 2.0.0-beta.2 - 2020-07-21 ## 2.0.0-beta.2 - 2020-07-21
### Changed ### Changed
- Update `actix-http` dependency to 2.0.0-beta.2 * Update `actix-http` dependency to 2.0.0-beta.2
## [2.0.0-beta.1] - 2020-07-14 ## [2.0.0-beta.1] - 2020-07-14
### Changed ### Changed
- Update `actix-http` dependency to 2.0.0-beta.1 * Update `actix-http` dependency to 2.0.0-beta.1
## [2.0.0-alpha.2] - 2020-05-21 ## [2.0.0-alpha.2] - 2020-05-21
### Changed ### Changed
- Implement `std::error::Error` for our custom errors [#1422] * Implement `std::error::Error` for our custom errors [#1422]
- Bump minimum supported Rust version to 1.40 * Bump minimum supported Rust version to 1.40
- Update `base64` dependency to 0.12 * Update `base64` dependency to 0.12
[#1422]: https://github.com/actix/actix-web/pull/1422 [#1422]: https://github.com/actix/actix-web/pull/1422
## [2.0.0-alpha.1] - 2020-03-11 ## [2.0.0-alpha.1] - 2020-03-11
- Update `actix-http` dependency to 2.0.0-alpha.2 * Update `actix-http` dependency to 2.0.0-alpha.2
- Update `rustls` dependency to 0.17 * Update `rustls` dependency to 0.17
- ClientBuilder accepts initial_window_size and initial_connection_window_size HTTP2 configuration * ClientBuilder accepts initial_window_size and initial_connection_window_size HTTP2 configuration
- ClientBuilder allowing to set max_http_version to limit HTTP version to be used * ClientBuilder allowing to set max_http_version to limit HTTP version to be used
## [1.0.1] - 2019-12-15 ## [1.0.1] - 2019-12-15
- Fix compilation with default features off * Fix compilation with default features off
## [1.0.0] - 2019-12-13 ## [1.0.0] - 2019-12-13
- Release * Release
## [1.0.0-alpha.3] ## [1.0.0-alpha.3]
- Migrate to `std::future` * Migrate to `std::future`
## [0.2.8] - 2019-11-06 ## [0.2.8] - 2019-11-06
- Add support for setting query from Serialize type for client request. * Add support for setting query from Serialize type for client request.
## [0.2.7] - 2019-09-25 ## [0.2.7] - 2019-09-25
### Added ### Added
- Remaining getter methods for `ClientRequest`'s private `head` field #1101 * Remaining getter methods for `ClientRequest`'s private `head` field #1101
## [0.2.6] - 2019-09-12 ## [0.2.6] - 2019-09-12
### Added ### Added
- Export frozen request related types. * Export frozen request related types.
## [0.2.5] - 2019-09-11 ## [0.2.5] - 2019-09-11
### Added ### Added
- Add `FrozenClientRequest` to support retries for sending HTTP requests * Add `FrozenClientRequest` to support retries for sending HTTP requests
### Changed ### Changed
- Ensure that the `Host` header is set when initiating a WebSocket client connection. * Ensure that the `Host` header is set when initiating a WebSocket client connection.
## [0.2.4] - 2019-08-13 ## [0.2.4] - 2019-08-13
### Changed ### Changed
- Update percent-encoding to "2.1" * Update percent-encoding to "2.1"
- Update serde_urlencoded to "0.6.1" * Update serde_urlencoded to "0.6.1"
## [0.2.3] - 2019-08-01 ## [0.2.3] - 2019-08-01
### Added ### Added
- Add `rustls` support * Add `rustls` support
## [0.2.2] - 2019-07-01 ## [0.2.2] - 2019-07-01
### Changed ### Changed
- Always append a colon after username in basic auth * Always append a colon after username in basic auth
- Upgrade `rand` dependency version to 0.7 * Upgrade `rand` dependency version to 0.7
## [0.2.1] - 2019-06-05 ## [0.2.1] - 2019-06-05
### Added ### Added
- Add license files * Add license files
## [0.2.0] - 2019-05-12 ## [0.2.0] - 2019-05-12
### Added ### Added
- Allow to send headers in `Camel-Case` form. * Allow to send headers in `Camel-Case` form.
### Changed ### Changed
- Upgrade actix-http dependency. * Upgrade actix-http dependency.
## [0.1.1] - 2019-04-19 ## [0.1.1] - 2019-04-19
### Added ### Added
- Allow to specify server address for http and ws requests. * Allow to specify server address for http and ws requests.
### Changed ### Changed
- `ClientRequest::if_true()` and `ClientRequest::if_some()` use instance instead of ref * `ClientRequest::if_true()` and `ClientRequest::if_some()` use instance instead of ref
## [0.1.0] - 2019-04-16 ## [0.1.0] - 2019-04-16
- No changes * No changes
## [0.1.0-alpha.6] - 2019-04-14 ## [0.1.0-alpha.6] - 2019-04-14
### Changed ### Changed
- Do not set default headers for websocket request * Do not set default headers for websocket request
## [0.1.0-alpha.5] - 2019-04-12 ## [0.1.0-alpha.5] - 2019-04-12
### Changed ### Changed
- Do not set any default headers * Do not set any default headers
### Added ### Added
- Add Debug impl for BoxedSocket * Add Debug impl for BoxedSocket
## [0.1.0-alpha.4] - 2019-04-08 ## [0.1.0-alpha.4] - 2019-04-08
### Changed ### Changed
- Update actix-http dependency * Update actix-http dependency
## [0.1.0-alpha.3] - 2019-04-02 ## [0.1.0-alpha.3] - 2019-04-02
### Added ### Added
- Export `MessageBody` type * Export `MessageBody` type
- `ClientResponse::json()` - Loads and parse `application/json` encoded body * `ClientResponse::json()` - Loads and parse `application/json` encoded body
### Changed ### Changed
- `ClientRequest::json()` accepts reference instead of object. * `ClientRequest::json()` accepts reference instead of object.
- `ClientResponse::body()` does not consume response object. * `ClientResponse::body()` does not consume response object.
- Renamed `ClientRequest::close_connection()` to `ClientRequest::force_close()` * Renamed `ClientRequest::close_connection()` to `ClientRequest::force_close()`
## [0.1.0-alpha.2] - 2019-03-29 ## [0.1.0-alpha.2] - 2019-03-29
### Added ### Added
- Per request and session wide request timeout. * Per request and session wide request timeout.
- Session wide headers. * Session wide headers.
- Session wide basic and bearer auth. * Session wide basic and bearer auth.
- Re-export `actix_http::client::Connector`. * Re-export `actix_http::client::Connector`.
### Changed ### Changed
- Allow to override request's uri * Allow to override request's uri
- Export `ws` sub-module with websockets related types * Export `ws` sub-module with websockets related types
## [0.1.0-alpha.1] - 2019-03-28 ## [0.1.0-alpha.1] - 2019-03-28
- Initial impl * Initial impl