retry-policies
A collection of plug-and-play retry policies for Rust projects.
0.5.2
48M downloads/mo
#1251 most downloaded on crates.io
TrueLayer/retry-policies
What this package is like to depend on
Last release 3 months ago
09 May 2026
Ships fairly regularly
a new release about every 7 months
Nearly every release is documented
notes for 10 of 10 stable releases
Nothing withdrawn
no release was ever pulled
5 years old
10 releases · first in 2021
1 release in the last 12 months
see the full history below
Release timeline
10 releases · Aug 2021 to May 2026
2022
2023
2024
2025
2026
Releases
latest 10-
0.5.209 May 2026 -
0.5.120 May 2025Release notes
Open source →Changed
- Improved bounded jitter to use 50% of
min_retry_intervalinstead of 100%.
Release notes
Open source →Changed
- Improved bounded jitter to use 50% of
min_retry_intervalinstead of 100%.
- Improved bounded jitter to use 50% of
-
0.5.014 May 2025Release notes
Open source →Changed
- [Breaking] Renamed
build_with_total_retry_duration_and_max_retriestobuild_with_total_retry_duration_and_limit_retries.
Added
- Added
build_with_total_retry_duration_and_max_retries.
Release notes
Open source →Changed
- [Breaking] Renamed
build_with_total_retry_duration_and_max_retriestobuild_with_total_retry_duration_and_limit_retries.
Added
- Added
build_with_total_retry_duration_and_max_retries.
- [Breaking] Renamed
-
0.4.010 May 2024Release notes
Open source →Changed
- [Breaking] Replace
chronowith standard library types- Replace
chrono::DateTime<Utc>withstd::time::SystemTime
- Replace
Removed
- Remove unused
anyhowdependency - Remove
fakedependency
Release notes
Open source →Changed
- [Breaking] Replace
chronowith standard library types- Replace
chrono::DateTime<Utc>withstd::time::SystemTime
- Replace
Removed
- Remove unused
anyhowdependency - Remove
fakedependency
- [Breaking] Replace
-
0.3.004 Mar 2024Release notes
Open source →- [Breaking] Implement
RetryPolicyforExponentialBackoffTimed, which requires a modification to theshould_retrymethod of
RetryPolicyin order to pass the time at which the task (original request) was started.
Release notes
Open source →- [Breaking] Implement
RetryPolicyforExponentialBackoffTimed, which requires a modification to theshould_retrymethod ofRetryPolicyin order to pass the time at which the task (original request) was started.
- [Breaking] Implement
-
0.2.111 Oct 2023Release notes
Open source →Added
- Total duration algorithm can now be configured to also consider max retries, calculated applying no jitter (1.0)
- We enforce whatever comes first, total duration or max retries
- Exponential base is now configurable
- Total duration algorithm can now be configured to also consider max retries, calculated applying no jitter (1.0)
-
0.2.021 Jul 2023Release notes
Open source →Changed
- [Breaking] Change backoff and jitter algorithms
- Change the backoff algorithm to a more conventional exponential backoff.
- Replace the decorrelated jitter algorithm with an option of either none, full, or bounded. Defaults to full jitter.
- [Breaking] Remove
ExponentialBackoffBuilder::backoff_exponent()- The number of attempts is now used as the exponent.
- [Breaking] Require a task start time when using a total retry duration
ExponentialBackoffBuilder::build_with_total_retry_duration()now returnsExponentialBackoffTimedwhich does not implementRetryPolicy.
- [Breaking] Mark
ExponentialBackoffasnon_exhaustive- Can no longer be constructed directly.
- [Breaking] Change backoff and jitter algorithms
-
0.1.228 Oct 2022 -
0.1.118 Oct 2021 -
0.1.011 Aug 2021