1 unstable release

0.1.0 Apr 19, 2024

#4 in #exponential-backoff

Download history 538/week @ 2024-06-16 1304/week @ 2024-06-23 864/week @ 2024-06-30 1732/week @ 2024-07-07 1138/week @ 2024-07-14 990/week @ 2024-07-21 1039/week @ 2024-07-28 1816/week @ 2024-08-04 2043/week @ 2024-08-11 2376/week @ 2024-08-18 2665/week @ 2024-08-25 1905/week @ 2024-09-01 1228/week @ 2024-09-08 19419/week @ 2024-09-15 27204/week @ 2024-09-22 26527/week @ 2024-09-29

74,468 downloads per month
Used in 7 crates (via reconnecting-jsonrpsee-ws…)

MIT license

18KB
397 lines

finito

This library provides retry mechanisms to retry async operations.

It's based off tokio-retry with the difference that it isn't coupled to any specific async runtime and that it compiles for WASM.

Examples

use finito::{Retry, ExponentialBackoff};

async fn action() -> Result<u64, ()> {
    // do some real-world stuff here...
    Err(())
}

#[tokio::main]
async fn main() -> Result<(), ()> {
    let retry_strategy = ExponentialBackoff::from_millis(10).take(3);    // limit to 3 retries

    let result = Retry::new(retry_strategy, action).await?;

    Ok(())
}

lib.rs:

finito provides retry mechanisms to retry async operations.

It's based off tokio-retry with the difference that it isn't coupled to any specific async runtime and that it compiles for WASM.

Dependencies

~0.4–1MB
~20K SLoC