architecture-templates
architecture-templates copied to clipboard
Update kotlin (multimodule)
This PR contains the following updates:
Package | Change | Age | Adoption | Passing | Confidence |
---|---|---|---|---|---|
com.google.devtools.ksp (source) | 1.9.22-1.0.17 -> 1.9.24-1.0.20 |
||||
org.jetbrains.kotlin.kapt (source) | 1.9.22 -> 1.9.24 |
||||
org.jetbrains.kotlin.android (source) | 1.9.22 -> 1.9.24 |
||||
org.jetbrains.kotlinx:kotlinx-coroutines-test | 1.7.3 -> 1.8.1 |
||||
org.jetbrains.kotlinx:kotlinx-coroutines-android | 1.7.3 -> 1.8.1 |
||||
androidx.compose.compiler:compiler (source) | 1.5.8 -> 1.5.14 |
Release Notes
google/ksp (com.google.devtools.ksp)
v1.9.24-1.0.20
KSP 1.0.20 for kotlin compiler version 1.9.24
v1.9.23-1.0.20
KSP1 issues fixed
- performance optimization for certain workload consists of heavy Java files, including
- Add excludedSources to the KSP extension object #1793 thanks to @bitspittle
KSP2 issues fixed
- NoClassDefFoundError for LZ4Factory when trying KSP2 #1713
- Calling KSType.replace() with original arguments results in <ERROR TYPE> #1807
- Static fields in base class appear in derived classes #1744
- fix backing field checking for top level callables
- support sealed inheritors lookup.
- support type alias for getSymbolsWithAnnotation
- support more types for reference elements
v1.9.23-1.0.19
New APIs
-
#1708
SymbolProcessorEnvironment.kspVersion
-
#1707
CodeGenerator.associateWithFunctions
andCodeGenerator.associateWithProperties
Issues fixed in KSP2
- #1691 IllegalStateException: Value type not found for value
- #1719 The order of symbols returned from Resolver.getSymbolsWithAnnotation() is different
- #1718 Getting packageName of Kotlin types returns empty String
- #1721 KSAnnotation packageName is an empty String for a type from a different module
- #1722 Resolver.getDeclarationsFromPackage() returns declarations from the default package when passing in an unknown package
- #1717 Resolver.getJvmName() returns different results for annotation args
- #1725 asMemberOf() throws exception with a generic type without arguments
- #1728 ClassCastException when calling KSType.replace() with empty list
- #1713 NoClassDefFoundError for LZ4Factory when trying KSP2
- #1665 NoClassDefFound in ksp.useKSP2=true mode
- #1733 ABI incompatibility with kotlin-compiler-embeddable in 2.0.0-Beta4
- #1714 Generated resources are not added to KotlinCompilation inputs
- #1747 isCompanionObject is false for companion objects from KOTLIN_LIB
- #1743 Incorrect type parameter variances
- #1759 IllegalStateException when getting the modifiers from properties in a Java annotation declaration
Issues fixed in KSP Gradle Plugin
- #1712 Analysis API artifacts have the wrong common-deps dependency
- #1775 1.0.18 creates circular dependencies with kapt tasks
- #1772 Update plugin com.google.devtools.ksp to v1.9.22-1.0.18 BUILD FAILED
Known issues
- #1776 KSP2 has higher memory usage when the compile classpath is very large.
JetBrains/kotlin (org.jetbrains.kotlin.kapt)
v1.9.24
: 1.9.24
Changelog
Backend. Wasm
-
KT-64890
K/Wasm compiler crash with external class and Kodein
Compiler
-
KT-65235
JDK 21 might lead to change in overloads resolution -
KT-66768
K1: False positive UNRESOLVED_REFERENCE in super.getFirst/getLast call
Native
-
KT-67218
Native: nested classes in kx.serialization ProtoBuf produce empty array for release binary
Tools. Gradle
Tools. Gradle. Multiplatform
-
KT-67127
KMP: IDE Dependency Resolver for CInterops reports errors on linux and windows machines -
KT-66514
Don't get output file from Cinterop task for IDE Import if host os doesn't support it
Tools. JPS
-
KT-65043
JPS dumb mode should respect maps needed for the compiler
Tools. Wasm
-
KT-67785
Kotlin/Wasm: Node.JS 22 does not need experimental-wasm-gc flag anymore -
KT-65864
K/Wasm: update Node.js to 22.x
v1.9.23
: Kotlin 1.9.23
1.9.23
Apple Ecosystem
-
KT-65542
Cinterop tasks fails if Xcode 15.3 is used
Backend. Wasm
-
KT-64486
Kotlin/Wasm/WASI exported function callback for coroutines support
Compiler
-
KT-53478
Could not load module <Error module> -
KT-66044
JDK's new API is used over Kotlin's SDK functions -
KT-64640
Prevent mutating SequenceCollection methods from JDK 21 be available on read-only collections -
KT-65441
K1: Remove JDK 21 getFirst()/getLast() in (Mutable)List interfaces -
KT-65634
K/N: data race during monolithic cache creation -
KT-53109
CompilationErrorException generateUnboundSymbolsAsDependencies with builder inference and lambdas -
KT-52757
Type inference for builders fails if inferred from a function
Tools. Gradle
-
KT-65792
Add JSON build report -
KT-65091
Update compiler metrics in build reports -
KT-62490
KGP dropping resource directories
Tools. Gradle. JS
-
KT-64119
K/JS: Migrate package manager from Yarn onto NPM -
KT-64561
K/JS tests are not executed after upgrade to 1.9.22
Tools. Gradle. Multiplatform
-
KT-65954
commonTest dependencies affect commoMainMetadata compilation
Tools. Gradle. Native
-
KT-64573
Default value forproduceUnpackedKlib
was not provided
Kotlin/kotlinx.coroutines (org.jetbrains.kotlinx:kotlinx-coroutines-test)
v1.8.1
- Remove the
@ExperimentalTime
annotation from usages ofTimeSource
(#4046). Thanks, @hfhbd! - Introduce a workaround for an Android bug that caused an occasional
NullPointerException
when setting theStateFlow
value on old Android devices (#3820). - No longer use
kotlin.random.Random
as part ofDispatchers.Default
andDispatchers.IO
initialization (#4051). -
Flow.timeout
throws the exception with which the channel was closed (#4071). - Small tweaks and documentation fixes.
Changelog relative to version 1.8.1-Beta
-
Flow.timeout
throws the exception with which the channel was closed (#4071). - Small documentation fixes.
v1.8.0
- Implement the library for the Web Assembly (Wasm) for JavaScript (#3713). Thanks @igoriakovlev!
- Major Kotlin version update: was 1.8.20, became 1.9.21.
- On Android, ensure that
Dispatchers.Main != Dispatchers.Main.immediate
(#3545, #3963). - Fixed a bug that caused
Flow
operators that limit cancel the upstream flow to forget that they were already finished if there is another such operator upstream (#4035, #4038) -
kotlinx-coroutines-debug
is published with the correct Java 9 module info (#3944). -
kotlinx-coroutines-debug
no longer requires manually settingDebugProbes.enableCoroutineCreationStackTraces
tofalse
, it's the default (#3783). -
kotlinx-coroutines-test
: set the default timeout ofrunTest
to 60 seconds, added the ability to configure it on the JVM with thekotlinx.coroutines.test.default_timeout=10s
(#3800). -
kotlinx-coroutines-test
: fixed a bug that could lead to not all uncaught exceptions being reported after some tests failed (#3800). -
delay(Duration)
rounds nanoseconds up to whole milliseconds and not down (#3920). Thanks @kevincianfarini! -
Dispatchers.Default
and the default thread for background work are guaranteed to use the same context classloader as the object containing it them (#3832). - It is guaranteed that by the time
SharedFlow.collect
suspends for the first time, it's registered as a subscriber for thatSharedFlow
(#3885). Before, it was also true, but not documented. - Atomicfu version is updated to 0.23.1, and Kotlin/Native atomic transformations are enabled, reducing the footprint of coroutine-heavy code (#3954).
- Added a workaround for miscompilation of
withLock
on JS (#3881). Thanks @CLOVIS-AI! - Small tweaks and documentation fixes.
Changelog relative to version 1.8.0-RC2
-
kotlinx-coroutines-debug
no longer requires manually settingDebugProbes.enableCoroutineCreationStackTraces
tofalse
, it's the default (#3783). - Fixed a bug that caused
Flow
operators that limit cancel the upstream flow to forget that they were already finished if there is another such operator upstream (#4035, #4038) - Small documentation fixes.
Configuration
📅 Schedule: Branch creation - "before 4am" (UTC), Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
👻 Immortal: This PR will be recreated if closed unmerged. Get config help if that's undesired.
- [ ] If you want to rebase/retry this PR, check this box
This PR has been generated by Mend Renovate. View repository job log here.