-
Notifications
You must be signed in to change notification settings - Fork 1.9k
Handler.asCoroutineDispatcher() can block runBlocking() forever #2778
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Labels
Comments
qwwdfsad
added a commit
that referenced
this issue
Jun 22, 2021
…dler is closed in Handler.asCoroutineDispatcher() Fixes #2778
kodiakhq bot
referenced
this issue
in relaycorp/awala-cogrpc-jvm
Jul 11, 2021
Bumps `kotlinCoroutinesVersion` from 1.5.0 to 1.5.1. Updates `kotlinx-coroutines-core` from 1.5.0 to 1.5.1 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/Kotlin/kotlinx.coroutines/releases">kotlinx-coroutines-core's releases</a>.</em></p> <blockquote> <h2>1.5.1</h2> <ul> <li>Atomic <code>update</code>, <code>getAndUpdate</code>, and <code>updateAndGet</code> operations of <code>MutableStateFlow</code> (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2720">#2720</a>).</li> <li><code>Executor.asCoroutineDispatcher</code> implementation improvements (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2601">#2601</a>): <ul> <li>If the target executor is <code>ScheduledExecutorService</code>, then its <code>schedule</code> API is used for time-related coroutine operations.</li> <li><code>RemoveOnCancelPolicy</code> is now part of the public contract.</li> </ul> </li> <li>Introduced overloads for <code>Task.asDeferred</code> and <code>Task.await</code> that accept <code>CancellationTokenSource</code> for bidirectional cancellation (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2527">#2527</a>).</li> <li>Reactive streams are updated to <code>1.0.3</code> (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2740">#2740</a>).</li> <li><code>CopyableThrowable</code> is allowed to modify the exception message during stacktrace recovery (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/1931">#1931</a>).</li> <li><code>CoroutineDispatcher.releaseInterceptedContinuation</code> is now a <code>final</code> method (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2785">#2785</a>).</li> <li>Closing a Handler underlying <code>Handler.asCoroutineDispatcher</code> now causes the dispatched coroutines to be canceled on <code>Dispatchers.IO ([#2778](https://github.com/Kotlin/kotlinx.coroutines/issues/2778))</code>.</li> <li>Kotlin is updated to 1.5.20.</li> <li>Fixed a spurious <code>ClassCastException</code> in <code>releaseInterceptedContinuation</code> and <code>IllegalStateException</code> from <code>tryReleaseClaimedContinuation</code> (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2736">#2736</a>, <a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2768">#2768</a>).</li> <li>Fixed inconsistent exception message during stacktrace recovery for non-suspending channel iterators (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2749">#2749</a>).</li> <li>Fixed linear stack usage for <code>CompletableFuture.asDeferred</code> when the target future has a long chain of listeners (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2730">#2730</a>).</li> <li>Any exceptions from <code>CoroutineDispatcher.isDispatchNeeded</code> are now considered as fatal and are propagated to the caller (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2733">#2733</a>).</li> <li>Internal <code>DebugProbesKt</code> (used in the debugger implementation) are moved from <code>debug</code> to <code>core</code> module.</li> </ul> </blockquote> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/Kotlin/kotlinx.coroutines/blob/master/CHANGES.md">kotlinx-coroutines-core's changelog</a>.</em></p> <blockquote> <h2>Version 1.5.1</h2> <ul> <li>Atomic <code>update</code>, <code>getAndUpdate</code>, and <code>updateAndGet</code> operations of <code>MutableStateFlow</code> (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2720">#2720</a>).</li> <li><code>Executor.asCoroutineDispatcher</code> implementation improvements (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2601">#2601</a>): <ul> <li>If the target executor is <code>ScheduledExecutorService</code>, then its <code>schedule</code> API is used for time-related coroutine operations.</li> <li><code>RemoveOnCancelPolicy</code> is now part of the public contract.</li> </ul> </li> <li>Introduced overloads for <code>Task.asDeferred</code> and <code>Task.await</code> that accept <code>CancellationTokenSource</code> for bidirectional cancellation (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2527">#2527</a>).</li> <li>Reactive streams are updated to <code>1.0.3</code> (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2740">#2740</a>).</li> <li><code>CopyableThrowable</code> is allowed to modify the exception message during stacktrace recovery (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/1931">#1931</a>).</li> <li><code>CoroutineDispatcher.releaseInterceptedContinuation</code> is now a <code>final</code> method (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2785">#2785</a>).</li> <li>Closing a Handler underlying <code>Handler.asCoroutineDispatcher</code> now causes the dispatched coroutines to be canceled on <code>Dispatchers.IO ([#2778](https://github.com/Kotlin/kotlinx.coroutines/issues/2778))</code>.</li> <li>Kotlin is updated to 1.5.20.</li> <li>Fixed a spurious <code>ClassCastException</code> in <code>releaseInterceptedContinuation</code> and <code>IllegalStateException</code> from <code>tryReleaseClaimedContinuation</code> (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2736">#2736</a>, <a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2768">#2768</a>).</li> <li>Fixed inconsistent exception message during stacktrace recovery for non-suspending channel iterators (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2749">#2749</a>).</li> <li>Fixed linear stack usage for <code>CompletableFuture.asDeferred</code> when the target future has a long chain of listeners (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2730">#2730</a>).</li> <li>Any exceptions from <code>CoroutineDispatcher.isDispatchNeeded</code> are now considered as fatal and are propagated to the caller (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2733">#2733</a>).</li> <li>Internal <code>DebugProbesKt</code> (used in the debugger implementation) are moved from <code>debug</code> to <code>core</code> module.</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/Kotlin/kotlinx.coroutines/commit/b231887c3214187cf7f09a74073f84383a487b71"><code>b231887</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2812">#2812</a> from Kotlin/version-1.5.1</li> <li><a href="https://github.com/Kotlin/kotlinx.coroutines/commit/2a4c00bd2604be9088468ca73edd2a258e089eff"><code>2a4c00b</code></a> Version 1.5.1</li> <li><a href="https://github.com/Kotlin/kotlinx.coroutines/commit/69c3ce31342f6aea7602da173fa7128f017365ee"><code>69c3ce3</code></a> Update Dokka and Knit to their stable versions, remove bintray leftovers (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2811">#2811</a>)</li> <li><a href="https://github.com/Kotlin/kotlinx.coroutines/commit/f5e87400f4d11be56851a4304aa1a40fa3c09cde"><code>f5e8740</code></a> General cleanup (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2809">#2809</a>)</li> <li><a href="https://github.com/Kotlin/kotlinx.coroutines/commit/c9ab4fd21b900f66336d4d029610643c1b8839ae"><code>c9ab4fd</code></a> Update Kotlin to 1.5.20 (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2810">#2810</a>)</li> <li><a href="https://github.com/Kotlin/kotlinx.coroutines/commit/bcbcd16b8c4b63478ff2ad15567688428232e928"><code>bcbcd16</code></a> Upgrade to newest Dokka and Knit (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2805">#2805</a>)</li> <li><a href="https://github.com/Kotlin/kotlinx.coroutines/commit/074cc3f79aab22a4becfad5b7595f2de6fae3db1"><code>074cc3f</code></a> Update Lincheck to 2.14 (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2801">#2801</a>)</li> <li><a href="https://github.com/Kotlin/kotlinx.coroutines/commit/6cd1883fc06fb27fd8efcf907e459d05f1296102"><code>6cd1883</code></a> Cancel dispatched coroutine on Dispatchers.IO when the underlying Han… (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2784">#2784</a>)</li> <li><a href="https://github.com/Kotlin/kotlinx.coroutines/commit/a327dfb5809ef508d416a1cf98110340dcfe7430"><code>a327dfb</code></a> Remove opt-in annotation from internal MainTestDispatcher</li> <li><a href="https://github.com/Kotlin/kotlinx.coroutines/commit/e81ce210eef465d8fa0097bd6e463202b0f3e253"><code>e81ce21</code></a> Introduce Task.await and Task.asDeferred with CancellationTokenSource (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2786">#2786</a>)</li> <li>Additional commits viewable in <a href="https://github.com/Kotlin/kotlinx.coroutines/compare/1.5.0...1.5.1">compare view</a></li> </ul> </details> <br /> Updates `kotlinx-coroutines-test` from 1.5.0 to 1.5.1 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/Kotlin/kotlinx.coroutines/releases">kotlinx-coroutines-test's releases</a>.</em></p> <blockquote> <h2>1.5.1</h2> <ul> <li>Atomic <code>update</code>, <code>getAndUpdate</code>, and <code>updateAndGet</code> operations of <code>MutableStateFlow</code> (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2720">#2720</a>).</li> <li><code>Executor.asCoroutineDispatcher</code> implementation improvements (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2601">#2601</a>): <ul> <li>If the target executor is <code>ScheduledExecutorService</code>, then its <code>schedule</code> API is used for time-related coroutine operations.</li> <li><code>RemoveOnCancelPolicy</code> is now part of the public contract.</li> </ul> </li> <li>Introduced overloads for <code>Task.asDeferred</code> and <code>Task.await</code> that accept <code>CancellationTokenSource</code> for bidirectional cancellation (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2527">#2527</a>).</li> <li>Reactive streams are updated to <code>1.0.3</code> (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2740">#2740</a>).</li> <li><code>CopyableThrowable</code> is allowed to modify the exception message during stacktrace recovery (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/1931">#1931</a>).</li> <li><code>CoroutineDispatcher.releaseInterceptedContinuation</code> is now a <code>final</code> method (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2785">#2785</a>).</li> <li>Closing a Handler underlying <code>Handler.asCoroutineDispatcher</code> now causes the dispatched coroutines to be canceled on <code>Dispatchers.IO ([#2778](https://github.com/Kotlin/kotlinx.coroutines/issues/2778))</code>.</li> <li>Kotlin is updated to 1.5.20.</li> <li>Fixed a spurious <code>ClassCastException</code> in <code>releaseInterceptedContinuation</code> and <code>IllegalStateException</code> from <code>tryReleaseClaimedContinuation</code> (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2736">#2736</a>, <a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2768">#2768</a>).</li> <li>Fixed inconsistent exception message during stacktrace recovery for non-suspending channel iterators (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2749">#2749</a>).</li> <li>Fixed linear stack usage for <code>CompletableFuture.asDeferred</code> when the target future has a long chain of listeners (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2730">#2730</a>).</li> <li>Any exceptions from <code>CoroutineDispatcher.isDispatchNeeded</code> are now considered as fatal and are propagated to the caller (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2733">#2733</a>).</li> <li>Internal <code>DebugProbesKt</code> (used in the debugger implementation) are moved from <code>debug</code> to <code>core</code> module.</li> </ul> </blockquote> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/Kotlin/kotlinx.coroutines/blob/master/CHANGES.md">kotlinx-coroutines-test's changelog</a>.</em></p> <blockquote> <h2>Version 1.5.1</h2> <ul> <li>Atomic <code>update</code>, <code>getAndUpdate</code>, and <code>updateAndGet</code> operations of <code>MutableStateFlow</code> (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2720">#2720</a>).</li> <li><code>Executor.asCoroutineDispatcher</code> implementation improvements (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2601">#2601</a>): <ul> <li>If the target executor is <code>ScheduledExecutorService</code>, then its <code>schedule</code> API is used for time-related coroutine operations.</li> <li><code>RemoveOnCancelPolicy</code> is now part of the public contract.</li> </ul> </li> <li>Introduced overloads for <code>Task.asDeferred</code> and <code>Task.await</code> that accept <code>CancellationTokenSource</code> for bidirectional cancellation (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2527">#2527</a>).</li> <li>Reactive streams are updated to <code>1.0.3</code> (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2740">#2740</a>).</li> <li><code>CopyableThrowable</code> is allowed to modify the exception message during stacktrace recovery (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/1931">#1931</a>).</li> <li><code>CoroutineDispatcher.releaseInterceptedContinuation</code> is now a <code>final</code> method (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2785">#2785</a>).</li> <li>Closing a Handler underlying <code>Handler.asCoroutineDispatcher</code> now causes the dispatched coroutines to be canceled on <code>Dispatchers.IO ([#2778](https://github.com/Kotlin/kotlinx.coroutines/issues/2778))</code>.</li> <li>Kotlin is updated to 1.5.20.</li> <li>Fixed a spurious <code>ClassCastException</code> in <code>releaseInterceptedContinuation</code> and <code>IllegalStateException</code> from <code>tryReleaseClaimedContinuation</code> (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2736">#2736</a>, <a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2768">#2768</a>).</li> <li>Fixed inconsistent exception message during stacktrace recovery for non-suspending channel iterators (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2749">#2749</a>).</li> <li>Fixed linear stack usage for <code>CompletableFuture.asDeferred</code> when the target future has a long chain of listeners (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2730">#2730</a>).</li> <li>Any exceptions from <code>CoroutineDispatcher.isDispatchNeeded</code> are now considered as fatal and are propagated to the caller (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2733">#2733</a>).</li> <li>Internal <code>DebugProbesKt</code> (used in the debugger implementation) are moved from <code>debug</code> to <code>core</code> module.</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/Kotlin/kotlinx.coroutines/commit/b231887c3214187cf7f09a74073f84383a487b71"><code>b231887</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2812">#2812</a> from Kotlin/version-1.5.1</li> <li><a href="https://github.com/Kotlin/kotlinx.coroutines/commit/2a4c00bd2604be9088468ca73edd2a258e089eff"><code>2a4c00b</code></a> Version 1.5.1</li> <li><a href="https://github.com/Kotlin/kotlinx.coroutines/commit/69c3ce31342f6aea7602da173fa7128f017365ee"><code>69c3ce3</code></a> Update Dokka and Knit to their stable versions, remove bintray leftovers (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2811">#2811</a>)</li> <li><a href="https://github.com/Kotlin/kotlinx.coroutines/commit/f5e87400f4d11be56851a4304aa1a40fa3c09cde"><code>f5e8740</code></a> General cleanup (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2809">#2809</a>)</li> <li><a href="https://github.com/Kotlin/kotlinx.coroutines/commit/c9ab4fd21b900f66336d4d029610643c1b8839ae"><code>c9ab4fd</code></a> Update Kotlin to 1.5.20 (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2810">#2810</a>)</li> <li><a href="https://github.com/Kotlin/kotlinx.coroutines/commit/bcbcd16b8c4b63478ff2ad15567688428232e928"><code>bcbcd16</code></a> Upgrade to newest Dokka and Knit (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2805">#2805</a>)</li> <li><a href="https://github.com/Kotlin/kotlinx.coroutines/commit/074cc3f79aab22a4becfad5b7595f2de6fae3db1"><code>074cc3f</code></a> Update Lincheck to 2.14 (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2801">#2801</a>)</li> <li><a href="https://github.com/Kotlin/kotlinx.coroutines/commit/6cd1883fc06fb27fd8efcf907e459d05f1296102"><code>6cd1883</code></a> Cancel dispatched coroutine on Dispatchers.IO when the underlying Han… (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2784">#2784</a>)</li> <li><a href="https://github.com/Kotlin/kotlinx.coroutines/commit/a327dfb5809ef508d416a1cf98110340dcfe7430"><code>a327dfb</code></a> Remove opt-in annotation from internal MainTestDispatcher</li> <li><a href="https://github.com/Kotlin/kotlinx.coroutines/commit/e81ce210eef465d8fa0097bd6e463202b0f3e253"><code>e81ce21</code></a> Introduce Task.await and Task.asDeferred with CancellationTokenSource (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2786">#2786</a>)</li> <li>Additional commits viewable in <a href="https://github.com/Kotlin/kotlinx.coroutines/compare/1.5.0...1.5.1">compare view</a></li> </ul> </details> <br /> Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) --- <details> <summary>Dependabot commands and options</summary> <br /> You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) </details>
kodiakhq bot
referenced
this issue
in relaycorp/awala-endpoint-android
Jul 11, 2021
Bumps `kotlinCoroutinesVersion` from 1.5.0 to 1.5.1. Updates `kotlinx-coroutines-core` from 1.5.0 to 1.5.1 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/Kotlin/kotlinx.coroutines/releases">kotlinx-coroutines-core's releases</a>.</em></p> <blockquote> <h2>1.5.1</h2> <ul> <li>Atomic <code>update</code>, <code>getAndUpdate</code>, and <code>updateAndGet</code> operations of <code>MutableStateFlow</code> (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2720">#2720</a>).</li> <li><code>Executor.asCoroutineDispatcher</code> implementation improvements (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2601">#2601</a>): <ul> <li>If the target executor is <code>ScheduledExecutorService</code>, then its <code>schedule</code> API is used for time-related coroutine operations.</li> <li><code>RemoveOnCancelPolicy</code> is now part of the public contract.</li> </ul> </li> <li>Introduced overloads for <code>Task.asDeferred</code> and <code>Task.await</code> that accept <code>CancellationTokenSource</code> for bidirectional cancellation (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2527">#2527</a>).</li> <li>Reactive streams are updated to <code>1.0.3</code> (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2740">#2740</a>).</li> <li><code>CopyableThrowable</code> is allowed to modify the exception message during stacktrace recovery (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/1931">#1931</a>).</li> <li><code>CoroutineDispatcher.releaseInterceptedContinuation</code> is now a <code>final</code> method (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2785">#2785</a>).</li> <li>Closing a Handler underlying <code>Handler.asCoroutineDispatcher</code> now causes the dispatched coroutines to be canceled on <code>Dispatchers.IO ([#2778](https://github.com/Kotlin/kotlinx.coroutines/issues/2778))</code>.</li> <li>Kotlin is updated to 1.5.20.</li> <li>Fixed a spurious <code>ClassCastException</code> in <code>releaseInterceptedContinuation</code> and <code>IllegalStateException</code> from <code>tryReleaseClaimedContinuation</code> (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2736">#2736</a>, <a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2768">#2768</a>).</li> <li>Fixed inconsistent exception message during stacktrace recovery for non-suspending channel iterators (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2749">#2749</a>).</li> <li>Fixed linear stack usage for <code>CompletableFuture.asDeferred</code> when the target future has a long chain of listeners (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2730">#2730</a>).</li> <li>Any exceptions from <code>CoroutineDispatcher.isDispatchNeeded</code> are now considered as fatal and are propagated to the caller (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2733">#2733</a>).</li> <li>Internal <code>DebugProbesKt</code> (used in the debugger implementation) are moved from <code>debug</code> to <code>core</code> module.</li> </ul> </blockquote> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/Kotlin/kotlinx.coroutines/blob/master/CHANGES.md">kotlinx-coroutines-core's changelog</a>.</em></p> <blockquote> <h2>Version 1.5.1</h2> <ul> <li>Atomic <code>update</code>, <code>getAndUpdate</code>, and <code>updateAndGet</code> operations of <code>MutableStateFlow</code> (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2720">#2720</a>).</li> <li><code>Executor.asCoroutineDispatcher</code> implementation improvements (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2601">#2601</a>): <ul> <li>If the target executor is <code>ScheduledExecutorService</code>, then its <code>schedule</code> API is used for time-related coroutine operations.</li> <li><code>RemoveOnCancelPolicy</code> is now part of the public contract.</li> </ul> </li> <li>Introduced overloads for <code>Task.asDeferred</code> and <code>Task.await</code> that accept <code>CancellationTokenSource</code> for bidirectional cancellation (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2527">#2527</a>).</li> <li>Reactive streams are updated to <code>1.0.3</code> (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2740">#2740</a>).</li> <li><code>CopyableThrowable</code> is allowed to modify the exception message during stacktrace recovery (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/1931">#1931</a>).</li> <li><code>CoroutineDispatcher.releaseInterceptedContinuation</code> is now a <code>final</code> method (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2785">#2785</a>).</li> <li>Closing a Handler underlying <code>Handler.asCoroutineDispatcher</code> now causes the dispatched coroutines to be canceled on <code>Dispatchers.IO ([#2778](https://github.com/Kotlin/kotlinx.coroutines/issues/2778))</code>.</li> <li>Kotlin is updated to 1.5.20.</li> <li>Fixed a spurious <code>ClassCastException</code> in <code>releaseInterceptedContinuation</code> and <code>IllegalStateException</code> from <code>tryReleaseClaimedContinuation</code> (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2736">#2736</a>, <a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2768">#2768</a>).</li> <li>Fixed inconsistent exception message during stacktrace recovery for non-suspending channel iterators (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2749">#2749</a>).</li> <li>Fixed linear stack usage for <code>CompletableFuture.asDeferred</code> when the target future has a long chain of listeners (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2730">#2730</a>).</li> <li>Any exceptions from <code>CoroutineDispatcher.isDispatchNeeded</code> are now considered as fatal and are propagated to the caller (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2733">#2733</a>).</li> <li>Internal <code>DebugProbesKt</code> (used in the debugger implementation) are moved from <code>debug</code> to <code>core</code> module.</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/Kotlin/kotlinx.coroutines/commit/b231887c3214187cf7f09a74073f84383a487b71"><code>b231887</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2812">#2812</a> from Kotlin/version-1.5.1</li> <li><a href="https://github.com/Kotlin/kotlinx.coroutines/commit/2a4c00bd2604be9088468ca73edd2a258e089eff"><code>2a4c00b</code></a> Version 1.5.1</li> <li><a href="https://github.com/Kotlin/kotlinx.coroutines/commit/69c3ce31342f6aea7602da173fa7128f017365ee"><code>69c3ce3</code></a> Update Dokka and Knit to their stable versions, remove bintray leftovers (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2811">#2811</a>)</li> <li><a href="https://github.com/Kotlin/kotlinx.coroutines/commit/f5e87400f4d11be56851a4304aa1a40fa3c09cde"><code>f5e8740</code></a> General cleanup (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2809">#2809</a>)</li> <li><a href="https://github.com/Kotlin/kotlinx.coroutines/commit/c9ab4fd21b900f66336d4d029610643c1b8839ae"><code>c9ab4fd</code></a> Update Kotlin to 1.5.20 (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2810">#2810</a>)</li> <li><a href="https://github.com/Kotlin/kotlinx.coroutines/commit/bcbcd16b8c4b63478ff2ad15567688428232e928"><code>bcbcd16</code></a> Upgrade to newest Dokka and Knit (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2805">#2805</a>)</li> <li><a href="https://github.com/Kotlin/kotlinx.coroutines/commit/074cc3f79aab22a4becfad5b7595f2de6fae3db1"><code>074cc3f</code></a> Update Lincheck to 2.14 (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2801">#2801</a>)</li> <li><a href="https://github.com/Kotlin/kotlinx.coroutines/commit/6cd1883fc06fb27fd8efcf907e459d05f1296102"><code>6cd1883</code></a> Cancel dispatched coroutine on Dispatchers.IO when the underlying Han… (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2784">#2784</a>)</li> <li><a href="https://github.com/Kotlin/kotlinx.coroutines/commit/a327dfb5809ef508d416a1cf98110340dcfe7430"><code>a327dfb</code></a> Remove opt-in annotation from internal MainTestDispatcher</li> <li><a href="https://github.com/Kotlin/kotlinx.coroutines/commit/e81ce210eef465d8fa0097bd6e463202b0f3e253"><code>e81ce21</code></a> Introduce Task.await and Task.asDeferred with CancellationTokenSource (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2786">#2786</a>)</li> <li>Additional commits viewable in <a href="https://github.com/Kotlin/kotlinx.coroutines/compare/1.5.0...1.5.1">compare view</a></li> </ul> </details> <br /> Updates `kotlinx-coroutines-test` from 1.5.0 to 1.5.1 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/Kotlin/kotlinx.coroutines/releases">kotlinx-coroutines-test's releases</a>.</em></p> <blockquote> <h2>1.5.1</h2> <ul> <li>Atomic <code>update</code>, <code>getAndUpdate</code>, and <code>updateAndGet</code> operations of <code>MutableStateFlow</code> (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2720">#2720</a>).</li> <li><code>Executor.asCoroutineDispatcher</code> implementation improvements (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2601">#2601</a>): <ul> <li>If the target executor is <code>ScheduledExecutorService</code>, then its <code>schedule</code> API is used for time-related coroutine operations.</li> <li><code>RemoveOnCancelPolicy</code> is now part of the public contract.</li> </ul> </li> <li>Introduced overloads for <code>Task.asDeferred</code> and <code>Task.await</code> that accept <code>CancellationTokenSource</code> for bidirectional cancellation (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2527">#2527</a>).</li> <li>Reactive streams are updated to <code>1.0.3</code> (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2740">#2740</a>).</li> <li><code>CopyableThrowable</code> is allowed to modify the exception message during stacktrace recovery (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/1931">#1931</a>).</li> <li><code>CoroutineDispatcher.releaseInterceptedContinuation</code> is now a <code>final</code> method (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2785">#2785</a>).</li> <li>Closing a Handler underlying <code>Handler.asCoroutineDispatcher</code> now causes the dispatched coroutines to be canceled on <code>Dispatchers.IO ([#2778](https://github.com/Kotlin/kotlinx.coroutines/issues/2778))</code>.</li> <li>Kotlin is updated to 1.5.20.</li> <li>Fixed a spurious <code>ClassCastException</code> in <code>releaseInterceptedContinuation</code> and <code>IllegalStateException</code> from <code>tryReleaseClaimedContinuation</code> (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2736">#2736</a>, <a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2768">#2768</a>).</li> <li>Fixed inconsistent exception message during stacktrace recovery for non-suspending channel iterators (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2749">#2749</a>).</li> <li>Fixed linear stack usage for <code>CompletableFuture.asDeferred</code> when the target future has a long chain of listeners (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2730">#2730</a>).</li> <li>Any exceptions from <code>CoroutineDispatcher.isDispatchNeeded</code> are now considered as fatal and are propagated to the caller (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2733">#2733</a>).</li> <li>Internal <code>DebugProbesKt</code> (used in the debugger implementation) are moved from <code>debug</code> to <code>core</code> module.</li> </ul> </blockquote> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/Kotlin/kotlinx.coroutines/blob/master/CHANGES.md">kotlinx-coroutines-test's changelog</a>.</em></p> <blockquote> <h2>Version 1.5.1</h2> <ul> <li>Atomic <code>update</code>, <code>getAndUpdate</code>, and <code>updateAndGet</code> operations of <code>MutableStateFlow</code> (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2720">#2720</a>).</li> <li><code>Executor.asCoroutineDispatcher</code> implementation improvements (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2601">#2601</a>): <ul> <li>If the target executor is <code>ScheduledExecutorService</code>, then its <code>schedule</code> API is used for time-related coroutine operations.</li> <li><code>RemoveOnCancelPolicy</code> is now part of the public contract.</li> </ul> </li> <li>Introduced overloads for <code>Task.asDeferred</code> and <code>Task.await</code> that accept <code>CancellationTokenSource</code> for bidirectional cancellation (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2527">#2527</a>).</li> <li>Reactive streams are updated to <code>1.0.3</code> (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2740">#2740</a>).</li> <li><code>CopyableThrowable</code> is allowed to modify the exception message during stacktrace recovery (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/1931">#1931</a>).</li> <li><code>CoroutineDispatcher.releaseInterceptedContinuation</code> is now a <code>final</code> method (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2785">#2785</a>).</li> <li>Closing a Handler underlying <code>Handler.asCoroutineDispatcher</code> now causes the dispatched coroutines to be canceled on <code>Dispatchers.IO ([#2778](https://github.com/Kotlin/kotlinx.coroutines/issues/2778))</code>.</li> <li>Kotlin is updated to 1.5.20.</li> <li>Fixed a spurious <code>ClassCastException</code> in <code>releaseInterceptedContinuation</code> and <code>IllegalStateException</code> from <code>tryReleaseClaimedContinuation</code> (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2736">#2736</a>, <a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2768">#2768</a>).</li> <li>Fixed inconsistent exception message during stacktrace recovery for non-suspending channel iterators (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2749">#2749</a>).</li> <li>Fixed linear stack usage for <code>CompletableFuture.asDeferred</code> when the target future has a long chain of listeners (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2730">#2730</a>).</li> <li>Any exceptions from <code>CoroutineDispatcher.isDispatchNeeded</code> are now considered as fatal and are propagated to the caller (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2733">#2733</a>).</li> <li>Internal <code>DebugProbesKt</code> (used in the debugger implementation) are moved from <code>debug</code> to <code>core</code> module.</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/Kotlin/kotlinx.coroutines/commit/b231887c3214187cf7f09a74073f84383a487b71"><code>b231887</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2812">#2812</a> from Kotlin/version-1.5.1</li> <li><a href="https://github.com/Kotlin/kotlinx.coroutines/commit/2a4c00bd2604be9088468ca73edd2a258e089eff"><code>2a4c00b</code></a> Version 1.5.1</li> <li><a href="https://github.com/Kotlin/kotlinx.coroutines/commit/69c3ce31342f6aea7602da173fa7128f017365ee"><code>69c3ce3</code></a> Update Dokka and Knit to their stable versions, remove bintray leftovers (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2811">#2811</a>)</li> <li><a href="https://github.com/Kotlin/kotlinx.coroutines/commit/f5e87400f4d11be56851a4304aa1a40fa3c09cde"><code>f5e8740</code></a> General cleanup (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2809">#2809</a>)</li> <li><a href="https://github.com/Kotlin/kotlinx.coroutines/commit/c9ab4fd21b900f66336d4d029610643c1b8839ae"><code>c9ab4fd</code></a> Update Kotlin to 1.5.20 (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2810">#2810</a>)</li> <li><a href="https://github.com/Kotlin/kotlinx.coroutines/commit/bcbcd16b8c4b63478ff2ad15567688428232e928"><code>bcbcd16</code></a> Upgrade to newest Dokka and Knit (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2805">#2805</a>)</li> <li><a href="https://github.com/Kotlin/kotlinx.coroutines/commit/074cc3f79aab22a4becfad5b7595f2de6fae3db1"><code>074cc3f</code></a> Update Lincheck to 2.14 (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2801">#2801</a>)</li> <li><a href="https://github.com/Kotlin/kotlinx.coroutines/commit/6cd1883fc06fb27fd8efcf907e459d05f1296102"><code>6cd1883</code></a> Cancel dispatched coroutine on Dispatchers.IO when the underlying Han… (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2784">#2784</a>)</li> <li><a href="https://github.com/Kotlin/kotlinx.coroutines/commit/a327dfb5809ef508d416a1cf98110340dcfe7430"><code>a327dfb</code></a> Remove opt-in annotation from internal MainTestDispatcher</li> <li><a href="https://github.com/Kotlin/kotlinx.coroutines/commit/e81ce210eef465d8fa0097bd6e463202b0f3e253"><code>e81ce21</code></a> Introduce Task.await and Task.asDeferred with CancellationTokenSource (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2786">#2786</a>)</li> <li>Additional commits viewable in <a href="https://github.com/Kotlin/kotlinx.coroutines/compare/1.5.0...1.5.1">compare view</a></li> </ul> </details> <br /> Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) --- <details> <summary>Dependabot commands and options</summary> <br /> You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) </details>
kodiakhq bot
referenced
this issue
in relaycorp/relaynet-gateway-android
Jul 12, 2021
Bumps `kotlinCoroutinesVersion` from 1.4.3 to 1.5.1. Updates `kotlinx-coroutines-core` from 1.4.3 to 1.5.1 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/Kotlin/kotlinx.coroutines/releases">kotlinx-coroutines-core's releases</a>.</em></p> <blockquote> <h2>1.5.1</h2> <ul> <li>Atomic <code>update</code>, <code>getAndUpdate</code>, and <code>updateAndGet</code> operations of <code>MutableStateFlow</code> (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2720">#2720</a>).</li> <li><code>Executor.asCoroutineDispatcher</code> implementation improvements (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2601">#2601</a>): <ul> <li>If the target executor is <code>ScheduledExecutorService</code>, then its <code>schedule</code> API is used for time-related coroutine operations.</li> <li><code>RemoveOnCancelPolicy</code> is now part of the public contract.</li> </ul> </li> <li>Introduced overloads for <code>Task.asDeferred</code> and <code>Task.await</code> that accept <code>CancellationTokenSource</code> for bidirectional cancellation (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2527">#2527</a>).</li> <li>Reactive streams are updated to <code>1.0.3</code> (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2740">#2740</a>).</li> <li><code>CopyableThrowable</code> is allowed to modify the exception message during stacktrace recovery (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/1931">#1931</a>).</li> <li><code>CoroutineDispatcher.releaseInterceptedContinuation</code> is now a <code>final</code> method (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2785">#2785</a>).</li> <li>Closing a Handler underlying <code>Handler.asCoroutineDispatcher</code> now causes the dispatched coroutines to be canceled on <code>Dispatchers.IO ([#2778](https://github.com/Kotlin/kotlinx.coroutines/issues/2778))</code>.</li> <li>Kotlin is updated to 1.5.20.</li> <li>Fixed a spurious <code>ClassCastException</code> in <code>releaseInterceptedContinuation</code> and <code>IllegalStateException</code> from <code>tryReleaseClaimedContinuation</code> (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2736">#2736</a>, <a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2768">#2768</a>).</li> <li>Fixed inconsistent exception message during stacktrace recovery for non-suspending channel iterators (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2749">#2749</a>).</li> <li>Fixed linear stack usage for <code>CompletableFuture.asDeferred</code> when the target future has a long chain of listeners (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2730">#2730</a>).</li> <li>Any exceptions from <code>CoroutineDispatcher.isDispatchNeeded</code> are now considered as fatal and are propagated to the caller (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2733">#2733</a>).</li> <li>Internal <code>DebugProbesKt</code> (used in the debugger implementation) are moved from <code>debug</code> to <code>core</code> module.</li> </ul> <h2>1.5.0</h2> <p>Note that this is a full changelog relative to 1.4.3 version. Changelog relative to 1.5.0-RC can be found in the end.</p> <h3>Channels API</h3> <ul> <li>Major channels API rework (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/330">#330</a>, <a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/974">#974</a>). Existing <code>offer</code>, <code>poll</code>, and <code>sendBlocking</code> methods are deprecated, internal <code>receiveCatching</code> and <code>onReceiveCatching</code> removed, <code>receiveOrNull</code> and <code>onReceiveOrNull</code> are completely deprecated. Previously deprecated <code>SendChannel.isFull</code> declaration is removed. Channel operators deprecated with <code>ERROR</code> are now <code>HIDDEN</code>.</li> <li>New methods <code>receiveCatching</code>, <code>onReceiveCatching</code> <code>trySend</code>, <code>tryReceive</code>, and <code>trySendBlocking</code> along with the new result type <code>ChannelResult</code> are introduced. They provide better type safety, are less error-prone, and have a consistent future-proof naming scheme. The full rationale behind this change can be found <a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/974#issuecomment-806569582">here</a>.</li> <li><code>BroadcastChannel</code> and <code>ConflatedBroadcastChannel</code> are marked as <code>ObsoleteCoroutinesApi</code> in the favor or <code>SharedFlow</code> and <code>StateFlow</code>. The migration scheme can be found in their documentation. These classes will be deprecated in the next major release.</li> <li><code>callbackFlow</code> and <code>channelFlow</code> are promoted to stable API.</li> </ul> <h3>Reactive integrations</h3> <ul> <li>All existing API in modules <code>kotlinx-coroutines-rx2</code>, <code>kotlinx-coroutines-rx3</code>, <code>kotlinx-coroutines-reactive</code>, <code>kotlinx-coroutines-reactor</code>, and <code>kotlinx-coroutines-jdk9</code> were revisited and promoted to stable (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2545">#2545</a>).</li> <li><code>publish</code> is no longer allowed to emit <code>null</code> values (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2646">#2646</a>).</li> <li>Misleading <code>awaitSingleOr*</code> functions on <code>Publisher</code> type are deprecated (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2591">#2591</a>).</li> <li><code>MaybeSource.await</code> is deprecated in the favor of <code>awaitSingle</code>, additional lint functions for <code>Mono</code> are added in order to prevent ambiguous <code>Publisher</code> usages (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2628">#2628</a>, <a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/1587">#1587</a>).</li> <li><code>ContextView</code> support in <code>kotlinx-coroutines-reactor</code> (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2575">#2575</a>).</li> <li>All reactive builders no longer ignore inner cancellation exceptions preventing their completion (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2262">#2262</a>, <a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2646">#2646</a>).</li> <li><code>MaybeSource.collect</code> and <code>Maybe.collect</code> properly finish when they are completed without a value (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2617">#2617</a>).</li> <li>All exceptions are now consistently handled according to reactive specification, whether they are considered 'fatal' or not by reactive frameworks (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2646">#2646</a>).</li> </ul> <h3>Other improvements</h3> <ul> <li>Kotlin version is upgraded to 1.5.0 and JVM target is updated to 1.8.</li> <li><code>Flow.last</code> and <code>Flow.lastOrNull</code> operators (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2246">#2246</a>).</li> <li><code>Flow.runningFold</code> operator (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2641">#2641</a>).</li> <li><code>CoroutinesTimeout</code> rule for JUnit5 (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2197">#2197</a>).</li> <li>Internals of <code>Job</code> and <code>AbstractCoroutine</code> was reworked, resulting in smaller code size, less memory footprint, and better performance (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2513">#2513</a>, <a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2512">#2512</a>).</li> <li><code>CancellationException</code> from Kotlin standard library is used for cancellation on Koltin/JS and Kotlin/Native (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2638">#2638</a>).</li> <li>Introduced new <code>DelicateCoroutinesApi</code> annotation that warns users about potential target API pitfalls and suggests studying API's documentation first. The only delicate API right now is <code>GlobalScope</code> (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2637">#2637</a>).</li> <li>Fixed bug introduced in <code>1.4.3</code> when <code>kotlinx-coroutines-core.jar</code> triggered IDEA debugger failure (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2619">#2619</a>).</li> <li>Fixed memory leak of <code>ChildHandlerNode</code> with reusable continuations (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2564">#2564</a>).</li> <li>Various documentation improvements (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2555">#2555</a>, <a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2589">#2589</a>, <a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2592">#2592</a>, <a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2583">#2583</a>, <a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2437">#2437</a>, <a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2616">#2616</a>, <a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2633">#2633</a>, <a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2560">#2560</a>).</li> </ul> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/Kotlin/kotlinx.coroutines/blob/master/CHANGES.md">kotlinx-coroutines-core's changelog</a>.</em></p> <blockquote> <h2>Version 1.5.1</h2> <ul> <li>Atomic <code>update</code>, <code>getAndUpdate</code>, and <code>updateAndGet</code> operations of <code>MutableStateFlow</code> (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2720">#2720</a>).</li> <li><code>Executor.asCoroutineDispatcher</code> implementation improvements (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2601">#2601</a>): <ul> <li>If the target executor is <code>ScheduledExecutorService</code>, then its <code>schedule</code> API is used for time-related coroutine operations.</li> <li><code>RemoveOnCancelPolicy</code> is now part of the public contract.</li> </ul> </li> <li>Introduced overloads for <code>Task.asDeferred</code> and <code>Task.await</code> that accept <code>CancellationTokenSource</code> for bidirectional cancellation (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2527">#2527</a>).</li> <li>Reactive streams are updated to <code>1.0.3</code> (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2740">#2740</a>).</li> <li><code>CopyableThrowable</code> is allowed to modify the exception message during stacktrace recovery (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/1931">#1931</a>).</li> <li><code>CoroutineDispatcher.releaseInterceptedContinuation</code> is now a <code>final</code> method (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2785">#2785</a>).</li> <li>Closing a Handler underlying <code>Handler.asCoroutineDispatcher</code> now causes the dispatched coroutines to be canceled on <code>Dispatchers.IO ([#2778](https://github.com/Kotlin/kotlinx.coroutines/issues/2778))</code>.</li> <li>Kotlin is updated to 1.5.20.</li> <li>Fixed a spurious <code>ClassCastException</code> in <code>releaseInterceptedContinuation</code> and <code>IllegalStateException</code> from <code>tryReleaseClaimedContinuation</code> (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2736">#2736</a>, <a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2768">#2768</a>).</li> <li>Fixed inconsistent exception message during stacktrace recovery for non-suspending channel iterators (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2749">#2749</a>).</li> <li>Fixed linear stack usage for <code>CompletableFuture.asDeferred</code> when the target future has a long chain of listeners (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2730">#2730</a>).</li> <li>Any exceptions from <code>CoroutineDispatcher.isDispatchNeeded</code> are now considered as fatal and are propagated to the caller (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2733">#2733</a>).</li> <li>Internal <code>DebugProbesKt</code> (used in the debugger implementation) are moved from <code>debug</code> to <code>core</code> module.</li> </ul> <h2>Version 1.5.0</h2> <p>Note that this is a full changelog relative to 1.4.3 version. Changelog relative to 1.5.0-RC can be found in the end.</p> <h3>Channels API</h3> <ul> <li>Major channels API rework (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/330">#330</a>, <a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/974">#974</a>). Existing <code>offer</code>, <code>poll</code>, and <code>sendBlocking</code> methods are deprecated, internal <code>receiveCatching</code> and <code>onReceiveCatching</code> removed, <code>receiveOrNull</code> and <code>onReceiveOrNull</code> are completely deprecated. Previously deprecated <code>SendChannel.isFull</code> declaration is removed. Channel operators deprecated with <code>ERROR</code> are now <code>HIDDEN</code>.</li> <li>New methods <code>receiveCatching</code>, <code>onReceiveCatching</code> <code>trySend</code>, <code>tryReceive</code>, and <code>trySendBlocking</code> along with the new result type <code>ChannelResult</code> are introduced. They provide better type safety, are less error-prone, and have a consistent future-proof naming scheme. The full rationale behind this change can be found <a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/974#issuecomment-806569582">here</a>.</li> <li><code>BroadcastChannel</code> and <code>ConflatedBroadcastChannel</code> are marked as <code>ObsoleteCoroutinesApi</code> in the favor or <code>SharedFlow</code> and <code>StateFlow</code>. The migration scheme can be found in their documentation. These classes will be deprecated in the next major release.</li> <li><code>callbackFlow</code> and <code>channelFlow</code> are promoted to stable API.</li> </ul> <h3>Reactive integrations</h3> <ul> <li>All existing API in modules <code>kotlinx-coroutines-rx2</code>, <code>kotlinx-coroutines-rx3</code>, <code>kotlinx-coroutines-reactive</code>, <code>kotlinx-coroutines-reactor</code>, and <code>kotlinx-coroutines-jdk9</code> were revisited and promoted to stable (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2545">#2545</a>).</li> <li><code>publish</code> is no longer allowed to emit <code>null</code> values (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2646">#2646</a>).</li> <li>Misleading <code>awaitSingleOr*</code> functions on <code>Publisher</code> type are deprecated (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2591">#2591</a>).</li> <li><code>MaybeSource.await</code> is deprecated in the favor of <code>awaitSingle</code>, additional lint functions for <code>Mono</code> are added in order to prevent ambiguous <code>Publisher</code> usages (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2628">#2628</a>, <a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/1587">#1587</a>).</li> <li><code>ContextView</code> support in <code>kotlinx-coroutines-reactor</code> (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2575">#2575</a>).</li> <li>All reactive builders no longer ignore inner cancellation exceptions preventing their completion (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2262">#2262</a>, <a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2646">#2646</a>).</li> <li><code>MaybeSource.collect</code> and <code>Maybe.collect</code> properly finish when they are completed without a value (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2617">#2617</a>).</li> <li>All exceptions are now consistently handled according to reactive specification, whether they are considered 'fatal' or not by reactive frameworks (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2646">#2646</a>).</li> </ul> <h3>Other improvements</h3> <ul> <li>Kotlin version is upgraded to 1.5.0 and JVM target is updated to 1.8.</li> <li><code>Flow.last</code> and <code>Flow.lastOrNull</code> operators (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2246">#2246</a>).</li> <li><code>Flow.runningFold</code> operator (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2641">#2641</a>).</li> <li><code>CoroutinesTimeout</code> rule for JUnit5 (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2197">#2197</a>).</li> <li>Internals of <code>Job</code> and <code>AbstractCoroutine</code> was reworked, resulting in smaller code size, less memory footprint, and better performance (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2513">#2513</a>, <a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2512">#2512</a>).</li> <li><code>CancellationException</code> from Kotlin standard library is used for cancellation on Koltin/JS and Kotlin/Native (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2638">#2638</a>).</li> <li>Introduced new <code>DelicateCoroutinesApi</code> annotation that warns users about potential target API pitfalls and suggests studying API's documentation first. The only delicate API right now is <code>GlobalScope</code> (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2637">#2637</a>).</li> <li>Fixed bug introduced in <code>1.4.3</code> when <code>kotlinx-coroutines-core.jar</code> triggered IDEA debugger failure (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2619">#2619</a>).</li> </ul> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/Kotlin/kotlinx.coroutines/commit/b231887c3214187cf7f09a74073f84383a487b71"><code>b231887</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2812">#2812</a> from Kotlin/version-1.5.1</li> <li><a href="https://github.com/Kotlin/kotlinx.coroutines/commit/2a4c00bd2604be9088468ca73edd2a258e089eff"><code>2a4c00b</code></a> Version 1.5.1</li> <li><a href="https://github.com/Kotlin/kotlinx.coroutines/commit/69c3ce31342f6aea7602da173fa7128f017365ee"><code>69c3ce3</code></a> Update Dokka and Knit to their stable versions, remove bintray leftovers (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2811">#2811</a>)</li> <li><a href="https://github.com/Kotlin/kotlinx.coroutines/commit/f5e87400f4d11be56851a4304aa1a40fa3c09cde"><code>f5e8740</code></a> General cleanup (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2809">#2809</a>)</li> <li><a href="https://github.com/Kotlin/kotlinx.coroutines/commit/c9ab4fd21b900f66336d4d029610643c1b8839ae"><code>c9ab4fd</code></a> Update Kotlin to 1.5.20 (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2810">#2810</a>)</li> <li><a href="https://github.com/Kotlin/kotlinx.coroutines/commit/bcbcd16b8c4b63478ff2ad15567688428232e928"><code>bcbcd16</code></a> Upgrade to newest Dokka and Knit (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2805">#2805</a>)</li> <li><a href="https://github.com/Kotlin/kotlinx.coroutines/commit/074cc3f79aab22a4becfad5b7595f2de6fae3db1"><code>074cc3f</code></a> Update Lincheck to 2.14 (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2801">#2801</a>)</li> <li><a href="https://github.com/Kotlin/kotlinx.coroutines/commit/6cd1883fc06fb27fd8efcf907e459d05f1296102"><code>6cd1883</code></a> Cancel dispatched coroutine on Dispatchers.IO when the underlying Han… (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2784">#2784</a>)</li> <li><a href="https://github.com/Kotlin/kotlinx.coroutines/commit/a327dfb5809ef508d416a1cf98110340dcfe7430"><code>a327dfb</code></a> Remove opt-in annotation from internal MainTestDispatcher</li> <li><a href="https://github.com/Kotlin/kotlinx.coroutines/commit/e81ce210eef465d8fa0097bd6e463202b0f3e253"><code>e81ce21</code></a> Introduce Task.await and Task.asDeferred with CancellationTokenSource (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2786">#2786</a>)</li> <li>Additional commits viewable in <a href="https://github.com/Kotlin/kotlinx.coroutines/compare/1.4.3...1.5.1">compare view</a></li> </ul> </details> <br /> Updates `kotlinx-coroutines-test` from 1.4.3 to 1.5.1 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/Kotlin/kotlinx.coroutines/releases">kotlinx-coroutines-test's releases</a>.</em></p> <blockquote> <h2>1.5.1</h2> <ul> <li>Atomic <code>update</code>, <code>getAndUpdate</code>, and <code>updateAndGet</code> operations of <code>MutableStateFlow</code> (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2720">#2720</a>).</li> <li><code>Executor.asCoroutineDispatcher</code> implementation improvements (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2601">#2601</a>): <ul> <li>If the target executor is <code>ScheduledExecutorService</code>, then its <code>schedule</code> API is used for time-related coroutine operations.</li> <li><code>RemoveOnCancelPolicy</code> is now part of the public contract.</li> </ul> </li> <li>Introduced overloads for <code>Task.asDeferred</code> and <code>Task.await</code> that accept <code>CancellationTokenSource</code> for bidirectional cancellation (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2527">#2527</a>).</li> <li>Reactive streams are updated to <code>1.0.3</code> (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2740">#2740</a>).</li> <li><code>CopyableThrowable</code> is allowed to modify the exception message during stacktrace recovery (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/1931">#1931</a>).</li> <li><code>CoroutineDispatcher.releaseInterceptedContinuation</code> is now a <code>final</code> method (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2785">#2785</a>).</li> <li>Closing a Handler underlying <code>Handler.asCoroutineDispatcher</code> now causes the dispatched coroutines to be canceled on <code>Dispatchers.IO ([#2778](https://github.com/Kotlin/kotlinx.coroutines/issues/2778))</code>.</li> <li>Kotlin is updated to 1.5.20.</li> <li>Fixed a spurious <code>ClassCastException</code> in <code>releaseInterceptedContinuation</code> and <code>IllegalStateException</code> from <code>tryReleaseClaimedContinuation</code> (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2736">#2736</a>, <a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2768">#2768</a>).</li> <li>Fixed inconsistent exception message during stacktrace recovery for non-suspending channel iterators (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2749">#2749</a>).</li> <li>Fixed linear stack usage for <code>CompletableFuture.asDeferred</code> when the target future has a long chain of listeners (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2730">#2730</a>).</li> <li>Any exceptions from <code>CoroutineDispatcher.isDispatchNeeded</code> are now considered as fatal and are propagated to the caller (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2733">#2733</a>).</li> <li>Internal <code>DebugProbesKt</code> (used in the debugger implementation) are moved from <code>debug</code> to <code>core</code> module.</li> </ul> <h2>1.5.0</h2> <p>Note that this is a full changelog relative to 1.4.3 version. Changelog relative to 1.5.0-RC can be found in the end.</p> <h3>Channels API</h3> <ul> <li>Major channels API rework (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/330">#330</a>, <a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/974">#974</a>). Existing <code>offer</code>, <code>poll</code>, and <code>sendBlocking</code> methods are deprecated, internal <code>receiveCatching</code> and <code>onReceiveCatching</code> removed, <code>receiveOrNull</code> and <code>onReceiveOrNull</code> are completely deprecated. Previously deprecated <code>SendChannel.isFull</code> declaration is removed. Channel operators deprecated with <code>ERROR</code> are now <code>HIDDEN</code>.</li> <li>New methods <code>receiveCatching</code>, <code>onReceiveCatching</code> <code>trySend</code>, <code>tryReceive</code>, and <code>trySendBlocking</code> along with the new result type <code>ChannelResult</code> are introduced. They provide better type safety, are less error-prone, and have a consistent future-proof naming scheme. The full rationale behind this change can be found <a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/974#issuecomment-806569582">here</a>.</li> <li><code>BroadcastChannel</code> and <code>ConflatedBroadcastChannel</code> are marked as <code>ObsoleteCoroutinesApi</code> in the favor or <code>SharedFlow</code> and <code>StateFlow</code>. The migration scheme can be found in their documentation. These classes will be deprecated in the next major release.</li> <li><code>callbackFlow</code> and <code>channelFlow</code> are promoted to stable API.</li> </ul> <h3>Reactive integrations</h3> <ul> <li>All existing API in modules <code>kotlinx-coroutines-rx2</code>, <code>kotlinx-coroutines-rx3</code>, <code>kotlinx-coroutines-reactive</code>, <code>kotlinx-coroutines-reactor</code>, and <code>kotlinx-coroutines-jdk9</code> were revisited and promoted to stable (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2545">#2545</a>).</li> <li><code>publish</code> is no longer allowed to emit <code>null</code> values (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2646">#2646</a>).</li> <li>Misleading <code>awaitSingleOr*</code> functions on <code>Publisher</code> type are deprecated (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2591">#2591</a>).</li> <li><code>MaybeSource.await</code> is deprecated in the favor of <code>awaitSingle</code>, additional lint functions for <code>Mono</code> are added in order to prevent ambiguous <code>Publisher</code> usages (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2628">#2628</a>, <a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/1587">#1587</a>).</li> <li><code>ContextView</code> support in <code>kotlinx-coroutines-reactor</code> (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2575">#2575</a>).</li> <li>All reactive builders no longer ignore inner cancellation exceptions preventing their completion (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2262">#2262</a>, <a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2646">#2646</a>).</li> <li><code>MaybeSource.collect</code> and <code>Maybe.collect</code> properly finish when they are completed without a value (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2617">#2617</a>).</li> <li>All exceptions are now consistently handled according to reactive specification, whether they are considered 'fatal' or not by reactive frameworks (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2646">#2646</a>).</li> </ul> <h3>Other improvements</h3> <ul> <li>Kotlin version is upgraded to 1.5.0 and JVM target is updated to 1.8.</li> <li><code>Flow.last</code> and <code>Flow.lastOrNull</code> operators (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2246">#2246</a>).</li> <li><code>Flow.runningFold</code> operator (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2641">#2641</a>).</li> <li><code>CoroutinesTimeout</code> rule for JUnit5 (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2197">#2197</a>).</li> <li>Internals of <code>Job</code> and <code>AbstractCoroutine</code> was reworked, resulting in smaller code size, less memory footprint, and better performance (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2513">#2513</a>, <a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2512">#2512</a>).</li> <li><code>CancellationException</code> from Kotlin standard library is used for cancellation on Koltin/JS and Kotlin/Native (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2638">#2638</a>).</li> <li>Introduced new <code>DelicateCoroutinesApi</code> annotation that warns users about potential target API pitfalls and suggests studying API's documentation first. The only delicate API right now is <code>GlobalScope</code> (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2637">#2637</a>).</li> <li>Fixed bug introduced in <code>1.4.3</code> when <code>kotlinx-coroutines-core.jar</code> triggered IDEA debugger failure (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2619">#2619</a>).</li> <li>Fixed memory leak of <code>ChildHandlerNode</code> with reusable continuations (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2564">#2564</a>).</li> <li>Various documentation improvements (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2555">#2555</a>, <a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2589">#2589</a>, <a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2592">#2592</a>, <a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2583">#2583</a>, <a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2437">#2437</a>, <a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2616">#2616</a>, <a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2633">#2633</a>, <a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2560">#2560</a>).</li> </ul> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/Kotlin/kotlinx.coroutines/blob/master/CHANGES.md">kotlinx-coroutines-test's changelog</a>.</em></p> <blockquote> <h2>Version 1.5.1</h2> <ul> <li>Atomic <code>update</code>, <code>getAndUpdate</code>, and <code>updateAndGet</code> operations of <code>MutableStateFlow</code> (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2720">#2720</a>).</li> <li><code>Executor.asCoroutineDispatcher</code> implementation improvements (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2601">#2601</a>): <ul> <li>If the target executor is <code>ScheduledExecutorService</code>, then its <code>schedule</code> API is used for time-related coroutine operations.</li> <li><code>RemoveOnCancelPolicy</code> is now part of the public contract.</li> </ul> </li> <li>Introduced overloads for <code>Task.asDeferred</code> and <code>Task.await</code> that accept <code>CancellationTokenSource</code> for bidirectional cancellation (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2527">#2527</a>).</li> <li>Reactive streams are updated to <code>1.0.3</code> (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2740">#2740</a>).</li> <li><code>CopyableThrowable</code> is allowed to modify the exception message during stacktrace recovery (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/1931">#1931</a>).</li> <li><code>CoroutineDispatcher.releaseInterceptedContinuation</code> is now a <code>final</code> method (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2785">#2785</a>).</li> <li>Closing a Handler underlying <code>Handler.asCoroutineDispatcher</code> now causes the dispatched coroutines to be canceled on <code>Dispatchers.IO ([#2778](https://github.com/Kotlin/kotlinx.coroutines/issues/2778))</code>.</li> <li>Kotlin is updated to 1.5.20.</li> <li>Fixed a spurious <code>ClassCastException</code> in <code>releaseInterceptedContinuation</code> and <code>IllegalStateException</code> from <code>tryReleaseClaimedContinuation</code> (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2736">#2736</a>, <a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2768">#2768</a>).</li> <li>Fixed inconsistent exception message during stacktrace recovery for non-suspending channel iterators (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2749">#2749</a>).</li> <li>Fixed linear stack usage for <code>CompletableFuture.asDeferred</code> when the target future has a long chain of listeners (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2730">#2730</a>).</li> <li>Any exceptions from <code>CoroutineDispatcher.isDispatchNeeded</code> are now considered as fatal and are propagated to the caller (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2733">#2733</a>).</li> <li>Internal <code>DebugProbesKt</code> (used in the debugger implementation) are moved from <code>debug</code> to <code>core</code> module.</li> </ul> <h2>Version 1.5.0</h2> <p>Note that this is a full changelog relative to 1.4.3 version. Changelog relative to 1.5.0-RC can be found in the end.</p> <h3>Channels API</h3> <ul> <li>Major channels API rework (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/330">#330</a>, <a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/974">#974</a>). Existing <code>offer</code>, <code>poll</code>, and <code>sendBlocking</code> methods are deprecated, internal <code>receiveCatching</code> and <code>onReceiveCatching</code> removed, <code>receiveOrNull</code> and <code>onReceiveOrNull</code> are completely deprecated. Previously deprecated <code>SendChannel.isFull</code> declaration is removed. Channel operators deprecated with <code>ERROR</code> are now <code>HIDDEN</code>.</li> <li>New methods <code>receiveCatching</code>, <code>onReceiveCatching</code> <code>trySend</code>, <code>tryReceive</code>, and <code>trySendBlocking</code> along with the new result type <code>ChannelResult</code> are introduced. They provide better type safety, are less error-prone, and have a consistent future-proof naming scheme. The full rationale behind this change can be found <a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/974#issuecomment-806569582">here</a>.</li> <li><code>BroadcastChannel</code> and <code>ConflatedBroadcastChannel</code> are marked as <code>ObsoleteCoroutinesApi</code> in the favor or <code>SharedFlow</code> and <code>StateFlow</code>. The migration scheme can be found in their documentation. These classes will be deprecated in the next major release.</li> <li><code>callbackFlow</code> and <code>channelFlow</code> are promoted to stable API.</li> </ul> <h3>Reactive integrations</h3> <ul> <li>All existing API in modules <code>kotlinx-coroutines-rx2</code>, <code>kotlinx-coroutines-rx3</code>, <code>kotlinx-coroutines-reactive</code>, <code>kotlinx-coroutines-reactor</code>, and <code>kotlinx-coroutines-jdk9</code> were revisited and promoted to stable (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2545">#2545</a>).</li> <li><code>publish</code> is no longer allowed to emit <code>null</code> values (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2646">#2646</a>).</li> <li>Misleading <code>awaitSingleOr*</code> functions on <code>Publisher</code> type are deprecated (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2591">#2591</a>).</li> <li><code>MaybeSource.await</code> is deprecated in the favor of <code>awaitSingle</code>, additional lint functions for <code>Mono</code> are added in order to prevent ambiguous <code>Publisher</code> usages (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2628">#2628</a>, <a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/1587">#1587</a>).</li> <li><code>ContextView</code> support in <code>kotlinx-coroutines-reactor</code> (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2575">#2575</a>).</li> <li>All reactive builders no longer ignore inner cancellation exceptions preventing their completion (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2262">#2262</a>, <a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2646">#2646</a>).</li> <li><code>MaybeSource.collect</code> and <code>Maybe.collect</code> properly finish when they are completed without a value (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2617">#2617</a>).</li> <li>All exceptions are now consistently handled according to reactive specification, whether they are considered 'fatal' or not by reactive frameworks (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2646">#2646</a>).</li> </ul> <h3>Other improvements</h3> <ul> <li>Kotlin version is upgraded to 1.5.0 and JVM target is updated to 1.8.</li> <li><code>Flow.last</code> and <code>Flow.lastOrNull</code> operators (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2246">#2246</a>).</li> <li><code>Flow.runningFold</code> operator (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2641">#2641</a>).</li> <li><code>CoroutinesTimeout</code> rule for JUnit5 (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2197">#2197</a>).</li> <li>Internals of <code>Job</code> and <code>AbstractCoroutine</code> was reworked, resulting in smaller code size, less memory footprint, and better performance (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2513">#2513</a>, <a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2512">#2512</a>).</li> <li><code>CancellationException</code> from Kotlin standard library is used for cancellation on Koltin/JS and Kotlin/Native (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2638">#2638</a>).</li> <li>Introduced new <code>DelicateCoroutinesApi</code> annotation that warns users about potential target API pitfalls and suggests studying API's documentation first. The only delicate API right now is <code>GlobalScope</code> (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2637">#2637</a>).</li> <li>Fixed bug introduced in <code>1.4.3</code> when <code>kotlinx-coroutines-core.jar</code> triggered IDEA debugger failure (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2619">#2619</a>).</li> </ul> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/Kotlin/kotlinx.coroutines/commit/b231887c3214187cf7f09a74073f84383a487b71"><code>b231887</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2812">#2812</a> from Kotlin/version-1.5.1</li> <li><a href="https://github.com/Kotlin/kotlinx.coroutines/commit/2a4c00bd2604be9088468ca73edd2a258e089eff"><code>2a4c00b</code></a> Version 1.5.1</li> <li><a href="https://github.com/Kotlin/kotlinx.coroutines/commit/69c3ce31342f6aea7602da173fa7128f017365ee"><code>69c3ce3</code></a> Update Dokka and Knit to their stable versions, remove bintray leftovers (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2811">#2811</a>)</li> <li><a href="https://github.com/Kotlin/kotlinx.coroutines/commit/f5e87400f4d11be56851a4304aa1a40fa3c09cde"><code>f5e8740</code></a> General cleanup (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2809">#2809</a>)</li> <li><a href="https://github.com/Kotlin/kotlinx.coroutines/commit/c9ab4fd21b900f66336d4d029610643c1b8839ae"><code>c9ab4fd</code></a> Update Kotlin to 1.5.20 (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2810">#2810</a>)</li> <li><a href="https://github.com/Kotlin/kotlinx.coroutines/commit/bcbcd16b8c4b63478ff2ad15567688428232e928"><code>bcbcd16</code></a> Upgrade to newest Dokka and Knit (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2805">#2805</a>)</li> <li><a href="https://github.com/Kotlin/kotlinx.coroutines/commit/074cc3f79aab22a4becfad5b7595f2de6fae3db1"><code>074cc3f</code></a> Update Lincheck to 2.14 (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2801">#2801</a>)</li> <li><a href="https://github.com/Kotlin/kotlinx.coroutines/commit/6cd1883fc06fb27fd8efcf907e459d05f1296102"><code>6cd1883</code></a> Cancel dispatched coroutine on Dispatchers.IO when the underlying Han… (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2784">#2784</a>)</li> <li><a href="https://github.com/Kotlin/kotlinx.coroutines/commit/a327dfb5809ef508d416a1cf98110340dcfe7430"><code>a327dfb</code></a> Remove opt-in annotation from internal MainTestDispatcher</li> <li><a href="https://github.com/Kotlin/kotlinx.coroutines/commit/e81ce210eef465d8fa0097bd6e463202b0f3e253"><code>e81ce21</code></a> Introduce Task.await and Task.asDeferred with CancellationTokenSource (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2786">#2786</a>)</li> <li>Additional commits viewable in <a href="https://github.com/Kotlin/kotlinx.coroutines/compare/1.4.3...1.5.1">compare view</a></li> </ul> </details> <br /> Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) --- <details> <summary>Dependabot commands and options</summary> <br /> You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) - `@dependabot badge me` will comment on this PR with code to add a "Dependabot enabled" badge to your readme Additionally, you can set the following in the `.dependabot/config.yml` file in this repo: - Update frequency - Out-of-range updates (receive only lockfile updates, if desired) - Security updates (receive only security updates, if desired) </details>
kodiakhq bot
referenced
this issue
in RBusarow/Tangle
Jul 14, 2021
[//]: # (dependabot-start)⚠️ **Dependabot is rebasing this PR**⚠️ Rebasing might not happen immediately, so don't worry if this takes some time. Note: if you make any changes to this PR yourself, they will take precedence over the rebase. --- [//]: # (dependabot-end) Bumps [kotlinx-coroutines-core](https://github.com/Kotlin/kotlinx.coroutines) from 1.5.0 to 1.5.1-native-mt. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/Kotlin/kotlinx.coroutines/releases">kotlinx-coroutines-core's releases</a>.</em></p> <blockquote> <h2>1.5.1</h2> <ul> <li>Atomic <code>update</code>, <code>getAndUpdate</code>, and <code>updateAndGet</code> operations of <code>MutableStateFlow</code> (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2720">#2720</a>).</li> <li><code>Executor.asCoroutineDispatcher</code> implementation improvements (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2601">#2601</a>): <ul> <li>If the target executor is <code>ScheduledExecutorService</code>, then its <code>schedule</code> API is used for time-related coroutine operations.</li> <li><code>RemoveOnCancelPolicy</code> is now part of the public contract.</li> </ul> </li> <li>Introduced overloads for <code>Task.asDeferred</code> and <code>Task.await</code> that accept <code>CancellationTokenSource</code> for bidirectional cancellation (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2527">#2527</a>).</li> <li>Reactive streams are updated to <code>1.0.3</code> (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2740">#2740</a>).</li> <li><code>CopyableThrowable</code> is allowed to modify the exception message during stacktrace recovery (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/1931">#1931</a>).</li> <li><code>CoroutineDispatcher.releaseInterceptedContinuation</code> is now a <code>final</code> method (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2785">#2785</a>).</li> <li>Closing a Handler underlying <code>Handler.asCoroutineDispatcher</code> now causes the dispatched coroutines to be canceled on <code>Dispatchers.IO ([#2778](https://github.com/Kotlin/kotlinx.coroutines/issues/2778))</code>.</li> <li>Kotlin is updated to 1.5.20.</li> <li>Fixed a spurious <code>ClassCastException</code> in <code>releaseInterceptedContinuation</code> and <code>IllegalStateException</code> from <code>tryReleaseClaimedContinuation</code> (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2736">#2736</a>, <a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2768">#2768</a>).</li> <li>Fixed inconsistent exception message during stacktrace recovery for non-suspending channel iterators (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2749">#2749</a>).</li> <li>Fixed linear stack usage for <code>CompletableFuture.asDeferred</code> when the target future has a long chain of listeners (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2730">#2730</a>).</li> <li>Any exceptions from <code>CoroutineDispatcher.isDispatchNeeded</code> are now considered as fatal and are propagated to the caller (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2733">#2733</a>).</li> <li>Internal <code>DebugProbesKt</code> (used in the debugger implementation) are moved from <code>debug</code> to <code>core</code> module.</li> </ul> </blockquote> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/Kotlin/kotlinx.coroutines/blob/master/CHANGES.md">kotlinx-coroutines-core's changelog</a>.</em></p> <blockquote> <h1>Change log for kotlinx.coroutines</h1> <h2>Version 1.5.1</h2> <ul> <li>Atomic <code>update</code>, <code>getAndUpdate</code>, and <code>updateAndGet</code> operations of <code>MutableStateFlow</code> (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2720">#2720</a>).</li> <li><code>Executor.asCoroutineDispatcher</code> implementation improvements (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2601">#2601</a>): <ul> <li>If the target executor is <code>ScheduledExecutorService</code>, then its <code>schedule</code> API is used for time-related coroutine operations.</li> <li><code>RemoveOnCancelPolicy</code> is now part of the public contract.</li> </ul> </li> <li>Introduced overloads for <code>Task.asDeferred</code> and <code>Task.await</code> that accept <code>CancellationTokenSource</code> for bidirectional cancellation (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2527">#2527</a>).</li> <li>Reactive streams are updated to <code>1.0.3</code> (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2740">#2740</a>).</li> <li><code>CopyableThrowable</code> is allowed to modify the exception message during stacktrace recovery (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/1931">#1931</a>).</li> <li><code>CoroutineDispatcher.releaseInterceptedContinuation</code> is now a <code>final</code> method (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2785">#2785</a>).</li> <li>Closing a Handler underlying <code>Handler.asCoroutineDispatcher</code> now causes the dispatched coroutines to be canceled on <code>Dispatchers.IO ([#2778](https://github.com/Kotlin/kotlinx.coroutines/issues/2778))</code>.</li> <li>Kotlin is updated to 1.5.20.</li> <li>Fixed a spurious <code>ClassCastException</code> in <code>releaseInterceptedContinuation</code> and <code>IllegalStateException</code> from <code>tryReleaseClaimedContinuation</code> (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2736">#2736</a>, <a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2768">#2768</a>).</li> <li>Fixed inconsistent exception message during stacktrace recovery for non-suspending channel iterators (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2749">#2749</a>).</li> <li>Fixed linear stack usage for <code>CompletableFuture.asDeferred</code> when the target future has a long chain of listeners (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2730">#2730</a>).</li> <li>Any exceptions from <code>CoroutineDispatcher.isDispatchNeeded</code> are now considered as fatal and are propagated to the caller (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2733">#2733</a>).</li> <li>Internal <code>DebugProbesKt</code> (used in the debugger implementation) are moved from <code>debug</code> to <code>core</code> module.</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li>See full diff in <a href="https://github.com/Kotlin/kotlinx.coroutines/commits">compare view</a></li> </ul> </details> <br /> [](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores) Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) --- <details> <summary>Dependabot commands and options</summary> <br /> You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) </details> #25
kodiakhq bot
referenced
this issue
in RBusarow/Tangle
Jul 14, 2021
Bumps [kotlinx-coroutines-test](https://github.com/Kotlin/kotlinx.coroutines) from 1.5.0 to 1.5.1-native-mt. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/Kotlin/kotlinx.coroutines/releases">kotlinx-coroutines-test's releases</a>.</em></p> <blockquote> <h2>1.5.1</h2> <ul> <li>Atomic <code>update</code>, <code>getAndUpdate</code>, and <code>updateAndGet</code> operations of <code>MutableStateFlow</code> (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2720">#2720</a>).</li> <li><code>Executor.asCoroutineDispatcher</code> implementation improvements (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2601">#2601</a>): <ul> <li>If the target executor is <code>ScheduledExecutorService</code>, then its <code>schedule</code> API is used for time-related coroutine operations.</li> <li><code>RemoveOnCancelPolicy</code> is now part of the public contract.</li> </ul> </li> <li>Introduced overloads for <code>Task.asDeferred</code> and <code>Task.await</code> that accept <code>CancellationTokenSource</code> for bidirectional cancellation (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2527">#2527</a>).</li> <li>Reactive streams are updated to <code>1.0.3</code> (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2740">#2740</a>).</li> <li><code>CopyableThrowable</code> is allowed to modify the exception message during stacktrace recovery (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/1931">#1931</a>).</li> <li><code>CoroutineDispatcher.releaseInterceptedContinuation</code> is now a <code>final</code> method (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2785">#2785</a>).</li> <li>Closing a Handler underlying <code>Handler.asCoroutineDispatcher</code> now causes the dispatched coroutines to be canceled on <code>Dispatchers.IO ([#2778](https://github.com/Kotlin/kotlinx.coroutines/issues/2778))</code>.</li> <li>Kotlin is updated to 1.5.20.</li> <li>Fixed a spurious <code>ClassCastException</code> in <code>releaseInterceptedContinuation</code> and <code>IllegalStateException</code> from <code>tryReleaseClaimedContinuation</code> (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2736">#2736</a>, <a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2768">#2768</a>).</li> <li>Fixed inconsistent exception message during stacktrace recovery for non-suspending channel iterators (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2749">#2749</a>).</li> <li>Fixed linear stack usage for <code>CompletableFuture.asDeferred</code> when the target future has a long chain of listeners (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2730">#2730</a>).</li> <li>Any exceptions from <code>CoroutineDispatcher.isDispatchNeeded</code> are now considered as fatal and are propagated to the caller (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2733">#2733</a>).</li> <li>Internal <code>DebugProbesKt</code> (used in the debugger implementation) are moved from <code>debug</code> to <code>core</code> module.</li> </ul> </blockquote> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/Kotlin/kotlinx.coroutines/blob/master/CHANGES.md">kotlinx-coroutines-test's changelog</a>.</em></p> <blockquote> <h1>Change log for kotlinx.coroutines</h1> <h2>Version 1.5.1</h2> <ul> <li>Atomic <code>update</code>, <code>getAndUpdate</code>, and <code>updateAndGet</code> operations of <code>MutableStateFlow</code> (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2720">#2720</a>).</li> <li><code>Executor.asCoroutineDispatcher</code> implementation improvements (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2601">#2601</a>): <ul> <li>If the target executor is <code>ScheduledExecutorService</code>, then its <code>schedule</code> API is used for time-related coroutine operations.</li> <li><code>RemoveOnCancelPolicy</code> is now part of the public contract.</li> </ul> </li> <li>Introduced overloads for <code>Task.asDeferred</code> and <code>Task.await</code> that accept <code>CancellationTokenSource</code> for bidirectional cancellation (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2527">#2527</a>).</li> <li>Reactive streams are updated to <code>1.0.3</code> (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2740">#2740</a>).</li> <li><code>CopyableThrowable</code> is allowed to modify the exception message during stacktrace recovery (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/1931">#1931</a>).</li> <li><code>CoroutineDispatcher.releaseInterceptedContinuation</code> is now a <code>final</code> method (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2785">#2785</a>).</li> <li>Closing a Handler underlying <code>Handler.asCoroutineDispatcher</code> now causes the dispatched coroutines to be canceled on <code>Dispatchers.IO ([#2778](https://github.com/Kotlin/kotlinx.coroutines/issues/2778))</code>.</li> <li>Kotlin is updated to 1.5.20.</li> <li>Fixed a spurious <code>ClassCastException</code> in <code>releaseInterceptedContinuation</code> and <code>IllegalStateException</code> from <code>tryReleaseClaimedContinuation</code> (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2736">#2736</a>, <a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2768">#2768</a>).</li> <li>Fixed inconsistent exception message during stacktrace recovery for non-suspending channel iterators (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2749">#2749</a>).</li> <li>Fixed linear stack usage for <code>CompletableFuture.asDeferred</code> when the target future has a long chain of listeners (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2730">#2730</a>).</li> <li>Any exceptions from <code>CoroutineDispatcher.isDispatchNeeded</code> are now considered as fatal and are propagated to the caller (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2733">#2733</a>).</li> <li>Internal <code>DebugProbesKt</code> (used in the debugger implementation) are moved from <code>debug</code> to <code>core</code> module.</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li>See full diff in <a href="https://github.com/Kotlin/kotlinx.coroutines/commits">compare view</a></li> </ul> </details> <br /> [](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores) Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) --- <details> <summary>Dependabot commands and options</summary> <br /> You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) </details> #19
kodiakhq bot
referenced
this issue
in RBusarow/Tangle
Jul 14, 2021
Bumps [kotlinx-coroutines-android](https://github.com/Kotlin/kotlinx.coroutines) from 1.5.0 to 1.5.1-native-mt. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/Kotlin/kotlinx.coroutines/releases">kotlinx-coroutines-android's releases</a>.</em></p> <blockquote> <h2>1.5.1</h2> <ul> <li>Atomic <code>update</code>, <code>getAndUpdate</code>, and <code>updateAndGet</code> operations of <code>MutableStateFlow</code> (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2720">#2720</a>).</li> <li><code>Executor.asCoroutineDispatcher</code> implementation improvements (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2601">#2601</a>): <ul> <li>If the target executor is <code>ScheduledExecutorService</code>, then its <code>schedule</code> API is used for time-related coroutine operations.</li> <li><code>RemoveOnCancelPolicy</code> is now part of the public contract.</li> </ul> </li> <li>Introduced overloads for <code>Task.asDeferred</code> and <code>Task.await</code> that accept <code>CancellationTokenSource</code> for bidirectional cancellation (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2527">#2527</a>).</li> <li>Reactive streams are updated to <code>1.0.3</code> (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2740">#2740</a>).</li> <li><code>CopyableThrowable</code> is allowed to modify the exception message during stacktrace recovery (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/1931">#1931</a>).</li> <li><code>CoroutineDispatcher.releaseInterceptedContinuation</code> is now a <code>final</code> method (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2785">#2785</a>).</li> <li>Closing a Handler underlying <code>Handler.asCoroutineDispatcher</code> now causes the dispatched coroutines to be canceled on <code>Dispatchers.IO ([#2778](https://github.com/Kotlin/kotlinx.coroutines/issues/2778))</code>.</li> <li>Kotlin is updated to 1.5.20.</li> <li>Fixed a spurious <code>ClassCastException</code> in <code>releaseInterceptedContinuation</code> and <code>IllegalStateException</code> from <code>tryReleaseClaimedContinuation</code> (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2736">#2736</a>, <a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2768">#2768</a>).</li> <li>Fixed inconsistent exception message during stacktrace recovery for non-suspending channel iterators (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2749">#2749</a>).</li> <li>Fixed linear stack usage for <code>CompletableFuture.asDeferred</code> when the target future has a long chain of listeners (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2730">#2730</a>).</li> <li>Any exceptions from <code>CoroutineDispatcher.isDispatchNeeded</code> are now considered as fatal and are propagated to the caller (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2733">#2733</a>).</li> <li>Internal <code>DebugProbesKt</code> (used in the debugger implementation) are moved from <code>debug</code> to <code>core</code> module.</li> </ul> </blockquote> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/Kotlin/kotlinx.coroutines/blob/master/CHANGES.md">kotlinx-coroutines-android's changelog</a>.</em></p> <blockquote> <h1>Change log for kotlinx.coroutines</h1> <h2>Version 1.5.1</h2> <ul> <li>Atomic <code>update</code>, <code>getAndUpdate</code>, and <code>updateAndGet</code> operations of <code>MutableStateFlow</code> (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2720">#2720</a>).</li> <li><code>Executor.asCoroutineDispatcher</code> implementation improvements (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2601">#2601</a>): <ul> <li>If the target executor is <code>ScheduledExecutorService</code>, then its <code>schedule</code> API is used for time-related coroutine operations.</li> <li><code>RemoveOnCancelPolicy</code> is now part of the public contract.</li> </ul> </li> <li>Introduced overloads for <code>Task.asDeferred</code> and <code>Task.await</code> that accept <code>CancellationTokenSource</code> for bidirectional cancellation (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2527">#2527</a>).</li> <li>Reactive streams are updated to <code>1.0.3</code> (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2740">#2740</a>).</li> <li><code>CopyableThrowable</code> is allowed to modify the exception message during stacktrace recovery (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/1931">#1931</a>).</li> <li><code>CoroutineDispatcher.releaseInterceptedContinuation</code> is now a <code>final</code> method (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2785">#2785</a>).</li> <li>Closing a Handler underlying <code>Handler.asCoroutineDispatcher</code> now causes the dispatched coroutines to be canceled on <code>Dispatchers.IO ([#2778](https://github.com/Kotlin/kotlinx.coroutines/issues/2778))</code>.</li> <li>Kotlin is updated to 1.5.20.</li> <li>Fixed a spurious <code>ClassCastException</code> in <code>releaseInterceptedContinuation</code> and <code>IllegalStateException</code> from <code>tryReleaseClaimedContinuation</code> (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2736">#2736</a>, <a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2768">#2768</a>).</li> <li>Fixed inconsistent exception message during stacktrace recovery for non-suspending channel iterators (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2749">#2749</a>).</li> <li>Fixed linear stack usage for <code>CompletableFuture.asDeferred</code> when the target future has a long chain of listeners (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2730">#2730</a>).</li> <li>Any exceptions from <code>CoroutineDispatcher.isDispatchNeeded</code> are now considered as fatal and are propagated to the caller (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2733">#2733</a>).</li> <li>Internal <code>DebugProbesKt</code> (used in the debugger implementation) are moved from <code>debug</code> to <code>core</code> module.</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li>See full diff in <a href="https://github.com/Kotlin/kotlinx.coroutines/commits">compare view</a></li> </ul> </details> <br /> [](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores) Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) --- <details> <summary>Dependabot commands and options</summary> <br /> You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) </details> #13
kodiakhq bot
referenced
this issue
in relaycorp/doh-jvm
Jul 14, 2021
Bumps `kotlinCoroutinesVersion` from 1.5.0 to 1.5.1. Updates `kotlinx-coroutines-core` from 1.5.0 to 1.5.1 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/Kotlin/kotlinx.coroutines/releases">kotlinx-coroutines-core's releases</a>.</em></p> <blockquote> <h2>1.5.1</h2> <ul> <li>Atomic <code>update</code>, <code>getAndUpdate</code>, and <code>updateAndGet</code> operations of <code>MutableStateFlow</code> (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2720">#2720</a>).</li> <li><code>Executor.asCoroutineDispatcher</code> implementation improvements (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2601">#2601</a>): <ul> <li>If the target executor is <code>ScheduledExecutorService</code>, then its <code>schedule</code> API is used for time-related coroutine operations.</li> <li><code>RemoveOnCancelPolicy</code> is now part of the public contract.</li> </ul> </li> <li>Introduced overloads for <code>Task.asDeferred</code> and <code>Task.await</code> that accept <code>CancellationTokenSource</code> for bidirectional cancellation (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2527">#2527</a>).</li> <li>Reactive streams are updated to <code>1.0.3</code> (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2740">#2740</a>).</li> <li><code>CopyableThrowable</code> is allowed to modify the exception message during stacktrace recovery (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/1931">#1931</a>).</li> <li><code>CoroutineDispatcher.releaseInterceptedContinuation</code> is now a <code>final</code> method (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2785">#2785</a>).</li> <li>Closing a Handler underlying <code>Handler.asCoroutineDispatcher</code> now causes the dispatched coroutines to be canceled on <code>Dispatchers.IO ([#2778](https://github.com/Kotlin/kotlinx.coroutines/issues/2778))</code>.</li> <li>Kotlin is updated to 1.5.20.</li> <li>Fixed a spurious <code>ClassCastException</code> in <code>releaseInterceptedContinuation</code> and <code>IllegalStateException</code> from <code>tryReleaseClaimedContinuation</code> (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2736">#2736</a>, <a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2768">#2768</a>).</li> <li>Fixed inconsistent exception message during stacktrace recovery for non-suspending channel iterators (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2749">#2749</a>).</li> <li>Fixed linear stack usage for <code>CompletableFuture.asDeferred</code> when the target future has a long chain of listeners (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2730">#2730</a>).</li> <li>Any exceptions from <code>CoroutineDispatcher.isDispatchNeeded</code> are now considered as fatal and are propagated to the caller (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2733">#2733</a>).</li> <li>Internal <code>DebugProbesKt</code> (used in the debugger implementation) are moved from <code>debug</code> to <code>core</code> module.</li> </ul> </blockquote> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/Kotlin/kotlinx.coroutines/blob/master/CHANGES.md">kotlinx-coroutines-core's changelog</a>.</em></p> <blockquote> <h2>Version 1.5.1</h2> <ul> <li>Atomic <code>update</code>, <code>getAndUpdate</code>, and <code>updateAndGet</code> operations of <code>MutableStateFlow</code> (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2720">#2720</a>).</li> <li><code>Executor.asCoroutineDispatcher</code> implementation improvements (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2601">#2601</a>): <ul> <li>If the target executor is <code>ScheduledExecutorService</code>, then its <code>schedule</code> API is used for time-related coroutine operations.</li> <li><code>RemoveOnCancelPolicy</code> is now part of the public contract.</li> </ul> </li> <li>Introduced overloads for <code>Task.asDeferred</code> and <code>Task.await</code> that accept <code>CancellationTokenSource</code> for bidirectional cancellation (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2527">#2527</a>).</li> <li>Reactive streams are updated to <code>1.0.3</code> (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2740">#2740</a>).</li> <li><code>CopyableThrowable</code> is allowed to modify the exception message during stacktrace recovery (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/1931">#1931</a>).</li> <li><code>CoroutineDispatcher.releaseInterceptedContinuation</code> is now a <code>final</code> method (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2785">#2785</a>).</li> <li>Closing a Handler underlying <code>Handler.asCoroutineDispatcher</code> now causes the dispatched coroutines to be canceled on <code>Dispatchers.IO ([#2778](https://github.com/Kotlin/kotlinx.coroutines/issues/2778))</code>.</li> <li>Kotlin is updated to 1.5.20.</li> <li>Fixed a spurious <code>ClassCastException</code> in <code>releaseInterceptedContinuation</code> and <code>IllegalStateException</code> from <code>tryReleaseClaimedContinuation</code> (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2736">#2736</a>, <a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2768">#2768</a>).</li> <li>Fixed inconsistent exception message during stacktrace recovery for non-suspending channel iterators (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2749">#2749</a>).</li> <li>Fixed linear stack usage for <code>CompletableFuture.asDeferred</code> when the target future has a long chain of listeners (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2730">#2730</a>).</li> <li>Any exceptions from <code>CoroutineDispatcher.isDispatchNeeded</code> are now considered as fatal and are propagated to the caller (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2733">#2733</a>).</li> <li>Internal <code>DebugProbesKt</code> (used in the debugger implementation) are moved from <code>debug</code> to <code>core</code> module.</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/Kotlin/kotlinx.coroutines/commit/b231887c3214187cf7f09a74073f84383a487b71"><code>b231887</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2812">#2812</a> from Kotlin/version-1.5.1</li> <li><a href="https://github.com/Kotlin/kotlinx.coroutines/commit/2a4c00bd2604be9088468ca73edd2a258e089eff"><code>2a4c00b</code></a> Version 1.5.1</li> <li><a href="https://github.com/Kotlin/kotlinx.coroutines/commit/69c3ce31342f6aea7602da173fa7128f017365ee"><code>69c3ce3</code></a> Update Dokka and Knit to their stable versions, remove bintray leftovers (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2811">#2811</a>)</li> <li><a href="https://github.com/Kotlin/kotlinx.coroutines/commit/f5e87400f4d11be56851a4304aa1a40fa3c09cde"><code>f5e8740</code></a> General cleanup (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2809">#2809</a>)</li> <li><a href="https://github.com/Kotlin/kotlinx.coroutines/commit/c9ab4fd21b900f66336d4d029610643c1b8839ae"><code>c9ab4fd</code></a> Update Kotlin to 1.5.20 (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2810">#2810</a>)</li> <li><a href="https://github.com/Kotlin/kotlinx.coroutines/commit/bcbcd16b8c4b63478ff2ad15567688428232e928"><code>bcbcd16</code></a> Upgrade to newest Dokka and Knit (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2805">#2805</a>)</li> <li><a href="https://github.com/Kotlin/kotlinx.coroutines/commit/074cc3f79aab22a4becfad5b7595f2de6fae3db1"><code>074cc3f</code></a> Update Lincheck to 2.14 (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2801">#2801</a>)</li> <li><a href="https://github.com/Kotlin/kotlinx.coroutines/commit/6cd1883fc06fb27fd8efcf907e459d05f1296102"><code>6cd1883</code></a> Cancel dispatched coroutine on Dispatchers.IO when the underlying Han… (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2784">#2784</a>)</li> <li><a href="https://github.com/Kotlin/kotlinx.coroutines/commit/a327dfb5809ef508d416a1cf98110340dcfe7430"><code>a327dfb</code></a> Remove opt-in annotation from internal MainTestDispatcher</li> <li><a href="https://github.com/Kotlin/kotlinx.coroutines/commit/e81ce210eef465d8fa0097bd6e463202b0f3e253"><code>e81ce21</code></a> Introduce Task.await and Task.asDeferred with CancellationTokenSource (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2786">#2786</a>)</li> <li>Additional commits viewable in <a href="https://github.com/Kotlin/kotlinx.coroutines/compare/1.5.0...1.5.1">compare view</a></li> </ul> </details> <br /> Updates `kotlinx-coroutines-test` from 1.5.0 to 1.5.1 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/Kotlin/kotlinx.coroutines/releases">kotlinx-coroutines-test's releases</a>.</em></p> <blockquote> <h2>1.5.1</h2> <ul> <li>Atomic <code>update</code>, <code>getAndUpdate</code>, and <code>updateAndGet</code> operations of <code>MutableStateFlow</code> (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2720">#2720</a>).</li> <li><code>Executor.asCoroutineDispatcher</code> implementation improvements (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2601">#2601</a>): <ul> <li>If the target executor is <code>ScheduledExecutorService</code>, then its <code>schedule</code> API is used for time-related coroutine operations.</li> <li><code>RemoveOnCancelPolicy</code> is now part of the public contract.</li> </ul> </li> <li>Introduced overloads for <code>Task.asDeferred</code> and <code>Task.await</code> that accept <code>CancellationTokenSource</code> for bidirectional cancellation (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2527">#2527</a>).</li> <li>Reactive streams are updated to <code>1.0.3</code> (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2740">#2740</a>).</li> <li><code>CopyableThrowable</code> is allowed to modify the exception message during stacktrace recovery (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/1931">#1931</a>).</li> <li><code>CoroutineDispatcher.releaseInterceptedContinuation</code> is now a <code>final</code> method (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2785">#2785</a>).</li> <li>Closing a Handler underlying <code>Handler.asCoroutineDispatcher</code> now causes the dispatched coroutines to be canceled on <code>Dispatchers.IO ([#2778](https://github.com/Kotlin/kotlinx.coroutines/issues/2778))</code>.</li> <li>Kotlin is updated to 1.5.20.</li> <li>Fixed a spurious <code>ClassCastException</code> in <code>releaseInterceptedContinuation</code> and <code>IllegalStateException</code> from <code>tryReleaseClaimedContinuation</code> (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2736">#2736</a>, <a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2768">#2768</a>).</li> <li>Fixed inconsistent exception message during stacktrace recovery for non-suspending channel iterators (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2749">#2749</a>).</li> <li>Fixed linear stack usage for <code>CompletableFuture.asDeferred</code> when the target future has a long chain of listeners (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2730">#2730</a>).</li> <li>Any exceptions from <code>CoroutineDispatcher.isDispatchNeeded</code> are now considered as fatal and are propagated to the caller (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2733">#2733</a>).</li> <li>Internal <code>DebugProbesKt</code> (used in the debugger implementation) are moved from <code>debug</code> to <code>core</code> module.</li> </ul> </blockquote> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/Kotlin/kotlinx.coroutines/blob/master/CHANGES.md">kotlinx-coroutines-test's changelog</a>.</em></p> <blockquote> <h2>Version 1.5.1</h2> <ul> <li>Atomic <code>update</code>, <code>getAndUpdate</code>, and <code>updateAndGet</code> operations of <code>MutableStateFlow</code> (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2720">#2720</a>).</li> <li><code>Executor.asCoroutineDispatcher</code> implementation improvements (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2601">#2601</a>): <ul> <li>If the target executor is <code>ScheduledExecutorService</code>, then its <code>schedule</code> API is used for time-related coroutine operations.</li> <li><code>RemoveOnCancelPolicy</code> is now part of the public contract.</li> </ul> </li> <li>Introduced overloads for <code>Task.asDeferred</code> and <code>Task.await</code> that accept <code>CancellationTokenSource</code> for bidirectional cancellation (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2527">#2527</a>).</li> <li>Reactive streams are updated to <code>1.0.3</code> (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2740">#2740</a>).</li> <li><code>CopyableThrowable</code> is allowed to modify the exception message during stacktrace recovery (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/1931">#1931</a>).</li> <li><code>CoroutineDispatcher.releaseInterceptedContinuation</code> is now a <code>final</code> method (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2785">#2785</a>).</li> <li>Closing a Handler underlying <code>Handler.asCoroutineDispatcher</code> now causes the dispatched coroutines to be canceled on <code>Dispatchers.IO ([#2778](https://github.com/Kotlin/kotlinx.coroutines/issues/2778))</code>.</li> <li>Kotlin is updated to 1.5.20.</li> <li>Fixed a spurious <code>ClassCastException</code> in <code>releaseInterceptedContinuation</code> and <code>IllegalStateException</code> from <code>tryReleaseClaimedContinuation</code> (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2736">#2736</a>, <a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2768">#2768</a>).</li> <li>Fixed inconsistent exception message during stacktrace recovery for non-suspending channel iterators (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2749">#2749</a>).</li> <li>Fixed linear stack usage for <code>CompletableFuture.asDeferred</code> when the target future has a long chain of listeners (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2730">#2730</a>).</li> <li>Any exceptions from <code>CoroutineDispatcher.isDispatchNeeded</code> are now considered as fatal and are propagated to the caller (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2733">#2733</a>).</li> <li>Internal <code>DebugProbesKt</code> (used in the debugger implementation) are moved from <code>debug</code> to <code>core</code> module.</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/Kotlin/kotlinx.coroutines/commit/b231887c3214187cf7f09a74073f84383a487b71"><code>b231887</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2812">#2812</a> from Kotlin/version-1.5.1</li> <li><a href="https://github.com/Kotlin/kotlinx.coroutines/commit/2a4c00bd2604be9088468ca73edd2a258e089eff"><code>2a4c00b</code></a> Version 1.5.1</li> <li><a href="https://github.com/Kotlin/kotlinx.coroutines/commit/69c3ce31342f6aea7602da173fa7128f017365ee"><code>69c3ce3</code></a> Update Dokka and Knit to their stable versions, remove bintray leftovers (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2811">#2811</a>)</li> <li><a href="https://github.com/Kotlin/kotlinx.coroutines/commit/f5e87400f4d11be56851a4304aa1a40fa3c09cde"><code>f5e8740</code></a> General cleanup (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2809">#2809</a>)</li> <li><a href="https://github.com/Kotlin/kotlinx.coroutines/commit/c9ab4fd21b900f66336d4d029610643c1b8839ae"><code>c9ab4fd</code></a> Update Kotlin to 1.5.20 (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2810">#2810</a>)</li> <li><a href="https://github.com/Kotlin/kotlinx.coroutines/commit/bcbcd16b8c4b63478ff2ad15567688428232e928"><code>bcbcd16</code></a> Upgrade to newest Dokka and Knit (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2805">#2805</a>)</li> <li><a href="https://github.com/Kotlin/kotlinx.coroutines/commit/074cc3f79aab22a4becfad5b7595f2de6fae3db1"><code>074cc3f</code></a> Update Lincheck to 2.14 (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2801">#2801</a>)</li> <li><a href="https://github.com/Kotlin/kotlinx.coroutines/commit/6cd1883fc06fb27fd8efcf907e459d05f1296102"><code>6cd1883</code></a> Cancel dispatched coroutine on Dispatchers.IO when the underlying Han… (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2784">#2784</a>)</li> <li><a href="https://github.com/Kotlin/kotlinx.coroutines/commit/a327dfb5809ef508d416a1cf98110340dcfe7430"><code>a327dfb</code></a> Remove opt-in annotation from internal MainTestDispatcher</li> <li><a href="https://github.com/Kotlin/kotlinx.coroutines/commit/e81ce210eef465d8fa0097bd6e463202b0f3e253"><code>e81ce21</code></a> Introduce Task.await and Task.asDeferred with CancellationTokenSource (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2786">#2786</a>)</li> <li>Additional commits viewable in <a href="https://github.com/Kotlin/kotlinx.coroutines/compare/1.5.0...1.5.1">compare view</a></li> </ul> </details> <br /> Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) --- <details> <summary>Dependabot commands and options</summary> <br /> You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) </details>
kodiakhq bot
referenced
this issue
in relaycorp/awala-testing-jvm
Jul 14, 2021
Bumps `kotlinCoroutinesVersion` from 1.5.0 to 1.5.1. Updates `kotlinx-coroutines-core` from 1.5.0 to 1.5.1 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/Kotlin/kotlinx.coroutines/releases">kotlinx-coroutines-core's releases</a>.</em></p> <blockquote> <h2>1.5.1</h2> <ul> <li>Atomic <code>update</code>, <code>getAndUpdate</code>, and <code>updateAndGet</code> operations of <code>MutableStateFlow</code> (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2720">#2720</a>).</li> <li><code>Executor.asCoroutineDispatcher</code> implementation improvements (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2601">#2601</a>): <ul> <li>If the target executor is <code>ScheduledExecutorService</code>, then its <code>schedule</code> API is used for time-related coroutine operations.</li> <li><code>RemoveOnCancelPolicy</code> is now part of the public contract.</li> </ul> </li> <li>Introduced overloads for <code>Task.asDeferred</code> and <code>Task.await</code> that accept <code>CancellationTokenSource</code> for bidirectional cancellation (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2527">#2527</a>).</li> <li>Reactive streams are updated to <code>1.0.3</code> (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2740">#2740</a>).</li> <li><code>CopyableThrowable</code> is allowed to modify the exception message during stacktrace recovery (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/1931">#1931</a>).</li> <li><code>CoroutineDispatcher.releaseInterceptedContinuation</code> is now a <code>final</code> method (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2785">#2785</a>).</li> <li>Closing a Handler underlying <code>Handler.asCoroutineDispatcher</code> now causes the dispatched coroutines to be canceled on <code>Dispatchers.IO ([#2778](https://github.com/Kotlin/kotlinx.coroutines/issues/2778))</code>.</li> <li>Kotlin is updated to 1.5.20.</li> <li>Fixed a spurious <code>ClassCastException</code> in <code>releaseInterceptedContinuation</code> and <code>IllegalStateException</code> from <code>tryReleaseClaimedContinuation</code> (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2736">#2736</a>, <a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2768">#2768</a>).</li> <li>Fixed inconsistent exception message during stacktrace recovery for non-suspending channel iterators (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2749">#2749</a>).</li> <li>Fixed linear stack usage for <code>CompletableFuture.asDeferred</code> when the target future has a long chain of listeners (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2730">#2730</a>).</li> <li>Any exceptions from <code>CoroutineDispatcher.isDispatchNeeded</code> are now considered as fatal and are propagated to the caller (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2733">#2733</a>).</li> <li>Internal <code>DebugProbesKt</code> (used in the debugger implementation) are moved from <code>debug</code> to <code>core</code> module.</li> </ul> </blockquote> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/Kotlin/kotlinx.coroutines/blob/master/CHANGES.md">kotlinx-coroutines-core's changelog</a>.</em></p> <blockquote> <h2>Version 1.5.1</h2> <ul> <li>Atomic <code>update</code>, <code>getAndUpdate</code>, and <code>updateAndGet</code> operations of <code>MutableStateFlow</code> (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2720">#2720</a>).</li> <li><code>Executor.asCoroutineDispatcher</code> implementation improvements (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2601">#2601</a>): <ul> <li>If the target executor is <code>ScheduledExecutorService</code>, then its <code>schedule</code> API is used for time-related coroutine operations.</li> <li><code>RemoveOnCancelPolicy</code> is now part of the public contract.</li> </ul> </li> <li>Introduced overloads for <code>Task.asDeferred</code> and <code>Task.await</code> that accept <code>CancellationTokenSource</code> for bidirectional cancellation (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2527">#2527</a>).</li> <li>Reactive streams are updated to <code>1.0.3</code> (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2740">#2740</a>).</li> <li><code>CopyableThrowable</code> is allowed to modify the exception message during stacktrace recovery (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/1931">#1931</a>).</li> <li><code>CoroutineDispatcher.releaseInterceptedContinuation</code> is now a <code>final</code> method (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2785">#2785</a>).</li> <li>Closing a Handler underlying <code>Handler.asCoroutineDispatcher</code> now causes the dispatched coroutines to be canceled on <code>Dispatchers.IO ([#2778](https://github.com/Kotlin/kotlinx.coroutines/issues/2778))</code>.</li> <li>Kotlin is updated to 1.5.20.</li> <li>Fixed a spurious <code>ClassCastException</code> in <code>releaseInterceptedContinuation</code> and <code>IllegalStateException</code> from <code>tryReleaseClaimedContinuation</code> (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2736">#2736</a>, <a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2768">#2768</a>).</li> <li>Fixed inconsistent exception message during stacktrace recovery for non-suspending channel iterators (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2749">#2749</a>).</li> <li>Fixed linear stack usage for <code>CompletableFuture.asDeferred</code> when the target future has a long chain of listeners (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2730">#2730</a>).</li> <li>Any exceptions from <code>CoroutineDispatcher.isDispatchNeeded</code> are now considered as fatal and are propagated to the caller (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2733">#2733</a>).</li> <li>Internal <code>DebugProbesKt</code> (used in the debugger implementation) are moved from <code>debug</code> to <code>core</code> module.</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/Kotlin/kotlinx.coroutines/commit/b231887c3214187cf7f09a74073f84383a487b71"><code>b231887</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2812">#2812</a> from Kotlin/version-1.5.1</li> <li><a href="https://github.com/Kotlin/kotlinx.coroutines/commit/2a4c00bd2604be9088468ca73edd2a258e089eff"><code>2a4c00b</code></a> Version 1.5.1</li> <li><a href="https://github.com/Kotlin/kotlinx.coroutines/commit/69c3ce31342f6aea7602da173fa7128f017365ee"><code>69c3ce3</code></a> Update Dokka and Knit to their stable versions, remove bintray leftovers (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2811">#2811</a>)</li> <li><a href="https://github.com/Kotlin/kotlinx.coroutines/commit/f5e87400f4d11be56851a4304aa1a40fa3c09cde"><code>f5e8740</code></a> General cleanup (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2809">#2809</a>)</li> <li><a href="https://github.com/Kotlin/kotlinx.coroutines/commit/c9ab4fd21b900f66336d4d029610643c1b8839ae"><code>c9ab4fd</code></a> Update Kotlin to 1.5.20 (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2810">#2810</a>)</li> <li><a href="https://github.com/Kotlin/kotlinx.coroutines/commit/bcbcd16b8c4b63478ff2ad15567688428232e928"><code>bcbcd16</code></a> Upgrade to newest Dokka and Knit (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2805">#2805</a>)</li> <li><a href="https://github.com/Kotlin/kotlinx.coroutines/commit/074cc3f79aab22a4becfad5b7595f2de6fae3db1"><code>074cc3f</code></a> Update Lincheck to 2.14 (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2801">#2801</a>)</li> <li><a href="https://github.com/Kotlin/kotlinx.coroutines/commit/6cd1883fc06fb27fd8efcf907e459d05f1296102"><code>6cd1883</code></a> Cancel dispatched coroutine on Dispatchers.IO when the underlying Han… (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2784">#2784</a>)</li> <li><a href="https://github.com/Kotlin/kotlinx.coroutines/commit/a327dfb5809ef508d416a1cf98110340dcfe7430"><code>a327dfb</code></a> Remove opt-in annotation from internal MainTestDispatcher</li> <li><a href="https://github.com/Kotlin/kotlinx.coroutines/commit/e81ce210eef465d8fa0097bd6e463202b0f3e253"><code>e81ce21</code></a> Introduce Task.await and Task.asDeferred with CancellationTokenSource (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2786">#2786</a>)</li> <li>Additional commits viewable in <a href="https://github.com/Kotlin/kotlinx.coroutines/compare/1.5.0...1.5.1">compare view</a></li> </ul> </details> <br /> Updates `kotlinx-coroutines-test` from 1.5.0 to 1.5.1 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/Kotlin/kotlinx.coroutines/releases">kotlinx-coroutines-test's releases</a>.</em></p> <blockquote> <h2>1.5.1</h2> <ul> <li>Atomic <code>update</code>, <code>getAndUpdate</code>, and <code>updateAndGet</code> operations of <code>MutableStateFlow</code> (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2720">#2720</a>).</li> <li><code>Executor.asCoroutineDispatcher</code> implementation improvements (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2601">#2601</a>): <ul> <li>If the target executor is <code>ScheduledExecutorService</code>, then its <code>schedule</code> API is used for time-related coroutine operations.</li> <li><code>RemoveOnCancelPolicy</code> is now part of the public contract.</li> </ul> </li> <li>Introduced overloads for <code>Task.asDeferred</code> and <code>Task.await</code> that accept <code>CancellationTokenSource</code> for bidirectional cancellation (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2527">#2527</a>).</li> <li>Reactive streams are updated to <code>1.0.3</code> (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2740">#2740</a>).</li> <li><code>CopyableThrowable</code> is allowed to modify the exception message during stacktrace recovery (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/1931">#1931</a>).</li> <li><code>CoroutineDispatcher.releaseInterceptedContinuation</code> is now a <code>final</code> method (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2785">#2785</a>).</li> <li>Closing a Handler underlying <code>Handler.asCoroutineDispatcher</code> now causes the dispatched coroutines to be canceled on <code>Dispatchers.IO ([#2778](https://github.com/Kotlin/kotlinx.coroutines/issues/2778))</code>.</li> <li>Kotlin is updated to 1.5.20.</li> <li>Fixed a spurious <code>ClassCastException</code> in <code>releaseInterceptedContinuation</code> and <code>IllegalStateException</code> from <code>tryReleaseClaimedContinuation</code> (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2736">#2736</a>, <a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2768">#2768</a>).</li> <li>Fixed inconsistent exception message during stacktrace recovery for non-suspending channel iterators (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2749">#2749</a>).</li> <li>Fixed linear stack usage for <code>CompletableFuture.asDeferred</code> when the target future has a long chain of listeners (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2730">#2730</a>).</li> <li>Any exceptions from <code>CoroutineDispatcher.isDispatchNeeded</code> are now considered as fatal and are propagated to the caller (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2733">#2733</a>).</li> <li>Internal <code>DebugProbesKt</code> (used in the debugger implementation) are moved from <code>debug</code> to <code>core</code> module.</li> </ul> </blockquote> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/Kotlin/kotlinx.coroutines/blob/master/CHANGES.md">kotlinx-coroutines-test's changelog</a>.</em></p> <blockquote> <h2>Version 1.5.1</h2> <ul> <li>Atomic <code>update</code>, <code>getAndUpdate</code>, and <code>updateAndGet</code> operations of <code>MutableStateFlow</code> (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2720">#2720</a>).</li> <li><code>Executor.asCoroutineDispatcher</code> implementation improvements (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2601">#2601</a>): <ul> <li>If the target executor is <code>ScheduledExecutorService</code>, then its <code>schedule</code> API is used for time-related coroutine operations.</li> <li><code>RemoveOnCancelPolicy</code> is now part of the public contract.</li> </ul> </li> <li>Introduced overloads for <code>Task.asDeferred</code> and <code>Task.await</code> that accept <code>CancellationTokenSource</code> for bidirectional cancellation (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2527">#2527</a>).</li> <li>Reactive streams are updated to <code>1.0.3</code> (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2740">#2740</a>).</li> <li><code>CopyableThrowable</code> is allowed to modify the exception message during stacktrace recovery (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/1931">#1931</a>).</li> <li><code>CoroutineDispatcher.releaseInterceptedContinuation</code> is now a <code>final</code> method (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2785">#2785</a>).</li> <li>Closing a Handler underlying <code>Handler.asCoroutineDispatcher</code> now causes the dispatched coroutines to be canceled on <code>Dispatchers.IO ([#2778](https://github.com/Kotlin/kotlinx.coroutines/issues/2778))</code>.</li> <li>Kotlin is updated to 1.5.20.</li> <li>Fixed a spurious <code>ClassCastException</code> in <code>releaseInterceptedContinuation</code> and <code>IllegalStateException</code> from <code>tryReleaseClaimedContinuation</code> (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2736">#2736</a>, <a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2768">#2768</a>).</li> <li>Fixed inconsistent exception message during stacktrace recovery for non-suspending channel iterators (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2749">#2749</a>).</li> <li>Fixed linear stack usage for <code>CompletableFuture.asDeferred</code> when the target future has a long chain of listeners (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2730">#2730</a>).</li> <li>Any exceptions from <code>CoroutineDispatcher.isDispatchNeeded</code> are now considered as fatal and are propagated to the caller (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2733">#2733</a>).</li> <li>Internal <code>DebugProbesKt</code> (used in the debugger implementation) are moved from <code>debug</code> to <code>core</code> module.</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/Kotlin/kotlinx.coroutines/commit/b231887c3214187cf7f09a74073f84383a487b71"><code>b231887</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2812">#2812</a> from Kotlin/version-1.5.1</li> <li><a href="https://github.com/Kotlin/kotlinx.coroutines/commit/2a4c00bd2604be9088468ca73edd2a258e089eff"><code>2a4c00b</code></a> Version 1.5.1</li> <li><a href="https://github.com/Kotlin/kotlinx.coroutines/commit/69c3ce31342f6aea7602da173fa7128f017365ee"><code>69c3ce3</code></a> Update Dokka and Knit to their stable versions, remove bintray leftovers (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2811">#2811</a>)</li> <li><a href="https://github.com/Kotlin/kotlinx.coroutines/commit/f5e87400f4d11be56851a4304aa1a40fa3c09cde"><code>f5e8740</code></a> General cleanup (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2809">#2809</a>)</li> <li><a href="https://github.com/Kotlin/kotlinx.coroutines/commit/c9ab4fd21b900f66336d4d029610643c1b8839ae"><code>c9ab4fd</code></a> Update Kotlin to 1.5.20 (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2810">#2810</a>)</li> <li><a href="https://github.com/Kotlin/kotlinx.coroutines/commit/bcbcd16b8c4b63478ff2ad15567688428232e928"><code>bcbcd16</code></a> Upgrade to newest Dokka and Knit (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2805">#2805</a>)</li> <li><a href="https://github.com/Kotlin/kotlinx.coroutines/commit/074cc3f79aab22a4becfad5b7595f2de6fae3db1"><code>074cc3f</code></a> Update Lincheck to 2.14 (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2801">#2801</a>)</li> <li><a href="https://github.com/Kotlin/kotlinx.coroutines/commit/6cd1883fc06fb27fd8efcf907e459d05f1296102"><code>6cd1883</code></a> Cancel dispatched coroutine on Dispatchers.IO when the underlying Han… (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2784">#2784</a>)</li> <li><a href="https://github.com/Kotlin/kotlinx.coroutines/commit/a327dfb5809ef508d416a1cf98110340dcfe7430"><code>a327dfb</code></a> Remove opt-in annotation from internal MainTestDispatcher</li> <li><a href="https://github.com/Kotlin/kotlinx.coroutines/commit/e81ce210eef465d8fa0097bd6e463202b0f3e253"><code>e81ce21</code></a> Introduce Task.await and Task.asDeferred with CancellationTokenSource (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2786">#2786</a>)</li> <li>Additional commits viewable in <a href="https://github.com/Kotlin/kotlinx.coroutines/compare/1.5.0...1.5.1">compare view</a></li> </ul> </details> <br /> Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) --- <details> <summary>Dependabot commands and options</summary> <br /> You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) </details>
kodiakhq bot
referenced
this issue
in relaycorp/awala-jvm
Jul 14, 2021
Bumps `kotlinCoroutinesVersion` from 1.5.0 to 1.5.1. Updates `kotlinx-coroutines-core` from 1.5.0 to 1.5.1 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/Kotlin/kotlinx.coroutines/releases">kotlinx-coroutines-core's releases</a>.</em></p> <blockquote> <h2>1.5.1</h2> <ul> <li>Atomic <code>update</code>, <code>getAndUpdate</code>, and <code>updateAndGet</code> operations of <code>MutableStateFlow</code> (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2720">#2720</a>).</li> <li><code>Executor.asCoroutineDispatcher</code> implementation improvements (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2601">#2601</a>): <ul> <li>If the target executor is <code>ScheduledExecutorService</code>, then its <code>schedule</code> API is used for time-related coroutine operations.</li> <li><code>RemoveOnCancelPolicy</code> is now part of the public contract.</li> </ul> </li> <li>Introduced overloads for <code>Task.asDeferred</code> and <code>Task.await</code> that accept <code>CancellationTokenSource</code> for bidirectional cancellation (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2527">#2527</a>).</li> <li>Reactive streams are updated to <code>1.0.3</code> (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2740">#2740</a>).</li> <li><code>CopyableThrowable</code> is allowed to modify the exception message during stacktrace recovery (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/1931">#1931</a>).</li> <li><code>CoroutineDispatcher.releaseInterceptedContinuation</code> is now a <code>final</code> method (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2785">#2785</a>).</li> <li>Closing a Handler underlying <code>Handler.asCoroutineDispatcher</code> now causes the dispatched coroutines to be canceled on <code>Dispatchers.IO ([#2778](https://github.com/Kotlin/kotlinx.coroutines/issues/2778))</code>.</li> <li>Kotlin is updated to 1.5.20.</li> <li>Fixed a spurious <code>ClassCastException</code> in <code>releaseInterceptedContinuation</code> and <code>IllegalStateException</code> from <code>tryReleaseClaimedContinuation</code> (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2736">#2736</a>, <a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2768">#2768</a>).</li> <li>Fixed inconsistent exception message during stacktrace recovery for non-suspending channel iterators (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2749">#2749</a>).</li> <li>Fixed linear stack usage for <code>CompletableFuture.asDeferred</code> when the target future has a long chain of listeners (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2730">#2730</a>).</li> <li>Any exceptions from <code>CoroutineDispatcher.isDispatchNeeded</code> are now considered as fatal and are propagated to the caller (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2733">#2733</a>).</li> <li>Internal <code>DebugProbesKt</code> (used in the debugger implementation) are moved from <code>debug</code> to <code>core</code> module.</li> </ul> </blockquote> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/Kotlin/kotlinx.coroutines/blob/master/CHANGES.md">kotlinx-coroutines-core's changelog</a>.</em></p> <blockquote> <h2>Version 1.5.1</h2> <ul> <li>Atomic <code>update</code>, <code>getAndUpdate</code>, and <code>updateAndGet</code> operations of <code>MutableStateFlow</code> (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2720">#2720</a>).</li> <li><code>Executor.asCoroutineDispatcher</code> implementation improvements (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2601">#2601</a>): <ul> <li>If the target executor is <code>ScheduledExecutorService</code>, then its <code>schedule</code> API is used for time-related coroutine operations.</li> <li><code>RemoveOnCancelPolicy</code> is now part of the public contract.</li> </ul> </li> <li>Introduced overloads for <code>Task.asDeferred</code> and <code>Task.await</code> that accept <code>CancellationTokenSource</code> for bidirectional cancellation (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2527">#2527</a>).</li> <li>Reactive streams are updated to <code>1.0.3</code> (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2740">#2740</a>).</li> <li><code>CopyableThrowable</code> is allowed to modify the exception message during stacktrace recovery (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/1931">#1931</a>).</li> <li><code>CoroutineDispatcher.releaseInterceptedContinuation</code> is now a <code>final</code> method (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2785">#2785</a>).</li> <li>Closing a Handler underlying <code>Handler.asCoroutineDispatcher</code> now causes the dispatched coroutines to be canceled on <code>Dispatchers.IO ([#2778](https://github.com/Kotlin/kotlinx.coroutines/issues/2778))</code>.</li> <li>Kotlin is updated to 1.5.20.</li> <li>Fixed a spurious <code>ClassCastException</code> in <code>releaseInterceptedContinuation</code> and <code>IllegalStateException</code> from <code>tryReleaseClaimedContinuation</code> (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2736">#2736</a>, <a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2768">#2768</a>).</li> <li>Fixed inconsistent exception message during stacktrace recovery for non-suspending channel iterators (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2749">#2749</a>).</li> <li>Fixed linear stack usage for <code>CompletableFuture.asDeferred</code> when the target future has a long chain of listeners (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2730">#2730</a>).</li> <li>Any exceptions from <code>CoroutineDispatcher.isDispatchNeeded</code> are now considered as fatal and are propagated to the caller (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2733">#2733</a>).</li> <li>Internal <code>DebugProbesKt</code> (used in the debugger implementation) are moved from <code>debug</code> to <code>core</code> module.</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/Kotlin/kotlinx.coroutines/commit/b231887c3214187cf7f09a74073f84383a487b71"><code>b231887</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2812">#2812</a> from Kotlin/version-1.5.1</li> <li><a href="https://github.com/Kotlin/kotlinx.coroutines/commit/2a4c00bd2604be9088468ca73edd2a258e089eff"><code>2a4c00b</code></a> Version 1.5.1</li> <li><a href="https://github.com/Kotlin/kotlinx.coroutines/commit/69c3ce31342f6aea7602da173fa7128f017365ee"><code>69c3ce3</code></a> Update Dokka and Knit to their stable versions, remove bintray leftovers (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2811">#2811</a>)</li> <li><a href="https://github.com/Kotlin/kotlinx.coroutines/commit/f5e87400f4d11be56851a4304aa1a40fa3c09cde"><code>f5e8740</code></a> General cleanup (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2809">#2809</a>)</li> <li><a href="https://github.com/Kotlin/kotlinx.coroutines/commit/c9ab4fd21b900f66336d4d029610643c1b8839ae"><code>c9ab4fd</code></a> Update Kotlin to 1.5.20 (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2810">#2810</a>)</li> <li><a href="https://github.com/Kotlin/kotlinx.coroutines/commit/bcbcd16b8c4b63478ff2ad15567688428232e928"><code>bcbcd16</code></a> Upgrade to newest Dokka and Knit (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2805">#2805</a>)</li> <li><a href="https://github.com/Kotlin/kotlinx.coroutines/commit/074cc3f79aab22a4becfad5b7595f2de6fae3db1"><code>074cc3f</code></a> Update Lincheck to 2.14 (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2801">#2801</a>)</li> <li><a href="https://github.com/Kotlin/kotlinx.coroutines/commit/6cd1883fc06fb27fd8efcf907e459d05f1296102"><code>6cd1883</code></a> Cancel dispatched coroutine on Dispatchers.IO when the underlying Han… (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2784">#2784</a>)</li> <li><a href="https://github.com/Kotlin/kotlinx.coroutines/commit/a327dfb5809ef508d416a1cf98110340dcfe7430"><code>a327dfb</code></a> Remove opt-in annotation from internal MainTestDispatcher</li> <li><a href="https://github.com/Kotlin/kotlinx.coroutines/commit/e81ce210eef465d8fa0097bd6e463202b0f3e253"><code>e81ce21</code></a> Introduce Task.await and Task.asDeferred with CancellationTokenSource (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2786">#2786</a>)</li> <li>Additional commits viewable in <a href="https://github.com/Kotlin/kotlinx.coroutines/compare/1.5.0...1.5.1">compare view</a></li> </ul> </details> <br /> Updates `kotlinx-coroutines-test` from 1.5.0 to 1.5.1 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/Kotlin/kotlinx.coroutines/releases">kotlinx-coroutines-test's releases</a>.</em></p> <blockquote> <h2>1.5.1</h2> <ul> <li>Atomic <code>update</code>, <code>getAndUpdate</code>, and <code>updateAndGet</code> operations of <code>MutableStateFlow</code> (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2720">#2720</a>).</li> <li><code>Executor.asCoroutineDispatcher</code> implementation improvements (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2601">#2601</a>): <ul> <li>If the target executor is <code>ScheduledExecutorService</code>, then its <code>schedule</code> API is used for time-related coroutine operations.</li> <li><code>RemoveOnCancelPolicy</code> is now part of the public contract.</li> </ul> </li> <li>Introduced overloads for <code>Task.asDeferred</code> and <code>Task.await</code> that accept <code>CancellationTokenSource</code> for bidirectional cancellation (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2527">#2527</a>).</li> <li>Reactive streams are updated to <code>1.0.3</code> (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2740">#2740</a>).</li> <li><code>CopyableThrowable</code> is allowed to modify the exception message during stacktrace recovery (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/1931">#1931</a>).</li> <li><code>CoroutineDispatcher.releaseInterceptedContinuation</code> is now a <code>final</code> method (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2785">#2785</a>).</li> <li>Closing a Handler underlying <code>Handler.asCoroutineDispatcher</code> now causes the dispatched coroutines to be canceled on <code>Dispatchers.IO ([#2778](https://github.com/Kotlin/kotlinx.coroutines/issues/2778))</code>.</li> <li>Kotlin is updated to 1.5.20.</li> <li>Fixed a spurious <code>ClassCastException</code> in <code>releaseInterceptedContinuation</code> and <code>IllegalStateException</code> from <code>tryReleaseClaimedContinuation</code> (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2736">#2736</a>, <a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2768">#2768</a>).</li> <li>Fixed inconsistent exception message during stacktrace recovery for non-suspending channel iterators (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2749">#2749</a>).</li> <li>Fixed linear stack usage for <code>CompletableFuture.asDeferred</code> when the target future has a long chain of listeners (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2730">#2730</a>).</li> <li>Any exceptions from <code>CoroutineDispatcher.isDispatchNeeded</code> are now considered as fatal and are propagated to the caller (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2733">#2733</a>).</li> <li>Internal <code>DebugProbesKt</code> (used in the debugger implementation) are moved from <code>debug</code> to <code>core</code> module.</li> </ul> </blockquote> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/Kotlin/kotlinx.coroutines/blob/master/CHANGES.md">kotlinx-coroutines-test's changelog</a>.</em></p> <blockquote> <h2>Version 1.5.1</h2> <ul> <li>Atomic <code>update</code>, <code>getAndUpdate</code>, and <code>updateAndGet</code> operations of <code>MutableStateFlow</code> (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2720">#2720</a>).</li> <li><code>Executor.asCoroutineDispatcher</code> implementation improvements (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2601">#2601</a>): <ul> <li>If the target executor is <code>ScheduledExecutorService</code>, then its <code>schedule</code> API is used for time-related coroutine operations.</li> <li><code>RemoveOnCancelPolicy</code> is now part of the public contract.</li> </ul> </li> <li>Introduced overloads for <code>Task.asDeferred</code> and <code>Task.await</code> that accept <code>CancellationTokenSource</code> for bidirectional cancellation (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2527">#2527</a>).</li> <li>Reactive streams are updated to <code>1.0.3</code> (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2740">#2740</a>).</li> <li><code>CopyableThrowable</code> is allowed to modify the exception message during stacktrace recovery (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/1931">#1931</a>).</li> <li><code>CoroutineDispatcher.releaseInterceptedContinuation</code> is now a <code>final</code> method (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2785">#2785</a>).</li> <li>Closing a Handler underlying <code>Handler.asCoroutineDispatcher</code> now causes the dispatched coroutines to be canceled on <code>Dispatchers.IO ([#2778](https://github.com/Kotlin/kotlinx.coroutines/issues/2778))</code>.</li> <li>Kotlin is updated to 1.5.20.</li> <li>Fixed a spurious <code>ClassCastException</code> in <code>releaseInterceptedContinuation</code> and <code>IllegalStateException</code> from <code>tryReleaseClaimedContinuation</code> (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2736">#2736</a>, <a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2768">#2768</a>).</li> <li>Fixed inconsistent exception message during stacktrace recovery for non-suspending channel iterators (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2749">#2749</a>).</li> <li>Fixed linear stack usage for <code>CompletableFuture.asDeferred</code> when the target future has a long chain of listeners (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2730">#2730</a>).</li> <li>Any exceptions from <code>CoroutineDispatcher.isDispatchNeeded</code> are now considered as fatal and are propagated to the caller (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2733">#2733</a>).</li> <li>Internal <code>DebugProbesKt</code> (used in the debugger implementation) are moved from <code>debug</code> to <code>core</code> module.</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/Kotlin/kotlinx.coroutines/commit/b231887c3214187cf7f09a74073f84383a487b71"><code>b231887</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2812">#2812</a> from Kotlin/version-1.5.1</li> <li><a href="https://github.com/Kotlin/kotlinx.coroutines/commit/2a4c00bd2604be9088468ca73edd2a258e089eff"><code>2a4c00b</code></a> Version 1.5.1</li> <li><a href="https://github.com/Kotlin/kotlinx.coroutines/commit/69c3ce31342f6aea7602da173fa7128f017365ee"><code>69c3ce3</code></a> Update Dokka and Knit to their stable versions, remove bintray leftovers (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2811">#2811</a>)</li> <li><a href="https://github.com/Kotlin/kotlinx.coroutines/commit/f5e87400f4d11be56851a4304aa1a40fa3c09cde"><code>f5e8740</code></a> General cleanup (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2809">#2809</a>)</li> <li><a href="https://github.com/Kotlin/kotlinx.coroutines/commit/c9ab4fd21b900f66336d4d029610643c1b8839ae"><code>c9ab4fd</code></a> Update Kotlin to 1.5.20 (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2810">#2810</a>)</li> <li><a href="https://github.com/Kotlin/kotlinx.coroutines/commit/bcbcd16b8c4b63478ff2ad15567688428232e928"><code>bcbcd16</code></a> Upgrade to newest Dokka and Knit (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2805">#2805</a>)</li> <li><a href="https://github.com/Kotlin/kotlinx.coroutines/commit/074cc3f79aab22a4becfad5b7595f2de6fae3db1"><code>074cc3f</code></a> Update Lincheck to 2.14 (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2801">#2801</a>)</li> <li><a href="https://github.com/Kotlin/kotlinx.coroutines/commit/6cd1883fc06fb27fd8efcf907e459d05f1296102"><code>6cd1883</code></a> Cancel dispatched coroutine on Dispatchers.IO when the underlying Han… (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2784">#2784</a>)</li> <li><a href="https://github.com/Kotlin/kotlinx.coroutines/commit/a327dfb5809ef508d416a1cf98110340dcfe7430"><code>a327dfb</code></a> Remove opt-in annotation from internal MainTestDispatcher</li> <li><a href="https://github.com/Kotlin/kotlinx.coroutines/commit/e81ce210eef465d8fa0097bd6e463202b0f3e253"><code>e81ce21</code></a> Introduce Task.await and Task.asDeferred with CancellationTokenSource (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2786">#2786</a>)</li> <li>Additional commits viewable in <a href="https://github.com/Kotlin/kotlinx.coroutines/compare/1.5.0...1.5.1">compare view</a></li> </ul> </details> <br /> Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) --- <details> <summary>Dependabot commands and options</summary> <br /> You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) </details>
kodiakhq bot
referenced
this issue
in RBusarow/Gradle-Template
Sep 17, 2021
Bumps [kotlinx-coroutines-core](https://github.com/Kotlin/kotlinx.coroutines) from 1.5.0 to 1.5.2. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/Kotlin/kotlinx.coroutines/releases">kotlinx-coroutines-core's releases</a>.</em></p> <blockquote> <h2>1.5.2</h2> <ul> <li>Kotlin is updated to 1.5.30.</li> <li>New native targets for Apple Silicon are introduced.</li> <li>Fixed a bug when <code>onUndeliveredElement</code> was incorrectly called on properly received elements on JS (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2826">#2826</a>).</li> <li>Fixed <code>Dispatchers.Default</code> on React Native, it now fully relies on <code>setTimeout</code> instead of stub <code>process.nextTick</code>. Thanks to <a href="https://github.com/Legion2"><code>@Legion2</code></a> (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2843">#2843</a>).</li> <li>Optimizations of <code>Mutex</code> implementation (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2581">#2581</a>).</li> <li><code>Mutex</code> implementation is made completely lock-free as stated (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2590">#2590</a>).</li> <li>Various documentation and guides improvements. Thanks to <a href="https://github.com/MasoodFallahpoor"><code>@MasoodFallahpoor</code></a> and <a href="https://github.com/Pihanya"><code>@Pihanya</code></a>.</li> </ul> <h2>1.5.1</h2> <ul> <li>Atomic <code>update</code>, <code>getAndUpdate</code>, and <code>updateAndGet</code> operations of <code>MutableStateFlow</code> (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2720">#2720</a>).</li> <li><code>Executor.asCoroutineDispatcher</code> implementation improvements (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2601">#2601</a>): <ul> <li>If the target executor is <code>ScheduledExecutorService</code>, then its <code>schedule</code> API is used for time-related coroutine operations.</li> <li><code>RemoveOnCancelPolicy</code> is now part of the public contract.</li> </ul> </li> <li>Introduced overloads for <code>Task.asDeferred</code> and <code>Task.await</code> that accept <code>CancellationTokenSource</code> for bidirectional cancellation (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2527">#2527</a>).</li> <li>Reactive streams are updated to <code>1.0.3</code> (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2740">#2740</a>).</li> <li><code>CopyableThrowable</code> is allowed to modify the exception message during stacktrace recovery (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/1931">#1931</a>).</li> <li><code>CoroutineDispatcher.releaseInterceptedContinuation</code> is now a <code>final</code> method (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2785">#2785</a>).</li> <li>Closing a Handler underlying <code>Handler.asCoroutineDispatcher</code> now causes the dispatched coroutines to be canceled on <code>Dispatchers.IO ([#2778](https://github.com/Kotlin/kotlinx.coroutines/issues/2778))</code>.</li> <li>Kotlin is updated to 1.5.20.</li> <li>Fixed a spurious <code>ClassCastException</code> in <code>releaseInterceptedContinuation</code> and <code>IllegalStateException</code> from <code>tryReleaseClaimedContinuation</code> (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2736">#2736</a>, <a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2768">#2768</a>).</li> <li>Fixed inconsistent exception message during stacktrace recovery for non-suspending channel iterators (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2749">#2749</a>).</li> <li>Fixed linear stack usage for <code>CompletableFuture.asDeferred</code> when the target future has a long chain of listeners (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2730">#2730</a>).</li> <li>Any exceptions from <code>CoroutineDispatcher.isDispatchNeeded</code> are now considered as fatal and are propagated to the caller (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2733">#2733</a>).</li> <li>Internal <code>DebugProbesKt</code> (used in the debugger implementation) are moved from <code>debug</code> to <code>core</code> module.</li> </ul> </blockquote> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/Kotlin/kotlinx.coroutines/blob/master/CHANGES.md">kotlinx-coroutines-core's changelog</a>.</em></p> <blockquote> <h2>Version 1.5.2</h2> <ul> <li>Kotlin is updated to 1.5.30.</li> <li>New native targets for Apple Silicon are introduced.</li> <li>Fixed a bug when <code>onUndeliveredElement</code> was incorrectly called on a properly received elements on JS (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2826">#2826</a>).</li> <li>Fixed <code>Dispatchers.Default</code> on React Native, it now fully relies on <code>setTimeout</code> instead of stub <code>process.nextTick</code>. Thanks to <a href="https://github.com/Legion2"><code>@Legion2</code></a> (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2843">#2843</a>).</li> <li>Optimizations of <code>Mutex</code> implementation (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2581">#2581</a>).</li> <li><code>Mutex</code> implementation is made completely lock-free as stated (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2590">#2590</a>).</li> <li>Various documentation and guides improvements. Thanks to <a href="https://github.com/MasoodFallahpoor"><code>@MasoodFallahpoor</code></a> and <a href="https://github.com/Pihanya"><code>@Pihanya</code></a>.</li> </ul> <h2>Version 1.5.1</h2> <ul> <li>Atomic <code>update</code>, <code>getAndUpdate</code>, and <code>updateAndGet</code> operations of <code>MutableStateFlow</code> (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2720">#2720</a>).</li> <li><code>Executor.asCoroutineDispatcher</code> implementation improvements (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2601">#2601</a>): <ul> <li>If the target executor is <code>ScheduledExecutorService</code>, then its <code>schedule</code> API is used for time-related coroutine operations.</li> <li><code>RemoveOnCancelPolicy</code> is now part of the public contract.</li> </ul> </li> <li>Introduced overloads for <code>Task.asDeferred</code> and <code>Task.await</code> that accept <code>CancellationTokenSource</code> for bidirectional cancellation (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2527">#2527</a>).</li> <li>Reactive streams are updated to <code>1.0.3</code> (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2740">#2740</a>).</li> <li><code>CopyableThrowable</code> is allowed to modify the exception message during stacktrace recovery (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/1931">#1931</a>).</li> <li><code>CoroutineDispatcher.releaseInterceptedContinuation</code> is now a <code>final</code> method (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2785">#2785</a>).</li> <li>Closing a Handler underlying <code>Handler.asCoroutineDispatcher</code> now causes the dispatched coroutines to be canceled on <code>Dispatchers.IO ([#2778](https://github.com/Kotlin/kotlinx.coroutines/issues/2778))</code>.</li> <li>Kotlin is updated to 1.5.20.</li> <li>Fixed a spurious <code>ClassCastException</code> in <code>releaseInterceptedContinuation</code> and <code>IllegalStateException</code> from <code>tryReleaseClaimedContinuation</code> (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2736">#2736</a>, <a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2768">#2768</a>).</li> <li>Fixed inconsistent exception message during stacktrace recovery for non-suspending channel iterators (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2749">#2749</a>).</li> <li>Fixed linear stack usage for <code>CompletableFuture.asDeferred</code> when the target future has a long chain of listeners (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2730">#2730</a>).</li> <li>Any exceptions from <code>CoroutineDispatcher.isDispatchNeeded</code> are now considered as fatal and are propagated to the caller (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2733">#2733</a>).</li> <li>Internal <code>DebugProbesKt</code> (used in the debugger implementation) are moved from <code>debug</code> to <code>core</code> module.</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/Kotlin/kotlinx.coroutines/commit/46c0026257cd10365d84004e1e5457de8376d080"><code>46c0026</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2904">#2904</a> from Kotlin/version-1.5.2</li> <li><a href="https://github.com/Kotlin/kotlinx.coroutines/commit/45547c068a1726d02a16a6422077285533e4deb6"><code>45547c0</code></a> Version 1.5.2</li> <li><a href="https://github.com/Kotlin/kotlinx.coroutines/commit/d3ead6fad5a9be799eb5b7d7034890888b2e9a2e"><code>d3ead6f</code></a> Merge branch 'master' into develop</li> <li><a href="https://github.com/Kotlin/kotlinx.coroutines/commit/3dcc3497ac104758989cbdedac1a8455e9989b7e"><code>3dcc349</code></a> Make supervisor samples runnable (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2897">#2897</a>)</li> <li><a href="https://github.com/Kotlin/kotlinx.coroutines/commit/dfa1b6342e4cfb5316f87cb6fc3145d172f9b436"><code>dfa1b63</code></a> Update Kotlin (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2902">#2902</a>)</li> <li><a href="https://github.com/Kotlin/kotlinx.coroutines/commit/d281a7cc15b6dcfd0e62179e6b266d5ac3e8ba3e"><code>d281a7c</code></a> update: links to android resources added to references (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2898">#2898</a>)</li> <li><a href="https://github.com/Kotlin/kotlinx.coroutines/commit/50807d0babeafddc9fa56ad6f567d8e2ef002407"><code>50807d0</code></a> Fix typo in the documentation of CompletableJob#complete (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2900">#2900</a>)</li> <li><a href="https://github.com/Kotlin/kotlinx.coroutines/commit/dbfb4aebfacc0b58da189a386a9614365ecaf643"><code>dbfb4ae</code></a> Fix the API doc of launchIn operator (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2893">#2893</a>)</li> <li><a href="https://github.com/Kotlin/kotlinx.coroutines/commit/810f28f2f852f5944b34f2f5249374349686b522"><code>810f28f</code></a> Verify that tests haven't written anything in the System.out (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2882">#2882</a>)</li> <li><a href="https://github.com/Kotlin/kotlinx.coroutines/commit/b5679abfbcae176f9fe54d8fa9f03b1843abe6e8"><code>b5679ab</code></a> Update DebugProbesKt.bin exclusion instruction (<a href="https://github-redirect.dependabot.com/Kotlin/kotlinx.coroutines/issues/2889">#2889</a>)</li> <li>Additional commits viewable in <a href="https://github.com/Kotlin/kotlinx.coroutines/compare/1.5.0...1.5.2">compare view</a></li> </ul> </details> <br /> [](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores) Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) --- <details> <summary>Dependabot commands and options</summary> <br /> You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) </details> #43
pablobaxter
pushed a commit
to pablobaxter/kotlinx.coroutines
that referenced
this issue
Sep 14, 2022
Kotlin#2784) Cancel dispatched coroutine on Dispatchers.IO when the underlying Handler is closed in Handler.asCoroutineDispatcher() Fixes Kotlin#2778
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Summary
CoroutineDispatcher.dispatch() kdoc says:
The
CoroutineDispatcher
instance returned by Handler.asCoroutineDispatcher() does not provide that guarantee: if the backing Handler thread has quit,Handler.post()
will return false, but the dispatcher does not check for that and the coroutine does not run (source).runBlocking()
is an example of method that expects the coroutine dispatcher to run or cancel the coroutine, and otherwise will block forever.Executor.asCoroutineDispatcher()
implements this guarantee properly (source):Example code
Note: on Android, the main thread (which is a HandlerThread) never quits. However it's super common to create HandlerThread instances for single threaded work, or reuse existing instances when progressively migrating to coroutines. And it's common to quit such threads when running UI tests in CI and resetting the app in between every thread.
We ran into this edge case at Square, I posted the investigation on twitter: https://twitter.com/Piwai/status/1406301224295710720
The text was updated successfully, but these errors were encountered: