Skip to content
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

Version 1.5.1 #2812

Merged
merged 30 commits into from
Jul 9, 2021
Merged

Version 1.5.1 #2812

merged 30 commits into from
Jul 9, 2021

Conversation

qwwdfsad
Copy link
Member

@qwwdfsad qwwdfsad commented Jul 8, 2021

No description provided.

qwwdfsad and others added 29 commits May 18, 2021 14:32
#2710)

* User identityHashCode instead of deprecated `Kotlin_Any_hashCode` for Native debugging capabilities
Co-authored-by: Pierfrancesco Soffritti <psoffritti@google.com>
…ableStateFlow (#2729)

* Add update, updateAndGet, and getAndUpdate extension functions to MutableStateFlow (#2720).

Fixes #2720

Co-authored-by: Louis Wasserman <lowasser@google.com>
… ExecutorService.asCoroutineDispatcher (#2727)

* Get rid of ThreadPoolDispatcher and PoolThread classes
* Reuse the same class for both asCoroutineDispatcher and newFixedThreadPoolContext
* Replace 3-classes hierarchy by a single impl class
* Copy the auto-closing logic to test source

* Document and tweak the contract of Executor.asCoroutineDispatcher and ExecutorService.asCoroutineDispatcher
* Document it properly
* Make it more robust to signature changes and/or delegation (e.g. see the implementation of java.util.concurrent.Executors.newScheduledThreadPool)
* Give a public way to reduce the memory pressure via ScheduledFuture.cancel

Fixes #2601
#2731)

Prevent StackOverflowError in CompletableFuture.asDeferred and properly report exceptions from completion handlers

* It turned out that 'cancel' on completed future tries to help and invoke 'whenComplete' handlers that also invoke 'cancel' on the very same future
* Use top-level exception handler as a last resort to deliver an exception

Fixes #2730
That helps to pro-actively catch cases like #2717 and to report such exception in even more robust manner
…ect classpath (#2741)

Otherwise, the dependency from Kotlin plugin to coroutines 1.4.3 (plugin -> compiler.jar -> coroutines) leaks into the runtime classpath
* Improve ':kotlinx-coroutines-core' substitution for all modules.

Ensure "org.jetbrains.kotlinx:kotlinx-coroutines-core" transitive
dependencies are substituted with project itself to avoid test errors.


Co-authored-by: Yahor Berdnikau <egorr.berd@gmail.com>
* ICA is misused here as lint, for which we consistently use @deprecated in other places
* The current state is incompatible with 1.5.30 where KT-45844 is implemented
* Update supervisorScope documentation to avoid confusion

Co-authored-by: dkhalanskyjb <52952525+dkhalanskyjb@users.noreply.github.com>
This implementation note mentions that withContext(IO) does not lead to a
context switch, which may be misunderstood as a general statement, while
it in fact only applies to switches between Default and IO dispatchers.

This is one example of misunderstanding:
https://stackoverflow.com/questions/68069529/is-kotlinx-coroutines-withcontext-safe-to-use-with-spring-webflux
…uation. (#2773)

Otherwise compilation fails on 1.5.30 due to KT-45844
* Make releaseInterceptedContinuation final
* CoroutineDispatcher is internal for implementation and always has been
* Overriding this method may lead to memory leaks in parent coroutines and is considered dangerous
#2772)

* Properly detect non-released reusable continuations in non-reusable ones and await for reusability to have a consistent state
* Ensure that the caller to DispatchedContinuation.isReusable is reusable itself
* Using the previous invariant, simplify DispatchedContinuation.isReusable to a single null-check
* It also restores the invariant that `cc.isReusable() == cc.resumeMode.isReusableMode`

Fixes #2736
Fixes #2768
…#2786)

* Support bi-directional cancellation for Task.asDeferred and Task.await via passed in CancellationTokenSource

Fixes #2527

Co-authored-by: Alex Vanyo <vanyoalex@gmail.com>
Co-authored-by: dkhalanskyjb <52952525+dkhalanskyjb@users.noreply.github.com>
#2784)

Cancel dispatched coroutine on Dispatchers.IO when the underlying Handler is closed in Handler.asCoroutineDispatcher()

Fixes #2778
* Migrate to Dokka pre-1.5.0

Co-authored-by: Kamil Doległo <kamilok1965@interia.pl>
Co-authored-by: dkhalanskyjb <52952525+dkhalanskyjb@users.noreply.github.com>
* Suppress all deprecated signatures from the documentation
* Migrate inline classes to value
* Get rid of annoying Gradle output when tasks are configured
* Opt-in into delicate coroutines API
* Get rid of legacy jvm_ir_enabled that was used for pre-release testing of JVM IR compiler
* Update README references
@qwwdfsad qwwdfsad requested a review from dkhalanskyjb July 8, 2021 16:15
CHANGES.md Outdated Show resolved Hide resolved
CHANGES.md Outdated Show resolved Hide resolved
CHANGES.md Outdated Show resolved Hide resolved
CHANGES.md Show resolved Hide resolved
@qwwdfsad qwwdfsad merged commit b231887 into master Jul 9, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants