Commit graph

1469 commits

Author SHA1 Message Date
David Pedersen
446cfca753 Bring back badges 2021-07-30 17:18:54 +02:00
David Pedersen
ca34b4184a Update changelog for 0.1.0 release 2021-07-30 17:17:25 +02:00
David Pedersen
5d2580a9d8 Misc readme fixes 2021-07-30 17:17:18 +02:00
David Pedersen
272e22a23b Release prep 2021-07-30 15:56:01 +02:00
David Pedersen
94d2b5f8a6 Misc readme/docs improvements 2021-07-30 15:51:59 +02:00
David Pedersen
d843f4378b
Make websocket handlers support extractors (#41) 2021-07-30 15:19:53 +02:00
David Pedersen
d927c819d3 Clarify docs around body extractors 2021-07-23 00:27:08 +02:00
David Pedersen
f25f7f90ff Implement IntoResponse for Body 2021-07-22 21:22:46 +02:00
David Pedersen
1fb80a1129 Implement IntoResponse for HeaderMap 2021-07-22 21:21:53 +02:00
David Pedersen
6d483a623a Add testing example with real HTTP server 2021-07-22 21:12:40 +02:00
David Pedersen
9a419de290 Misc clean up 2021-07-22 21:12:29 +02:00
David Pedersen
ba9c03d146 Update links 2021-07-22 19:39:08 +02:00
David Pedersen
9db3b92df4 Remove disclaimer from readme 2021-07-22 15:50:46 +02:00
David Pedersen
7c37bb818a Update goals in readme 2021-07-22 15:44:59 +02:00
David Pedersen
21db427077 Update examples readme 2021-07-22 15:42:04 +02:00
David Pedersen
e4a0199c76 Add missing TOC link 2021-07-22 15:38:55 +02:00
David Pedersen
6705e79ed7
Add todos example (#38) 2021-07-22 15:38:32 +02:00
David Pedersen
8faed8120f
Docs improvements (#37) 2021-07-22 15:00:33 +02:00
David Pedersen
a658c94f23 Use correct error type if Json serialization fails
Fixes https://github.com/davidpdrsn/axum/issues/35
2021-07-22 13:26:14 +02:00
David Pedersen
f32d325e55
Make extractors easier to write (#36)
Previously extractors worked directly on `Request<B>` which meant you
had to do weird tricks like `mem::take(req.headers_mut())` to get owned
parts of the request.

This changes that instead to use a new `RequestParts` type that have
methods to "take" each part of the request. Without having to do weird
tricks.

Also removed the need to have `B: Default` for body extractors.
2021-07-22 13:23:50 +02:00
David Pedersen
e544fe1c39 More flexible generic responses 2021-07-22 11:14:55 +02:00
David Pedersen
028c472c84
Add Multipart extractor for consuming multipart/form-data requests (#32)
Multipart implementation on top of `multer`
2021-07-14 16:53:37 +02:00
David Pedersen
e641caefaf
Remove hyper-h1 and hyper-h2 features (#31) 2021-07-14 16:29:06 +02:00
David Pedersen
341ad61240 Clarify body extractors 2021-07-10 23:46:14 +02:00
David Pedersen
62da1eac00 Allow extractor_middleware to extract the body 2021-07-10 23:39:40 +02:00
David Pedersen
2e2f697f80 Minor docs improvements 2021-07-09 23:39:39 +02:00
David Pedersen
1cbd43cfc4
Add extractor_middleware (#29)
Converts an extractor into a middleware so it can be run for many routes
without having to repeat it in the function signature.
2021-07-09 23:38:59 +02:00
David Pedersen
0c19fa4d52 Minor readme improvements 2021-07-09 21:42:41 +02:00
David Pedersen
f5fa64dae6 Name is no longer pending 2021-07-09 21:37:44 +02:00
David Pedersen
5a5710d290
Rename to axum (#28) 2021-07-09 21:36:14 +02:00
David Pedersen
3cd4a1d6a6
Fix for service as bottom handler (#27)
Would previously fail because of a mismatch in error types.
2021-07-06 09:40:25 +02:00
David Pedersen
c4d266e94d
Allow errors (#26)
This changes error model to actually allow errors. I think if we're going to use this for things like tonic's route we need a more flexible error handling model. The same `handle_error` adaptors are still there but services aren't required to have `Infallible` as their error type. The error type is simply propagated all the way through.
2021-07-05 16:18:39 +02:00
David Pedersen
3fc7f1880f Rename tokio-postgres example 2021-06-19 15:40:46 +02:00
David Pedersen
8d8cc3ba3d
Examples readme (#25)
* Examples readme

* link?
2021-06-19 14:06:49 +02:00
David Pedersen
44577a0108
Add testing example (#24) 2021-06-19 13:44:21 +02:00
David Pedersen
356f1c8424
Generic request body (#22)
Fixes #21
2021-06-19 12:50:33 +02:00
David Pedersen
6a16cd40ca
Add error handling and dependency injection example (#23) 2021-06-19 12:34:42 +02:00
David Pedersen
4fc3d8b5ba
Replace unsafe with unwrap (#20) 2021-06-15 23:18:49 +02:00
David Pedersen
8a82fd00aa
Add bb8 connection pool example (#19)
I figure this will be quite common.
2021-06-15 22:25:41 +02:00
David Pedersen
b6e67eefd7
Add support for extracting typed headers (#18)
Uses the `headers` crate.
2021-06-15 21:27:21 +02:00
David Pedersen
2f6699aeae
Add HTML template example (#17) 2021-06-13 13:58:12 +02:00
David Pedersen
460828a3cb
Add versioning extractor example (#16) 2021-06-13 13:50:56 +02:00
David Pedersen
7684736817 Fix readme link 2021-06-13 13:11:57 +02:00
David Pedersen
97d9cb2ab7 Tweak readme example 2021-06-13 13:09:24 +02:00
David Pedersen
c41c9e0f78
Support extracting URL params multiple times (#15)
Useful when building higher order extractors.
2021-06-13 13:06:33 +02:00
David Pedersen
2b360a7873
Support getting error from extractors (#14)
Makes `Result<T, T::Rejection>` an extractor and makes all extraction errors enums so no type information is lost.
2021-06-13 12:06:59 +02:00
David Pedersen
1002685a20
Rename to awebframework (#13) 2021-06-13 11:22:02 +02:00
David Pedersen
27ebb3db7a
Add Form extractor (#12)
Fixes https://github.com/davidpdrsn/tower-web/issues/2
2021-06-13 11:01:40 +02:00
David Pedersen
59944c231f
Reduce size of response body types (#11)
Wrapping everything in `crate::body::Either` wasn't actually necessary
ans probably causes large body types. You can instead box the bodies in
the leaf services.
2021-06-13 10:10:37 +02:00
David Pedersen
7a051eb2d0
Fix static file serving in examples (#10) 2021-06-13 00:17:17 +02:00