Skip to content

Commit

Permalink
Version 0.24.0
Browse files Browse the repository at this point in the history
  • Loading branch information
elizarov committed Jul 26, 2018
1 parent 7050899 commit 9964b3d
Show file tree
Hide file tree
Showing 7 changed files with 37 additions and 9 deletions.
28 changes: 28 additions & 0 deletions CHANGES.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,33 @@
# Change log for kotlinx.coroutines

## Version 0.24.0

* Fully multiplatform release with Kotlin/Native support (see #246):
* Only single-threaded operation inside `runBlocking` event loop is supported at this moment.
* See details on setting up build environment [here](native/README.md).
* Improved channels:
* Introduced `SendChannel.invokeOnClose` (see #341).
* Make `close`, `cancel`, `isClosedForSend`, `isClosedForReceive` and `offer` linearizable with other operations (see #359).
* Fixed bug when send operation can be stuck in channel forever.
* Fixed broadcast channels on JS (see #412).
* Provides `BlockingChecker` mechanism which checks current context (see #227).
* Attempts to use `runBlocking` from any supported UI thread (Android, JavaFx, Swing) will result in exception.
* Android:
* Worked around Android bugs with zero-size ForkJoinPool initialization (see #432, #288).
* Introduced `UI.immediate` extension as performance-optimization to immediately execute tasks which are invoked from the UI thread (see #381).
* Use it only when absolutely needed. It breaks asynchrony of coroutines and may lead to surprising and unexpected results.
* Fixed materialization of a `cause` exception for `Job` onCancelling handlers (see #436).
* Fixed JavaFx `UI` on Java 9 (see #443).
* Fixed and documented the order between cancellation handlers and continuation resume (see #415).
* Fixed resumption of cancelled continuation (see #450).
* Includes multiple fixes to documentation contributed by @paolop, @SahilLone, @rocketraman, @bdavisx, @mtopolnik, @Groostav.
* Experimental coroutines scheduler preview (JVM only):
* Written from scratch and optimized for communicating coroutines.
* Performs significantly better than ForkJoinPool on coroutine benchmarks and for connected applications with [ktor](http:https://ktor.io).
* Supports automatic creating of new threads for blocking operations running on the same thread pool (with an eye on solving #79), but there is no stable public API for it just yet.
* For preview, run JVM with `-Dkotlinx.coroutines.scheduler` option. In this case `DefaultDispatcher` is set to new experimental scheduler instead of FJP-based `CommonPool`.
* Submit your feedback to issue #261.

## Version 0.23.4

* Recompiled with Kotlin 1.2.51 to solve broken metadata problem (see [KT-24944](https://youtrack.jetbrains.com/issue/KT-24944)).
Expand Down
8 changes: 4 additions & 4 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

[![official JetBrains project](http:https://jb.gg/badges/official.svg)](https://confluence.jetbrains.com/display/ALL/JetBrains+on+GitHub)
[![GitHub license](https://img.shields.io/badge/license-Apache%20License%202.0-blue.svg?style=flat)](http:https://www.apache.org/licenses/LICENSE-2.0)
[![Download](https://api.bintray.com/packages/kotlin/kotlinx/kotlinx.coroutines/images/download.svg?version=0.23.4) ](https://bintray.com/kotlin/kotlinx/kotlinx.coroutines/0.23.4)
[![Download](https://api.bintray.com/packages/kotlin/kotlinx/kotlinx.coroutines/images/download.svg?version=0.24.0) ](https://bintray.com/kotlin/kotlinx/kotlinx.coroutines/0.24.0)

Library support for Kotlin coroutines with [multiplatform](#multiplatform) support.
This is a companion version for Kotlin 1.2.51 release.
Expand Down Expand Up @@ -63,7 +63,7 @@ Add dependencies (you can also add other modules that you need):
<dependency>
<groupId>org.jetbrains.kotlinx</groupId>
<artifactId>kotlinx-coroutines-core</artifactId>
<version>0.23.4</version>
<version>0.24.0</version>
</dependency>
```

Expand All @@ -80,7 +80,7 @@ And make sure that you use the latest Kotlin version:
Add dependencies (you can also add other modules that you need):

```groovy
compile 'org.jetbrains.kotlinx:kotlinx-coroutines-core:0.23.4'
compile 'org.jetbrains.kotlinx:kotlinx-coroutines-core:0.24.0'
```

And make sure that you use the latest Kotlin version:
Expand Down Expand Up @@ -113,7 +113,7 @@ Add [`kotlinx-coroutines-android`](ui/kotlinx-coroutines-android)
module as dependency when using `kotlinx.coroutines` on Android:

```groovy
compile 'org.jetbrains.kotlinx:kotlinx-coroutines-android:0.23.4'
compile 'org.jetbrains.kotlinx:kotlinx-coroutines-android:0.24.0'
```

This gives you access to Android [UI](https://kotlin.github.io/kotlinx.coroutines/kotlinx-coroutines-android/kotlinx.coroutines.experimental.android/-u-i.html)
Expand Down
2 changes: 1 addition & 1 deletion gradle.properties
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
# Copyright 2016-2018 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license.
#

version = 0.23.4-SNAPSHOT
version = 0.24.0-SNAPSHOT
group = org.jetbrains.kotlinx

kotlin_version = 1.2.51
Expand Down
2 changes: 1 addition & 1 deletion native/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -42,7 +42,7 @@ repositories {
}
dependencies {
implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-core-native:0.23.4'
implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-core-native:0.24.0'
}
sourceSets {
Expand Down
2 changes: 1 addition & 1 deletion ui/coroutines-guide-ui.md
Original file line number Diff line number Diff line change
Expand Up @@ -161,7 +161,7 @@ Add dependencies on `kotlinx-coroutines-android` module to the `dependencies { .
`app/build.gradle` file:

```groovy
compile "org.jetbrains.kotlinx:kotlinx-coroutines-android:0.23.4"
compile "org.jetbrains.kotlinx:kotlinx-coroutines-android:0.24.0"
```

Coroutines are experimental feature in Kotlin.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -19,5 +19,5 @@ org.gradle.jvmargs=-Xmx1536m
kotlin.coroutines=enable

kotlin_version = 1.2.51
coroutines_version = 0.23.4
coroutines_version = 0.24.0

Original file line number Diff line number Diff line change
Expand Up @@ -19,5 +19,5 @@ org.gradle.jvmargs=-Xmx1536m
kotlin.coroutines=enable

kotlin_version = 1.2.51
coroutines_version = 0.23.4
coroutines_version = 0.24.0

0 comments on commit 9964b3d

Please sign in to comment.