2018-12-10 07:14:29 +01:00
# Changes
2023-04-01 06:24:40 +02:00
## Unreleased - 2023-xx-xx
2022-12-21 21:37:51 +01:00
2023-07-17 05:10:36 +02:00
- Add support for MultiPath TCP (MPTCP) with `MpTcp` enum and `ServerBuilder::mptcp()` method.
2023-07-17 04:05:39 +02:00
- Minimum supported Rust version (MSRV) is now 1.65.
2023-04-01 22:39:19 +02:00
2022-12-21 21:37:51 +01:00
## 2.2.0 - 2022-12-21
2023-03-03 23:36:13 +01:00
2022-11-12 15:00:33 +01:00
- Minimum supported Rust version (MSRV) is now 1.59.
2022-12-21 21:37:51 +01:00
- Update `tokio-uring` dependency to `0.4` . [#473]
2022-12-21 03:45:31 +01:00
[#473]: https://github.com/actix/actix-net/pull/473
2022-03-09 00:42:52 +01:00
2022-03-09 02:08:35 +01:00
## 2.1.1 - 2022-03-09
2023-03-03 23:36:13 +01:00
- No significant changes since `2.1.0` .
2022-03-09 02:08:35 +01:00
2022-03-09 00:42:52 +01:00
## 2.1.0 - 2022-03-08
2023-03-03 23:36:13 +01:00
2022-12-21 21:37:51 +01:00
- Update `tokio-uring` dependency to `0.3` . [#448]
2022-03-09 00:42:52 +01:00
- Logs emitted now use the `tracing` crate with `log` compatibility. [#448]
2022-03-02 04:52:12 +01:00
- Wait for accept thread to stop before sending completion signal. [#443]
[#443]: https://github.com/actix/actix-net/pull/443
2022-03-09 00:42:52 +01:00
[#448]: https://github.com/actix/actix-net/pull/448
2022-01-12 15:38:32 +01:00
2022-01-19 15:57:50 +01:00
## 2.0.0 - 2022-01-19
2023-03-03 23:36:13 +01:00
- No significant changes since `2.0.0-rc.4` .
2022-01-19 15:57:50 +01:00
2022-01-12 15:38:32 +01:00
## 2.0.0-rc.4 - 2022-01-12
2023-03-03 23:36:13 +01:00
2022-12-21 21:37:51 +01:00
- Update `tokio-uring` dependency to `0.2` . [#436]
2022-01-12 00:36:49 +01:00
[#436]: https://github.com/actix/actix-net/pull/436
2021-12-27 19:33:57 +01:00
2021-12-31 09:09:28 +01:00
## 2.0.0-rc.3 - 2021-12-31
2023-03-03 23:36:13 +01:00
- No significant changes since `2.0.0-rc.2` .
2021-12-31 09:09:28 +01:00
2021-12-27 19:33:57 +01:00
## 2.0.0-rc.2 - 2021-12-27
2023-03-03 23:36:13 +01:00
2021-12-27 19:27:54 +01:00
- Simplify `TestServer` . [#431]
[#431]: https://github.com/actix/actix-net/pull/431
2021-12-05 20:34:36 +01:00
## 2.0.0-rc.1 - 2021-12-05
2023-03-03 23:36:13 +01:00
2021-12-18 03:49:23 +01:00
- Hide implementation details of `Server` . [#424]
- `Server` now runs only after awaiting it. [#425]
2021-12-05 17:44:06 +01:00
[#424]: https://github.com/actix/actix-net/pull/424
2021-12-05 20:22:47 +01:00
[#425]: https://github.com/actix/actix-net/pull/425
2021-11-05 03:18:20 +01:00
2021-11-15 03:39:55 +01:00
## 2.0.0-beta.9 - 2021-11-15
2023-03-03 23:36:13 +01:00
2021-12-18 03:49:23 +01:00
- Restore `Arbiter` support lost in `beta.8` . [#417]
2021-11-15 03:39:55 +01:00
[#417]: https://github.com/actix/actix-net/pull/417
## 2.0.0-beta.8 - 2021-11-05 _(YANKED)_
2023-03-03 23:36:13 +01:00
2021-12-18 03:49:23 +01:00
- Fix non-unix signal handler. [#410]
2021-11-05 03:16:13 +01:00
[#410]: https://github.com/actix/actix-net/pull/410
2021-11-05 02:14:28 +01:00
2021-11-15 03:39:55 +01:00
## 2.0.0-beta.7 - 2021-11-05 _(YANKED)_
2023-03-03 23:36:13 +01:00
2021-12-18 03:49:23 +01:00
- Server can be started in regular Tokio runtime. [#408]
- Expose new `Server` type whose `Future` impl resolves when server stops. [#408]
- Rename `Server` to `ServerHandle` . [#407]
- Add `Server::handle` to obtain handle to server. [#408]
- Rename `ServerBuilder::{maxconn => max_concurrent_connections}` . [#407]
- Deprecate crate-level `new` shortcut for server builder. [#408]
- Minimum supported Rust version (MSRV) is now 1.52.
2021-10-11 06:14:34 +02:00
2021-11-02 00:36:51 +01:00
[#407]: https://github.com/actix/actix-net/pull/407
2021-11-04 21:30:43 +01:00
[#408]: https://github.com/actix/actix-net/pull/408
2021-11-02 00:36:51 +01:00
2021-10-11 06:14:34 +02:00
## 2.0.0-beta.6 - 2021-10-11
2023-03-03 23:36:13 +01:00
2021-12-18 03:49:23 +01:00
- Add experimental (semver-exempt) `io-uring` feature for enabling async file I/O on linux. [#374]
2023-03-03 23:36:13 +01:00
- Server no long listens to `SIGHUP` signal. Previously, the received was not used but did block subsequent exit signals from working. [#389]
- Remove `config` module. `ServiceConfig` , `ServiceRuntime` public types are removed due to this change. [#349]
2021-12-18 03:49:23 +01:00
- Remove `ServerBuilder::configure` [#349]
2021-04-28 00:58:02 +02:00
2021-10-11 03:58:11 +02:00
[#374]: https://github.com/actix/actix-net/pull/374
2021-04-28 00:58:02 +02:00
[#349]: https://github.com/actix/actix-net/pull/349
2021-10-04 03:48:10 +02:00
[#389]: https://github.com/actix/actix-net/pull/389
2021-04-20 06:16:32 +02:00
## 2.0.0-beta.5 - 2021-04-20
2021-10-11 06:14:34 +02:00
2023-03-03 23:36:13 +01:00
- Server shutdown notifies all workers to exit regardless if shutdown is graceful. This causes all workers to shutdown immediately in force shutdown case. [#333]
2021-04-01 10:36:07 +02:00
2023-03-03 23:36:13 +01:00
[#333]: https://github.com/actix/actix-net/pull/333
2021-04-01 10:36:07 +02:00
## 2.0.0-beta.4 - 2021-04-01
2023-03-03 23:36:13 +01:00
2021-12-18 03:49:23 +01:00
- Prevent panic when `shutdown_timeout` is very large. [f9262db]
2021-03-27 01:20:17 +01:00
[f9262db]: https://github.com/actix/actix-net/commit/f9262db
2021-02-06 20:24:52 +01:00
## 2.0.0-beta.3 - 2021-02-06
2023-03-03 23:36:13 +01:00
2021-12-18 03:49:23 +01:00
- Hidden `ServerBuilder::start` method has been removed. Use `ServerBuilder::run` . [#246]
- Add retry for EINTR signal (`io::Interrupted`) in `Accept` 's poll loop. [#264]
- Add `ServerBuilder::worker_max_blocking_threads` to customize blocking thread pool size. [#265]
- Update `actix-rt` to `2.0.0` . [#273]
2021-01-09 15:13:16 +01:00
[#246]: https://github.com/actix/actix-net/pull/246
2021-02-04 11:20:37 +01:00
[#264]: https://github.com/actix/actix-net/pull/264
2021-02-04 16:01:51 +01:00
[#265]: https://github.com/actix/actix-net/pull/265
2021-02-06 20:24:52 +01:00
[#273]: https://github.com/actix/actix-net/pull/273
2021-01-03 05:39:37 +01:00
## 2.0.0-beta.2 - 2021-01-03
2023-03-03 23:36:13 +01:00
2021-12-18 03:49:23 +01:00
- Merge `actix-testing` to `actix-server` as `test_server` mod. [#242]
2021-01-03 05:39:37 +01:00
[#242]: https://github.com/actix/actix-net/pull/242
2020-12-29 00:50:00 +01:00
## 2.0.0-beta.1 - 2020-12-28
2023-03-03 23:36:13 +01:00
2021-12-18 03:49:23 +01:00
- Added explicit info log message on accept queue pause. [#215]
- Prevent double registration of sockets when back-pressure is resolved. [#223]
- Update `mio` dependency to `0.7.3` . [#239]
- Remove `socket2` dependency. [#239]
- `ServerBuilder::backlog` now accepts `u32` instead of `i32` . [#239]
- Remove `AcceptNotify` type and pass `WakerQueue` to `Worker` to wake up `Accept` 's `Poll` . [#239]
2023-03-03 23:36:13 +01:00
- Convert `mio::net::TcpStream` to `actix_rt::net::TcpStream` (`UnixStream` for uds) using `FromRawFd` and `IntoRawFd` (`FromRawSocket` and `IntoRawSocket` on windows). [#239]
2021-12-18 03:49:23 +01:00
- Remove `AsyncRead` and `AsyncWrite` trait bound for `socket::FromStream` trait. [#239]
2020-12-12 18:19:20 +01:00
[#215]: https://github.com/actix/actix-net/pull/215
[#223]: https://github.com/actix/actix-net/pull/223
2020-12-29 00:50:00 +01:00
[#239]: https://github.com/actix/actix-net/pull/239
2020-08-18 17:44:22 +02:00
2020-09-12 16:28:17 +02:00
## 1.0.4 - 2020-09-12
2023-03-03 23:36:13 +01:00
2021-12-18 03:49:23 +01:00
- Update actix-codec to 0.3.0.
- Workers must be greater than 0. [#167]
2020-08-18 17:44:22 +02:00
2020-09-12 16:28:17 +02:00
[#167]: https://github.com/actix/actix-net/pull/167
2020-05-19 01:17:44 +02:00
2020-09-12 16:28:17 +02:00
## 1.0.3 - 2020-05-19
2023-03-03 23:36:13 +01:00
2021-12-18 03:49:23 +01:00
- Replace deprecated `net2` crate with `socket2` [#140]
2020-05-19 03:20:32 +02:00
[#140]: https://github.com/actix/actix-net/pull/140
2020-05-19 01:17:44 +02:00
2020-09-12 16:28:17 +02:00
## 1.0.2 - 2020-02-26
2023-03-03 23:36:13 +01:00
2021-12-18 03:49:23 +01:00
- Avoid error by calling `reregister()` on Windows [#103]
2020-02-26 11:48:41 +01:00
[#103]: https://github.com/actix/actix-net/pull/103
2020-09-12 16:28:17 +02:00
## 1.0.1 - 2019-12-29
2019-12-29 05:07:46 +01:00
2023-03-03 23:36:13 +01:00
- Rename `.start()` method to `.run()`
2019-12-11 09:43:26 +01:00
2020-09-12 16:28:17 +02:00
## 1.0.0 - 2019-12-11
2019-12-11 09:43:26 +01:00
2023-03-03 23:36:13 +01:00
- Use actix-net releases
2019-12-11 09:43:26 +01:00
2020-09-12 16:28:17 +02:00
## 1.0.0-alpha.4 - 2019-12-08
2019-12-08 14:49:35 +01:00
2023-03-03 23:36:13 +01:00
- Use actix-service 1.0.0-alpha.4
2019-12-05 11:40:24 +01:00
2020-09-12 16:28:17 +02:00
## 1.0.0-alpha.3 - 2019-12-07
2023-03-03 23:36:13 +01:00
2021-12-18 03:49:23 +01:00
- Migrate to tokio 0.2
- Fix compilation on non-unix platforms
- Better handling server configuration
2019-12-04 16:34:48 +01:00
2020-09-12 16:28:17 +02:00
## 1.0.0-alpha.2 - 2019-12-02
2023-03-03 23:36:13 +01:00
2021-12-18 03:49:23 +01:00
- Simplify server service (remove actix-server-config)
- Allow to wait on `Server` until server stops
2019-11-26 12:03:52 +01:00
2020-09-12 16:28:17 +02:00
## 0.8.0-alpha.1 - 2019-11-22
2019-11-26 12:03:52 +01:00
2023-03-03 23:36:13 +01:00
- Migrate to `std::future`
2019-11-26 12:03:52 +01:00
2020-09-12 16:28:17 +02:00
## 0.7.0 - 2019-10-04
2023-03-03 23:36:13 +01:00
2021-12-18 03:49:23 +01:00
- Update `rustls` to 0.16
- Minimum required Rust version upped to 1.37.0
2019-10-03 20:32:32 +02:00
2020-09-12 16:28:17 +02:00
## 0.6.1 - 2019-09-25
2019-09-25 06:35:15 +02:00
2023-03-03 23:36:13 +01:00
- Add UDS listening support to `ServerBuilder`
2019-09-25 06:35:15 +02:00
2020-09-12 16:28:17 +02:00
## 0.6.0 - 2019-07-18
2019-07-18 13:05:40 +02:00
2023-03-03 23:36:13 +01:00
- Support Unix domain sockets #3
2019-07-18 13:05:40 +02:00
2020-09-12 16:28:17 +02:00
## 0.5.1 - 2019-05-18
2019-05-18 19:56:41 +02:00
2023-03-03 23:36:13 +01:00
- ServerBuilder::shutdown_timeout() accepts u64
2019-05-18 19:56:41 +02:00
2020-09-12 16:28:17 +02:00
## 0.5.0 - 2019-05-12
2023-03-03 23:36:13 +01:00
2021-12-18 03:49:23 +01:00
- Add `Debug` impl for `SslError`
- Derive debug for `Server` and `ServerCommand`
- Upgrade to actix-service 0.4
2019-05-12 15:03:50 +02:00
2020-09-12 16:28:17 +02:00
## 0.4.3 - 2019-04-16
2023-03-03 23:36:13 +01:00
2021-12-18 03:49:23 +01:00
- Re-export `IoStream` trait
- Depend on `ssl` and `rust-tls` features from actix-server-config
2019-04-16 17:32:12 +02:00
2020-09-12 16:28:17 +02:00
## 0.4.2 - 2019-03-30
2019-03-30 20:09:02 +01:00
2023-03-03 23:36:13 +01:00
- Fix SIGINT force shutdown
2019-03-30 20:09:02 +01:00
2020-09-12 16:28:17 +02:00
## 0.4.1 - 2019-03-14
2019-03-15 04:09:34 +01:00
2023-03-03 23:36:13 +01:00
- `SystemRuntime::on_start()` - allow to run future before server service initialization
2019-03-15 04:09:34 +01:00
2020-09-12 16:28:17 +02:00
## 0.4.0 - 2019-03-12
2023-03-03 23:36:13 +01:00
2021-12-18 03:49:23 +01:00
- Use `ServerConfig` for service factory
- Wrap tcp socket to `Io` type
- Upgrade actix-service
2019-03-05 16:35:26 +01:00
2020-09-12 16:28:17 +02:00
## 0.3.1 - 2019-03-04
2023-03-03 23:36:13 +01:00
2021-12-18 03:49:23 +01:00
- Add `ServerBuilder::maxconnrate` sets the maximum per-worker number of concurrent connections
- Add helper ssl error `SslError`
- Rename `StreamServiceFactory` to `ServiceFactory`
- Deprecate `StreamServiceFactory`
2019-03-04 23:31:46 +01:00
2020-09-12 16:28:17 +02:00
## 0.3.0 - 2019-03-02
2019-03-02 23:42:31 +01:00
2023-03-03 23:36:13 +01:00
- Use new `NewService` trait
2019-03-02 23:42:31 +01:00
2020-09-12 16:28:17 +02:00
## 0.2.1 - 2019-02-09
2019-02-10 06:39:17 +01:00
2023-03-03 23:36:13 +01:00
- Drop service response
2019-02-10 06:39:17 +01:00
2020-09-12 16:28:17 +02:00
## 0.2.0 - 2019-02-01
2023-03-03 23:36:13 +01:00
2021-12-18 03:49:23 +01:00
- Migrate to actix-service 0.2
- Updated rustls dependency
2019-01-26 22:15:17 +01:00
2020-09-12 16:28:17 +02:00
## 0.1.3 - 2018-12-21
2018-12-21 19:38:08 +01:00
2023-03-03 23:36:13 +01:00
- Fix max concurrent connections handling
2018-12-21 19:38:08 +01:00
2020-09-12 16:28:17 +02:00
## 0.1.2 - 2018-12-12
2023-03-03 23:36:13 +01:00
2021-12-18 03:49:23 +01:00
- rename ServiceConfig::rt() to ServiceConfig::apply()
- Fix back-pressure for concurrent ssl handshakes
2018-12-12 23:24:46 +01:00
2020-09-12 16:28:17 +02:00
## 0.1.1 - 2018-12-11
2018-12-11 23:03:06 +01:00
2023-03-03 23:36:13 +01:00
- Fix signal handling on windows
2018-12-11 23:03:06 +01:00
2020-09-12 16:28:17 +02:00
## 0.1.0 - 2018-12-09
2023-03-03 23:36:13 +01:00
2021-12-18 03:49:23 +01:00
- Move server to separate crate