kotlinx.coroutines v1.3.4 Release Notes

  • 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).