All Versions
53
Latest Version
Avg Release Cycle
87 days
Latest Release
-
Changelog History
Page 5
Changelog History
Page 5
-
v0.8.3 Changes
๐ Bug Fixes
- ๐ Fixed #33 -
CircuitBreaker
not decrementing currentExections when under load
- ๐ Fixed #33 -
-
v0.8.2 Changes
๐ New Features
- โ Added support for
onRetriesExceeded
listeners. RetryPolicy
can be extended (it's no longer marked as final)
๐ Bug Fixes
- Abort should not call failure listeners.
- โ Added support for
-
v0.8.1 Changes
๐ New Features
- Simplified listeners API.
- โ Added support for failure listeners via
Failsafe.with(...).onFailure(e -> {})
. - โ Added
onAbort
listeners. - โ Added additional async listeners.
- ๐ง
RetryPolicy
andCircuitBreaker
now support multiple configuration rules. Ex:new RetryPolicy().retryWhen(null).retryWhen("")
. If any rule matches then the policy is matched.
API Changes
- โ Added top level support for listener registration via
Failsafe.with(...).onXxx
. TheListeners
class is now only meant for Java 6 and 7 usage via method overrides. - โ Removed listener registration from
Listeners
class. - โ Removed
AsyncListeners
class. - โ Removed listener registration from
FailsafeFuture
class.
-
v0.8.0 Changes
๐ New Features
- โ Added support for circuit breakers
API Changes
- Project renamed from Recurrent to Failsafe
-
v0.7.1 Changes
๐ Bug Fixes
- โ Added better support for scheduling failure handling
- ๐ Fixed RetryPolicy failure assignability checking
API Changes
- ๐ Invocation APIs were renamed to Execution to better align with the
java.util.concurrent
naming. InvocationStats.getAttemptCount()
was renamed toExecutionStats.getExecutions()
-
v0.7.0 Changes
๐ New Features
- โ Added additional contextual callable and runnable support
API Changes
- ๐ Changed to a new API entry point:
Recurrent.with
. - โ Added
.with
for configuring listeners.
-
v0.6.0 Changes
๐ New Features
- โ Added
RetryPolicy.abortOn
,abortWhen
andabortIf
methods to abort retries when matched.
API Changes
RetryPolicy.retryWhen
was renamed toretryIf
for retrying if aPredicate
is matched.RetryPolicy.retryFor
was renamed toretryWhen
for retrying when a result is matched.- โฑ
Scheduler
andSchedulers
were moved tonet.jodah.recurrent.util.concurrent
.
- โ Added
-
v0.5.0 Changes
๐ New Features
- โ Added support for synchronous and asynchronous event listeners
- โ Added support for
CheckedRunnable
API Changes
- The
Recurrent.run
methods now require aCheckedRunnable
rather thanRunnable
. This allows Recurrent to be used on code that throws checked exceptions without having to wrap the code in try/catch blocks. - ๐ The synchronous
Recurrent.run
andRecurrent.get
methods will throw aRecurrentException
if a failure occurs and the retry policy is exceeded.
-
v0.4.0 Changes
๐ New Features
- โ Added better support for invocation tracking
API Changes
- ๐ New Invocation and
AsyncInvocation
APIs
-
v0.3.3 Changes
๐ New Features
- โ Add
Scheduler
API - ๐ Make
RetryPolicy
copyable
Behavior Changes
- Require
ContextualCallable
andContextualRunnable
to be manually retried - โ Add support for checking multiple retry policy conditions
API Changes
- ๐ป Make ContextualRunnable throw Exception
- โ Add