Expenso
Expenso copied to clipboard
Bump kotlinx-coroutines-android from 1.5.2-native-mt to 1.6.3-native-mt
Bumps kotlinx-coroutines-android from 1.5.2-native-mt to 1.6.3-native-mt.
Release notes
Sourced from kotlinx-coroutines-android's releases.
1.6.3
- Updated atomicfu version to 0.17.3 (#3321), fixing the projects using this library with JS IR failing to build (#3305).
1.6.2
- Fixed a bug with
ThreadLocalElement
not being correctly updated when the most outersuspend
function was called directly withoutkotlinx.coroutines
(#2930).- Fixed multiple data races: one that might have been affecting
runBlocking
event loop, and a benign data race inMutex
(#3250, #3251).- Obsolete
TestCoroutineContext
is removed, which fixes thekotlinx-coroutines-test
JPMS package being split betweenkotlinx-coroutines-core
andkotlinx-coroutines-test
(#3218).- Updated the ProGuard rules to further shrink the size of the resulting DEX file with coroutines (#3111, #3263). Thanks,
@​agrieve
!- Atomicfu is updated to
0.17.2
, which includes a more efficient and robust JS IR transformer (#3255).- Kotlin is updated to
1.6.21
, Gradle version is updated to7.4.2
(#3281). Thanks,@​wojtek-kalicinski
!- Various documentation improvements.
1.6.1
- Rollback of time-related functions dispatching on
Dispatchers.Main
. This behavior was introduced in 1.6.0 and then found inconvenient and erroneous (#3106, #3113).- Reworked the newly-introduced
CopyableThreadContextElement
to solve issues uncovered after the initial release (#3227).- Fixed a bug with
ThreadLocalElement
not being properly updated in racy scenarios (#2930).- Reverted eager loading of default
CoroutineExceptionHandler
that triggered ANR on some devices (#3180).- New API to convert a
CoroutineDispatcher
to a Rx scheduler (#968, #548). Thanks@​recheej
!- Fixed a memory leak with the very last element emitted from
flow
builder being retained in memory (#3197).- Fixed a bug with
limitedParallelism
on K/N with new memory model throwingClassCastException
(#3223).CoroutineContext
is added to the exception printed to the defaultCoroutineExceptionHandler
to improve debuggability (#3153).- Static memory consumption of
Dispatchers.Default
was significantly reduced (#3137).- Updated slf4j version in
kotlinx-coroutines-slf4j
from 1.7.25 to 1.7.32.1.6.0
Note that this is a full changelog relative to the 1.5.2 version. Changelog relative to 1.6.0-RC3 can be found at the end.
kotlinx-coroutines-test rework
kotlinx-coroutines-test
became a multiplatform library usable from K/JVM, K/JS, and K/N.- Its API was completely reworked to address long-standing issues with consistency, structured concurrency and correctness (#1203, #1609, #2379, #1749, #1204, #1390, #1222, #1395, #1881, #1910, #1772, #1626, #1742, #2082, #2102, #2405, #2462 ).
- The old API is deprecated for removal, but the new API is based on the similar concepts (README), and the migration path is designed to be graceful: migration guide.
Dispatchers
- Introduced
CoroutineDispatcher.limitedParallelism
that allows obtaining a view of the original dispatcher with limited parallelism (#2919).Dispatchers.IO.limitedParallelism
usages ignore the bound on the parallelism level ofDispatchers.IO
itself to avoid starvation (#2943).- Introduced new
Dispatchers.shutdown
method for containerized environments (#2558).newSingleThreadContext
andnewFixedThreadPoolContext
are promoted to delicate API (#2919).Breaking changes
- When racing with cancellation, the
future
builder no longer reports unhandled exceptions into the globalCoroutineExceptionHandler
. Thanks@​vadimsemenov
! (#2774, #2791).Mutex.onLock
is deprecated for removal (#2794).Dispatchers.Main
is now used as the default source of time fordelay
andwithTimeout
when present (#2972).
- To opt-out from this behaviour,
kotlinx.coroutines.main.delay
system property can be set tofalse
.- Java target of coroutines build is now 8 instead of 6 (#1589).
- Source-breaking change: extension
collect
no longer resolves when used with a non-in-place argument of a functional type. This is a candidate for a fix, uncovered after 1.6.0, see #3107 for the additional details.
... (truncated)
Changelog
Sourced from kotlinx-coroutines-android's changelog.
Change log for kotlinx.coroutines
Version 1.6.3
- Updated atomicfu version to 0.17.3 (#3321), fixing the projects using this library with JS IR failing to build (#3305).
Version 1.6.2
- Fixed a bug with
ThreadLocalElement
not being correctly updated when the most outersuspend
function was called directly withoutkotlinx.coroutines
(#2930).- Fixed multiple data races: one that might have been affecting
runBlocking
event loop, and a benign data race inMutex
(#3250, #3251).- Obsolete
TestCoroutineContext
is removed, which fixes thekotlinx-coroutines-test
JPMS package being split betweenkotlinx-coroutines-core
andkotlinx-coroutines-test
(#3218).- Updated the ProGuard rules to further shrink the size of the resulting DEX file with coroutines (#3111, #3263). Thanks,
@​agrieve
!- Atomicfu is updated to
0.17.2
, which includes a more efficient and robust JS IR transformer (#3255).- Kotlin is updated to
1.6.21
, Gradle version is updated to7.4.2
(#3281). Thanks,@​wojtek-kalicinski
!- Various documentation improvements.
Version 1.6.1
- Rollback of time-related functions dispatching on
Dispatchers.Main
. This behavior was introduced in 1.6.0 and then found inconvenient and erroneous (#3106, #3113).- Reworked the newly-introduced
CopyableThreadContextElement
to solve issues uncovered after the initial release (#3227).- Fixed a bug with
ThreadLocalElement
not being properly updated in racy scenarios (#2930).- Reverted eager loading of default
CoroutineExceptionHandler
that triggered ANR on some devices (#3180).- New API to convert a
CoroutineDispatcher
to a Rx scheduler (#968, #548). Thanks@​recheej
!- Fixed a memory leak with the very last element emitted from
flow
builder being retained in memory (#3197).- Fixed a bug with
limitedParallelism
on K/N with new memory model throwingClassCastException
(#3223).CoroutineContext
is added to the exception printed to the defaultCoroutineExceptionHandler
to improve debuggability (#3153).- Static memory consumption of
Dispatchers.Default
was significantly reduced (#3137).- Updated slf4j version in
kotlinx-coroutines-slf4j
from 1.7.25 to 1.7.32.Version 1.6.0
Note that this is a full changelog relative to the 1.5.2 version. Changelog relative to 1.6.0-RC3 can be found at the end.
kotlinx-coroutines-test rework
kotlinx-coroutines-test
became a multiplatform library usable from K/JVM, K/JS, and K/N.- Its API was completely reworked to address long-standing issues with consistency, structured concurrency and correctness (#1203, #1609, #2379, #1749, #1204, #1390, #1222, #1395, #1881, #1910, #1772, #1626, #1742, #2082, #2102, #2405, #2462 ).
- The old API is deprecated for removal, but the new API is based on the similar concepts (README), and the migration path is designed to be graceful: migration guide.
Dispatchers
- Introduced
CoroutineDispatcher.limitedParallelism
that allows obtaining a view of the original dispatcher with limited parallelism (#2919).Dispatchers.IO.limitedParallelism
usages ignore the bound on the parallelism level ofDispatchers.IO
itself to avoid starvation (#2943).- Introduced new
Dispatchers.shutdown
method for containerized environments (#2558).newSingleThreadContext
andnewFixedThreadPoolContext
are promoted to delicate API (#2919).Breaking changes
... (truncated)
Commits
- See full diff in compare view
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 commands and options
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)