-
Notifications
You must be signed in to change notification settings - Fork 0
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
chore(deps): update rust crate axum to 0.8 #29
base: main
Are you sure you want to change the base?
Conversation
Reviewer's Guide by SourceryThis PR upgrades the Sequence diagram showing updated path parameter handling in axum 0.8sequenceDiagram
participant C as Client
participant R as Router
participant H as Handler
Note over R: Old syntax (0.7):<br/>'/users/:id'
Note over R: New syntax (0.8):<br/>'/users/{id}'
C->>R: GET /users/123
R->>R: Parse path params<br/>using new syntax
R->>H: Forward request with<br/>extracted params
H-->>C: Response
Sequence diagram showing WebSocket changes in axum 0.8sequenceDiagram
participant C as Client
participant WS as WebSocket Handler
Note over WS: Changes in 0.8:<br/>1. HTTP/2 support<br/>2. Manual close handling
C->>WS: Initiate WebSocket connection
Note over WS: Now supports both<br/>HTTP/1.1 and HTTP/2
WS-->>C: Connection established
C->>WS: Send message
WS-->>C: Response
Note over C,WS: Closing connection
C->>WS: Close request
Note over WS: No automatic close handling<br/>Must handle explicitly
WS-->>C: Close acknowledgment
Class diagram showing changes to WebSocket Message type in axum 0.8classDiagram
class Message_0_7 {
+String text
+Vec~u8~ binary
}
class Message_0_8 {
+Utf8Bytes text
+Bytes binary
}
note for Message_0_7 "axum 0.7 Message"
note for Message_0_8 "axum 0.8 Message"
File-Level Changes
Tips and commandsInteracting with Sourcery
Customizing Your ExperienceAccess your dashboard to:
Getting Help
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We have skipped reviewing this pull request. It seems to have been created by a bot (hey, renovate[bot]!). We assume it knows what it's doing!
This PR contains the following updates:
0.7
->0.8
Release Notes
tokio-rs/axum (axum)
v0.8.0
: axum v0.8.0Compare Source
since rc.1
axum::extract::ws::Message
now usesBytes
in place ofVec<u8>
,and a new
Utf8Bytes
type in place ofString
, for its variants (#3078)OptionalFromRequestParts
impl forQuery
(#3088)tokio-tungstenite
to 0.26 (#3078)serde_path_to_error
to report fields that failed to parse (#3081)full changelog
Note: there are further relevant changes in axum-core's changelog
/:single
and/*many
to/{single}
and/{*many}
; the old syntax produces a panic to avoid silent change in behavior (#2645)Sync
for all handlers and services added toRouter
andMethodRouter
(#2473)Path
extractor deserializers now check that the number of parameters matches the tuple length exactly (#2931)Host
extractor toaxum-extra
(#2956)WebSocket::close
. Users should explicitly send close messages themselves. (#2974)serve
generic over the listener and IO types (#2941)Serve::tcp_nodelay
andWithGracefulShutdown::tcp_nodelay
.See
serve::ListenerExt
for 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::Message
now usesBytes
in place ofVec<u8>
,and a new
Utf8Bytes
type in place ofString
, for its variants (#3078)serde_json::RawValue
inEvent::json_data
(#2992)content-length
before middleware.This allows middleware to add bodies to requests without needing to manually set
content-length
(#2897)tokio-tungstenite
to 0.26 (#3078)serde_path_to_error
to report fields that failed to parse (#3081)method_not_allowed_fallback
to set a fallback when a path matches but there is no handler for the given HTTP method (#2903)NoContent
as 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::kind
enum with (ErrorKind::DeserializeError
). This new variant captures bothkey
,value
, andmessage
from 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::RawValue
inEvent::json_data
(#2992)method_not_allowed_fallback
to 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)NoContent
as 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
Arc
during deserialization ofPath
axum::serve::Serve::tcp_nodelay
andaxum::serve::WithGracefulShutdown::tcp_nodelay
(#2653)Router::has_routes
function (#2790)Serve::local_addr
andWithGracefulShutdown::local_addr
functions (#2881)v0.7.5
: axum - v0.7.5Compare Source
axum::serve
directly witha
Router
orMethodRouter
(#2586)h2
is no longer pulled as a dependency unless thehttp2
featureis enabled (#2605)
Configuration
📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR was generated by Mend Renovate. View the repository job log.