2019-03-26 19:54:35 +01:00
|
|
|
# Changes
|
|
|
|
|
2020-06-19 15:34:14 +02:00
|
|
|
## [Unreleased]
|
|
|
|
|
|
|
|
### Changed
|
|
|
|
|
|
|
|
* Migrate cookie handling to `cookie` crate.
|
2020-07-03 02:08:24 +02:00
|
|
|
* Update `sha-1` to 0.9
|
|
|
|
* MSRV is now 1.41.1
|
2020-06-19 15:34:14 +02:00
|
|
|
|
2020-05-21 08:22:07 +02:00
|
|
|
## [2.0.0-alpha.4] - 2020-05-21
|
2020-05-12 18:48:35 +02:00
|
|
|
|
2020-05-13 02:57:37 +02:00
|
|
|
### Changed
|
|
|
|
|
|
|
|
* Bump minimum supported Rust version to 1.40
|
2020-05-19 00:46:31 +02:00
|
|
|
* content_length function is removed, and you can set Content-Length by calling no_chunking function [#1439]
|
2020-05-18 01:42:51 +02:00
|
|
|
* `BodySize::Sized64` variant has been removed. `BodySize::Sized` now receives a
|
|
|
|
`u64` instead of a `usize`.
|
2020-05-21 02:51:32 +02:00
|
|
|
* Update `base64` dependency to 0.12
|
2020-05-18 01:42:51 +02:00
|
|
|
|
2020-05-12 18:48:35 +02:00
|
|
|
### Fixed
|
|
|
|
|
|
|
|
* Support parsing of `SameSite=None` [#1503]
|
|
|
|
|
2020-05-19 00:46:31 +02:00
|
|
|
[#1439]: https://github.com/actix/actix-web/pull/1439
|
|
|
|
[#1503]: https://github.com/actix/actix-web/pull/1503
|
|
|
|
|
2020-05-07 19:33:33 +02:00
|
|
|
## [2.0.0-alpha.3] - 2020-05-08
|
|
|
|
|
|
|
|
### Fixed
|
|
|
|
|
|
|
|
* Correct spelling of ConnectError::Unresolved [#1487]
|
|
|
|
* Fix a mistake in the encoding of websocket continuation messages wherein
|
|
|
|
Item::FirstText and Item::FirstBinary are each encoded as the other.
|
2020-03-18 02:51:06 +01:00
|
|
|
|
|
|
|
### Changed
|
|
|
|
|
|
|
|
* Implement `std::error::Error` for our custom errors [#1422]
|
2020-04-15 23:54:34 +02:00
|
|
|
* Remove `failure` support for `ResponseError` since that crate
|
|
|
|
will be deprecated in the near future.
|
2020-03-18 02:51:06 +01:00
|
|
|
|
|
|
|
[#1422]: https://github.com/actix/actix-web/pull/1422
|
2020-05-07 19:33:33 +02:00
|
|
|
[#1487]: https://github.com/actix/actix-web/pull/1487
|
2020-03-18 02:51:06 +01:00
|
|
|
|
2020-03-07 16:43:17 +01:00
|
|
|
## [2.0.0-alpha.2] - 2020-03-07
|
2020-03-04 07:20:14 +01:00
|
|
|
|
|
|
|
### Changed
|
|
|
|
|
2020-03-07 16:43:17 +01:00
|
|
|
* Update `actix-connect` and `actix-tls` dependency to 2.0.0-alpha.1. [#1395]
|
2020-03-04 07:20:14 +01:00
|
|
|
|
2020-03-07 16:43:17 +01:00
|
|
|
* 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]
|
2020-03-07 03:09:31 +01:00
|
|
|
|
2020-03-07 16:43:17 +01:00
|
|
|
* client::Connector accepts initial_window_size and initial_connection_window_size HTTP2 configuration. [#1394]
|
2020-03-07 03:09:31 +01:00
|
|
|
|
2020-03-07 16:43:17 +01:00
|
|
|
* 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
|
|
|
|
[#1395]: https://github.com/actix/actix-web/pull/1395
|
2020-03-04 07:20:14 +01:00
|
|
|
|
2020-02-27 03:20:41 +01:00
|
|
|
## [2.0.0-alpha.1] - 2020-02-27
|
2020-01-23 02:08:23 +01:00
|
|
|
|
Upgrade `time` to 0.2.5 (#1254)
* Use `OffsetDateTime` instead of `PrimitiveDateTime`
* Parse time strings with `PrimitiveDateTime::parse` instead of `OffsetDateTime::parse`
* Remove unused `time` dependency from actix-multipart
* Fix a few errors with time related tests from the `time` upgrade
* Implement logic to convert a RFC 850 two-digit year into a full length year, and organize time parsing related functions
* Upgrade `time` to 0.2.2
* Correctly parse C's asctime time format using time 0.2's new format patterns
* Update CHANGES.md
* Use `time` without any of its deprecated functions
* Enforce a UTC time offset when converting an `OffsetDateTime` into a Header value
* Use the more readable version of `Duration::seconds(0)`, `Duration::zero()`
* Remove unneeded conversion of time::Duration to std::time::Duration
* Use `OffsetDateTime::as_seconds_f64` instead of manually calculating the amount of seconds from nanoseconds
* Replace a few additional instances of `Duration::seconds(0)` with `Duration::zero()`
* Truncate any nanoseconds from a supplied `Duration` within `Cookie::set_max_age` to ensure two Cookies with the same amount whole seconds equate to one another
* Fix the actix-http::cookie::do_not_panic_on_large_max_ages test
* Convert `Cookie::max_age` and `Cookie::expires` examples to `time` 0.2
Mainly minor changes. Type inference can be used alongside the new
`time::parse` method, such that the type doesn't need to be specified.
This will be useful if a refactoring takes place that changes the type.
There are also new macros, which are used where possible.
One change that is not immediately obvious, in `HttpDate`, there was an
unnecessary conditional. As the time crate allows for negative durations
(and can perform arithmetic with such), the if/else can be removed
entirely.
Time v0.2.3 also has some bug fixes, which is why I am not using a more
general v0.2 in Cargo.toml.
v0.2.3 has been yanked, as it was backwards imcompatible. This version
reverts the breaking change, while still supporting rustc back to
1.34.0.
* Add missing `time::offset` macro import
* Fix type confusion when using `time::parse` followed by `using_offset`
* Update `time` to 0.2.5
* Update CHANGES.md
Co-authored-by: Jacob Pratt <the.z.cuber@gmail.com>
2020-01-28 12:44:22 +01:00
|
|
|
### Changed
|
|
|
|
|
2020-02-27 03:20:41 +01:00
|
|
|
* Update the `time` dependency to 0.2.7.
|
2020-02-27 01:34:49 +01:00
|
|
|
* Moved actors messages support from actix crate, enabled with feature `actors`.
|
2020-01-29 09:15:13 +01:00
|
|
|
* Breaking change: trait MessageBody requires Unpin and accepting Pin<&mut Self> instead of &mut self in the poll_next().
|
|
|
|
* MessageBody is not implemented for &'static [u8] anymore.
|
|
|
|
|
2020-01-23 02:08:23 +01:00
|
|
|
### Fixed
|
|
|
|
|
|
|
|
* Allow `SameSite=None` cookies to be sent in a response.
|
|
|
|
|
2019-12-20 08:50:07 +01:00
|
|
|
## [1.0.1] - 2019-12-20
|
2019-12-17 08:34:25 +01:00
|
|
|
|
|
|
|
### Fixed
|
|
|
|
|
|
|
|
* Poll upgrade service's readiness from HTTP service handlers
|
|
|
|
|
2019-12-20 08:50:07 +01:00
|
|
|
* Replace brotli with brotli2 #1224
|
|
|
|
|
2019-12-13 06:24:57 +01:00
|
|
|
## [1.0.0] - 2019-12-13
|
2019-12-12 09:06:54 +01:00
|
|
|
|
|
|
|
### Added
|
|
|
|
|
|
|
|
* Add websockets continuation frame support
|
|
|
|
|
2019-12-12 10:08:08 +01:00
|
|
|
### Changed
|
|
|
|
|
|
|
|
* Replace `flate2-xxx` features with `compress`
|
|
|
|
|
2019-12-09 16:44:26 +01:00
|
|
|
## [1.0.0-alpha.5] - 2019-12-09
|
2019-12-09 12:40:15 +01:00
|
|
|
|
|
|
|
### Fixed
|
|
|
|
|
|
|
|
* Check `Upgrade` service readiness before calling it
|
2019-12-09 02:01:22 +01:00
|
|
|
|
2019-12-09 16:44:26 +01:00
|
|
|
* Fix buffer remaining capacity calcualtion
|
|
|
|
|
2019-12-09 02:01:22 +01:00
|
|
|
### Changed
|
|
|
|
|
|
|
|
* Websockets: Ping and Pong should have binary data #1049
|
|
|
|
|
2019-12-08 15:15:51 +01:00
|
|
|
## [1.0.0-alpha.4] - 2019-12-08
|
|
|
|
|
2019-12-07 16:41:34 +01:00
|
|
|
### Added
|
|
|
|
|
|
|
|
* Add impl ResponseBuilder for Error
|
|
|
|
|
2019-12-07 17:01:55 +01:00
|
|
|
### Changed
|
|
|
|
|
|
|
|
* Use rust based brotli compression library
|
|
|
|
|
2019-12-07 08:00:03 +01:00
|
|
|
## [1.0.0-alpha.3] - 2019-12-07
|
|
|
|
|
|
|
|
### Changed
|
|
|
|
|
|
|
|
* Migrate to tokio 0.2
|
|
|
|
|
|
|
|
* Migrate to `std::future`
|
|
|
|
|
|
|
|
|
2019-11-06 19:35:13 +01:00
|
|
|
## [0.2.11] - 2019-11-06
|
2019-09-25 05:33:52 +02:00
|
|
|
|
|
|
|
### Added
|
|
|
|
|
|
|
|
* Add support for serde_json::Value to be passed as argument to ResponseBuilder.body()
|
|
|
|
|
2019-11-06 19:35:13 +01:00
|
|
|
* Add an additional `filename*` param in the `Content-Disposition` header of `actix_files::NamedFile` to be more compatible. (#1151)
|
|
|
|
|
|
|
|
* Allow to use `std::convert::Infallible` as `actix_http::error::Error`
|
|
|
|
|
2019-10-07 06:56:24 +02:00
|
|
|
### Fixed
|
|
|
|
|
|
|
|
* To be compatible with non-English error responses, `ResponseError` rendered with `text/plain; charset=utf-8` header #1118
|
|
|
|
|
2019-09-25 05:33:52 +02:00
|
|
|
|
2019-09-27 03:03:12 +02:00
|
|
|
## [0.2.10] - 2019-09-11
|
2019-09-10 06:29:32 +02:00
|
|
|
|
|
|
|
### Added
|
|
|
|
|
|
|
|
* Add support for sending HTTP requests with `Rc<RequestHead>` in addition to sending HTTP requests with `RequestHead`
|
|
|
|
|
2019-09-01 09:15:02 +02:00
|
|
|
### Fixed
|
|
|
|
|
2019-09-13 07:56:24 +02:00
|
|
|
* h2 will use error response #1080
|
|
|
|
|
2019-09-01 09:15:02 +02:00
|
|
|
* on_connect result isn't added to request extensions for http2 requests #1009
|
|
|
|
|
|
|
|
|
2019-08-13 15:20:29 +02:00
|
|
|
## [0.2.9] - 2019-08-13
|
2019-08-07 16:43:03 +02:00
|
|
|
|
|
|
|
### Changed
|
|
|
|
|
|
|
|
* Dropped the `byteorder`-dependency in favor of `stdlib`-implementation
|
|
|
|
|
2019-08-13 19:48:11 +02:00
|
|
|
* Update percent-encoding to 2.1
|
|
|
|
|
|
|
|
* Update serde_urlencoded to 0.6.1
|
|
|
|
|
2019-08-13 15:20:29 +02:00
|
|
|
### Fixed
|
|
|
|
|
|
|
|
* Fixed a panic in the HTTP2 handshake in client HTTP requests (#1031)
|
|
|
|
|
2019-08-07 16:43:03 +02:00
|
|
|
|
2019-08-02 00:26:30 +02:00
|
|
|
## [0.2.8] - 2019-08-01
|
2019-07-22 07:35:00 +02:00
|
|
|
|
2019-08-02 00:26:30 +02:00
|
|
|
### Added
|
2019-07-29 06:11:23 +02:00
|
|
|
|
2019-07-31 22:02:56 +02:00
|
|
|
* Add `rustls` support
|
2019-07-29 06:11:23 +02:00
|
|
|
|
2019-08-02 00:26:30 +02:00
|
|
|
* Add `Clone` impl for `HeaderMap`
|
|
|
|
|
2019-07-22 07:35:00 +02:00
|
|
|
### Fixed
|
|
|
|
|
2019-07-30 17:00:46 +02:00
|
|
|
* awc client panic #1016
|
|
|
|
|
2019-07-22 07:35:00 +02:00
|
|
|
* Invalid response with compression middleware enabled, but compression-related features disabled #997
|
|
|
|
|
2019-07-30 17:00:46 +02:00
|
|
|
|
2019-07-18 13:37:41 +02:00
|
|
|
## [0.2.7] - 2019-07-18
|
|
|
|
|
|
|
|
### Added
|
|
|
|
|
|
|
|
* Add support for downcasting response errors #986
|
|
|
|
|
|
|
|
|
2019-07-17 09:55:44 +02:00
|
|
|
## [0.2.6] - 2019-07-17
|
2019-07-01 05:37:03 +02:00
|
|
|
|
|
|
|
### Changed
|
|
|
|
|
2019-07-17 09:55:44 +02:00
|
|
|
* Replace `ClonableService` with local copy
|
|
|
|
|
2019-07-01 05:37:03 +02:00
|
|
|
* Upgrade `rand` dependency version to 0.7
|
|
|
|
|
2019-07-17 09:55:44 +02:00
|
|
|
|
2019-06-28 10:34:26 +02:00
|
|
|
## [0.2.5] - 2019-06-28
|
|
|
|
|
|
|
|
### Added
|
|
|
|
|
|
|
|
* Add `on-connect` callback, `HttpServiceBuilder::on_connect()` #946
|
2019-06-18 08:43:25 +02:00
|
|
|
|
|
|
|
### Changed
|
|
|
|
|
2019-06-28 08:34:43 +02:00
|
|
|
* Use `encoding_rs` crate instead of unmaintained `encoding` crate
|
|
|
|
|
|
|
|
* Add `Copy` and `Clone` impls for `ws::Codec`
|
|
|
|
|
2019-06-18 08:43:25 +02:00
|
|
|
|
2019-06-16 17:54:17 +02:00
|
|
|
## [0.2.4] - 2019-06-16
|
|
|
|
|
|
|
|
### Fixed
|
|
|
|
|
|
|
|
* Do not compress NoContent (204) responses #918
|
|
|
|
|
|
|
|
|
2019-06-02 09:05:22 +02:00
|
|
|
## [0.2.3] - 2019-06-02
|
|
|
|
|
2019-06-01 13:57:25 +02:00
|
|
|
### Added
|
|
|
|
|
|
|
|
* Debug impl for ResponseBuilder
|
|
|
|
|
|
|
|
* From SizedStream and BodyStream for Body
|
|
|
|
|
|
|
|
### Changed
|
|
|
|
|
2019-06-02 09:05:22 +02:00
|
|
|
* SizedStream uses u64
|
|
|
|
|
2019-06-01 13:57:25 +02:00
|
|
|
|
2019-05-30 01:15:12 +02:00
|
|
|
## [0.2.2] - 2019-05-29
|
|
|
|
|
|
|
|
### Fixed
|
|
|
|
|
|
|
|
* Parse incoming stream before closing stream on disconnect #868
|
|
|
|
|
|
|
|
|
2019-05-25 12:16:53 +02:00
|
|
|
## [0.2.1] - 2019-05-25
|
2019-05-25 12:07:40 +02:00
|
|
|
|
|
|
|
### Fixed
|
|
|
|
|
|
|
|
* Handle socket read disconnect
|
|
|
|
|
|
|
|
|
2019-05-12 18:57:16 +02:00
|
|
|
## [0.2.0] - 2019-05-12
|
2019-05-12 17:34:51 +02:00
|
|
|
|
|
|
|
### Changed
|
|
|
|
|
|
|
|
* Update actix-service to 0.4
|
|
|
|
|
|
|
|
* Expect and upgrade services accept `ServerConfig` config.
|
|
|
|
|
2019-05-12 18:56:55 +02:00
|
|
|
### Deleted
|
|
|
|
|
|
|
|
* `OneRequest` service
|
|
|
|
|
2019-05-12 17:34:51 +02:00
|
|
|
|
2019-05-05 04:51:00 +02:00
|
|
|
## [0.1.5] - 2019-05-04
|
2019-05-04 00:26:34 +02:00
|
|
|
|
|
|
|
### Fixed
|
|
|
|
|
|
|
|
* Clean up response extensions in response pool #817
|
|
|
|
|
|
|
|
|
2019-04-24 21:50:44 +02:00
|
|
|
## [0.1.4] - 2019-04-24
|
|
|
|
|
2019-04-24 20:27:57 +02:00
|
|
|
### Added
|
|
|
|
|
|
|
|
* Allow to render h1 request headers in `Camel-Case`
|
|
|
|
|
2019-04-24 20:57:40 +02:00
|
|
|
### Fixed
|
|
|
|
|
|
|
|
* Read until eof for http/1.0 responses #771
|
|
|
|
|
2019-04-24 20:27:57 +02:00
|
|
|
|
2019-04-23 23:57:03 +02:00
|
|
|
## [0.1.3] - 2019-04-23
|
|
|
|
|
|
|
|
### Fixed
|
|
|
|
|
|
|
|
* Fix http client pool management
|
|
|
|
|
|
|
|
* Fix http client wait queue management #794
|
|
|
|
|
|
|
|
|
2019-04-23 18:42:19 +02:00
|
|
|
## [0.1.2] - 2019-04-23
|
|
|
|
|
|
|
|
### Fixed
|
|
|
|
|
|
|
|
* Fix BorrowMutError panic in client connector #793
|
|
|
|
|
|
|
|
|
2019-04-20 02:23:17 +02:00
|
|
|
## [0.1.1] - 2019-04-19
|
|
|
|
|
2019-06-18 08:43:25 +02:00
|
|
|
### Changed
|
2019-04-20 02:23:17 +02:00
|
|
|
|
|
|
|
* Cookie::max_age() accepts value in seconds
|
|
|
|
|
|
|
|
* Cookie::max_age_time() accepts value in time::Duration
|
|
|
|
|
2019-04-20 03:03:44 +02:00
|
|
|
* Allow to specify server address for client connector
|
|
|
|
|
2019-04-20 02:23:17 +02:00
|
|
|
|
2019-04-16 18:54:02 +02:00
|
|
|
## [0.1.0] - 2019-04-16
|
|
|
|
|
|
|
|
### Added
|
|
|
|
|
|
|
|
* Expose peer addr via `Request::peer_addr()` and `RequestHead::peer_addr`
|
2019-04-15 05:45:44 +02:00
|
|
|
|
|
|
|
### Changed
|
|
|
|
|
2019-04-16 19:27:58 +02:00
|
|
|
* `actix_http::encoding` always available
|
|
|
|
|
2019-04-15 05:45:44 +02:00
|
|
|
* use trust-dns-resolver 0.11.0
|
|
|
|
|
|
|
|
|
2019-04-12 23:00:45 +02:00
|
|
|
## [0.1.0-alpha.5] - 2019-04-12
|
2019-04-09 02:49:27 +02:00
|
|
|
|
|
|
|
### Added
|
|
|
|
|
|
|
|
* Allow to use custom service for upgrade requests
|
|
|
|
|
2019-04-10 21:24:17 +02:00
|
|
|
* Added `h1::SendResponse` future.
|
|
|
|
|
|
|
|
### Changed
|
|
|
|
|
|
|
|
* MessageBody::length() renamed to MessageBody::size() for consistency
|
|
|
|
|
2019-04-11 23:00:32 +02:00
|
|
|
* ws handshake verification functions take RequestHead instead of Request
|
|
|
|
|
2019-04-09 02:49:27 +02:00
|
|
|
|
2019-04-08 08:42:05 +02:00
|
|
|
## [0.1.0-alpha.4] - 2019-04-08
|
2019-04-03 21:28:58 +02:00
|
|
|
|
2019-04-04 22:23:38 +02:00
|
|
|
### Added
|
|
|
|
|
2019-04-09 02:49:27 +02:00
|
|
|
* Allow to use custom `Expect` handler
|
|
|
|
|
2019-04-04 22:23:38 +02:00
|
|
|
* Add minimal `std::error::Error` impl for `Error`
|
|
|
|
|
2019-04-03 21:44:47 +02:00
|
|
|
### Changed
|
|
|
|
|
|
|
|
* Export IntoHeaderValue
|
|
|
|
|
2019-04-04 04:55:19 +02:00
|
|
|
* Render error and return as response body
|
|
|
|
|
2019-04-04 22:17:55 +02:00
|
|
|
* Use thread pool for response body comression
|
|
|
|
|
2019-04-03 12:20:20 +02:00
|
|
|
### Deleted
|
|
|
|
|
|
|
|
* Removed PayloadBuffer
|
|
|
|
|
2019-04-04 22:17:55 +02:00
|
|
|
|
2019-04-03 06:49:31 +02:00
|
|
|
## [0.1.0-alpha.3] - 2019-04-02
|
|
|
|
|
|
|
|
### Added
|
|
|
|
|
|
|
|
* Warn when an unsealed private cookie isn't valid UTF-8
|
2019-04-01 19:26:09 +02:00
|
|
|
|
|
|
|
### Fixed
|
|
|
|
|
|
|
|
* Rust 1.31.0 compatibility
|
|
|
|
|
2019-04-02 19:19:56 +02:00
|
|
|
* Preallocate read buffer for h1 codec
|
|
|
|
|
2019-04-03 05:50:25 +02:00
|
|
|
* Detect socket disconnection during protocol selection
|
|
|
|
|
2019-04-01 19:26:09 +02:00
|
|
|
|
2019-03-30 02:22:49 +01:00
|
|
|
## [0.1.0-alpha.2] - 2019-03-29
|
|
|
|
|
|
|
|
### Added
|
|
|
|
|
|
|
|
* Added ws::Message::Nop, no-op websockets message
|
2019-03-29 05:15:26 +01:00
|
|
|
|
|
|
|
### Changed
|
|
|
|
|
|
|
|
* Do not use thread pool for decomression if chunk size is smaller than 2048.
|
|
|
|
|
|
|
|
|
2019-03-28 20:45:41 +01:00
|
|
|
## [0.1.0-alpha.1] - 2019-03-28
|
2019-03-26 19:54:35 +01:00
|
|
|
|
|
|
|
* Initial impl
|