Skip to content

v1.0.0-Alpha12 🦝 🌟

Compare
Choose a tag to compare
@oldratlee oldratlee released this 29 Jun 17:33
· 243 commits to main since this release

shifu

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"~ 😆


Welcome new cffu team member @huhaosumail 👏 💕

Thanks for your excellent works! 🚀

☘️ Features

  • implement the M* methods(by new cffu team member @huhaosumail) ✨ 👯
    • tupleMApplyMostSuccessAsync/tupleMSupplyMostSuccessAsync/thenTupleMApplyMostSuccessAsync in CompletableFutureUtils
    • Multi-Actions(M*)/Tuple-Multi-Actions(tupleM*) in CffuFactory
    • Then-Multi-Actions(thenM*)/thenTupleMApplyMostSuccessAsync in Cffu

🛠 Refactor/Improvements

  • ⚠️ renaming methods, treat mostSuccess/anySuccess as one concept/phrase 🌟
  • refactor/cleanup methods: 🔧 🧹
    • rename parameter to cfThis from cf for the instance methods in CompletableFutureUtils
    • ⚠️ change the cfThis type to CompletableFuture from CompletionStage for thenM*/thenBoth*/thenEither* methods in CompletableFutureUtils
    • remove the fast-fail/any-success method reference javadoc; too tedious, should javadoc at the package or classes
  • fix thenTupleMApply* methods: 🐞 (by @huhaosumail)
    • miss the use of value of Function
    • wrong fast fail argument for fast-fail-methods
  • rename internal help methods toCf*, reflect the safety semantics correctly; improve javadoc of related methods 🦺
  • change internal helper methods allTupleOf0/toCfArray0 signature, place the varargs/array parameter last 🪑
  • rename internal wrapActions method to wrapRunnables, consistent with other wrap* methods

🚜 Build/Chore

  • add IntelliJ IDEA project dict 📖
  • upgrade dependencies/plugins 🛠️

🔌 API Doc

🍪 Maven dependencies

cffu core lib, including cffu enhancement for Java CompletableFuture:

<dependency>
    <groupId>io.foldright</groupId>
    <artifactId>cffu</artifactId>
    <version>1.0.0-Alpha12</version>
</dependency>

cffu Kotlin support lib:

<dependency>
    <groupId>io.foldright</groupId>
    <artifactId>cffu-kotlin</artifactId>
    <version>1.0.0-Alpha12</version>
</dependency>

cffu bom:

<dependency>
    <groupId>io.foldright</groupId>
    <artifactId>cffu-bom</artifactId>
    <version>1.0.0-Alpha12</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-Alpha12</version>
  <scope>runtime</scope>
</dependency>