chore(deps): update rust crate axum to 0.8.0 #6
Reference in New Issue
Block a user
No description provided.
Delete Branch "renovate/axum-monorepo"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
This PR contains the following updates:
0.6.18->0.8.0Release Notes
tokio-rs/axum (axum)
v0.8.7: axum v0.8.7Compare Source
Send/Syncbounds onRouterAsService,RouterIntoService(#3555)v0.8.6Compare Source
v0.8.5: axum v0.8.5Compare Source
OptionalFromRequestforMultipart(#3220)Location::{status_code, location}middleware::ResponseAxumBodyLayerfor mapping response body toaxum::body::Body(#3469)impl FusedStream for WebSocket(#3443)ssemodule andSsetype no longer depend on thetokiofeature (#3154)Redirects constructors is not a valid header value, instead of panicking on construction, theIntoResponseimpl now returns an HTTP 500, just likeJsondoes when serialization fails (#3377)v0.8.4: axum v0.8.4Compare Source
Router::reset_fallback(#3320)WebSocketUpgrade::selected_protocol(#3248)servewithout graceful shutdown (#3129)v0.8.3: axum v0.8.3Compare Source
From<Bytes>forMessage(#3273)OptionalFromRequestforJson(#3142)OptionalFromRequestforExtension(#3157)WebSocketUpgrade(#3178)v0.8.2: axum v0.8.2Yanked from crates.io due to unforeseen breaking change, see #3190 for details
OptionalFromRequestforJson(#3142)OptionalFromRequestforExtension(#3157)statusfunction of rejections aconstfunction, suchas
JsonRejection,QueryRejectionandPathRejection(#3168)v0.8.0: axum v0.8.0Compare Source
since rc.1
axum::extract::ws::Messagenow usesBytesin place ofVec<u8>,and a new
Utf8Bytestype in place ofString, for its variants (#3078)OptionalFromRequestPartsimpl forQuery(#3088)tokio-tungsteniteto 0.26 (#3078)serde_path_to_errorto report fields that failed to parse (#3081)full changelog
You can also read the blog post on tokio
Note: there are further relevant changes in axum-core's changelog
/:singleand/*manyto/{single}and/{*many}; the old syntax produces a panic to avoid silent change in behavior (#2645)Syncfor all handlers and services added toRouterandMethodRouter(#2473)Pathextractor deserializers now check that the number of parameters matches the tuple length exactly (#2931)Hostextractor toaxum-extra(#2956)WebSocket::close. Users should explicitly send close messages themselves. (#2974)servegeneric over the listener and IO types (#2941)Serve::tcp_nodelayandWithGracefulShutdown::tcp_nodelay.See
serve::ListenerExtfor an API that let you set arbitrary TCP stream properties. (#2941)Option<Path<T>>no longer swallows all error conditions,instead rejecting the request in many cases; see its documentation for details (#2475)
axum::extract::ws::Messagenow usesBytesin place ofVec<u8>,and a new
Utf8Bytestype in place ofString, for its variants (#3078)serde_json::RawValueinEvent::json_data(#2992)content-lengthbefore middleware.This allows middleware to add bodies to requests without needing to manually set
content-length(#2897)tokio-tungsteniteto 0.26 (#3078)serde_path_to_errorto report fields that failed to parse (#3081)method_not_allowed_fallbackto set a fallback when a path matches but there is no handler for the given HTTP method (#2903)NoContentas a self-described shortcut forStatusCode::NO_CONTENT(#2978)get(ws_endpoint)handlers toany(ws_endpoint)(#2894)MethodFilter::CONNECT,routing::connect[_service]andMethodRouter::connect[_service](#2961)FailedToDeserializePathParams::kindenum with (ErrorKind::DeserializeError). This new variant captures bothkey,value, andmessagefrom named path parameters parse errors, instead of only deserialization error message inErrorKind::Message. (#2720)v0.7.9: axum - v0.7.9Compare Source
v0.7.8: axum - v0.7.8Compare Source
serde_json::RawValueinEvent::json_data(#2992)method_not_allowed_fallbackto set a fallback when a path matches but there is no handler for the given HTTP method (#2903)MethodFilter::CONNECT,routing::connect[_service]and
MethodRouter::connect[_service](#2961)NoContentas a self-described shortcut forStatusCode::NO_CONTENT(#2978)v0.7.7: axum - v0.7.7Compare Source
rustdoc now generates tables of content in the sidebar (#2921)
v0.7.6: axum - v0.7.6Compare Source
Arcduring deserialization ofPathaxum::serve::Serve::tcp_nodelayandaxum::serve::WithGracefulShutdown::tcp_nodelay(#2653)Router::has_routesfunction (#2790)Serve::local_addrandWithGracefulShutdown::local_addrfunctions (#2881)v0.7.5: axum - v0.7.5Compare Source
axum::servedirectly witha
RouterorMethodRouter(#2586)h2is no longer pulled as a dependency unless thehttp2featureis enabled (#2605)
v0.7.4: axum - v0.7.4Compare Source
debug_handleron tuple response types (#2201)must_useattribute toServeandWithGracefulShutdown(#2484)axum_core::body::BodyDataStreamfrom axumv0.7.3: axum - v0.7.3Compare Source
BodyimplementsFrom<()>now (#2411)tracingfeature by default (#2460)serve(#2398)RouterIntoServiceimplementsClone(#2456)v0.7.2: axum - v0.7.2Compare Source
axum::body::to_bytes(#2373)serve(#2400)v0.7.1: axum - v0.7.1Compare Source
v0.7.0: axum - v0.7.0Compare Source
WebSocketUpgrade::max_send_queue(i.e. the
Btype param has been removed) (#1751 and #1789):FromRequestPartsFromRequestHandlerServiceHandlerWithoutStateExtHandlerLayeredFutureLayeredMethodRouterNextRequestExtRouteFutureRouteRouterhyper::Bodyas that type is removedin hyper 1.0. Instead axum has its own body type at
axum::body::Body(#1751)extract::BodyStreamhas been removed asbody::Bodyimplements
StreamandFromRequestdirectly (#1751)sse::Event::json_datato useaxum_core::Erroras its error type (#1762)DefaultOnFailedUpdgradetoDefaultOnFailedUpgrade(#1664)OnFailedUpdgradetoOnFailedUpgrade(#1664)TypedHeaderhas been move toaxum-extra(#1850)EmptyandFull. Useaxum::body::Body::emptyandaxum::body::Body::fromrespectively (#1789)IntoResponse::into_responsemust useaxum::body::Bodyas the body type.axum::response::Responsedoes this(#1789)
BoxBodytype alias and itsbox_bodyconstructor. Use
axum::body::Body::newinstead (#1789)RawBodyextractor.axum::body::BodyimplementsFromRequestdirectly (#1789)http-bodyno longer implementIntoResponse:Full, useBody::frominsteadEmpty, useBody::emptyinsteadBoxBody, useBody::newinsteadUnsyncBoxBody, useBody::newinsteadMapData, useBody::newinsteadMapErr, useBody::newinsteadaxum::extract::Requesttype alias where the body isaxum::body::Body(#1789)Router::as_serviceandRouter::into_serviceto workaroundtype inference issues when calling
ServiceExtmethods on aRouter(#1835)axum::Serveras it was removed in hyper 1.0. Insteaduse
axum::serve(listener, service)or hyper/hyper-util for more configuration options (#1868)Router::nest.Routers nested with
Router::nest_servicewill no longer inherit fallbacks (#1956)Sec-WebSocket-Keyheader inWebSocketUpgrade(#1972)axum::extract::Query::try_from_uri(#2058)IntoResponseforBox<str>andBox<[u8]>([#2035])MethodFilter. It no longer uses bitflags (#2073).source()of composite rejections (#2030)#[debug_handler](#2014)IntoResponsefor(R,) where R: IntoResponse(#2143)NestedPathextractor (#1924)handle_errorfunction to existingServiceExttrait (#2235)impl<T> IntoResponse(Parts) for Extension<T>now requiresT: Clone, as that is required by the http crate (#1882)axum::Json::from_bytes(#2244)FromRequestPartsforhttp::request::Parts(#2328)FromRequestPartsforhttp::Extensions(#2328)DefaultBodyLimitto individual routes (#2157)v0.6.20: axum - v0.6.20Compare Source
WebSocketUpgrade::write_buffer_sizeandWebSocketUpgrade::max_write_buffer_sizeWebSocketUpgrade::max_send_queueHandlerforT: IntoResponse(#2140)v0.6.19: axum - v0.6.19Compare Source
axum::extract::Query::try_from_uri(#2058)IntoResponseforBox<str>andBox<[u8]>(#2035).source()of composite rejections (#2030)#[debug_handler](#2014)Configuration
📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 Automerge: Enabled.
♻ Rebasing: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR has been generated by Renovate Bot.
93392f0101to56309320655630932065to13d87f7927View command line instructions
Checkout
From your project repository, check out a new branch and test the changes.