* punt on examples for now
* remove dependency on hyper
* port to http-body 1.0
* note which types from http_body_util is in our public api
* wrap body types
* fix some warnings
* comment out compression stuff for now
* validate-request docs
* trace
* timeout
* set_status
* set_header
* serve_dir
* redirect
* follow_redirect
* sensitive_headers
* request_id
* propagate_header
* normalize_path
* in_flight_requests
* map_response_body
* map_request_body
* limit
* lib
* cors
* classify
* add_extension
* catch_panic
* add_authorization
* require_authorization + async_require_authorization
* builder
* format
* fixes
* fix docs
* fix cargo hack
* is this breaking patches in Cargo.toml?
* update to 1.0 of dependencies
* porting compression like this seems to work \o/
* use `BodyExt::collect` in tests
* compression is back!
* and thats decompression!
* remove hyper specific test
* Update examples/axum-key-value-store/src/main.rs
Co-authored-by: Jonas Platte <jplatte+git@posteo.de>
* bring back client examples
* fix doc tests
* forgot ServiceBuilderExt
* changelog
* Fix potential ordering issues with `BodyIntoStream`
* don't delegate `is_end_stream`
* fix typos
* use std::task::ready
* uncomment CompressionLayer in examples
* Derive default
* format
* bring back hyper compat test
* remove lint. Lets just add this back later. Wanna merge now
---------
Co-authored-by: Jonas Platte <jplatte+git@posteo.de>
* More easily mark multiple headers as sensitive
* docs fixes
* Try to avoid clones
* Try as ref
* Change to `Arc<Vec<HeaderName>>` and rename things to plural `Headers`
* Docs
* Fix accidental rename
* Change to `Arc<[HeaderName]>`
* Clean up imports
* Fix change on master
* Docs tweaks
* Disable compression for gRPC
* Don't add `accept-encoding` to grpc requests
* Remove debugging code
* Disable formatting of tonic build output
Because it breaks CI
* Apply suggestions from code review
Co-authored-by: Lucio Franco <luciofranco14@gmail.com>
* Address review feedback
Co-authored-by: Lucio Franco <luciofranco14@gmail.com>
* `Trace` middleware
* Make `MakeSpan` generic over the body
That way we can implement it for closures
* Small cleanup
* Implement callback traits for `()`
For doing nothing
* Callback for sending body chunks
* minor clean up
* Add microseconds latency unit and log headers in right place
* Document all the things
* Fix comment
* Include trace layer in tonic example
* Also include tracing middleware on tonic client
* Add warp example
* Add some more middlewares
* Add test for warp example
* Does this work?
* Change example so we avoid complex type
* Replace `Database` type alias with struct
* Update examples/warp-key-value-store/README.md
Co-authored-by: Daiki Mizukami <tesaguriguma@gmail.com>
Co-authored-by: Daiki Mizukami <tesaguriguma@gmail.com>