Skip to content

Tascalate Concurrent 0.7.0 (Java 9+ support / Promises.retry refactoring)

Compare
Choose a tag to compare
@vsilaev vsilaev released this 11 Jan 12:40
· 179 commits to master since this release
05c4880

The release contains both important bug fixing and important refactorings:

  1. Promise.orTimeout was fixed (previously no cancellation on timeout)
  2. Promise.delay was fixed (previously no delay on error)
  3. The Executor used after timeout methods now is always the default asynchronous executor of the original Promise (previously this requirement was not hold in some cases).
  4. Promises.retry* and Promises.poll* functionality has been fully revisited -- now only retry is left and it's a responsibility of RetryPolicy to define what result is valid (hence more flexible options besides just non-null are possible); RetryPolicy / DelayPolicy / RetryContext was intensively revisited and are not compatible with previous version.
  5. CompletableTask.submit method is added to allow submitting a Callable -- i.e. a lambda that throws any exception.
  6. Now library is created as a multi-release JAR and may be used with Java 8 as regular classpath library or with Java 9+ as a module