Simple Elixir macros for linear retry, exponential backoff and wait with composable delays
exp_backoff
and lin_backoff
in favor of exponential_backoff
and linear_backoff
(thanks @bamorim for the bug report)BREAKING CHANGES
wait-then-else
to wait-after-else
retry-after-else
after
clauseelse
clauseAllow other atoms or atom-result tuples to be retried, courtesy of @rawkode.
Allow rescue_only
to be a runtime list, thanks to @jvoegele's PR.
Make with
option mandatory again.
Credit to @fredwu for the PR.
Now you can retry on a custom list of exceptions by specifying a list of errors as the first argument to the retry
macro.
Thanks @neerfri for the contribution.
initial_delay
support to exp_backoff
streamIntroducing a new wait-then-else
macro that simplifies asynchronous workflows.
This release also introduces a couple of breaking changes
wait
macro no longer takes the with
key for the delay stream.retry
and backoff
macros have been retired in favor of the newer composable counterparts.Introducing retry_while
.