NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
crates.io · #4497 most downloaded on crates.io
Poem is a full-featured and easy-to-use web framework with the Rust programming language.
Last release 1 years ago
28 Jul 2025
Ships fairly regularly
a new release about every 4 weeks
Most releases are documented
notes for 51 of the last 60 stable releases
7 versions withdrawn
withdrawn after publishing
6 years old
236 releases · first in 2020
One column per quarter.
Add the ability for parameters to come from urlencoded forms. #245
Nothing published for this version
Add server feature. (enable by default)
server feature. (enable by default)Error::as_response to Error::into_response.Add Cache-Control: no-cache header to SSE response.
Cache-Control: no-cache header to SSE response.TokioMetrics middleware. #206Check the Content-type when use Json extractor. #236
Content-type when use Json extractor. #236EndpointExt::data_opt method.Nothing published for this version
Make all test cases use poem::test.
poem::test.Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Fix Poem with Tonic doesn't return GRPC status header when rpc handler returns an error. #212
Fix Poem with Tonic doesn't return GRPC status header. #212
Change charset from utf8 to utf-8. #213
utf8 to utf-8. #213Add X-Accel-Buffering: no header to SSE response.
X-Accel-Buffering: no header to SSE response.AutoCertBuilder::contact method to add a contact email for ACME account.TestJsonArray::assert_is_empty and TestJsonObject::assert_is_empty methods.TestJsonArray::assert_contains and TestJsonObject::assert_contains_exactly_one methods.Fixed AutoCert loading cached certificates with incorrect paths.
AutoCert loading cached certificates with incorrect paths.Implement Listener for BoxListener.
Listener for BoxListener.- Add ListenerExt::boxed method.
ListenerExt::boxed method.Add RouteScheme for scheme routing.
Body::is_empty method.RouteScheme for scheme routing.HTTP-01 challenge for ACME.Add support for ACME(Automatic Certificate Management Environment).
Add Response::set_content_type method.
Response::set_content_type method.IntoResponse::with_content_type method.Nothing published for this version
Nothing published for this version
Nothing published for this version
Fix session renew gets overwritten by session change. #196
Nothing published for this version
Bump tokio-rustls from 0.22.0 to 0.23.2.
eyre. #190tokio-rustls from 0.22.0 to 0.23.2.BoxEndpoint.Replace SystemTime with Instant in tracing middleware. #187
SystemTime with Instant in tracing middleware. #187Nothing published for this version
Make the StaticFileRequest::create_response method correctly return Err(StaticFileError::NotFound) when the specified file does not exist.
StaticFileRequest::create_response method correctly return Err(StaticFileError::NotFound) when the specified file does not exist.The Content-Type header of the Html response was changed from text/html to text/html; charset=utf8.
Content-Type header of the Html response was changed from text/html to text/html; charset=utf8.Add TestJsonValue::assert_not_null method.
TestJsonValue::assert_not_null method.Add TestRequestBuilder::typed_header method.
TestRequestBuilder::typed_header method.Changed the return error type of multipart related methods from IoError to ParseMultipartError.
IoError to ParseMultipartError.TestRequestBuilder::form method.poem::test.Redirect parameter type changed to impl Display. #176
Redirect parameter type changed to impl Display. #176Nothing published for this version
Fix crash caused by invalid request URI. #174
Add Body::into_bytes_limit method.
Body::into_bytes_limit method.Nothing published for this version
Add TestJsonArray::get_opt and TestJsonObject::get_opt methods.
TestJsonArray::get_opt and TestJsonObject::get_opt methods.Nothing published for this version
Add EndpointExt::to_response method.
EndpointExt::to_response method.Nothing published for this version
Nothing published for this version
Add TcpAcceptor::from_std and UnixAcceptor::from_std methods.
TcpAcceptor::from_std and UnixAcceptor::from_std methods.Nothing published for this version
Nothing published for this version
- Add I18NArgs::set method.
I18NArgs::set method.Change the behavior of the TestClient::query method to add a KV pair.
TestClient::query method to add a KV pair.Add SensitiveHeader middleware.
SensitiveHeader middleware.Add support handling Range header for the StaticFile extractor.
Range header for the StaticFile extractor.ResponseError::as_response method.Rename poem::StaticFiles to poem::StaticFilesEndpoint.
poem::endpoint::StaticFiles to poem::endpoint::StaticFilesEndpoint.poem::endpoint::StaticFile to poem::endpoint::StaticFileEndpoint.poem::web::StaticFileRequest extractor.Add I18N support with `fluent`.
fluent.Nothing published for this version
Nothing published for this version
Nothing published for this version
- Add test utilities.
Nothing published for this version
RouteMethod returns MethodNotAllowedError error instead of NotFoundError when the corresponding method is not found.
RouteMethod returns MethodNotAllowedError error instead of NotFoundError when the corresponding method is not found.Fixed the Cors middleware to return incorrect headers when an error occurs.
Cors middleware to return incorrect headers when an error occurs.Your coding agent can read these notes before it upgrades. Set up the MCP server →