mirror of
https://github.com/tokio-rs/axum.git
synced 2024-12-28 07:20:12 +01:00
axum 0.8.0-rc.1 (#3073)
This commit is contained in:
parent
c596deafe4
commit
5cdd8a4f18
7 changed files with 35 additions and 24 deletions
|
@ -7,14 +7,16 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
||||||
|
|
||||||
# Unreleased
|
# Unreleased
|
||||||
|
|
||||||
|
# 0.5.0
|
||||||
|
|
||||||
|
## rc.1
|
||||||
|
|
||||||
- **breaking:**: `Option<T>` as an extractor now requires `T` to implement the
|
- **breaking:**: `Option<T>` as an extractor now requires `T` to implement the
|
||||||
new trait `OptionalFromRequest` (if used as the last extractor) or
|
new trait `OptionalFromRequest` (if used as the last extractor) or
|
||||||
`OptionalFromRequestParts` (other extractors) ([#2475])
|
`OptionalFromRequestParts` (other extractors) ([#2475])
|
||||||
|
|
||||||
[#2475]: https://github.com/tokio-rs/axum/pull/2475
|
[#2475]: https://github.com/tokio-rs/axum/pull/2475
|
||||||
|
|
||||||
# 0.5.0
|
|
||||||
|
|
||||||
## alpha.1
|
## alpha.1
|
||||||
|
|
||||||
- **breaking:** Replace `#[async_trait]` with [return-position `impl Trait` in traits][RPITIT] ([#2308])
|
- **breaking:** Replace `#[async_trait]` with [return-position `impl Trait` in traits][RPITIT] ([#2308])
|
||||||
|
|
|
@ -9,7 +9,7 @@ license = "MIT"
|
||||||
name = "axum-core"
|
name = "axum-core"
|
||||||
readme = "README.md"
|
readme = "README.md"
|
||||||
repository = "https://github.com/tokio-rs/axum"
|
repository = "https://github.com/tokio-rs/axum"
|
||||||
version = "0.5.0-alpha.1" # remember to bump the version that axum and axum-extra depend on
|
version = "0.5.0-rc.1" # remember to bump the version that axum and axum-extra depend on
|
||||||
|
|
||||||
[features]
|
[features]
|
||||||
tracing = ["dep:tracing"]
|
tracing = ["dep:tracing"]
|
||||||
|
|
|
@ -7,6 +7,10 @@ and this project adheres to [Semantic Versioning].
|
||||||
|
|
||||||
# Unreleased
|
# Unreleased
|
||||||
|
|
||||||
|
# 0.10.0
|
||||||
|
|
||||||
|
## rc.1
|
||||||
|
|
||||||
- **breaking:** `Option<Query<T>>` no longer swallows all error conditions, instead rejecting the
|
- **breaking:** `Option<Query<T>>` no longer swallows all error conditions, instead rejecting the
|
||||||
request in many cases; see its documentation for details ([#2475])
|
request in many cases; see its documentation for details ([#2475])
|
||||||
- **changed:** Deprecated `OptionalPath<T>` and `OptionalQuery<T>` ([#2475])
|
- **changed:** Deprecated `OptionalPath<T>` and `OptionalQuery<T>` ([#2475])
|
||||||
|
@ -26,9 +30,7 @@ and this project adheres to [Semantic Versioning].
|
||||||
[#3010]: https://github.com/tokio-rs/axum/pull/3010
|
[#3010]: https://github.com/tokio-rs/axum/pull/3010
|
||||||
[#3047]: https://github.com/tokio-rs/axum/pull/3047
|
[#3047]: https://github.com/tokio-rs/axum/pull/3047
|
||||||
|
|
||||||
# 0.10.0
|
## alpha.1
|
||||||
|
|
||||||
# alpha.1
|
|
||||||
|
|
||||||
- **breaking:** Update to prost 0.13. Used for the `Protobuf` extractor ([#2829])
|
- **breaking:** Update to prost 0.13. Used for the `Protobuf` extractor ([#2829])
|
||||||
- **change:** Update minimum rust version to 1.75 ([#2943])
|
- **change:** Update minimum rust version to 1.75 ([#2943])
|
||||||
|
|
|
@ -9,7 +9,7 @@ license = "MIT"
|
||||||
name = "axum-extra"
|
name = "axum-extra"
|
||||||
readme = "README.md"
|
readme = "README.md"
|
||||||
repository = "https://github.com/tokio-rs/axum"
|
repository = "https://github.com/tokio-rs/axum"
|
||||||
version = "0.10.0-alpha.1"
|
version = "0.10.0-rc.1"
|
||||||
|
|
||||||
[features]
|
[features]
|
||||||
default = ["tracing"]
|
default = ["tracing"]
|
||||||
|
@ -42,8 +42,8 @@ typed-header = ["dep:headers"]
|
||||||
typed-routing = ["dep:axum-macros", "dep:percent-encoding", "dep:serde_html_form", "dep:form_urlencoded"]
|
typed-routing = ["dep:axum-macros", "dep:percent-encoding", "dep:serde_html_form", "dep:form_urlencoded"]
|
||||||
|
|
||||||
[dependencies]
|
[dependencies]
|
||||||
axum = { path = "../axum", version = "0.8.0-alpha.1", default-features = false, features = ["original-uri"] }
|
axum = { path = "../axum", version = "0.8.0-rc.1", default-features = false, features = ["original-uri"] }
|
||||||
axum-core = { path = "../axum-core", version = "0.5.0-alpha.1" }
|
axum-core = { path = "../axum-core", version = "0.5.0-rc.1" }
|
||||||
bytes = "1.1.0"
|
bytes = "1.1.0"
|
||||||
futures-util = { version = "0.3", default-features = false, features = ["alloc"] }
|
futures-util = { version = "0.3", default-features = false, features = ["alloc"] }
|
||||||
http = "1.0.0"
|
http = "1.0.0"
|
||||||
|
@ -58,7 +58,7 @@ tower-service = "0.3"
|
||||||
|
|
||||||
# optional dependencies
|
# optional dependencies
|
||||||
async-stream = { version = "0.3", optional = true }
|
async-stream = { version = "0.3", optional = true }
|
||||||
axum-macros = { path = "../axum-macros", version = "0.5.0-alpha.1", optional = true }
|
axum-macros = { path = "../axum-macros", version = "0.5.0-rc.1", optional = true }
|
||||||
cookie = { package = "cookie", version = "0.18.0", features = ["percent-encode"], optional = true }
|
cookie = { package = "cookie", version = "0.18.0", features = ["percent-encode"], optional = true }
|
||||||
fastrand = { version = "2.1.0", optional = true }
|
fastrand = { version = "2.1.0", optional = true }
|
||||||
form_urlencoded = { version = "1.1.0", optional = true }
|
form_urlencoded = { version = "1.1.0", optional = true }
|
||||||
|
|
|
@ -9,7 +9,7 @@ license = "MIT"
|
||||||
name = "axum-macros"
|
name = "axum-macros"
|
||||||
readme = "README.md"
|
readme = "README.md"
|
||||||
repository = "https://github.com/tokio-rs/axum"
|
repository = "https://github.com/tokio-rs/axum"
|
||||||
version = "0.5.0-alpha.1" # remember to also bump the version that axum and axum-extra depends on
|
version = "0.5.0-rc.1" # remember to also bump the version that axum and axum-extra depends on
|
||||||
|
|
||||||
[features]
|
[features]
|
||||||
default = []
|
default = []
|
||||||
|
|
|
@ -7,26 +7,35 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
||||||
|
|
||||||
# Unreleased
|
# Unreleased
|
||||||
|
|
||||||
|
# 0.8.0
|
||||||
|
|
||||||
|
## rc.1
|
||||||
|
|
||||||
|
*Note: there are further relevant changes in [axum-core's changelog][core-changelog]*
|
||||||
|
|
||||||
|
- **breaking:** Move `Host` extractor to `axum-extra` ([#2956])
|
||||||
|
- **breaking:** Remove `WebSocket::close`.
|
||||||
|
Users should explicitly send close messages themselves. ([#2974])
|
||||||
|
- **breaking:** Make `serve` generic over the listener and IO types ([#2941])
|
||||||
|
- **breaking:** Remove `Serve::tcp_nodelay` and `WithGracefulShutdown::tcp_nodelay`.
|
||||||
|
See `serve::ListenerExt` for an API that let you set arbitrary TCP stream properties. ([#2941])
|
||||||
|
- **breaking:** `Option<Path<T>>` and `Option<Query<T>>` no longer swallow all error conditions,
|
||||||
|
instead rejecting the request in many cases; see their documentation for details ([#2475])
|
||||||
- **fixed:** Skip SSE incompatible chars of `serde_json::RawValue` in `Event::json_data` ([#2992])
|
- **fixed:** Skip SSE incompatible chars of `serde_json::RawValue` in `Event::json_data` ([#2992])
|
||||||
- **fixed:** Don't panic when array type is used for path segment ([#3039])
|
- **fixed:** Don't panic when array type is used for path segment ([#3039])
|
||||||
- **breaking:** Move `Host` extractor to `axum-extra` ([#2956])
|
- **fixed:** Avoid setting `content-length` before middleware.
|
||||||
|
This allows middleware to add bodies to requests without needing to manually set `content-length` ([#2897])
|
||||||
- **added:** Add `method_not_allowed_fallback` to set a fallback when a path matches but there is no handler for the given HTTP method ([#2903])
|
- **added:** Add `method_not_allowed_fallback` to set a fallback when a path matches but there is no handler for the given HTTP method ([#2903])
|
||||||
- **added:** Add `NoContent` as a self-described shortcut for `StatusCode::NO_CONTENT` ([#2978])
|
- **added:** Add `NoContent` as a self-described shortcut for `StatusCode::NO_CONTENT` ([#2978])
|
||||||
- **added:** Add support for WebSockets over HTTP/2.
|
- **added:** Add support for WebSockets over HTTP/2.
|
||||||
They can be enabled by changing `get(ws_endpoint)` handlers to `any(ws_endpoint)` ([#2894])
|
They can be enabled by changing `get(ws_endpoint)` handlers to `any(ws_endpoint)` ([#2894])
|
||||||
- **added:** Add `MethodFilter::CONNECT`, `routing::connect[_service]`
|
- **added:** Add `MethodFilter::CONNECT`, `routing::connect[_service]`
|
||||||
and `MethodRouter::connect[_service]` ([#2961])
|
and `MethodRouter::connect[_service]` ([#2961])
|
||||||
- **fixed:** Avoid setting `content-length` before middleware.
|
|
||||||
This allows middleware to add bodies to requests without needing to manually set `content-length` ([#2897])
|
|
||||||
- **breaking:** Remove `WebSocket::close`.
|
|
||||||
Users should explicitly send close messages themselves. ([#2974])
|
|
||||||
- **breaking:** `Option<Path<T>>` and `Option<Query<T>>` no longer swallow all error conditions,
|
|
||||||
instead rejecting the request in many cases; see their documentation for details ([#2475])
|
|
||||||
- **added:** Extend `FailedToDeserializePathParams::kind` enum with (`ErrorKind::DeserializeError`)
|
- **added:** Extend `FailedToDeserializePathParams::kind` enum with (`ErrorKind::DeserializeError`)
|
||||||
This new variant captures both `key`, `value`, and `message` from named path parameters parse errors,
|
This new variant captures both `key`, `value`, and `message` from named path parameters parse errors,
|
||||||
instead of only deserialization error message in `ErrorKind::Message`. ([#2720])
|
instead of only deserialization error message in `ErrorKind::Message`. ([#2720])
|
||||||
- **breaking:** Make `serve` generic over the listener and IO types ([#2941])
|
|
||||||
|
|
||||||
|
[core-changelog]: ../axum-core/CHANGELOG.md
|
||||||
[#2475]: https://github.com/tokio-rs/axum/pull/2475
|
[#2475]: https://github.com/tokio-rs/axum/pull/2475
|
||||||
[#2897]: https://github.com/tokio-rs/axum/pull/2897
|
[#2897]: https://github.com/tokio-rs/axum/pull/2897
|
||||||
[#2903]: https://github.com/tokio-rs/axum/pull/2903
|
[#2903]: https://github.com/tokio-rs/axum/pull/2903
|
||||||
|
@ -40,8 +49,6 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
||||||
[#3039]: https://github.com/tokio-rs/axum/pull/3039
|
[#3039]: https://github.com/tokio-rs/axum/pull/3039
|
||||||
[#2941]: https://github.com/tokio-rs/axum/pull/2941
|
[#2941]: https://github.com/tokio-rs/axum/pull/2941
|
||||||
|
|
||||||
# 0.8.0
|
|
||||||
|
|
||||||
## alpha.1
|
## alpha.1
|
||||||
|
|
||||||
- **breaking:** Require `Sync` for all handlers and services added to `Router`
|
- **breaking:** Require `Sync` for all handlers and services added to `Router`
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
[package]
|
[package]
|
||||||
name = "axum"
|
name = "axum"
|
||||||
version = "0.8.0-alpha.1" # remember to bump the version that axum-extra and axum-macros depend on
|
version = "0.8.0-rc.1" # remember to bump the version that axum-extra and axum-macros depend on
|
||||||
categories = ["asynchronous", "network-programming", "web-programming::http-server"]
|
categories = ["asynchronous", "network-programming", "web-programming::http-server"]
|
||||||
description = "Web framework that focuses on ergonomics and modularity"
|
description = "Web framework that focuses on ergonomics and modularity"
|
||||||
edition = "2021"
|
edition = "2021"
|
||||||
|
@ -46,7 +46,7 @@ __private_docs = [
|
||||||
]
|
]
|
||||||
|
|
||||||
[dependencies]
|
[dependencies]
|
||||||
axum-core = { path = "../axum-core", version = "0.5.0-alpha.1" }
|
axum-core = { path = "../axum-core", version = "0.5.0-rc.1" }
|
||||||
bytes = "1.0"
|
bytes = "1.0"
|
||||||
futures-util = { version = "0.3", default-features = false, features = ["alloc"] }
|
futures-util = { version = "0.3", default-features = false, features = ["alloc"] }
|
||||||
http = "1.0.0"
|
http = "1.0.0"
|
||||||
|
@ -66,7 +66,7 @@ tower-layer = "0.3.2"
|
||||||
tower-service = "0.3"
|
tower-service = "0.3"
|
||||||
|
|
||||||
# optional dependencies
|
# optional dependencies
|
||||||
axum-macros = { path = "../axum-macros", version = "0.5.0-alpha.1", optional = true }
|
axum-macros = { path = "../axum-macros", version = "0.5.0-rc.1", optional = true }
|
||||||
base64 = { version = "0.22.1", optional = true }
|
base64 = { version = "0.22.1", optional = true }
|
||||||
hyper = { version = "1.1.0", optional = true }
|
hyper = { version = "1.1.0", optional = true }
|
||||||
hyper-util = { version = "0.1.3", features = ["tokio", "server", "service"], optional = true }
|
hyper-util = { version = "0.1.3", features = ["tokio", "server", "service"], optional = true }
|
||||||
|
|
Loading…
Reference in a new issue