v1.0.0-Alpha19 π¦ β°
Note
π¦ Cffu
has arrived at v1.0 Alpha
series~ π
- Development will try to keep the compatibility for main API. πΎ
- The incompatible changes are marked with
β οΈ .
Welcome to try out cffu
. π
π Happy with cffu
! π¦ and be a "shifu"~ π
π Refactor/Improvements
CompletableFutureUtils
merges the JDK bugfix "CompletableFuture.orTimeout
leaks if the future completes exceptionally" forJava 8
β°π (by @linzee1)- more info about the JDK bug:
- the JDK bug issue: https://bugs.openjdk.org/browse/JDK-8303742
- PR review: openjdk/jdk#13059
- JDK bugfix commit: openjdk/jdk@ded6a81
- perf(
CompletableFutureUtils
): remove unnecessary copy for SINGLE cf input, because there is a subsequentthenApply
operation which returns a new cf - refactor(
ListenableFutureUtils
): simplifycancel
ofCompletableFutureAdapter
, just return cancel result ofCompletableFutureAdapter
π§ͺ Tests
- add test case of thread interruption check to
ListenableFutureUtils#toCompletableFuture
𧡠(by @linzee1) - rename var with short name in test codes, short code line is more readable in tedious test codes
π Build/Chore
- upgrade dependencies/plugins π οΈ
- upgrade
Kotlin
toK2
π© π
- upgrade
π API Doc
cffu Java API doc
: https://foldright.io/api-docs/cffu/1.0.0-Alpha19/cffu Kotlin API doc
: https://foldright.io/api-docs/cffu-kotlin/1.0.0-Alpha19/
πͺ Maven dependencies
cffu
core lib, including cffu
enhancement for Java CompletableFuture
:
<dependency>
<groupId>io.foldright</groupId>
<artifactId>cffu</artifactId>
<version>1.0.0-Alpha19</version>
</dependency>
cffu
Kotlin
support lib:
<dependency>
<groupId>io.foldright</groupId>
<artifactId>cffu-kotlin</artifactId>
<version>1.0.0-Alpha19</version>
</dependency>
cffu bom
:
<dependency>
<groupId>io.foldright</groupId>
<artifactId>cffu-bom</artifactId>
<version>1.0.0-Alpha19</version>
<type>pom</type>
<scope>import</scope>
</dependency>
cffu executor wrapper SPI implementation
for π TransmittableThreadLocal(TTL)
:
<dependency>
<groupId>io.foldright</groupId>
<artifactId>cffu-ttl-executor-wrapper</artifactId>
<version>1.0.0-Alpha19</version>
<scope>runtime</scope>
</dependency>