NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
crates.io · #2390 most downloaded on crates.io
Extensible, asynchronous retry behaviors for futures/tokio
Last release 8 months ago
11 Jan 2026
Release timing varies
gaps range from 8 days to 7 months
Most releases are documented
notes for 13 of 16 stable releases
1 version withdrawn
withdrawn after publishing
2 years old
17 releases · first in 2024
One column per month.
Requires Notify trait to implement Send for multi-thread environments
Notify trait to implement Send for multi-thread environmentsEnforces must_use for functions returning Self.
must_use for functions returning Self.jitter_range now receives a Range<u32>, and previous jitter_range is now called jitter_with_bounds.RetryError::ToStringLinearBackoff strategy.Implemented Notify for Box to support trait objects.
Notify for Box<dyn Notify> to support trait objects.spawn_notify to accept generic Notify implementations.EmptyNotify for default no-op behavior.Notify trait from library root.Increased minimum required version to 1.88.
Nothing published for this version
Nothing published for this version
### Breaking - Updated to edition 2024.
edition 2024.Nothing published for this version
Nothing published for this version
Added ExponentialFactorBackoff, where the exponential value is the factor and not the duration.
ExponentialFactorBackoff, where the exponential value is the factor and not the duration.Include feature tracing to inform when a max_duration or max_delay has been reached.
tracing to inform when a max_duration or max_delay has been reached.retry_after duration was not overwriting the strategy duration.jitter ranges between 50% and 150% of initial duration.jitter_range for custom map jitter ranges.Exports MaxIntervalIterator as standard strategy struct.
MaxIntervalIterator as standard strategy struct.Fixes Transient duration behavior, overwriting original duration.
Add implicit conversion from Result to RetryResult a type enabled by feature to handle implicit type conversions from E to RetryError ::Transient. Sam
Result<T, E> to RetryResult<T, E> a type enabled by feature to handle implicit type conversions from E to RetryError<E>::Transient. Same for Option<T>.PartialEq between Result<T, RetryError<E>> and RetryResult<T, E> for T and E bounded by PartialEq.Adds MapErr trait to RetryError, that facilitates handling map_err in Result types, transforming them into Result<_, RetryError<_>>
MapErr trait to RetryError, that facilitates handling map_err in Result types, transforming them into Result<_, RetryError<_>>Adds RetryError type inspired by `backoff Error` where user can define Errors as Transient and Permanent so it is possible to early exit a retry.
RetryError type inspired by backoff Error where user can define Errors as Transient and Permanent so it is possible to early exit a retry.Adds Retry::spawn_notify to notify a retry with the associated Error and current Duration, PR #4.
Retry::spawn_notify to notify a retry with the associated Error and current Duration, PR #4.Your coding agent can read these notes before it upgrades. Set up the MCP server →