Skip to content

Commit

Permalink
Version 0.20
Browse files Browse the repository at this point in the history
  • Loading branch information
elizarov committed Dec 4, 2017
1 parent c4f390a commit fc6e31e
Show file tree
Hide file tree
Showing 7 changed files with 36 additions and 8 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.20

* Migrated to Kotlin 1.2.0.
* Channels:
* Sequence-like `filter`, `map`, etc extensions on `ReceiveChannel` are introduced (see #88 by @fvasco and #69 by @konrad-kaminski).
* Introduced `ReceiveChannel.cancel` method.
* All operators on `ReceiveChannel` fully consume the original channel (`cancel` it when they are done) using a helper `consume` extension.
* Deprecated `ActorJob` and `ProducerJob`; `actor` now returns `SendChannel` and `produce` returns `ReceiveChannel` (see #127).
* `SendChannel.sendBlocking` extension method (see #157 by @@fvasco).
* Parent-child relations between coroutines:
* Introduced an optional `parent` job parameter for all coroutine builders so that code with an explict parent `Job` is more natural.
* Added `parent` parameter to `CompletableDeferred` constructor.
* Introduced `Job.children` property.
* `Job.cancelChildren` is now an extension (member is deprecated and hidden).
* `Job.joinChildren` extension is introduced.
* Deprecated `Job.attachChild` as a error-prone API.
* Fixed StackOverflow when waiting for a lot of completed children that did not remove their handlers from the parent.
* Use `java.util.ServiceLoader` to find default instances of `CoroutineExceptionHandler`.
* Android UI integration:
* Use `Thread.getUncaughtExceptionPreHandler` to make sure that exceptions are logged before crash (see #148).
* Introduce `UI.awaitFrame` for animation; added sample coroutine-based animation application for Android [here](ui/kotlinx-coroutines-android/animation-app).
* Fixed `delay(Long.MAX_VALUE)` (see #161)
* Added missing `DefaultDispatcher` on some reactive operators (see #174 by @fvasco)
* Fixed `actor` and `produce` so that a cancellation of a Job cancels the underlying channel (closes and removes all the pending messages).
* Fixed sporadic failure of `example-context-06` (see #160)
* Fixed hang of `Job.start` on lazy coroutine with attached `invokeOnCompletion` handler.
* A more gradual introduction to `runBlocking` and coroutines in the [guide](coroutines-guide.md) (see #166).

## Version 0.19.3

* Fixed `send`/`openSubscription` race in `ArrayBroadcastChannel`.
Expand Down
6 changes: 3 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

[![official JetBrains project](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)](https://www.apache.org/licenses/LICENSE-2.0)
[![Download](https://api.bintray.com/packages/kotlin/kotlinx/kotlinx.coroutines/images/download.svg?version=0.19.3) ](https://bintray.com/kotlin/kotlinx/kotlinx.coroutines/0.19.3)
[![Download](https://api.bintray.com/packages/kotlin/kotlinx/kotlinx.coroutines/images/download.svg?version=0.20) ](https://bintray.com/kotlin/kotlinx/kotlinx.coroutines/0.20)

Library support for Kotlin coroutines.
This is a companion version for Kotlin 1.2.0 release.
Expand Down Expand Up @@ -52,7 +52,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.19.3</version>
<version>0.20</version>
</dependency>
```

Expand All @@ -69,7 +69,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.19.3'
compile 'org.jetbrains.kotlinx:kotlinx-coroutines-core:0.20'
```

And make sure that you use the latest Kotlin version:
Expand Down
2 changes: 1 addition & 1 deletion gradle.properties
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
version = 0.19.3-SNAPSHOT
version = 0.20-SNAPSHOT

kotlin_version = 1.2.0
junit_version = 4.12
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 @@ -173,7 +173,7 @@ Add dependencies on `kotlinx-coroutines-android` module to the `dependencies { .
`app/build.gradle` file:

```groovy
compile "org.jetbrains.kotlinx:kotlinx-coroutines-android:0.19.3"
compile "org.jetbrains.kotlinx:kotlinx-coroutines-android:0.20"
```

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.0
coroutines_version = 0.19.3
coroutines_version = 0.20

2 changes: 1 addition & 1 deletion ui/kotlinx-coroutines-android/example-app/app/build.gradle