* update reqwest and http crates
remove task_local_extensions
* remove older opentelemetry packages
* remove more legacy and add new otel
* attempt to make features additive
* features are additive
* delete commented out code
* build split
* docs
* more uniform with reqwest::Client
* remove arcs
* slight optimisation
* update readmes
* update changelog
* Add a generic function to the middleware struct for the `Retryable` decision.
The generic function can be used to define custom behaviour to decide whether to retry a request or not.
By default, this function is `Retryable::from_reqwest_response` which is the same as it was before.
* Add a way to create custom retry policies.
A RetryStrategy will dictate what decision will be made based on the result of the sent request.
* Add RetryableStrategy in the `RetryTransientMiddleware` struct instead of the seperate functions
* Add constructor to create a `RetryTransientMiddleware` with a custom `RetryableStrategy`
* Run `cargo fmt`
* Add example code to the `RetryableStrategy` struct
* Run `cargo fmt`
* Updated changelog
* use a trait
* docs
* include latest changes
Co-authored-by: Conrad Ludgate <conrad.ludgate@truelayer.com>
* (cargo-release) reqwest-middleware version 0.1.5
* (cargo-release) reqwest-retry version 0.1.4
* (cargo-release) reqwest-tracing version 0.2.1
* (cargo-release) reqwest-middleware start next development iteration 0.1.6-alpha.0
* (cargo-release) reqwest-retry start next development iteration 0.1.5-alpha.0
* (cargo-release) reqwest-tracing start next development iteration 0.2.2-alpha.0
* Updated CHANGELOGS for 0.1.4 and 0.1.5