NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
crates.io · #997 most downloaded on crates.io
General purpose TCP server built for the Actix ecosystem
Last release 5 days ago
02 Oct 2026
Release timing varies
gaps range from 2 weeks to 1.2 years
Nearly every release is documented
notes for 40 of 40 stable releases
2 versions withdrawn
withdrawn after publishing
8 years old
57 releases · first in 2018
Start workers in parallel, so a server with several workers accepts connections sooner.
Fix busy listeners starving other listeners when worker connection capacity becomes available by rotating the first listener checked.
One column per quarter.
Add TestServer::unused_listener() to return a TCP listener and its local address while keeping the port reserved.
TestServer::unused_listener() to return a TCP listener and its local address while keeping the port reserved.Cap the default worker count at 512 and reject explicit counts above 512 in ServerBuilder::workers() before starting workers.
ServerBuilder::workers() before starting workers.Fix workers failing to accept new connections after reaching the configured connection limit, even after existing connections finish.
Close listeners and request forced worker shutdown when a running server is dropped, including during graceful shutdown.
Fix race condition where accept thread shutdown cause cause workers to be dropped prematurely.
Use Tokio LocalRuntime s for workers instead of LocalSet s.
LocalRuntimes for workers instead of LocalSets.Remove experimental io-uring support.
io-uring support.Add ServerBuilder::graceful_shutdown_signal() to propagate graceful shutdown to services.
ServerBuilder::graceful_shutdown_signal() to propagate graceful shutdown to services.Add ServerBuilder::shutdown_signal() method.
ServerBuilder::shutdown_signal() method.Minimum supported Rust version (MSRV) is now 1.71.
- Update mio dependency to 1.
mio dependency to 1.Update tokio-uring dependency to 0.5.
tokio-uring dependency to 0.5.Add support for MultiPath TCP (MPTCP) with MpTcp enum and ServerBuilder::mptcp() method.
MpTcp enum and ServerBuilder::mptcp() method.Minimum supported Rust version (MSRV) is now 1.59.
tokio-uring dependency to 0.4.No significant changes since 2.1.0.
2.1.0.Update tokio-uring dependency to 0.3.
tokio-uring dependency to 0.3.tracing crate with log compatibility.No significant changes since 2.0.0-rc.4.
2.0.0-rc.4.Update tokio-uring dependency to 0.2.
tokio-uring dependency to 0.2.No significant changes since 2.0.0-rc.2.
2.0.0-rc.2.- Simplify TestServer.
TestServer.Hide implementation details of Server.
Server.Server now runs only after awaiting it.Restore Arbiter support lost in beta.8.
Arbiter support lost in beta.8.- Fix non-unix signal handler.
Deprecate crate-level new shortcut for server builder.
Server type whose Future impl resolves when server stops.Server to ServerHandle.Server::handle to obtain handle to server.ServerBuilder::{maxconn => max_concurrent_connections}.new shortcut for server builder.Add experimental (semver-exempt) io-uring feature for enabling async file I/O on linux.
io-uring feature for enabling async file I/O on linux.SIGHUP signal. Previously, the received was not used but did block subsequent exit signals from working.config module. ServiceConfig, ServiceRuntime public types are removed due to this change.ServerBuilder::configure.Server shutdown notifies all workers to exit regardless if shutdown is graceful. This causes all workers to shutdown immediately in force shutdown cas
Prevent panic when shutdown_timeout is very large. [f9262db]
shutdown_timeout is very large. [f9262db]Hidden ServerBuilder::start method has been removed. Use ServerBuilder::run.
ServerBuilder::start method has been removed. Use ServerBuilder::run.io::Interrupted) in Accept's poll loop.ServerBuilder::worker_max_blocking_threads to customize blocking thread pool size.actix-rt to 2.0.0.Merge actix-testing to actix-server as test_server mod.
actix-testing to actix-server as test_server mod.Added explicit info log message on accept queue pause.
mio dependency to 0.7.3.socket2 dependency.ServerBuilder::backlog now accepts u32 instead of i32.AcceptNotify type and pass WakerQueue to Worker to wake up Accept's Poll.mio::net::TcpStream to actix_rt::net::TcpStream(UnixStream for uds) using FromRawFd and IntoRawFd(FromRawSocket and IntoRawSocket on windows).AsyncRead and AsyncWrite trait bound for socket::FromStream trait.Workers must be greater than 0.
Replace deprecated net2 crate with socket2.
net2 crate with socket2.Avoid error by calling reregister() on Windows.
reregister() on Windows.Rename .start() method to .run()
.start() method to .run()- Use actix-net releases
Use actix-service 1.0.0-alpha.4
Fix compilation on non-unix platforms
Simplify server service (remove actix-server-config)
Server until server stops- Migrate to std::future
std::futureMinimum required Rust version upped to 1.37.0
rustls to 0.16Add UDS listening support to ServerBuilder
ServerBuilder- Support Unix domain sockets #3
ServerBuilder::shutdown_timeout() accepts u64
Derive debug for Server and ServerCommand
Debug impl for SslErrorServer and ServerCommandDepend on ssl and rust-tls features from actix-server-config
IoStream traitssl and rust-tls features from actix-server-config- Fix SIGINT force shutdown
SystemRuntime::on_start() - allow to run future before server service initialization
SystemRuntime::on_start() - allow to run future before server service initializationUse ServerConfig for service factory
ServerConfig for service factoryIo type- Use new NewService trait
NewService trait- Drop service response
- Migrate to actix-service 0.2 - Updated rustls dependency
Fix max concurrent connections handling
rename ServiceConfig::rt() to ServiceConfig::apply()
- Fix signal handling on windows
- Move server to separate crate
Your coding agent can read these notes before it upgrades. Set up the MCP server →