Skip to content

Releases: foldright/cffu

v0.9.0 🦝 : doc, doc, doc 📚 💗

09 Apr 16:28
Compare
Choose a tag to compare

shifu

💗 Happy with cffu! 🦝 and be a "shifu"~ 😆

📚 Documentation

  • writing CF guide 🦮 :
    • improve CF function intro
    • improve "concept & term" section
    • add "Error handling" section
    • add/improve images
  • add functions and demo into cffu lib docs 📚
  • split cf-functions-intro.md and cf-design-patterns.md 📚 from README
  • add kotlin badge in README

☔️ Test

  • add test cases for similarities and differences between cancelled and exceptionally CF
  • add test cases for nested exception setting
  • re-organize test case of CompletableFutureApiCompatibilityTest
  • rename methods of TestUtils.kt

⚒️ Refactor

  • move helper class to DelayExecutionHelpers.java

🚜 Chore/Bulid

  • CI test low version kotlin 🍩 : 1.5, 1.6, 1.7
  • simplify and improve config of kotlin-maven-plugin
  • add fast_ci.yaml into GitHub actions
  • add Windows OS into fast ci
  • bump maven-enforcer-plugin from 3.2.1 to 3.3.0 (#21)
  • bump spotbugs-maven-plugin from 4.7.3.3 to 4.7.3.4 (#22)

🔌 Java API Doc

https://foldright.io/cffu/apidocs/0.9.0/index.html

🍪 Maven dependency

<dependency>
    <groupId>io.foldright</groupId>
    <artifactId>cffu</artifactId>
    <version>0.9.0</version>
</dependency>

v0.8.3 🦝 : more Kotlin extension methods and Test 🍩 ☔️

04 Apr 06:02
Compare
Choose a tag to compare

shifu

💗 Happy with cffu! 🦝 and be a "shifu"~ 😆

☘️ Features

  • add combine kotlin extension methods 🍩 for CompletableFuture

☔️ Test

  • add test case for forbidObtrudeMethods of CffuFactory
  • add test case for executor setting of CffuFactory
  • add more test case for cffuJoin
  • check UOE message because of minimal stage
  • use Blocker instead of explicit CountDownLatch

📚 Documentation

  • improve javadoc of Cffu
  • improve API doc of CffuExtensions.kt

🚜 Chore/Bulid

  • bump jacoco-maven-plugin from 0.8.8 to 0.8.9 (#20)

🔌 Java API Doc

https://foldright.io/cffu/apidocs/0.8.3/index.html

🍪 Maven dependency

<dependency>
    <groupId>io.foldright</groupId>
    <artifactId>cffu</artifactId>
    <version>0.8.3</version>
</dependency>

v0.8.2 🦝 : more Kotlin extension methods 🍩💗

02 Apr 18:04
Compare
Choose a tag to compare

shifu

💗 Happy with cffu! 🦝 and be a "shifu"~ 😆

☘️ Features

  • add more kotlin extension methods 🍩 for allOf/anyOf operations
  • support destructuring declarations for cffu tuples by adding component<N> extension methods 🍩

🛠️ Refactor

  • rename kotlin extension methods 🍩 :
    • allCompletableFuture -> allOfCompletableFuture
    • anyCompletableFuture -> anyOfCompletableFuture
    • allCffu -> allOfCffu
    • anyCffu -> anyOfCffu
  • move CompletableFuture only related logic to static methods of CompletableFutureUtils
  • improve NPE message
  • rename parameter name of toCompletableFutureArray

☔️ Test

  • rename methods of TestUtils

🚜 Chore/Bulid

  • bump kotlin.version from 1.8.10 to 1.8.20 (#19)

🔌 Java API Doc

https://foldright.io/cffu/apidocs/0.8.2/index.html

🍪 Maven dependency

<dependency>
    <groupId>io.foldright</groupId>
    <artifactId>cffu</artifactId>
    <version>0.8.2</version>
</dependency>

v0.8.1 🦝 : more Kotlin extension methods 🍩💗

29 Mar 18:32
Compare
Choose a tag to compare

shifu

💗 Happy with cffu! 🦝 and be a "shifu"~ 😆

☘️ Features

  • add kotlin extension methods 🍩 :
    • allCompletableFuture/anyCompletableFuture for Collection<CompletableFuture<*>>/Array<CompletableFuture<*>>
    • allCffu/anyCffu for CF/Cffu Array/Collection
    • asCffu/toCompletableFuture/cffuUnwrap for CF/Cffu Array/Collection
  • CffuFactory.toCompletableFutureArray support CompletionStage 🔌

🐞 Bug Fix

  • Cffu.newIncompleteFuture() not return minimal stage for minimal stage cffu instances, UNEXPECTED

🛠️ Refactor

  • refactor: rename local vars of method CffuFactory.cffuAllOf(CF...)

☔️ Test

  • improve stability 💪 🐒
  • perf: use BlackHoleExecutor instead of commonPool() for minimal stage check

📚 Documentation

  • docs: improve section comments of Cffu

🚜 Chore/Bulid

  • avoid unexpected build failure from spotbugs by excluding kotlin files

🔌 Java API Doc

https://foldright.io/cffu/apidocs/0.8.1/index.html

🍪 Maven dependency

<dependency>
    <groupId>io.foldright</groupId>
    <artifactId>cffu</artifactId>
    <version>0.8.1</version>
</dependency>

v0.8.0 🦝 : test, test, test 💗

27 Mar 20:26
Compare
Choose a tag to compare

💗 Happy with cffu! 🦝 and be a "shifu"~ 😆

shifu

☔️ Test

  • 💪 test case: check MinimalStage status of Cffu/CompletableFuture 🙌
  • 💪 test case: check thread/executor for *Async operation of CompletableFuture/Cffu 🙌
  • test: output env infos when test 👀
  • reduce test thread pool size 📉
  • use CompletionStage.await() instead of Future.get() if in Kotlin coroutine

📚 Documentation

  • add overview.html for javadoc
  • fix wrong external link of javadoc(java std lib, jsr305)
    by setting source option of javadoc to 19
  • improve javadoc of Cffu.state()/CffuFactory#asCffu/CffuFactory.AsyncPoolHolder
  • fix wrong section comments of CffuFactory 📚
  • place @SuppressWarnings("unchecked") as last annotation ✋
    because it's least informative for user

🚜 Chore/Bulid

  • add kotlin.compiler.apiVersion = 1.5 🍩
    make sure works for older kotlin version
  • update CI java 20 version to release from ea ☕️
  • add java 21 ✨ to CI

🔌 Java API Doc

https://foldright.io/cffu/apidocs/0.8.0/index.html

🍪 Maven dependency

<dependency>
    <groupId>io.foldright</groupId>
    <artifactId>cffu</artifactId>
    <version>0.8.0</version>
</dependency>

v0.2.1 🦝 : new methods `Cffu.cffuCombine(...)`, `CompletionStage.asCffu` kotlin extension 💗

27 Mar 04:59
Compare
Choose a tag to compare

💗 Happy with cffu! 🦝 and be a "shifu"~ 😆

shifu

🍀 New features

  • add new methods Cffu.cffuCombine(...) 🚞
    providing these method is convenient for method chaining
  • implement CompletionStage.asCffu kotlin extension method 🍩
  • add new method Cffu.cffuFactory() 🏭

🛠️ Refactor

  • change CffuState#toFutureState to instance method 📦
  • update CffuFactory.screenExecutor and reorder it
  • make Cffu.cf field private, because there is Cffu.cffuUnwrap method

🚜 Chore/Bulid

  • upgrade maven wrapper to 3.9.1 🪶
  • bump maven-deploy-plugin from 3.1.0 to 3.1.1 (#16)
  • bump maven-resources-plugin from 3.3.0 to 3.3.1 (#17)
  • bump maven-install-plugin from 3.1.0 to 3.1.1 (#18)

Java API Doc

https://foldright.io/cffu/apidocs/0.2.1/index.html

Maven dependency

<dependency>
    <groupId>io.foldright</groupId>
    <artifactId>cffu</artifactId>
    <version>0.2.1</version>
</dependency>

v0.2.0 🦝 : new Cffu methods cffuState/forbidObtrudeMethods/isMinimalStage 🍀

24 Mar 09:14
Compare
Choose a tag to compare

💗 Happy with cffu! 🦝 and be a "shifu"~ 😆

shifu

🍀 New features

  • add new Cffu method cffuState
  • add new Cffu methods forbidObtrudeMethods/isMinimalStage 🍀

🛠️ Refactor

  • rename CffuFactory methods:
    • getDefaultExecutor -> defaultExecutor
    • isForbidObtrudeMethods -> forbidObtrudeMethods
  • rename Cffu.reset to reset0 🫥
    avoid name conflict to future base method names
  • reorder method categories of Cffu 🚞

📚 Documentation

  • update badges in README
  • add package-info.java for javadoc and lib description
  • fix wording succeed -> successful 📝

🚜 Chore/Bulid

  • bump spotbugs-maven-plugin from 4.7.3.2 to 4.7.3.3 (#15)

Java API Doc

https://foldright.io/cffu/apidocs/0.2.0/index.html

Maven dependency

<dependency>
    <groupId>io.foldright</groupId>
    <artifactId>cffu</artifactId>
    <version>0.2.0</version>
</dependency>

v0.1.0: first release 🦝💗

23 Mar 11:34
Compare
Choose a tag to compare

💗 Happy with cffu! 🦝 and be a "shifu"~ 😆

shifu

Java API Doc

https://foldright.io/cffu/apidocs/0.1.0/index.html

Maven dependency

<dependency>
    <groupId>io.foldright</groupId>
    <artifactId>cffu</artifactId>
    <version>0.1.0</version>
</dependency>