ktx icon indicating copy to clipboard operation
ktx copied to clipboard

Release non-beta version

Open czyzby opened this issue 8 years ago • 0 comments

  • [x] A complete tutorial of using KTX to create a simple game. #19
  • [ ] Remove previous beta versions migration guides from README files of ktx-actors, ktx-scene2d and ktx-vis. #136
  • [x] Consistent testing style throughout the project. #109
  • [x] Migrate to stable coroutines API. #154 #182
  • [x] Use the official Kotlin formatting style. #282
  • [x] AssetStorage implementation. #182
    • Loading assets asynchronously is an excellent use case for Kotlin coroutines. AssetStorage is a coroutine-based AssetManager equivalent. Its initial implementation was based on legacy ktx-async API with experimental Kotlin coroutines and it lacked proper multithreading support with mutexes for its internal state. Since we try to leverage existing, convoluted, mutable AssetManager's loaders and APIs, this is not trivial to implement.
  • [x] ktx-vis rewrite. #268 #269
    • ktx-vis and ktx-scene2d were created independently as alternatives, since initially Kotlin lacked some features for proper code reuse in type-safe builders (e.g. optional lambda parameters in inlined methods) and the final API was not agreed upon. We believe this has changed since then and ktx-vis can now be an extension of ktx-scene2d with minimal API changes, similarly to how ktx-vis-style extends ktx-style. The stable version of KTX should contain rewritten version of ktx-vis, compatible and consistent with ktx-scene2d.
  • [x] Kotlin contracts usage. #153
  • [x] Consistent behaviour of operators throughout the modules. #273
    • +, -, * and / should create new objects and never mutate the first operand. Only +=, -=, *= and /= can mutate the parameters.
    • All unary and binary operators should follow official operator overloading guidelines.
  • [ ] Final review of the code in terms of API consistency and Kotlin guidelines.

czyzby avatar May 16 '17 15:05 czyzby