|
1 | 1 | # Change log for kotlinx.coroutines
|
2 | 2 |
|
| 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 | + |
3 | 40 | ## Version 1.9.0-RC.2
|
4 | 41 |
|
5 | 42 | * Advanced the deprecation levels for `BroadcastChannel`-based API (#4197).
|
6 | 43 | * Advanced the deprecation levels for the old `kotlinx-coroutines-test` API (#4198).
|
7 | 44 | * Promoted `CoroutineStart.ATOMIC` from `ExperimentalCoroutinesApi` to `DelicateCoroutinesApi` (#4169).
|
8 | 45 | * Reworked the documentation for `CoroutineStart` and `Channel`-based API (#4147, #4148, #4167). Thanks, @globsterg!
|
9 | 46 | * Forbid casting a `Mutex` to `Semaphore` (#4176).
|
10 |
| -* Deprecated `Job.cancelFutureOnCompletion` (#4211). |
| 47 | +* Deprecated `Job.cancelFutureOnCompletion` (#4173). |
11 | 48 | * 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). |
13 | 50 | * No longer initialize `Dispatchers.IO` on the JVM when other standard dispatchers are accessed (#4166). Thanks, @metalhead8816!
|
14 | 51 | * Small tweaks, fixes, and documentation improvements.
|
15 | 52 |
|
|
0 commit comments