Changes since 4.0.0-beta.1
- Fix a couple of doc comments and an error message to say
failedinstead ofErrored.
Summary of changes since 3.0.0
Breaking changes
- Raise minimum supported Rust version (MSRV) to 1.45.
- Upgrade
reqwestto 0.11 and rename feature flag toreqwest. This upgradestokioto 1.0 and removes support for both thereqwest-010andreqwest-09feature flags. - Drop support for
futures0.1 and remove thefutures-01andfutures-03feature flags; only async/await andfutures0.3 are now supported (without requiring any feature flags). - Eliminate
Async*traits and move therequest_asyncmethods to the underlying*Requeststructs - Migrate public API from
http0.1 to 0.2. - Return error types that implement
std::error::Errorinstead offailure::Fail. - Expose a
serde_path_to_error::Error<serde_json::Error>>in theRequestTokenError::Parsevariant instead of aserde_json::Errorto make JSON deserialization errors easier to diagnose. - Add
#[non_exhaustive]attribute toAuthTypeto support non-breaking additions in the future.
New features
- Add support for OAuth 2.0 Device Authorization Grant.
- Add support for OAuth 2.0 Token Revocation (RFC 7009) (#122).
- Add support for OAuth 2.0 Token Introspection.
- Add support for the
plain(plaintext) PKCE verifier when the (non-default)pkce-plainfeature flag is enabled. Use of this feature is discouraged for security reasons. - Support wasm32 targets (#120).
- Add
ureqHTTP client (#119).
Other changes
- Have
reqwestclient userustls-tlsby default instead of native TLS. This behavior can be overridden using thenative-tlsfeature flag. - RUSTSEC-2016-0005: replace
rust-cryptowithhmacin dev-dependencies