Skip to content

Update kotlin#1026

Open
renovate[bot] wants to merge 1 commit intomainfrom
renovate/kotlin
Open

Update kotlin#1026
renovate[bot] wants to merge 1 commit intomainfrom
renovate/kotlin

Conversation

@renovate
Copy link
Contributor

@renovate renovate bot commented Feb 28, 2025

ℹ️ Note

This PR body was truncated due to platform limits.

This PR contains the following updates:

Package Change Age Confidence
com.google.devtools.ksp (source) 2.1.10-1.0.302.3.5 age confidence
org.jetbrains.kotlinx:kotlinx-serialization-json 1.8.01.10.0 age confidence
org.jetbrains.kotlinx:kotlinx-datetime 0.6.20.7.1-0.6.x-compat age confidence
org.jetbrains.kotlinx:kotlinx-coroutines-test 1.10.11.10.2 age confidence
org.jetbrains.kotlinx:kotlinx-coroutines-android 1.10.11.10.2 age confidence
org.jetbrains.kotlin.plugin.serialization (source) 2.1.102.3.10 age confidence
org.jetbrains.kotlin.jvm (source) 2.1.102.3.10 age confidence
org.jetbrains.kotlin.android (source) 2.1.102.3.10 age confidence
org.jetbrains.kotlin.plugin.compose (source) 2.1.102.3.10 age confidence
org.jetbrains.kotlin:kotlin-gradle-plugin (source) 2.1.102.3.10 age confidence
org.jetbrains.kotlin:kotlin-stdlib-jdk8 (source) 2.1.102.3.10 age confidence

Release Notes

google/ksp (com.google.devtools.ksp)

v2.3.5

Compare Source

What's Changed

  • KSPCoreEnvironment.instance_prop leaks memory when used programmatically #​2742
  • Missing first annotation argument when toByte is used #​2672
  • Fix circular dependency between KSP and KAPT in AGP 9.0 #​2743

Contributors

  • Thanks to everyone who reported bugs and participated in discussions!

Full Changelog: google/ksp@2.3.4...2.3.5

v2.3.4

Compare Source

What's Changed

  • KSP ignores sources in Kotlin directory #​2730
  • Avoid recording Java symbol lookups in non-incremental builds #​2728
  • Clean up ThreadLocals when processing is done #​2709

Contributors

  • Thanks to everyone who reported bugs and participated in discussions!

Full Changelog: google/ksp@2.3.3...2.3.4

v2.3.3

Compare Source

What's Changed

  • Migrate away from a deprecated compilerOptions KGP API #​2703

Contributors

  • Thanks to everyone who reported bugs and participated in discussions!

Full Changelog: google/ksp@2.3.2...2.3.3

v2.3.2

Compare Source

What's Changed

Note: This release is a hotfix for a regression introduced in 2.3.1

  • Fixed an issue where KSP incorrectly processed specific nullable annotations from Java interfaces, leading to incorrect nullability in the generated Kotlin code #​2696
  • Fixed a regression introduced in #​2656 that caused runtime failures for projects using AGP 8.8.0 and older due to an incompatible, version-specific type check. #​2694

Contributors

Thanks to everyone who reported bugs and participated in discussions!

Full Changelog: google/ksp@2.3.1...2.3.2

v2.3.1

Compare Source

What's Changed

  • Added support for AGP 9.0 and built-in Kotlin #​2674
  • Fixed a bug in getJvmCheckedException that incorrectly handled nested classes. #​2584
  • Removed incorrect caching for KSValueArgumentLiteImpl that wrongly merged arguments with different parents, origins, or locations #​2677

Contributors

Thanks to everyone who reported bugs and participated in discussions!
Full Changelog: google/ksp@2.3.0...2.3.1

v2.3.0

Compare Source

What's Changed

  • KSP1 has been deprecated #​2657
  • KSP version is no longer tied to the Kotlin compiler version (moving away from the old - format). #​2658
  • KSP is no longer a compiler plugin (like KSP1). It now operates as a more standalone tool built on stable compiler APIs (shared with tools like IntelliJ).
  • KSP now has fewer limitations on the Kotlin version in use and allows the KSP team to provide better compatibility to KGP/AGP/Gradle
  • Read more about KSP2: https://github.com/google/ksp/blob/main/docs/ksp2.md

Reason for 2.3.0 version name:

  • It is independent of Kotlin now
  • We wanted to match the Kotlin language version
  • It is newer than the latest KSP 2.2.20-2.0.4 release.

Full Changelog: google/ksp@2.2.20-2.0.4...2.3.0

