Skip to content

v1.0.0-Alpha31 🦝 🫴

Latest
Compare
Choose a tag to compare
@oldratlee oldratlee released this 23 Dec 17:49
· 1 commit to main since this release

shifu

Note

🦝 Cffu has arrived at v1.0 Alpha series~ 🎉

  • Development tries 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

  • ⚠️ fix the wrong exception type check logic of catching* methods 🫴 #291 (by @huhaosumail)
  • defensive copy input array arguments of thenM* methods 🧵
    • they are used asynchronously NOT thread-safe, and could be mutated by caller
  • ⚠️ change cffu logging system property name to cffu.uncaught.exception.log.format from cffu.uncaught.exception.report
    • and rename ExceptionReporter to ExceptionLogger
  • do NOT reuse incomplete CF instance in methods bothFailFast0/eitherSuccess0 like fill0 🤖
  • add addSuppressed for reportUncaughtException 💣
  • extract peek0 methods to LLCF from CFU 🔧
  • move completeCf0 method to LLCF class 🔧

📚 Documentation

  • improve javadoc of catching* methods

🧪 Tests

  • improve test stability

🚜 Build/Chore

  • upgrade dependencies/plugins 📦
  • move macOS job to fast CI

🔌 API Doc

cffu Java API doc: https://foldright.io/api-docs/cffu/1.0.0-Alpha31/

🍪 Maven dependencies

cffu core lib, including cffu enhancement for Java CompletableFuture:

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

cffu executor wrapper SPI implementation for 📌 TransmittableThreadLocal(TTL):

<dependency>
  <groupId>io.foldright</groupId>
  <artifactId>cffu-ttl-executor-wrapper</artifactId>
  <version>1.0.0-Alpha31</version>
  <scope>runtime</scope>
</dependency>