kotlinx.coroutines v1.3.5 Release Notes

Release Date: 2020-03-17 // 2 months ago
  • 🔖 Version 1.3.5

    • firstOrNull operators. Contributed by @bradynpoulsen
    • java.time adapters for Flow operators. Contributed by @fvasco
    • 👍 kotlin.time.Duration support (#1402). Contributed by @fvasco
    • 🛠 Memory leak with a mix of reusable and non-reusable continuations is fixed (#1855)
    • 🐎 DebugProbes are ready for production installation: its performance is increased, the flag to disable creation stacktraces to reduce the footprint is introduced (#1379, #1372)
    • ↪ Stacktrace recovery workaround for Android 6.0 and earlier bug (#1866).
    • 🆕 New integration module: kotlinx-coroutines-jdk9 with adapters for java.util.concurrent.Flow
    • BroadcastChannel.close properly starts lazy coroutine (#1713).
    • 📇 kotlinx-coroutines-bom is published without Gradle metadata.
    • 👉 Make calls to service loader in reactor integrations optimizable by R8 (#1817)

Previous changes from v1.3.4

  • Flow

    • Detect missing awaitClose calls in callbackFlow to make it less error-prone when used with callbacks (#1762, #1770). This change makes callbackFlow different from channelFlow
    • ReceiveChannel.asFlow extension is introduced (#1490)
    • 🏗 Enforce exception transparency invariant in flow builder (#1657)
    • 👍 Proper Dispatcher support in Flow reactive integrations (#1765)
    • Batch Subscription.request calls in Flow reactive integration (#766)
    • ObservableValue.asFlow added to JavaFx integration module (#1695)
    • ObservableSource.asFlow added to RxJava2 integration module (#1768)

    Other changes

    • 🚀 kotlinx-coroutines-core is optimized for R8, making it much smaller for Android usages (75 KB for 1.3.4 release)
    • 🐎 Performance of Dispatchers.Default is improved (#1704, #1706)
    • ⚡️ Kotlin is updated to 1.3.70
    • CoroutineDispatcher and ExecutorCoroutineDispatcher experimental coroutine context keys are introduced (#1805)
    • 🐎 Performance of various Channel operations is improved (#1565)