kotlinx.coroutines v1.0.0-RC1 Release Notes

    • โšก๏ธ Coroutines API is updated to Kotlin 1.3.
    • ๐Ÿšš Deprecated API is removed or marked as internal.
    • โš  Experimental and internal coroutine API is marked with corresponding kotlin.experimental.Experimental annotation. If you are using @ExperimentalCoroutinesApi or @InternalCoroutinesApi you should explicitly opt-in, otherwise compilation warning (or error) will be produced.
    • ๐Ÿ‘ Unconfined dispatcher (and all dispatchers which support immediate invocation) forms event-loop on top of current thread, thus preventing all StackOverflowErrors. Unconfined dispatcher is now much safer for the general use and may leave its experimental status soon (#704).
    • ๐ŸŽ Significantly improved performance of suspending hot loops in kotlinx.coroutines (#537).
    • Proguard rules are embedded into coroutines JAR to assist jettifier (#657)
    • ๐Ÿ›  Fixed bug in shutdown sequence of runBlocking (#692).
    • ๐Ÿ—„ ReceiveChannel.receiveOrNull is marked as obsolete and deprecated.
    • ๐Ÿ—„ Job.cancel(cause) and ReceiveChannel.cancel(cause) are deprecated, cancel() returns Unit (#713).