Commit Graph

223 Commits

Author SHA1 Message Date
David Pedersen 515495d957
Set `content-length` for responses to `HEAD` requests (#734)
* Set `content-length` internally in `Router`

* changelog

* require `B: HttpBody` at the `impl`

* add changelog refs
2022-01-31 13:48:51 +01:00
David Pedersen 9004a14302
Move `middleware::from_fn` into axum (#719)
* Move `middleware::from_fn` into axum

* changelog

* fix feature

* Rephrase changelog a bit
2022-01-25 10:19:06 +01:00
David Pedersen 4f6e86f026 Fixup changelogs 2022-01-25 09:46:26 +01:00
David Pedersen b1ef0be1a7 Remove `RequestParts::take_extensions` (#699)
* Remove `RequestParts::take_extensions`

* fix out of date docs

* Remove RequestAlreadyExtracted and replace it with BodyAlreadyExtracted

* fix docs

* fix test

* Update axum-core/src/extract/mod.rs

Co-authored-by: Jonas Platte <jplatte@users.noreply.github.com>

* Remove macro only used once

Co-authored-by: Jonas Platte <jplatte@users.noreply.github.com>
2022-01-23 18:01:52 +01:00
David Pedersen 6d01f3968e
axum-extra: Version 0.1.2 (#705)
- **fix:** Depend on tower with `default_features = false` ([#666])

[#666]: https://github.com/tokio-rs/axum/pull/666
2022-01-13 10:37:56 +01:00
Sabrina Jewson 031e0fd472
Store Bytes in ErasedJson (#672) 2021-12-28 10:41:21 +00:00
Guy Lapid d602682821
Add support for returning pretty JSON response in `axum_extra::response::ErasedJson` (#662) 2021-12-28 09:19:24 +00:00
David Pedersen 4fd7e927ba
Document how to pass state to `middleware::from_fn` (#669) 2021-12-27 23:53:50 +01:00
David Pedersen 1020d0144b
Improve middleware examples using auth (#668)
* Make `middleware::from_fn` examples less secure

* Also improve `extractor_middleware` example
2021-12-27 23:34:37 +01:00
David Pedersen de37a3e737
Tweak tower dependency in axum-extra (#666)
Fixes https://github.com/tokio-rs/axum/issues/659
2021-12-27 23:28:58 +01:00
Sabrina Jewson 7df611319e
Fix axum-extra's optional feature documentation (#663) 2021-12-27 18:12:46 +01:00
David Pedersen 9f5f29dfba
axum-extra: Version 0.1.1 (#658)
- Add `middleware::from_fn` for creating middleware from async functions ([#656])

[#656]: https://github.com/tokio-rs/axum/pull/656
2021-12-27 15:23:02 +01:00
David Pedersen f4716084a7
Add `middleware::from_fn` for creating middleware from async fns (#656)
* Add `middleware::from_fn` for creating middleware from async fns

* More trait impls for `Next`

* Make `Next::run` consume `self`

* Use `.router_layer` in example, since middleware returns early

* Actually `Next` probably shouldn't impl `Clone` and `Service`

Has implications for backpressure and stuff

* Simplify `print-request-response` example

* Address review feedback

* add changelog link
2021-12-27 14:01:26 +01:00
Kai Jewson dfb06e721c
Introduce `Response` type alias as a shorthand for `Response<BoxBody>` (#590)
* Introduce `Response` type alias as a shorthand

* Don't re-export `Response` at the crate root
2021-12-05 19:16:46 +01:00
David Pedersen a63843d6c5
Release axum, axum-core, and axum-extra (#582) 2021-12-02 20:02:38 +01:00
Kai Jewson 2b6dba49cb
Remove the associated `Body` type on `IntoResponse` (#571) 2021-11-28 18:52:18 +01:00
David Pedersen 96b353b556
Add `Cached` extractor (#565)
* extra: Add `Cached` extractor

`Cached` wraps another extractor and caches its result in request
extensions.

* Use newtype to avoid overriding extensions of the same type

* Rename type param
2021-11-25 10:14:31 +00:00
Pure White 5a5800c1ae
feat: default to charset=utf-8 for text content type (#554)
* feat: default to charset=utf-8 for text content type

* added changelog && fix comment

* fix workflow
2021-11-25 08:31:30 +00:00
Jonas Platte 69fee5864d
Use .to_owned() instead of .to_string() to turn &str into String (#548) 2021-11-19 22:15:47 +00:00
David Pedersen ab9f1ef993
Change how `Resource`s are added to `Router`s (#544) 2021-11-19 21:59:07 +01:00
David Pedersen f9a437d081
Add `Resource` to axum-extra (#538) 2021-11-17 22:31:43 +00:00
Jonas Platte b43b9ed69d
Add axum_extra::response::ErasedJson (#537) 2021-11-17 22:54:02 +01:00
David Pedersen a16ea65031
Add `axum-extra` crate (#536)
* Add `axum-extra` crate

Empty for now but now we have a place to put stuff.

I'll make a PR for moving over https://github.com/davidpdrsn/axum-resource.

* remove `authors` field from `Cargo.toml`s
2021-11-17 20:00:32 +00:00