Commit Graph
100 Commits
Author SHA1 Message Date
David Pedersen b92b91e75e Release axum 0.6.14 (#1926) 2023-04-11 19:38:22 +02:00
David Pedersen 51edc9c895 Release (#1923) 2023-04-11 17:23:38 +02:00
David Pedersen 6b106f4bab Log built-in rejections (#1890) 2023-04-11 16:57:49 +02:00
David PedersenandJonas Platte 2c2cf361dd Change Router::nest to flatten the routes (#1711)
Co-authored-by: Jonas Platte <[email protected]>
2023-04-11 16:17:54 +02:00
David Pedersen 14d2b2dc87 Add tutorials to ECOSYSTEM.md 2023-04-11 10:37:22 +02:00
David Pedersen 4db9b6eb81 add missing changelog link 2023-04-10 09:23:55 +02:00
David Pedersen 352cf9a266 Implement Deref and DerefMut for built-in extractors (#1922) 2023-04-10 07:18:35 +00:00
David Pedersen 24f8dc53f4 Update rest-grpc-multiplex example to include reflection (#1902) 2023-04-01 20:49:36 +02:00
David Pedersen 9b1f1a907b Update allowed crates in public API (#1888) 2023-03-27 17:12:19 +02:00
David Pedersen 4dd062e8ed Add missing changelog link 2023-03-22 15:26:17 +01:00
David Pedersen 562fa206f0 Release axum, axum-extra, axum-macros (#1875) 2023-03-22 15:22:47 +01:00
David Pedersen cfb5df7050 Give better error if generics are used with #[derive(FromRef)] (#1874) 2023-03-22 14:48:27 +01:00
David Pedersen 3fb67bf79d Update changelog 2023-03-22 14:35:06 +01:00
David Pedersen a0af61ea46 More clearly document what wildcards matches (#1873) 2023-03-22 10:48:23 +00:00
David Pedersen 03e8bc77f1 Implement IntoResponse for MultipartError (#1861) 2023-03-21 08:24:06 +00:00
David Pedersen 8e1eb8979f Update to syn 2 (#1862) 2023-03-18 19:23:27 +00:00
David Pedersen 1133425d6b Release axum, axum-macros, and axum-extra (#1843) 2023-03-13 11:00:13 +01:00
David Pedersen fe9c4a0b5b Clone state a bit less (#1837) 2023-03-12 14:43:22 +00:00
David Pedersen 5c11c5c44d Print prev_route_id in impl Debug for Router 2023-03-10 12:30:08 +01:00
David Pedersen e56e1b3e69 Don't require S: Debug for impl Debug for Router<S> (#1836) 2023-03-10 11:14:40 +00:00
David Pedersen bc3c35ea5a Release all the crates (#1812) 2023-03-03 18:16:24 +01:00
David Pedersen 5606ea3f9e #[must_use] all the things! (#1809) 2023-03-03 14:12:35 +01:00
David Pedersen 5a58edac16 Fix routing issues when loading a Router via a dynamic library (#1806) 2023-03-03 13:23:53 +01:00
David Pedersen 6075be60ed Wording tweak in #[debug_handler] docs (#1807) 2023-03-03 12:38:26 +01:00
David Pedersen aa2cbf6920 Add axum_extra::extract::Multipart (#1692) 2023-03-03 10:15:09 +01:00
David Pedersen 416a0568d3 Add special handling of FromRequest extractors not being the last arg (#1797) 2023-03-03 09:44:10 +01:00
David Pedersen 08bac36519 Release axum and axum-extra (#1788) 2023-02-27 09:41:11 +01:00
David Pedersen 279a8e2bf0 Add example showing how to run axum on hyper 1.0 (#1791) 2023-02-26 19:05:12 +01:00
David Pedersen 1dc4b44472 Use JsonRejection::{status, body_text} in customize extractor error example (#1790) 2023-02-25 15:02:02 +01:00
David Pedersen 27f05ad32e Remove SpaRouter (#1784) 2023-02-25 11:05:23 +01:00
David Pedersen f726f16b6d Update to tower-http 0.4 (#1783) 2023-02-24 20:51:30 +00:00
David PedersenandAllan 6a4825bb22 Rename ProtoBuf to Protobuf (#1763)
Co-authored-by: Allan <[email protected]>
2023-02-24 21:40:42 +01:00
David Pedersen 37478772bc Release axum (#1782) 2023-02-24 14:22:47 +01:00
David Pedersen 2cbaa63d9e Add KeepAlive::event (#1729) 2023-02-23 13:14:29 +00:00
David Pedersen 1e2567c39f Fix missing Allow when middleware are applied to MethodRouter (#1773) 2023-02-20 22:54:44 +01:00
David Pedersen 277be8f813 axum 0.6.7 (#1768) 2023-02-17 15:07:23 +01:00
David Pedersen bea84d2141 Add missing things back to changelog 2023-02-17 14:25:03 +01:00
David Pedersen 143c415955 Add MockConnectInfo (#1767) 2023-02-17 13:09:29 +01:00
David Pedersen cd86f7ec7a Use 422 Unprocessable Entity for Form deserialization errors, except GET and HEAD requests (#1683) 2023-02-17 09:59:02 +01:00
David Pedersen e6ff0281ae Try cargo public-api-crates on CI (#1761) 2023-02-16 22:41:41 +01:00
David Pedersen c18ff9dd63 Release axum, axum-extra, and axum-macros (#1750) 2023-02-12 12:40:42 +01:00
David Pedersen c454e37a1c Update to cookie 0.17 (#1747) 2023-02-12 08:26:37 +01:00
David Pedersen 37922ab840 Add option_layer (#1696) 2023-02-11 23:11:21 +00:00
David Pedersen 0ecf5eeb19 Support passing MethodRouter to Router::fallback (#1730) 2023-02-11 23:11:55 +01:00
David Pedersen b4204e223d Add TypedPath::with_query_params (#1744) 2023-02-11 22:10:07 +00:00
David Pedersen 93ecabf449 Release axum and axum-macros (#1743) 2023-02-11 22:32:16 +01:00
David Pedersen 827140f0d7 Document gotchas with impl IntoResponse (#1736) 2023-02-07 21:28:00 +00:00
David Pedersen 0a3b4b8e43 Ignore duplicate dependencies pulled in by windows-sys 2023-02-07 22:21:00 +01:00
David Pedersen 6e6aa8f39e Don't use impl IntoResponse in readme 2023-02-07 17:57:28 +01:00
David Pedersen 4a5dc4391c Release axum and axum-macros (#1721) 2023-01-24 13:31:33 +01:00
David Pedersen 47be78e0b3 Use map_while (#1720) 2023-01-24 12:49:36 +01:00
David Pedersen 6ff6b36293 Release axum and axum-core (#1716) 2023-01-20 23:51:19 +01:00
David Pedersen 5b07296001 Add RawPathParams (#1713) 2023-01-20 20:37:01 +00:00
David Pedersen 96b7d78a3f Document required tokio features for example (#1715) 2023-01-20 20:26:40 +00:00
David Pedersen 7a52161826 Implement Clone and Service for Next (#1712) 2023-01-20 21:19:01 +01:00
David Pedersen 8c081c20ab Remove accidentally committed dbg!s 2023-01-20 10:14:49 +01:00
David Pedersen 00d20eb007 Simpify parse-body-based-on-content-type example (#1697) 2023-01-14 18:39:09 +01:00
David Pedersen 1be25d9496 Add internal macro to make tests of nest easier to write (#1694) 2023-01-14 14:12:01 +00:00
David Pedersen 607a20dfac Support deserialize_any for Path (#1693) 2023-01-13 12:27:38 +00:00
David Pedersen 25a46fbe79 fixup changelog 2023-01-13 11:54:30 +01:00
David Pedersen e3aaeb3cb7 Release axum, axum-core, and axum-macros (#1688) 2023-01-09 13:54:49 +01:00
David Pedersen d11af167ca Replace actions-rs/toolchain@v1 with stable alternative (#1687) 2023-01-08 16:41:59 +01:00
David Pedersen 3d31bcb6fb Remove lingering async-graphql example file
It should have been deleted previously
2023-01-08 16:28:45 +01:00
David Pedersen be9a8c0380 Document breaking changes related to nest (#1684) 2023-01-07 19:06:59 +01:00
David PedersenandJonas Platte 1aa357c879 Misc documentation improvements (#1647)
Co-authored-by: Jonas Platte <[email protected]>
2023-01-07 14:07:54 +01:00
David Pedersen 7e13d69639 Add status and body_text methods to built-in rejections (#1612)
* Add `status` and `body_text` methods to built-in rejections

This should make it easier to customize a built-in rejection while
preserving either the status or body.

Fixes https://github.com/tokio-rs/axum/issues/1611

* changelog
2022-12-02 19:54:16 +01:00
David Pedersen ee3cb971f7 axum-extra v0.4.2 (#1609) 2022-12-02 10:55:11 +00:00
David Pedersen 7386e5d185 Bug fixes for RouterExt:{route_with_tsr, route_service_with_tsr} (#1608)
* Bug fixes for `RouterExt:{route_with_tsr, route_service_with_tsr}`

* changelog link
2022-12-02 11:42:49 +01:00
David Pedersen 2121979a48 axum-extra - v0.4.1 (#1590) 2022-11-29 10:57:25 +01:00
David Pedersen c7985b7858 Fix wrong From impl for Resource (#1589)
Really not sure how this got past the tests.
2022-11-29 09:35:26 +00:00
David Pedersen 87a80ec47b axum v0.6.1 (#1588) 2022-11-29 08:43:18 +00:00
David Pedersen eb2e933054 Expand the docs for Router::with_state (#1580) 2022-11-27 01:01:59 +01:00
David Pedersen b984fec572 Remove notice about breaking changes from readme 2022-11-25 22:42:35 +01:00
David PedersenandJonas Platte 1b6780cf6c axum 0.6 and friends 🎉 (#1570)
* changelog

* bump versions

* reorder changelogs a bit

* Apply suggestions from code review

Co-authored-by: Jonas Platte <[email protected]>

* Expand fallback inheritance

* Reword tsr

* Mention `parse-body-based-on-content-type` example

Co-authored-by: Jonas Platte <[email protected]>
2022-11-25 12:29:58 +00:00
David Pedersen 0b26411f39 Change Router::with_state and impl Service for Router<()> (#1552)
* Implement `Service` for `Router<(), B>`

* wip

* wip

* fix some tests

* fix examples

* fix doc tests

* clean up docs

* changelog

* fix

* also call `with_state` when converting `MethodRouter` into a `MakeService`

* suggestions from review
2022-11-24 14:43:10 +00:00
David Pedersen b816ac7cdf Add RouterService::{layer, route_layer} (#1550)
* Add `RouterService::{layer, route_layer}`

Figure we might as well have these.

* changelog
2022-11-19 21:51:55 +00:00
David Pedersen 99c0224a7c axum-extra 0.4.0-rc.3 (#1545)
* axum-extra 0.4.0-rc.3

Needs a new release because it uses the old state inheritance whic is
removed in the latest rc.

* fix
2022-11-19 13:02:11 +01:00
David Pedersen 2e3000f1a3 Fix typo 2022-11-18 18:36:49 +01:00
David Pedersen 37b9b3df48 Remove duplicate changelog entry 2022-11-18 17:59:05 +01:00
David Pedersen 878ae73e6d New release candidates (#1541) 2022-11-18 17:29:47 +01:00
David Pedersen 468985373a Add example of how to test WebSockets (#1535) 2022-11-18 15:40:21 +01:00
David Pedersen 7d58d49817 Add #[from_ref(skip)] (#1537)
For skipping individual fields.
2022-11-18 12:05:10 +01:00
David Pedersen 64960bb19c Type safe state inheritance (#1532)
* Make state type safe

* fix examples

* remove unnecessary `#[track_caller]`s

* Router::into_service -> Router::with_state

* fixup docs

* macro docs

* add missing docs

* fix examples

* format

* changelog

* Update trybuild tests

* Make sure fallbacks are still inherited for opaque services (#1540)

* Document nesting routers with different state

* fix leftover conflicts
2022-11-18 11:02:58 +00:00
David PedersenandJonas Platte ba8e9c1b21 Add on_failed_upgrade callback to WebSocketUpgrade (#1539)
* Add `on_failed_upgrade` callback to `WebSocket`

Previously if upgrading a connection to a WebSocket connection failed
the background task would panic. There was no way to customize that so
users that might wanna report the error was out of luck.

Panicking also wasn't great because users might abort on panics which
would bring down the server.

* changelog

* Apply suggestions from code review

Co-authored-by: Jonas Platte <[email protected]>

Co-authored-by: Jonas Platte <[email protected]>
2022-11-18 10:53:04 +00:00
David Pedersen 7090649377 Add fallback inheritance for nested routers (#1521)
* fallback inheritance

* cleanup

* changelog
2022-11-18 10:25:04 +00:00
David Pedersen 2e8a7e51a1 Fix Handler::with_state not working if request body was changed via layer (#1536)
Previously

```rust
handler.layer(RequestBodyLimitLayer::new(...)).with_state(...)
```

didn't work because we required the same request body all the way
through.
2022-11-18 11:00:52 +01:00
David Pedersen b1f894a500 Fix unused import if compiling with default features 2022-11-18 00:22:11 +01:00
David Pedersen 74bbe80f8a axum 0.6.0-rc.4 (#1518) 2022-11-09 13:49:47 +01:00
David Pedersen 028cac4a72 Fix compile error in release mode (#1517) 2022-11-09 13:36:10 +01:00
David Pedersen 1d6a96ee20 Remove references to *_with_state_arc functions from changelog
They were removed again before being released.
2022-11-09 09:27:37 +01:00
David Pedersen e53c85c496 Minor changelog fixes 2022-11-09 09:20:09 +01:00
David PedersenandJonas Platte e39d053d2f New release candidates (#1514)
* New release candidates

* Update axum/Cargo.toml

Co-authored-by: Jonas Platte <[email protected]>

Co-authored-by: Jonas Platte <[email protected]>
2022-11-09 09:01:47 +01:00
David Pedersen 9c804d506e Update changelog for axum-extra 2022-11-08 21:45:05 +01:00
David PedersenandJonas Platte 0e3f9d0938 Don't allow extracting MatchedPath in middleware for nested routes (#1462)
* Don't allow extracting `MatchedPath` for nested paths

* misc clean up

* Update docs

* changelog

* Apply suggestions from code review

Co-authored-by: Jonas Platte <[email protected]>

* Add test for nested handler service

* change to `debug_assert`

* apply suggestions from review

Co-authored-by: Jonas Platte <[email protected]>
2022-11-08 20:43:19 +00:00
David Pedersen e0ef641e5f Rework Form and Query rejections (#1496)
* Change `FailedToDeserializeQueryString` rejection for `Form`

Its now called `FailedToDeserializeForm`.

* changelog

* Make dedicate rejection type for axum-extra's `Form`

* update trybuild test

* Make dedicate rejection type for axum-extra's `Query`
2022-11-08 20:31:06 +00:00
David Pedersen a27bd2c6a2 Update trybuild tests for Rust 1.65.0 (#1509) 2022-11-04 09:07:57 +01:00
David PedersenandJonas Platte b59c7a8c84 Add example for Router::inherit_state (#1492)
* Add example for `Router::inherit_state`

* clarification

* Update axum/src/routing/mod.rs

Co-authored-by: Jonas Platte <[email protected]>

Co-authored-by: Jonas Platte <[email protected]>
2022-10-20 19:19:05 +00:00
David Pedersen 958d360ac4 Generalize AppendHeaders to accept any impl IntoIterator (#1495)
* Generalize `AppendHeaders` to accept any `impl IntoIterator`

* changelog
2022-10-20 21:05:04 +02:00
David Pedersen 4979b4c9b6 Implement Form in terms of RawForm 2022-10-20 20:55:11 +02:00
David Pedersen 7caa4a3a47 Link to fork of realworld-axum-sqlx 2022-10-14 23:42:58 +02:00