v2.2.21-2.0.5

Compare Source

What's Changed
  • A new Gradle property flag was added to mute the warnings about KSP1 usage. You can enable this by setting warn.on.ksp1.usage=false in your gradle.properties file.

Full Changelog: google/ksp@2.2.21-2.0.4...2.2.21-2.0.5

v2.2.21-2.0.4

Compare Source

What's Changed

Full Changelog: google/ksp@2.2.21-RC2-2.0.4...2.2.21-2.0.4

v2.2.20-2.0.4

Compare Source

What's Changed

  • Unable to build on AGP 8.11.1 using KSP 2.2.20-2.0.3 due to class cast exception #​2614

  • Resolver#getJvmCheckedException(KSPropertyAccessor) throws IllegalArgumentException #​2548

  • ClassCastException when building with 2.2.20-2.0.3 #​2598

  • Replace KaFirStopWorldCacheCleaner with no-op implementation #​2626

  • BuildConfig values are not available during annotation process after upgrading ksp from 2.2.10-2.0.2 -> 2.2.20-2.0.3 #​2597

  • Missing Gradle task wiring with 2.2.20-2.0.3 #​2595

  • 2.2.20-2.0.3 + protobufJavalite build errors #​2596

Contributors

Thanks to everyone who reported bugs and participated in discussions!

Full Changelog: google/ksp@2.2.20-2.0.3...2.2.20-2.0.4

v2.2.20-2.0.3

Compare Source

What's Changed

  • Removed usages of deprecated KGP ApiVersion - #​2400
  • Android integration for KSP has moved on to the new Variant API - #​2250
  • Runtime warning was added for projects that opt out of KSP2 - #​2538
  • AGP version against which KSP is compiled has been upgraded - #​2552

Contributors

Thanks to everyone who reported bugs and participated in discussions!

Full Changelog: google/ksp@2.1.21-2.0.2...2.2.20-2.0.3

v2.2.20-2.0.2

Compare Source

What's Changed

Full Changelog: google/ksp@2.2.20-RC2-2.0.2...2.2.20-2.0.2

v2.2.10-2.0.2

Compare Source

What's Changed

Full Changelog: google/ksp@2.2.10-RC2-2.0.2...2.2.10-2.0.2

v2.2.0-2.0.2

Compare Source

What's Changed

Full Changelog: google/ksp@2.2.0-RC3-2.0.2...2.2.0-2.0.2

v2.1.21-2.0.2

Compare Source

What's Changed

KSP1: use new mangling scheme for inline classes #​2446
KSP task (non-)registration happens too soon #​1789
[ksp2] Resolver.getJvmName wrong for properties starts with is #​2275
Inlined JVM name is not correct #​1493
[KSP2] Annotation values of inner annotations shouldn't be marked as default #​2437
Properly support @​ all annotation use site target #​2438

Contributors

Thanks to everyone who reported bugs and participated in discussions!

Full Changelog: google/ksp@2.1.21-2.0.1...2.1.21-2.0.2

v2.1.21-2.0.1

Compare Source

What's Changed

Full Changelog: google/ksp@2.1.21-RC2-2.0.1...2.1.21-2.0.1

v2.1.20-2.0.1

Compare Source

What's Changed

  • [KSP2] Annotation values shouldn't be marked as default (synthetic origin) broken after PR #​2424 in #​2425
  • [KSP2] Wrong internal method name with custom moduleName compiler option in #​2415
  • [KSP2] getJvmName for internal method did not sanitize java identifiers in #​2413
  • [KSP2] Annotation and argument's origin is wrong in #​2412
  • [KSP2] functionKind is MEMBER for static method in interface in Java in #​2410
  • KSP2 Generated .class files are not added to the classpath in #​2365
  • When I write specific code, KSP throws an Unexpected class for KtSymbol error. in #​2303

Contributors

Thanks to everyone who reported bugs and participated in discussions!

Full Changelog: google/ksp@2.1.20-2.0.0...2.1.20-2.0.1

v2.1.20-2.0.0

Compare Source

What's Changed

  • Bumped version to 2.0.0 and enabled KSP2 by default!
  • No-op blockOtherCompilerPlugins #​2397
  • A couple of fixes to compilation avoidance #​2401
  • KSTypeReferenceResolvedImpl.toString(): render unexpanded #​2393

Full Changelog: google/ksp@2.1.20-1.0.32...2.1.20-2.0.0

v2.1.20-1.0.32

Compare Source

What's Changed

