这是indexloc提供的服务,不要输入任何密码
Skip to content

v1.0 project management #6

@oldratlee

Description

@oldratlee

📚 Documentation

🦮 CompletableFuture Guide

  • 📌 design patterns of biz usage
  • 📌 best practice and traps
  • write English doc, and English first

see README.md

🎪 CompletableFuture Usage Showcase

see CompletableFutureUsageShowcaseTest.kt

🇨🇳 Translations

📦 Library

see

✨ Support the missing convenient new methods

  • new methods CffuFactory.cffuAllOf(...)(7acfa4d)
    with results version of CompletableFuture.allof
  • new methods CffuFactory.cffuAnyOf(...)(d9df93f)
    type safe version of CompletableFuture.anyOf Method
  • new methods Cffu.cffuCombine(...)
    same as CffuFactory.cffuAllOf(...), providing this method is convenient for method chaining.
  • new method Cffu.cffuJoin support timeout join ⏳ (323e14a)

🚗 Customizable CF

  • sticky default executor for *Async methods

🔮 backport CF methods from high java versions to Java 8

  • Cffu.java
    • timeout control methods orTimeout(...)/completeOnTimeout(...)
    • exceptionallyAsync()
    • exceptionallyCompose(...)/exceptionallyComposeAsync(...)
    • resultNow()/exceptionNow()
    • backport Future#state()
      • and add a new method cffuState() to works on Java 8
    • completeAsync(...)
    • minimalCompletionStage()
    • copy()
    • newIncompleteFuture()
  • CffuFactory.java
    • delay execution methods defaultExecutor(...)
    • completedStage(...)/failedStage(...)
    • failedFuture(...)

🍩 Kotlin support

  • extension methods of java implemented methods

🙌 Mics

  • make lib 0-dependence(optional Kotlin runtime is ok)
    implement tuple instead of common-lang3 dependency

☔️ Testing

👷 Chore

  • CI build/Github Action
    • support build by Java 19 and test by low version java(e.g. Java 8) (3a0c8e3)
      because the implementation used high java version api of CF
    • 📌 release maven SNAPSHOT to repo when main branch integration_test pass

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions