PackageTrack
Sign in Get early access

axum-server

High level server designed to be used with axum framework.

0.8.0 33M downloads/mo #1586 most downloaded on crates.io programatik29/axum-server

What this package is like to depend on

Last release 8 months ago

06 Dec 2025

Release timing varies

gaps range from 2 weeks to 8 months

Most releases are documented

notes for 23 of 28 stable releases

3 versions withdrawn

withdrawn after publishing

5 years old

31 releases · first in 2021

2 releases in the last 12 months

see the full history below

Release timeline

31 releases · Aug 2021 to Dec 2025
2022 2023 2024 2025 2026
Release Pre-release Withdrawn

Releases

latest 31
  1. 0.8.0 06 Dec 2025
    Release notes
    • changed: Server is now generic over connections, allowing axum-server to listen not just on TCP.
    • added: Support for Unix sockets has been implemented and an example for Unix sockets has been provided.
    • changed: rustls-pemfile was replaced with rustls-pki-types as it is now unmaintained.
    Open source →
    Release notes
    • changed: Server is now generic over connections, allowing axum-server to listen not just on TCP.
    • added: Support for Unix sockets has been implemented and an example for Unix sockets has been provided.
    • changed: rustls-pemfile was replaced with rustls-pki-types as it is now unmaintained.
    Open source →
    Release notes
    • changed: Server is now generic over connections, allowing axum-server to listen not just on TCP. Support for Unix sockets has been implemented and an example for Unix sockets has been provided.
    • changed: Changed rustls-pemfile with rustls-pki-types as it is now unmaintained.
    Open source →
  2. 0.7.3 14 Nov 2025
    Release notes
    • fixed: axum-server not compiling in hyper 1.8.0.
    Open source →
    Release notes
    • fixed: axum-server not compiling in hyper 1.8.0.
    Open source →
  3. 0.7.2 14 Mar 2025
    Release notes
    • changed: Use fs-err to augment errors loading pem files.
    • changed: Updated tower from 0.4 to 0.5.
    • added: Support reading PKCS#1 and SEC1 private keys with Rustls.
    Open source →
    Release notes
    • changed: Use fs-err to augment errors loading pem files.
    • changed: Updated tower from 0.4 to 0.5.
    • added: Support reading PKCS#1 and SEC1 private keys with Rustls.
    Open source →
  4. 0.7.1 31 Jul 2024
    Release notes
    • added: Crate feature tls-rustls-no-provider, which enables no rustls::crypto::CryptoProvider.
    • fixed: Correct minimum required hyper-util to 0.1.2.
    Open source →
    Release notes
    • added: Crate feature tls-rustls-no-provider, which enables no rustls::crypto::CryptoProvider.
    • fixed: Correct minimum required hyper-util to 0.1.2.
    Open source →
  5. 0.7.0 30 Jul 2024
    Release notes
    • fixed: Graceful shutdown now stops accepting requests from existing connections.
    • changed: Updated rustls from 0.21 to 0.23.
    • changed: Updated tokio-rustls from 0.24 to 0.26.
    • changed: Updated hyper from 1.0.1 to 1.4.
    • changed: Updated http from 1.0.0 to 1.1.
    • added: rustls-pki-types dependency for the tls-rustls feature.
    • changed: Replaced usage of rustls::Certificate and rustls::PrivateKey with rustls_pki_types::CertificateDer and rustls_pki_types::PrivateKeyDer.
    • changed: Updated ServerConfig initialization to remove with_safe_defaults() call.
    • changed: Updated ClientConfig initialization in tests to use dangerous() instead of with_safe_defaults().
    • changed: Updated ServerCertVerifier implementation in tests to match new rustls API.
    • changed: Minor version bumps for various dependencies including rustls-pemfile, serial_test, and tower-http.
    Open source →
    Release notes
    • fixed: Graceful shutdown now stops accepting requests from existing connections.
    • changed: Updated rustls from 0.21 to 0.23.
    • changed: Updated tokio-rustls from 0.24 to 0.26.
    • changed: Updated hyper from 1.0.1 to 1.4.
    • changed: Updated http from 1.0.0 to 1.1.
    • added: rustls-pki-types dependency for the tls-rustls feature.
    • changed: Replaced usage of rustls::Certificate and rustls::PrivateKey with rustls_pki_types::CertificateDer and rustls_pki_types::PrivateKeyDer.
    • changed: Updated ServerConfig initialization to remove with_safe_defaults() call.
    • changed: Updated ClientConfig initialization in tests to use dangerous() instead of with_safe_defaults().
    • changed: Updated ServerCertVerifier implementation in tests to match new rustls API.
    • changed: Minor version bumps for various dependencies including rustls-pemfile, serial_test, and tower-http.
    Open source →
  6. 0.6.0 22 Dec 2023
    Release notes
    • added: functionalities in tls_openssl, that were added as they appeared to be only in tls_rustls:
      • axum_server::tls_openssl::OpenSSLConfig::from_acceptor
      • axum_server::tls_openssl::OpenSSLConfig::from_der
      • axum_server::tls_openssl::OpenSSLConfig::from_pem
      • axum_server::tls_openssl::OpenSSLConfig::get_inner
      • axum_server::tls_openssl::OpenSSLConfig::reload_from_der
      • axum_server::tls_openssl::OpenSSLConfig::reload_from_pem
      • axum_server::tls_openssl::OpenSSLConfig::reload_from_pem_file
      • axum_server::tls_openssl::OpenSSLConfig::reload_from_pem_chain_file
    • added: from_pem_chain_file method for RustlsConfig.
    • breaking: Removed HttpConfig and AddrIncomingConfig.
    • breaking: Updated axum from 0.6 to 0.7.
    • breaking: Updated hyper to 1.0.1.
    Open source →
    Release notes
    • added: functionalities in tls_openssl, that were added as they appeared to be only in tls_rustls:
      • axum_server::tls_openssl::OpenSSLConfig::from_acceptor
      • axum_server::tls_openssl::OpenSSLConfig::from_der
      • axum_server::tls_openssl::OpenSSLConfig::from_pem
      • axum_server::tls_openssl::OpenSSLConfig::get_inner
      • axum_server::tls_openssl::OpenSSLConfig::reload_from_der
      • axum_server::tls_openssl::OpenSSLConfig::reload_from_pem
      • axum_server::tls_openssl::OpenSSLConfig::reload_from_pem_file
      • axum_server::tls_openssl::OpenSSLConfig::reload_from_pem_chain_file
    • added: from_pem_chain_file method for RustlsConfig.
    • breaking: Removed HttpConfig and AddrIncomingConfig.
    • breaking: Updated axum from 0.6 to 0.7.
    • breaking: Updated hyper to 1.0.1.
    Open source →
  7. 0.5.1 15 May 2023
    Release notes
    • added: http2_enable_connect_protocol, http2_max_header_list_size,
      http2_max_pending_accept_reset_streams and http2_max_send_buf_size
      methods to HttpConfig.
    Open source →
    Release notes
    • added: http2_enable_connect_protocol, http2_max_header_list_size, http2_max_pending_accept_reset_streams and http2_max_send_buf_size methods to HttpConfig.
    Open source →
  8. 0.5.0 04 May 2023
    Release notes
    • breaking: Updated rustls from 0.20 to 0.21 which affects
      ServerConfig type.
    • breaking: Updated tokio-rustls from 0.23 to 0.24 which affects
      TlsStream type.
    Open source →
    Release notes
    • breaking: Updated rustls from 0.20 to 0.21 which affects ServerConfig type.
    • breaking: Updated tokio-rustls from 0.23 to 0.24 which affects TlsStream type.
    Open source →
  9. 0.4.7 19 Mar 2023
    Release notes
    • added: Openssl is now supported.
    Open source →
    Release notes
    • added: Openssl is now supported.
    Open source →
  10. 0.4.6 21 Feb 2023

    Nothing published for this version

  11. 0.4.5 18 Feb 2023
    Release notes
    • changed: Handle::graceful_shutdown now informs connections about the graceful shutdown.
    Open source →
  12. 0.4.4 07 Nov 2022

    Nothing published for this version

  13. 0.4.3 03 Nov 2022
    Release notes
    • added: Added tcp_keepalive_interval and tcp_keepalive_retries to AddrIncomingConfig.
    Open source →
  14. 0.4.2 05 Aug 2022
    Release notes
    • added: Added Server::from_tcp, axum_server::from_tcp and axum_server::from_tcp_rustls methods to create Server from std::net::TcpListener.
    Open source →
  15. 0.4.1 29 Jul 2022
    Release notes
    • added: Added map, get and get_mut methods to access the acceptor of Server.
    Open source →
  16. 0.4.0 18 Apr 2022
    Release notes
    • Added TLS handshake timeout(10 seconds).
    • In RustlsConfig: from_pem and from_pem_file methods now accept EC keys.
    • added: Added AddrIncomingConfig to allow configuration of hyper::server::conn::AddrIncoming.
    • added: Added HttpConfig::http1_header_read_timeout.
    • breaking: Changed Handle::listening return type to Option<SocketAddr>. If binding fails, Option::None will be returned.
    Open source →
  17. 0.3.3 25 Nov 2021

    Nothing published for this version

  18. 0.3.2 17 Nov 2021
    Release notes
    • added: Added HttpConfig to allow more configuration.
    Open source →
  19. 0.3.1 10 Nov 2021
    Release notes
    • fixed: tls-rustls feature doesn't compile if fs feature in tokio is not enabled.
    Open source →
  20. 0.3.0 10 Nov 2021 withdrawn
    Release notes
    • Total rewrite of source code.
    • Major api changes:
      • breaking: Removed bind_rustls, certificate, certificate_file, loader, new, private_key, private_key_file, serve_and_record, tls_config methods from Server.
      • breaking: Removed tls module.
      • breaking: Removed record module and feature.
      • breaking: Removed Handle::listening_addrs method.
      • breaking: Server::bind method doesn't take self anymore and creates an Server.
      • breaking: bind method now takes a SocketAddr.
      • breaking: bind_rustls method now takes a SocketAddr and an tls_rustls::RustlsConfig.
      • breaking: Server::serve method now takes a MakeService.
      • breaking: Handle::listening method now returns SocketAddr.
      • added: Added Handle::connection_count that can be used to get alive connection count.
      • added: Added service module.
      • added: Added service::MakeServiceRef and service::SendService traits aliases for convenience.
      • added: Added accept module.
      • added: Added accept::Accept trait that can be implemented to modify io stream and service.
      • added: Added accept::DefaultAcceptor struct that implements accept::Accept to be used as a default 'Accept' for 'Server'.
      • added: Added Server::acceptor method that can be used to provide a custom accept::Accept.
      • added: Added tls_rustls module.
      • added: Added tls_rustls::RustlsAcceptor that can be used with Server::acceptor to make a tls Server.
      • added: Added tls_rustls::RustlsConfig to create rustls utilities and to provide reload functionality.
      • added: Added tls_rustls::bind_rustls which is same as bind_rustls function.
    Open source →
  21. 0.2.6 03 Nov 2021

    Nothing published for this version

  22. 0.2.5 05 Oct 2021
    Release notes
    • Compile on rust 1.51.
    Open source →
  23. 0.2.4 17 Sep 2021
    Release notes
    • Reduced futures-util features to improve compile times.
    Open source →
  24. 0.2.3 13 Sep 2021
    Release notes
    • Fixed bind and bind_rustls not working on some types.
    Open source →
  25. 0.2.2 06 Sep 2021
    Release notes
    • Added uri Scheme in Request extensions.
    • Fixed memory leak that happens as connections are accepted.
    Open source →
  26. 0.2.1 30 Aug 2021
    Release notes
    • Fixed serve_and_record not recording independently for each connection.
    Open source →
  27. 0.2.0 29 Aug 2021
    Release notes
    • Added TlsLoader to reload tls configuration.
    • Added Handle to provide additional utilities for server.
    Open source →
  28. 0.1.2 24 Aug 2021
    Release notes
    • Fixed an import issue when using tls-rustls feature.
    Open source →
  29. 0.1.1 23 Aug 2021 withdrawn

    Nothing published for this version

  30. 0.1.0 23 Aug 2021 withdrawn
    Release notes
    • Initial release.
    Open source →
  31. 0.0.0 20 Aug 2021

    Nothing published for this version

Every package, every release, already written down.

The archive is open and free. Watching your own project is what we are building next.

Browse the archive