#​2379 [KSP2] resolved type of vararg parameter in functions changed vs KSP1
#​2358 [KSP2] Annotation missing from property when VALUE_PARAMETER target is used.

And various performance optimizations!

v2.1.20-1.0.31

Compare Source

What's Changed

Full Changelog: google/ksp@2.1.20-RC2-1.0.31...2.1.20-1.0.31

v2.1.10-1.0.31

Compare Source

Bug Fixes

  • [KSP2] KSPropertyDeclaration#type for typealias does not match its declaration. #​2345
  • Incorrect isMutable on KSPropertyDeclaration from a JAVA_LIB in 2.1.10-1.0.30 #​2346
  • KSP breaks compilation avoidance #​2347
Kotlin/kotlinx.serialization (org.jetbrains.kotlinx:kotlinx-serialization-json)

v1.10.0

==================

This release is based on Kotlin 2.3.0 and contains all of the changes from 1.10.0-RC.
The only additional change is a fix for ProtoBuf packing of Kotlin unsigned types (#​3079).
Big thanks to KosmX for contributing the fix.

For your convenience, the changelog for 1.10.0-RC is duplicated below:

Stabilization of APIs

kotlinx-serialization 1.10 and subsequent releases will be focused on stabilization of existing APIs.
The following APIs and configuration options are no longer experimental because they're widely used without any known major issues:

  • Json configuration options: decodeEnumsCaseInsensitive, allowTrailingComma, allowComments, and prettyPrintIndent. (#​3100)
  • @EncodeDefault annotation and its modes. (#​3106)
  • JsonUnquotedLiteral constructor function (#​2900)
  • JsonPrimitive constructor function overloads that accept unsigned types. (#​3117)
  • JSON DSL functions on JsonElement with Nothing? overloads. (#​3117)

Readiness for return value checker

Kotlin 2.3.0 introduces a new feature aimed
at helping you to catch bugs related to the accidentally ignored return value of the function.
kotlinx-serialization 1.10.0-RC code is fully marked for this feature, meaning that you
can get warnings for unused function calls like Json.encodeToString(...).
To get the warnings, the feature has to be enabled in your project as described here.

Polymorphism improvements

Polymorphic serialization received a couple of improvements in this release:

New subclassesOfSealed utility to automatically register sealed subclasses serializers in polymorphic modules (#​2201).
Use it in your SerializersModule when configuring a polymorphic hierarchy which contains both abstract and sealed classes.
For example, when root of your hierarchy is an interface, but most of your inheritors are sealed classes.
The new function will register all known sealed subclasses for you, so you don’t need to list them one by one.
This makes writing your SerializerModules much faster and simpler.
Big thanks to Paul de Vrieze for contributing this feature.

Class discriminator conflict check rework (#​3105).
If a payload already contains a property with the same name as the configured discriminator (for example, type),
it is called a class discriminator conflict.
To produce a correct output and allow more inputs to be deserialized at the same time, the following changes were made:

  • Conflicts introduced by JsonNamingStrategy transformations are now detected during serialization as well and will cause SerializationException.
    It also affects non-polymorphic classes.
  • Conflicts from ClassDisciminatorMode.ALL_JSON_OBJECTS and SerializersModuleBuilder.polymorphicDefaultSerializer are also detected.
  • It is allowed to deserialize such a conflicting key for both sealed and open polymorphic hierarchies.
    Previously, it was possible in the sealed hierarchies alone due to missing assertion. See #​1664 for details.

General improvements

  • Add .serialName to MissingFieldException for clearer diagnostics. (#​3114)
  • Generate unique Automatic-Module-Name entries for metadata JARs. (#​3109)
  • Revised ProGuard rules and added R8 tests. (#​3041)
  • CBOR: Improved error message when a byte string/array type mismatch is encountered. (#​3052)

Bugfixes

  • Fix the type in the BIGNUM_NEGATIVE tag name. (#​3090)
  • CBOR: Fix various bugs in the decoder implementation to be more strict and consistent with the specification.

v1.9.0

==================

This release updates Kotlin version to 2.2.0, includes several bugfixes and provides serializers for kotlin.time.Instant.

Add kotlin.time.Instant serializers

Instant class was moved from kotlinx-datetime library to Kotlin standard library.
As a result, kotlinx-datetime 0.7.0 no longer has serializers for the Instant class.
To use new kotlin.time.Instant class in your @​Serializable classes,
you can use this 1.9.0 kotlinx-serialization version (Kotlin 2.2 is required).
You can choose between default InstantSerializer which uses its string representation,
or specify InstantComponentSerializer that represents instant as its components.
See details in the PR.

Other bugfixes

  • Fix resize in JsonPath (#​2995)
  • Fixed proguard rules for obfuscation to work correctly (#​2983)

v1.8.1

==================

This release updates Kotlin version to 2.1.20, while also providing several important improvements
and bugfixes.

Improvements

Bugfixes

  • Fix incorrect enum coercion during deserialization from JsonElement (#​2962)
  • Supply proper equals(), hashCode(), and toString() for SerialDescriptor() wrapper (#​2942)
  • Do not encode empty packed collections in protobuf (#​2907)
Kotlin/kotlinx-datetime (org.jetbrains.kotlinx:kotlinx-datetime)

v0.7.1-0.6.x-compat

v0.7.1

  • Add kotlinx.datetime.Instant and kotlinx.datetime.Clock type aliases to, respectively, kotlin.time.Instant and kotlin.time.Clock to make migration more convenient.
  • Add a fallback timezone database implementation for Darwin that uses the Foundation framework if the timezone database is unavailable on the filesystem (#​485).
  • Restore binary compatibility in string format definitions utilizing dates on the JVM (#​545).

v0.7.0-0.6.x-compat

v0.7.0

Breaking changes:

  • Remove kotlinx.datetime.Instant and kotlinx.datetime.Clock in favor of kotlin.time.Instant (#​506). See https://github.com/Kotlin/kotlinx-datetime?tab=readme-ov-file#deprecation-of-instant for a description of what to do if this causes problems.
  • Unify the range of admissible LocalDate and LocalDateTime values on all platforms (#​432).
  • Rename dayOfMonth to day, monthNumber to month (#​84).
  • Make DayOfWeek and Month no longer type aliases to java.time.DayOfWeek and java.time.Month (#​96).
  • Make "UTC" and not "Z" be the timezone identifier for TimeZone.UTC (#​474).
  • Accept "z" in TimeZone.of, with the same meaning as "Z" (#​529).
  • Add DateTimeFormat-based KSerializer implementations for datetime entities, and change the default serializers to be based on toString/parse pairs (#​415).

Additions:

  • Add java.io.Serializable implementations for most of the entities in the library (#​143). Thanks for spotting and fixing a potential vulnerability, @​lukellmann!
  • Add LocalDateRange, a range of LocalDate values (#​190). Thanks, @​PeterAttardo!
  • Add YearMonth and YearMonthRange (#​457).

Tweaks and fixes:

  • Support obtaining the system timezone on old Debian-based distributions (#​430).
  • Fix not being able to parse some valid timezone identifiers using the timeZoneId() directive (#​444).
  • Use the grammar defined in RFC 9557 for parsing timezone identifiers in the timeZoneId() directive, allowing parsing values not present in the timezone database (#​531).
  • Improved error messages when formatting an invalid DateTimeComponents value (#​471).
  • Set the JPMS dependency on kotlinx.serialization.core to be optional (#​496).
Kotlin/kotlinx.coroutines (org.jetbrains.kotlinx:kotlinx-coroutines-test)

v1.10.2

Compare Source

  • Fixed the kotlinx-coroutines-debug JAR file including the module-info.class file twice, resulting in failures in various tooling (#​4314). Thanks, @​RyuNen344!
  • Fixed Flow.stateIn hanging when the scope is cancelled in advance or the flow is empty (#​4322). Thanks, @​francescotescari!
  • Improved handling of dispatcher failures in .limitedParallelism (#​4330) and during flow collection (#​4272).
  • Fixed runBlocking failing to run its coroutine to completion in some cases if its JVM thread got interrupted (#​4399).
  • Small tweaks, fixes, and documentation improvements.
JetBrains/kotlin (org.jetbrains.kotlin.plugin.serialization)

v2.3.10

v2.3.0

Analysis API
  • KT-80082 K2. False positive "Cannot resolve method" for self-bounded generic with wildcard return type in Java interop
  • KT-80303 Move :native:analysis-api-klib-reader to :libraries:tools
Analysis API. Code Compilation
  • KT-70860 K2 IDE / Kotlin Debugger: CCE “java.lang.String cannot be cast to java.lang.Void” on evaluating not-null variable on the line with assigning null to that var
  • KT-78554 K2 IDE / Kotlin Debugger: ISE “No override for FUN IR_EXTERNAL_DECLARATION_STUB” on calling toString() for local class instance during evaluation
  • KT-73201 K2 IDE: Error while evaluating expressions with local classes
Analysis API. FIR
  • KT-81378 Expected expression 'FirFunctionCallImpl' to be resolved caused by suspend {}
  • KT-80473 Add events for tracking LL activities
  • KT-46375 Analysis API: Support cross-file class redeclaration checks using indices
  • KT-80471 Analysis API: Deduplicate equivalent call candidates in resolveToCallCandidates
  • KT-79653 [Analysis API] ContextCollector: BODY context of enum classes doesn't contain enum entries
  • KT-75858 K2 AA: False positive 'property must be initialized' on incremental analysis with 'field' usage and semicolon in setter
  • KT-80231 AnnotationArgumentsStateKeepers doesn't restore the initial annotation in some cases
  • KT-80233 Pull mutation out of AnnotationArgumentsStateKeepers
  • KT-71466 LLFirBuiltinsSessionFactory uses createCompositeSymbolProvider
  • KT-76432 JavaClassUseSiteMemberScope: Expected FirResolvedTypeRef with ConeKotlinType but was FirUserTypeRefImpl
Analysis API. Infrastructure
  • KT-80717 Support IntelliJ Bazel build in the Kotlin Coop development mode
Analysis API. Light Classes
  • KT-80656 Duplicate no-args constructor in PSI
  • KT-60490 Symbol Light Classes: Property accessors from a delegated interface don't present in the delegating class
  • KT-79689 SymbolLightClassForClassLike.toString() causes PSI tree loading
  • KT-80690 Private interface functions are not present in light classes
  • KT-80256 K2: Certain actions in JPA code causes infinite PIEAE: "Element class CompositeElement of type REFERENCE_EXPRESSION (class KtNameReferenceExpressionElementType)"
  • KT-79012 Add a high-level overview of light classes
Analysis API. Providers and Caches
Fixes
  • KT-81476 Analysis API: AlreadyDisposedException from low-memory cache cleanup
  • KT-80911 Analysis API: Execute session invalidation in a non-cancelable section
  • KT-81242 Analysis API: Add UUID/lifetime properties to LL FIR session structure logging
  • KT-80622 Analysis API: Visualise LL FIR session structure & weight
  • KT-80904 Analysis API: "Invalid dangling file module" exception during session invalidation
  • KT-78882 K2 AA: Calling containingSymbol on getProgressionLastElement causes exception
  • KT-58325 Analysis API: Combine LLKotlinStubBasedLibrarySymbolProviders in session dependencies (optimization)
  • KT-77825 Analysis API: CheckersComponent consumes a lot of memory while being unused in LL FIR sessions
  • KT-76526 Incorrect built-in module is provided for non-JVM sources in Standalone
  • KT-62549 Analysis API: Cache callables in combined Kotlin symbol providers
  • KT-70721 LL FIR: investigate possibility of moving LLFirFirClassByPsiClassProvider . getClassByPsiClass (PsiClass) to symbol providers
  • KT-72998 Analysis API: Introduce getClassLikeSymbolByPsi to LL FIR symbol providers
Analysis API. Standalone
  • KT-81108 AA: java.lang.ClassCastException: class org.jetbrains.kotlin.fir.FirBinaryDependenciesModuleData cannot be cast to class org.jetbrains.kotlin.analysis.low.level.api.fir.projectStructure.LLFirModuleData
  • KT-80573 Potential performance issue on class ID computation
  • KT-80559 Try to optimize KotlinStandaloneDeclarationProviderFactory startup for tests
  • KT-71706 Analysis API Standalone: StandaloneProjectFactory.createSearchScopeByLibraryRoots creates inefficient file-based search scopes
Analysis API. Stubs and Decompilation
Performance Improvements
  • KT-77097 Support ReplaceWith deprecation annotation argument via stubs
Fixes
  • KT-80350 Drop K1 decompiler
  • KT-77082 StackOverflowError in CreateFreshTypeVariableSubstitutorStage.shouldBeFlexible
  • KT-80798 Improve stubs tests coverage
  • KT-75318 Read context parameter fields from metadata in CallableClsStubBuilder
  • KT-77874 AA disagrees with the compiler on descriptions of context parameters from binaries in messages for context argument ambiguity errors
  • KT-80276 Implement native coping for stubs
  • KT-79780 Decompiled MultifileClass has Facade kind
  • KT-79398 isClsStubCompiledToJvmDefaultImplementation flag is inconsistent for compiled and decompiled stubs
  • KT-79798 Prettify stub usages in LL stub-based deserializer
  • KT-78949 AbstractLLStubBasedResolutionTest: tests against real stub-based files
  • KT-80251 Inconsistent decompiled and compiled stub for properties with an initializer and a delegate
  • KT-74547 Implement decompiler for K2
  • KT-79555 Move KotlinFileStubImpl serialization/deserialization to the Analysis API
  • KT-79487 "null DefinitelyNotNullType for 'T'" from decompiler
  • KT-60764 Stub Builder: fix differences between K1 and K2 stub building on decompiled files
  • KT-79484 An empty enum class with a member decompiles with a synthetic error
  • KT-79730 Decompiled files have an extra Kt suffix
  • KT-79483 data modifier is not present on object modifier
  • KT-75398 Local classes from scripts have ClassId in stubs
  • KT-79412 Context parameters with type annotations cause inconsistency errors while building stubs
Analysis API. Surface
New Features
  • KT-80084 Provide endpoints for Analysis API to understand when the context sensitive resolution is used
  • KT-64340 Analysis API: no way to get a type of vararg parameter
  • KT-68387 AA: provide context for type approximations
Performance Improvements
  • KT-80713 Optimize KaDeclarationSymbol#visibility for class-like symbols
  • KT-79097 KaFirNamedFunctionSymbol#isSuspend shouldn't trigger resolution
  • KT-79095 isOverride shouldn't trigger resolution if not compiler plugins present
Fixes
  • KT-80234 Incorrect value of isActual for the implicitly actual constructor of annotation class
  • KT-81132 Use KaSession instead of a particular KaSessionComponent for context parameter bridges
  • KT-81129 K2: KaSymbolInformationProvider#importableFqName: should return null for dynamic declarations
  • KT-81128 K2: KaSymbolInformationProvider#importableFqName: should return null for error destructuring declarations
  • KT-81127 K2: KaSymbolInformationProvider#importableFqName: should return null for anonymous functions
  • KT-81126 K2: KaSymbolInformationProvider#importableFqName: should return null for enum entry initializer constructors
  • KT-81125 K2: KaSymbolInformationProvider#importableFqName: should return null for property accessors
  • KT-81124 K2: KaSymbolInformationProvider#importableFqName: type alias constructor should have a reference to the type alias and not to the underlying class
  • KT-70127 Analysis API: 'KaFirReceiverParameterSymbol' does not implement 'KaFirSymbol'; leads to exception from importableFqName
  • KT-81123 Reimplement KaFirSymbolInformationProvider#importableFqName
  • KT-81122 Drop KaImportOptimizer
  • KT-78093 Add bridges for context parameters
  • KT-79772 Migrate from 'validityAsserted' to 'withValidityAssertion'
  • KT-79328 K2 AA, isUsedAsExpression: Unhandled Non-KtExpression parent of KtExpression: class org.jetbrains.kotlin.psi.KtImportDirective
  • KT-80366 IllegalStateException from KaFirStopWorldCacheCleaner
  • KT-80274 Merge AbstractMultiModuleSymbolByPsiTest to AbstractSymbolByPsiTest
  • KT-80352 KaBaseResolutionScope.contains(PsiElement) always returns false for Android light classes (e.g. synthetic R.java classes)
  • KT-80178 Incorrect modality for an abstract interface function with a redundant open modifier
  • KT-79129 [Analysis API] KaFe10TypeCreator.buildClassType cannot build builtin types by class ids
  • KT-79143 AA: argumentMapping contains an expression that is not an argument
  • KT-59857 KaExpressionTypeProvider#returnType shouldn't throw an exception for class like declarations
  • KT-79667 Enable resolve on java record components in standalone mode
  • KT-73050 KaFirSymbolRelationProvider#expectsForActual: suspicius logic for KaReceiverParameterSymbol
  • KT-78904 KaBaseWriteActionStartedChecker throws when no additional WA was done
  • KT-79281 Add KDoc to KaTypePointer#restore
  • KT-78597 KaUseSiteVisibilityChecker returns false for internal functions exposed via implicit receiver
  • KT-71705 FIR api impl: Postfix increment expression's expressionType is Unit when incrementing array element
  • KT-75057 Analysis API: Reference to object through typealias in invoke operator call leads to original type
Backend. Native. Debug
  • KT-79848 Flaky debugger tests in opt.debug/cache.*/GC.CMS/GC.sch.ad/alloc.custom configuration
Backend. Wasm
New Features
  • KT-59032 Support instantiation of annotation classes on WASM
Fixes
  • KT-76204 K/Wasm: support generating a wasm module per kotlin module/klib
  • KT-79357 K/Wasm: store data for string literals in utf8 for Latin1
  • KT-82075 K/Wasm: kotlin.wasm.internal.getSimpleName crashes on iOS Safari older than 26
  • KT-79244 [Wasm] Drop K1-specific tests, testrunners and test directives
  • KT-69621 K/Wasm: Consider enabling support for KClass.qualifiedName by default
  • KT-80397 K/Wasm: turn on by default using a new version of the exception handling proposal for wasm-wasi target
  • KT-81372 K/Wasm: JsException: Exception was thrown while running JavaScript code on Safari 18.2/18.3
  • KT-80018 K/Wasm: exceptions don't work properly in JavaScriptCore (vm inside Safari, WebKit)
  • KT-66072 K/Wasm: improve how exceptions work in JS interop
  • KT-80106 devServer in Kotlin/Wasm overwrites defaults, causing missing static paths
  • KT-80210 Wasm: "Unexpected non-external class: kotlin.Nothing" caused by JsExport with JsPromise
  • KT-80555 WASM IC: Can't link symbol on kotlinx.coroutines on fresh master
  • KT-80415 WasmJs Number Elvis Operator Crash
  • KT-76509 WasmJS: ReferenceError: Temporal is not defined caused by "Redundant reference to unused external results"
  • KT-79317 [Wasm] Do not throw CCE for ExcludedFromCodegen declarations
  • KT-78036 K/Wasm: generate a message with "expected" and "actual" types in case of CCE
Compiler
New Features
  • KT-80461 K2: false positive NO_ELSE_IN_WHEN for complex sealed hierarchy
  • KT-77676 K/N: enable typechecks and the casts optimization pass in debug mode by default
  • KT-79185 Support local type aliases
  • KT-80837 Warn about extension function with a context shadowed by member
  • KT-80768 Warning on overloading by a superset of context parameters in class context
  • KT-80031 Check spotbugs's @CheckReturnValue in Kotlin's unused return value checker
  • KT-79380 Native: add performance measurement for the rest of backend phases
  • KT-79381 Native: add performance measurement of LLVM phases
  • KT-80222 Implement the prohibition of always-false is checks for definitely incompatible types
  • KT-79295 Parse and build raw FIR from new short and full forms of positional destructuring with square brackets
  • KT-74810 Support typealiased/mapped Java types in unused return value checker
  • KT-71244 Incorporate existing @CheckReturnValue annotation(s) into Kotlin's unused return value checker
  • KT-79922 Record 'MustUse/ExplicitlyIgnorable' state for overrides even in disabled RVC mode
  • KT-79920 Store 'Explicitly ignorable' state of function/property in the metadata
  • KT-79690 Implement a USELESS_ELVIS_LEFT_IS_NULL with elvis expression
  • KT-79296 Implement/adapt diagnostics for new destructuring
  • KT-79298 Report errors on new destructuring syntax in K1
Performance Improvements
  • KT-81617 Native: casts optimizations pass explodes on deep nested loops
  • KT-80554 Kotlin/Native: investigate performance hit from always-on llvm pass profiling
  • KT-81340 K/N: severe compilation time degradation after turning on casts optimization pass
  • KT-80370 Add NO_INLINE attribute to some of runtime functions
  • KT-80167 K/N: condense the nodes and edges in DevirtualizationAnalysis constraint graph
  • KT-79535 Revert incorrect SAM conversion enhancements brought to K2
Fixes
  • KT-79979 K2: ClassCastException when overriding extension property with delegation
  • KT-82590 ClassCastException when instantiating class with generics implemented by fun interface and lambda
  • KT-78881 K2: False positive "Assigned value is never read" in composable function
  • KT-79276 Dexing fails with "Cannot read field X because is null" with 2.2.0
  • KT-79547 "UnsupportedOperationException: Not supported" with inlining and value classes
  • KT-79442 "Multiple annotations of type kotlin.coroutines.jvm.internal.DebugMetadata": 2.2.0-Beta1 generates broken code with JVM default suspend methods in interfaces
  • KT-80744 Kotlin failure on lambda with type parameter
  • KT-81618 "Number of arguments should not be less than number of parameters" on JVM on Kotlin 2.3.0-Beta1
  • KT-82869 Green-to-Red change in 2.3 after prioritizing non-suspend-function-type overloads
  • KT-79611 "IllegalStateException: couldn't find inline method": Exception during incremental compilation
  • KT-78895 Consider dropping isLocalInFunction and FirClassLikeDeclaration.isLocal
  • KT-82040 Native: ClassCastException: PointerInputChange
  • KT-81924 K2: "Cannot infer type for this parameter", "Overload resolution ambiguity between candidates"
  • KT-80864 K2: Missing Val cannot be reassigned diagnostic for Java final fields (crashes in runtime with IllegalAccessError)
  • KT-71420 Report error when reified type parameter is inferred to intersection type
  • KT-79451 Rework approach to recursive types approximation
  • KT-78413 Kotlin Debugger: value classes as context parameters have incorrect names in Variables View during debugging
  • KT-82138 Debugger: Cannot evaluate JvmInline value class parameter
  • KT-82381 ArrayIndexOutOfBoundsException while FirDiagnosticsCompilerResultsReporter tries to print code as part of a warning log
  • KT-81068 Corrupted Unicode paths passed or used in the compiler
  • KT-79783 KDoc parser: Links aren't rendered if the line has an indent of 4 or more
  • KT-80549 Call of Java method with type parameter bounds: Expected FirResolvedTypeRef with ConeKotlinType but was FirJavaTypeRef
  • KT-82132 False-positive type mismatch with -language-version 2.2
  • KT-81988 K2: Any?.toString() causes NPE inside lambda with Java
  • KT-81652 Native: ClassCastException: ApplicationForegroundStateListener.Companion
  • KT-76479 Backend. JVM: Report errors on exposure of types in inline functions
  • KT-82022 K/N: Unexpected "Annotation @JvmInline is missing on actual declaration" warning with value classes
  • KT-80250 ISE: flow for PostponedLambdaExitNode not initialized - traversing nodes in wrong order?
  • KT-76344 Drop language version 1.9 for non-JVM platforms
  • KT-76343 Drop language version 1.8
  • [`KT-8

Configuration

📅 Schedule: Branch creation - Between 12:00 AM and 03:59 AM ( * 0-3 * * * ) (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 was generated by Mend Renovate. View the repository job log.

@renovate renovate bot force-pushed the renovate/kotlin branch from b7271a2 to 3959686 Compare March 20, 2025 12:05
@renovate renovate bot changed the title Update dependency com.google.devtools.ksp 2.1.10-1.0.30 to v2.1.10-1.0.31 Update kotlin Mar 20, 2025
@renovate renovate bot force-pushed the renovate/kotlin branch 2 times, most recently from def3efa to d690808 Compare March 26, 2025 18:55
@renovate renovate bot force-pushed the renovate/kotlin branch from d690808 to fddf59a Compare April 1, 2025 11:58
@renovate renovate bot force-pushed the renovate/kotlin branch 2 times, most recently from 9cbc5c3 to e79d963 Compare April 9, 2025 01:55
@renovate renovate bot force-pushed the renovate/kotlin branch from e79d963 to 3749568 Compare April 30, 2025 23:42
@renovate renovate bot force-pushed the renovate/kotlin branch 2 times, most recently from 780f944 to 1b3edcf Compare May 13, 2025 22:41
@renovate renovate bot force-pushed the renovate/kotlin branch from 1b3edcf to d44f2c7 Compare June 10, 2025 03:31
@renovate renovate bot force-pushed the renovate/kotlin branch 3 times, most recently from 248c1e3 to 904a1bb Compare June 27, 2025 18:47
@renovate renovate bot force-pushed the renovate/kotlin branch from 904a1bb to f47bfa8 Compare July 7, 2025 23:15
@renovate renovate bot force-pushed the renovate/kotlin branch from f47bfa8 to a087208 Compare August 10, 2025 14:03
@renovate renovate bot force-pushed the renovate/kotlin branch 2 times, most recently from ce8b815 to 9fff1ba Compare August 15, 2025 01:39
@renovate renovate bot force-pushed the renovate/kotlin branch 3 times, most recently from 3cc32f0 to 8c41c12 Compare September 12, 2025 00:05
@renovate renovate bot force-pushed the renovate/kotlin branch from 8c41c12 to 5916a7f Compare October 8, 2025 04:14
@renovate renovate bot force-pushed the renovate/kotlin branch 2 times, most recently from 80e576c to f8a1604 Compare October 23, 2025 14:14
@renovate renovate bot force-pushed the renovate/kotlin branch 2 times, most recently from f0db574 to c203411 Compare November 9, 2025 11:52
@renovate renovate bot force-pushed the renovate/kotlin branch from c203411 to 5bebf36 Compare November 21, 2025 01:04
@renovate renovate bot force-pushed the renovate/kotlin branch from 5bebf36 to 401b29b Compare December 16, 2025 12:56
@renovate renovate bot force-pushed the renovate/kotlin branch from 41de403 to a2e76a7 Compare February 5, 2026 09:33
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.

0 participants