Skip to content

Commit d8d6f8f

Browse files
committed
Version 1.9.0
1 parent 3a1be8c commit d8d6f8f

File tree

7 files changed

+50
-13
lines changed

7 files changed

+50
-13
lines changed

CHANGES.md

Lines changed: 39 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,52 @@
11
# Change log for kotlinx.coroutines
22

3+
## Version 1.9.0
4+
5+
### Features
6+
7+
* Wasm/WASI target support (#4064). Thanks, @igoriakovlev!
8+
* `limitedParallelism` now optionally accepts the name of the dispatcher view for easier debugging (#4023).
9+
* No longer initialize `Dispatchers.IO` on the JVM when other standard dispatchers are accessed (#4166). Thanks, @metalhead8816!
10+
* Introduced the `Flow<T>.chunked(size: Int): Flow<List<T>>` operator that groups emitted values into groups of the given size (#1290).
11+
* Closeable dispatchers are instances of `AutoCloseable` now (#4123).
12+
13+
### Fixes
14+
15+
* Calling `hasNext` on a `Channel`'s iterator is idempotent (#4065). Thanks, @gitpaxultek!
16+
* `CoroutineScope()` created without an explicit dispatcher uses `Dispatchers.Default` on Native (#4074). Thanks, @whyoleg!
17+
* Fixed a bug that prevented non-Android `Dispatchers.Main` from initializing when the Firebase dependency is used (#3914).
18+
* Ensured a more intuitive ordering of tasks in `runBlocking` (#4134).
19+
* Forbid casting a `Mutex` to `Semaphore` (#4176).
20+
* Worked around a stack overflow that may occur when calling `asDeferred` on a `Future` many times (#4156).
21+
22+
### Deprecations and promotions
23+
24+
* Advanced the deprecation levels for `BroadcastChannel`-based API (#4197).
25+
* Advanced the deprecation levels for the old `kotlinx-coroutines-test` API (#4198).
26+
* Deprecated `Job.cancelFutureOnCompletion` (#4173).
27+
* Promoted `CoroutineDispatcher.limitedParallelism` to stable (#3864).
28+
* Promoted `CoroutineStart.ATOMIC` from `ExperimentalCoroutinesApi` to `DelicateCoroutinesApi` (#4169).
29+
* Promoted `CancellableContinuation.resume` with an `onCancellation` lambda to stable, providing extra arguments to the lambda (#4088).
30+
* Marked the classes and interfaces that are not supposed to be inherited from with the new `InternalForInheritanceCoroutinesApi` opt-in (#3770).
31+
* Marked the classes and interfaces inheriting from which is not stable with the new `ExperimentalForInheritanceCoroutinesApi` opt-in (#3770).
32+
33+
### Other
34+
35+
* Kotlin was updated to 2.0 (#4137).
36+
* Reworked the documentation for `CoroutineStart` and `Channel`-based API (#4147, #4148, #4167). Thanks, @globsterg!
37+
* Simplified the internal implementation of `Job` (#4053).
38+
* Small tweaks, fixes, and documentation improvements.
39+
340
## Version 1.9.0-RC.2
441

542
* Advanced the deprecation levels for `BroadcastChannel`-based API (#4197).
643
* Advanced the deprecation levels for the old `kotlinx-coroutines-test` API (#4198).
744
* Promoted `CoroutineStart.ATOMIC` from `ExperimentalCoroutinesApi` to `DelicateCoroutinesApi` (#4169).
845
* Reworked the documentation for `CoroutineStart` and `Channel`-based API (#4147, #4148, #4167). Thanks, @globsterg!
946
* Forbid casting a `Mutex` to `Semaphore` (#4176).
10-
* Deprecated `Job.cancelFutureOnCompletion` (#4211).
47+
* Deprecated `Job.cancelFutureOnCompletion` (#4173).
1148
* Worked around a stack overflow that may occur when calling `asDeferred` on a `Future` many times (#4156).
12-
* Fixed a bug that disallowed setting a custom `probeCoroutineResumed` when starting coroutines with `UNDISPATCHED` (#4211).
49+
* Fixed a bug that disallowed setting a custom `probeCoroutineResumed` when starting coroutines with `UNDISPATCHED` (#4162).
1350
* No longer initialize `Dispatchers.IO` on the JVM when other standard dispatchers are accessed (#4166). Thanks, @metalhead8816!
1451
* Small tweaks, fixes, and documentation improvements.
1552

README.md

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
[![Kotlin Stable](https://kotl.in/badges/stable.svg)](https://kotlinlang.org/docs/components-stability.html)
44
[![JetBrains official project](https://jb.gg/badges/official.svg)](https://confluence.jetbrains.com/display/ALL/JetBrains+on+GitHub)
55
[![GitHub license](https://img.shields.io/badge/license-Apache%20License%202.0-blue.svg?style=flat)](https://www.apache.org/licenses/LICENSE-2.0)
6-
[![Download](https://img.shields.io/maven-central/v/org.jetbrains.kotlinx/kotlinx-coroutines-core/1.9.0-RC.2)](https://central.sonatype.com/artifact/org.jetbrains.kotlinx/kotlinx-coroutines-core/1.9.0-RC.2)
6+
[![Download](https://img.shields.io/maven-central/v/org.jetbrains.kotlinx/kotlinx-coroutines-core/1.9.0)](https://central.sonatype.com/artifact/org.jetbrains.kotlinx/kotlinx-coroutines-core/1.9.0)
77
[![Kotlin](https://img.shields.io/badge/kotlin-2.0.0-blue.svg?logo=kotlin)](http://kotlinlang.org)
88
[![Slack channel](https://img.shields.io/badge/chat-slack-green.svg?logo=slack)](https://kotlinlang.slack.com/messages/coroutines/)
99

@@ -85,7 +85,7 @@ Add dependencies (you can also add other modules that you need):
8585
<dependency>
8686
<groupId>org.jetbrains.kotlinx</groupId>
8787
<artifactId>kotlinx-coroutines-core</artifactId>
88-
<version>1.9.0-RC.2</version>
88+
<version>1.9.0</version>
8989
</dependency>
9090
```
9191

@@ -103,7 +103,7 @@ Add dependencies (you can also add other modules that you need):
103103

104104
```kotlin
105105
dependencies {
106-
implementation("org.jetbrains.kotlinx:kotlinx-coroutines-core:1.9.0-RC.2")
106+
implementation("org.jetbrains.kotlinx:kotlinx-coroutines-core:1.9.0")
107107
}
108108
```
109109

@@ -133,7 +133,7 @@ Add [`kotlinx-coroutines-android`](ui/kotlinx-coroutines-android)
133133
module as a dependency when using `kotlinx.coroutines` on Android:
134134

135135
```kotlin
136-
implementation("org.jetbrains.kotlinx:kotlinx-coroutines-android:1.9.0-RC.2")
136+
implementation("org.jetbrains.kotlinx:kotlinx-coroutines-android:1.9.0")
137137
```
138138

139139
This gives you access to the Android [Dispatchers.Main]
@@ -168,7 +168,7 @@ In common code that should get compiled for different platforms, you can add a d
168168
```kotlin
169169
commonMain {
170170
dependencies {
171-
implementation("org.jetbrains.kotlinx:kotlinx-coroutines-core:1.9.0-RC.2")
171+
implementation("org.jetbrains.kotlinx:kotlinx-coroutines-core:1.9.0")
172172
}
173173
}
174174
```
@@ -178,7 +178,7 @@ Platform-specific dependencies are recommended to be used only for non-multiplat
178178
#### JS
179179

180180
Kotlin/JS version of `kotlinx.coroutines` is published as
181-
[`kotlinx-coroutines-core-js`](https://central.sonatype.com/artifact/org.jetbrains.kotlinx/kotlinx-coroutines-core-js/1.9.0-RC.2)
181+
[`kotlinx-coroutines-core-js`](https://central.sonatype.com/artifact/org.jetbrains.kotlinx/kotlinx-coroutines-core-js/1.9.0)
182182
(follow the link to get the dependency declaration snippet).
183183

184184
#### Native

gradle.properties

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
# Kotlin
2-
version=1.9.0-RC.2-SNAPSHOT
2+
version=1.9.0-SNAPSHOT
33
group=org.jetbrains.kotlinx
44
kotlin_version=2.0.0
55
kotlin_language_version=2.0

integration-testing/gradle.properties

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
kotlin_version=2.0.0
2-
coroutines_version=1.9.0-RC.2-SNAPSHOT
2+
coroutines_version=1.9.0-SNAPSHOT
33
asm_version=9.3
44

55
kotlin.code.style=official

kotlinx-coroutines-debug/README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -61,7 +61,7 @@ stacktraces will be dumped to the console.
6161
### Using as JVM agent
6262

6363
Debug module can also be used as a standalone JVM agent to enable debug probes on the application startup.
64-
You can run your application with an additional argument: `-javaagent:kotlinx-coroutines-debug-1.9.0-RC.2.jar`.
64+
You can run your application with an additional argument: `-javaagent:kotlinx-coroutines-debug-1.9.0.jar`.
6565
Additionally, on Linux and Mac OS X you can use `kill -5 $pid` command in order to force your application to print all alive coroutines.
6666
When used as Java agent, `"kotlinx.coroutines.debug.enable.creation.stack.trace"` system property can be used to control
6767
[DebugProbes.enableCreationStackTraces] along with agent startup.

kotlinx-coroutines-test/README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ Provided [TestDispatcher] implementations:
2626
Add `kotlinx-coroutines-test` to your project test dependencies:
2727
```
2828
dependencies {
29-
testImplementation 'org.jetbrains.kotlinx:kotlinx-coroutines-test:1.9.0-RC.2'
29+
testImplementation 'org.jetbrains.kotlinx:kotlinx-coroutines-test:1.9.0'
3030
}
3131
```
3232

ui/coroutines-guide-ui.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -110,7 +110,7 @@ Add dependencies on `kotlinx-coroutines-android` module to the `dependencies { .
110110
`app/build.gradle` file:
111111

112112
```groovy
113-
implementation "org.jetbrains.kotlinx:kotlinx-coroutines-android:1.9.0-RC.2"
113+
implementation "org.jetbrains.kotlinx:kotlinx-coroutines-android:1.9.0"
114114
```
115115

116116
You can clone [kotlinx.coroutines](https://github.com/Kotlin/kotlinx.coroutines) project from GitHub onto your

0 commit comments

Comments
 (0)