Skip to content
This repository was archived by the owner on Jun 10, 2026. It is now read-only.

Update Kotlin, KSP and Compose Compiler#486

Open
renovate[bot] wants to merge 1 commit into
masterfrom
renovate/kotlin-ksp-and-compose-compiler
Open

Update Kotlin, KSP and Compose Compiler#486
renovate[bot] wants to merge 1 commit into
masterfrom
renovate/kotlin-ksp-and-compose-compiler

Conversation

@renovate

@renovate renovate Bot commented Dec 20, 2024

Copy link
Copy Markdown
Contributor

ℹ️ 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.0.21-1.0.282.3.9 age confidence
org.jetbrains.kotlin.plugin.compose (source) 2.0.212.4.0 age confidence
org.jetbrains.kotlin.plugin.parcelize 2.0.212.4.0 age confidence
org.jetbrains.kotlin.multiplatform (source) 2.0.212.4.0 age confidence
org.jetbrains.kotlin:kotlin-test-junit (source) 2.0.212.4.0 age confidence
org.jetbrains.kotlin:kotlin-test (source) 2.0.212.4.0 age confidence
org.jetbrains.kotlin.plugin.serialization (source) 2.0.212.4.0 age confidence
org.jetbrains.kotlin.native.cocoapods (source) 2.0.212.4.0 age confidence
org.jetbrains.kotlin.android (source) 2.0.212.4.0 age confidence

Release Notes

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

v2.3.9

Compare Source

What's Changed

  • Cleaned up native cross-compilation support checks to prevent Gradle Configuration Cache invalidation (#​2953)
  • Fixed a compilation performance regression in in PsiResolutionStrategy introduced in 2.3.8 (#​2948)

Contributors

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

Full Changelog: google/ksp@2.3.8...2.3.9

v2.3.8

Compare Source

What's Changed

  • Enabled new default annotation use-site rules in Kotlin's Analysis API (see KEEP 402) for more information. Note: KSP was already mostly compatible with KEEP 402, so there shouldn't be any visible changes for users. (#​2888)
  • Enabled ksp.project.isolation by default when Gradle isolated projects are enabled (#​2866)
  • Improved getSymbolsWithAnnotation performance by implementing a new PSI-based resolution strategy (#​2816)

Contributors

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

Full Changelog: google/ksp@2.3.7...2.3.8

v2.3.7

Compare Source

What's Changed

  • Bumped Kotlin target language version to 2.3 (#​2821)
  • Fixed crash caused by upstream dependency (#​2856)
  • Fixed support for Gradle Isolated Projects (#​2844)

Contributors

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

Full Changelog: google/ksp@2.3.6...2.3.7

v2.3.6

Compare Source

What's Changed

  • Fixed an issue where module recompilation would fail on Windows environments when KSP2 was enabled (#​2774)
  • Resolved an issue where generated Java sources were ignored when using Android Kotlin Multiplatform with IP-compatible paths (#​2744)
  • Fixed a KSP version 2.3.5 CI error exception that does not break build checks (#​2763)
  • Added symbol-processing-api and common-deps to compile dependencies (#​2789)
  • Improved the detection of built-in Kotlin by removing the reliance on KotlinBaseApiPlugin (#​2772)
  • A back-port of a performance optimization in the Intellij / Analysis API (2785 )
  • Added support for nested typealias Kotlin language feature #​2588
  • Exclude jdbc package from log4j to prevent vulnerability issue #​2651

Contributors

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

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

v2.1.10-1.0.30

Compare Source

Bugs Fixed / PR Landed

#​2325 [KSP2] KSType.arguments return arguments on aliased type.
#​2312 Partially migrate KSP off AGP's legacy Variant API
#​2309 Resolver#getDeclarationsFromPackage() does not find generated files
#​2252 Incremental processing breaks when a project dependency is modified
#​2265 [ksp2] ksType.arguments will crash on a typealias's java wildcard type
#​2264 [ksp2] getJavaWildcard does not return wildcard for List param (different with kapt/ksp1)
#​2246 Resolver returns non-equal instances of the same declaration.
#​2254 [KSP2] Resolver#overrides() gives incorrect result when method isn't accessible.

v2.1.10-1.0.29

Compare Source

What's Changed

Full Changelog: google/ksp@2.1.10-RC2-1.0.29...2.1.10-1.0.29

v2.1.0-1.0.29

Compare Source

Updates

Contributors

Thanks to everyone who reported bugs and participated in discussions!

v2.1.0-1.0.28

Compare Source

What's Changed

Full Changelog: google/ksp@2.1.0-RC2-1.0.28...2.1.0-1.0.28

JetBrains/kotlin (org.jetbrains.kotlin.plugin.compose)

v2.4.0

v2.3.21

Backend. Wasm
  • KT-84610 [Wasm] Failed to compile klibs in IC mode
Compiler
  • KT-84566 Prevent launching Default dispatcher threads from IJ SDK in kotlin compiler
  • KT-85358 Native: roll back the workaround for KT-84678 once MapLibre has been properly fixed
  • KT-85626 @JvmRecord in commonMain breaks compileCommonMainKotlinMetadata with "Cannot access 'java.lang.Record'"
  • KT-85405 Postpone/Revert DontIgnoreUpperBoundViolatedOnImplicitArguments
  • KT-84678 K/N: Undefined symbol from SPM-added ObjC frameworks when linking iOS target
  • KT-85021 False positive SUBCLASS_CANT_CALL_COMPANION_PROTECTED_NON_STATIC error in multi-module project
JavaScript
  • KT-82395 Support top-level declarations from compiler plugins in JS incremental compilation
  • KT-84475 K/JS: false-positive exportability warnings in multi-module project
  • KT-84633 Kotlin/JS: "Serializer for class not found" error when IR output granularity is whole-program
  • KT-85047 Kotlin/JS: @JsStatic on suspend fun of class companion generates incorrect d.ts
  • KT-84517 K/JS: bad mappings data in outputted Kotlin stdlib source map
Libraries
  • KT-71848 Kotlinx.metadata: Add CompilerPluginData into Km API
Native. C and ObjC Import
  • KT-85399 Kotlin/Native: TypeCastException when casting ObjC Protocol MetaClass with genericSafeCasts enabled
  • KT-85508 K/N: TypeCastException when using nw_parameters_create_secure_tcp block parameter on 2.3.20
Tools. Gradle
  • KT-84729 Update Gradle plugin-publish version to enable configuration cache badge on Gradle plugins portal
Tools. Gradle. Compiler plugins
  • KT-85257 AGP/Compose: MergeMappingFileTask clears R8 artifacts due to @OutputDirectory annotation on AGP 9.1+
Tools. Scripts
  • KT-85105 Scripts: JVM backend internal error (IR lowering) when scratch file contains anonymous object
  • KT-85103 Exception while generating code when explain destructuring decls
  • KT-84842 scriptCompilationClasspathFromContext behavior changed from 2.3.10 to 2.3.20
  • KT-85029 Kotlin Scripting: ScriptDiagnostic reports "at null" instead of error location
Tools. Statistics (FUS)
  • KT-85628 KGP: composite build FUS metrics fail on access of 'configurationTimeMetrics'

v2.3.20

Analysis API. FIR
New Features
  • KT-78090 Implement stubs support for new conditional returns and holdsIn contracts
Fixes
  • KT-82948 'FirRegularClass' expected as a containing declaration, got 'FirTypeAliasImpl'
  • KT-83467 Package-level JSpecify annotations are ignored when coming from jars or libraries
  • KT-82057 K2. Cannot infer type parameter 'R' in Ktor routing post() function with explicit response type
  • KT-82846 AA: unresolved KtExpression.expressionType for the reference to the parameter with default value
  • KT-80485 False positive UNRESOLVED_REFERENCE on nested interface from super-super class in the super type position inside an anonymous object
  • KT-82772 Flaky false positive deprecation warning on PersistentMap.put in Kotlin repo in IDE mode
  • KT-76487 StdLibSourcesLazyDeclarationResolveTestGenerated.testWrappedInt is unstable
  • KT-82618 Various tests are failing with NPE in kt-master after updating the compiler on 19.11.25
  • KT-82076 Error querying members of JavaClass created for SymbolLightClassForAnnotationClass during library analysis
  • KT-71596 Include Js/Wasi checkers in AbstractLLFirDiagnosticsCollector
  • KT-82085 No OUTER_CLASS_ARGUMENTS_REQUIRED on type parameter bound in IDE
  • KT-81873 Provide a way of including traces in phase JFR events
  • KT-71929 Consider leaving the non-post-compute version at EnhancementSymbolsCache.enhancedFunctions
Analysis API. Infrastructure
  • KT-83173 Analysis API Tests: Library names with RC versions aren't sanitised
  • KT-65140 LL FIR: Implement AbstractFirPsiJsDiagnosticTest for LL FIR
  • KT-82212 [Analysis API, LL FIR] Implement AbstractDiagnosticsFirWasmTest and AbstractDiagnosticsFirWasmWasiTest for LL FIR
Analysis API. Light Classes
  • KT-82227 Value classes should expose regular static methods
Analysis API. PSI
  • KT-81710 'KtTypeReference.getTypeText' does not account for 'suspend' modifier on suspend lambdas
  • KT-82258 Prepare PSI for migration from context receivers to context parameters
  • KT-81074 KDoc: List rendering is broken
Analysis API. Providers and Caches
  • KT-82449 K2 IDE Analysis Freezes During Gradle Sync (Recursive Module Dependency Computation in KotlinModuleDependentsProviderBase.computeTransitiveDependents)
  • KT-82629 'collectDiagnostics' returns stale syntax error after editor fix
  • KT-74907 Analysis API: Apply platform-based library module content restrictions consistently
Analysis API. Standalone
  • KT-81107 AA: KtSourceModuleBuilder.sourceRoots doesn't works with symbolic links
Analysis API. Stubs and Decompilation
  • KT-82792 Stub for KtValueArgumentList inside KtAnnotationEntry should be present if it is present in psi
  • KT-82527 TypeClsStubBuilder.createFunctionTypeStub throws NullPointerException
  • KT-82558 Deserialized DNN type should have a fully qualified Any
  • KT-81928 KaArrayAnnotationValueImpl.values missing first element
  • KT-82139 Support contracts for property accessors
  • KT-82198 Support context parameters in contracts
Analysis API. Surface
New Features
  • KT-82851 Property accessors should inherit KDoc from the parent property
  • KT-63339 Analysis API: Provide a way to extract KDoc for symbols
  • KT-79070 KaTypeProvider: add API to build a default type with star projections
  • KT-66566 AA: api to create functional types
  • KT-66043 KtTypeCreator doesn't provide a way for creating annotated types
Performance Improvements
  • KT-83694 Provide psi-based implementation of KaDeclarationSymbol#isExternal
  • KT-70868 KaSymbol: support PSI-only visibility and modality for the case without compiler plugins
  • KT-81627 KaFirSymbolDeclarationOverridesProvider#processOverrides should process only relevant declarations
Fixes
  • KT-83152 [Analysis API, KDoc] Make class name links on constructors point to the class
  • KT-83695 Deprecate KaSymbolInformationProvider#{getter, setter}DeprecationStatus
  • KT-82853 Add a convenience property for testing declarations for effective external-ness
  • KT-83226 Support "Collection literals" in the Analysis API
  • KT-83225 Support "@IntroduceAt" in the Analysis API
  • KT-83222 Support "Improve use-site defaulting for annotations" in the Analysis API
  • KT-83351 Rename KaSession context parameter from 's' in bridges to something nicer
  • KT-83199 Clarify API around extension points
  • KT-83074 Inner enum entry class has incorrect default visibility
  • KT-82442 Add Ka prefix to org.jetbrains.kotlin.analysis.api.symbols.AdditionalKDocResolutionProvider
  • KT-82443 Add Ka prefix to org.jetbrains.kotlin.analysis.api.symbols.DebugSymbolRenderer
  • KT-82441 Add Ka prefix to org.jetbrains.kotlin.analysis.api.compile.CodeFragmentCapturedValue
  • KT-82439 Add Ka prefix to org.jetbrains.kotlin.analysis.api.components.DebuggerExtension
  • KT-82438 Add Ka prefix to org.jetbrains.kotlin.analysis.api.components.DefaultTypeClassIds
  • KT-68577 asPsiType and mapTypeToJvmType: leading delimiter for class in a root package
  • KT-81734 MIssing "ARGUMENT_TYPE_MISMATCH" caused by self-referential generic type
  • KT-82856 Redesign KotlinReferenceProviderContributor to make it extensible
  • KT-82615 Clarify KtReference#resolvesByNames contract
  • KT-82534 No expected type for property accessor without body
  • KT-82406 Add a test to ensure that all top-level classes in the Analysis API Surface have Ka prefix
  • KT-78397 investigate if there is a need in Extra support for the "various little features in contracts"
  • KT-74009 Analysis API: Expose "isOverloadable" check for callable symbols similar to "OverloadChecker.isOverloadable"
  • KT-78399 Check return value - check how we see from Java(+Stub) we see “annotated” signatures
  • KT-80357 [Analysis API] KaType.enhancedType doesn't enhance type parameters
  • KT-73659 Analysis API: The name of KaType.enhancedType is too general
  • KT-80545 [Analysis API] Deprecate KaFunctionType.arity
  • KT-77708 K2 Mode: Potentially redundant smart cast highlighing when passing smartcasted expressions as arguments
  • KT-81264 K2 AA: KaValueParameterSymbol.hasDefaultValue is false for overriding or actual functions
  • KT-81166 Forbid the usage of KaSessionComponent implementation types directly
  • KT-74801 Analysis API: Publish/subscribe to modification events with a single message bus topic
Backend. Native. Debug
  • KT-81741 Native: stepping into data class hashCode in lldb goes to line 1
Backend. Wasm
New Features
  • KT-81485 [Wasm] DebuggerCustomFormatters generation support for single module mode
  • KT-81483 [Wasm] Typescript generation support for single module mode
  • KT-81484 [Wasm] Dwarf generation support for single module mode
Performance Improvements
  • KT-83839 K/Wasm: CMP. Load time on Safari significantly increased with Kotlin = 2.3.20-Beta1
  • KT-81524 Unnecessary Any-JsAny conversions are generated for external instanceofs
Fixes
  • KT-82732 K/Wasm runtime crash when using fun reference: convertKotlinClosureToJsClosure
  • KT-82649 K/Wasm: Rewrite StringBuilder to use JsString
  • KT-73240 K/Wasm: consider using JS String Builtins proposal in String implementation for wasm-js target
  • KT-83995 K/Wasm: 2.3.0 -> 2.3.20-Beta1 degradation in arrow tests
  • KT-82309 K/Wasm: refactor _initialize function
  • KT-70075 Wasm: "OutOfMemoryError: GC overhead limit exceeded" during tests
  • KT-83046 K/Wasm: don't use StringBuilder implicitly for string concatenations
  • KT-82645 K/Wasm: wasmJs use js "String" for number2String conversion
  • KT-79937 K/Wasm: support kotlin.js.nativeInvoke annotation
  • KT-67461 Use new lowering phase creation API in Wasm backend
  • KT-83664 Wasm: Colon and space are not sanitized in output file names
  • KT-65779 JsExport declaration name clash
  • KT-82202 [Wasm] SourceMap generation support for single module mode
  • KT-82162 [Wasm] Run single module tests with standalone vm's
  • KT-81325 [Wasm] Remove string pool initialiser dependent code
  • KT-73238 K/Wasm: stop using linear memory inside our code
  • KT-83025 Wasm: Compose application is not loading
  • KT-73239 K/Wasm: use JS String Builtins proposal to transfer strings to and from JS
  • KT-83194 K/Wasm: create WasmIR test infrastructure
  • KT-65234 K/Wasm Ensure that fp operations are aligned with other b-ends
  • KT-81856 K/JS/Wasm interop: external instanceofs do not link in singleModule mode
  • KT-81610 [Wasm] Add CLI test for performance metrics for klibs->binary scenario
  • KT-81550 Incorrect generation of .wat files
  • KT-71533 K/Wasm + K2: no error on KClass::qualifiedName usages
Compiler
New Features
  • KT-75736 Enable reading/writing annotations in metadata on JVM by default
  • KT-79330 Implement the first version of inference for Collection Literals
  • KT-83401 Collection literals: support different types of expected types for CL
  • KT-55548 JSR-305: Overload resolution ambiguity: Platform Types vs Kotlin Types
  • KT-74860 Support Unit coercion (incl. fun refs) in unused return value checker
  • KT-13968 Support vertx nullable annotation
  • KT-79656 Use org.jetbrains.annotations.UnmodifiableView and/or org.jetbrains.annotations.Unmodifiable to infer read-only types for Java entities
  • KT-81684 Implement explicit passing of context arguments using named syntax [TEST_ONLY]
  • KT-80492 Checkers for operator of
  • KT-82638 Collection literals: resolve to factory functions for standard library classes
  • KT-82467 Improve binary and JVM compatibility by generating bridges for abstract interface methods
  • KT-82655 Bridges generated for non-fake overrides shall include annotations from target methods
  • KT-74223 Move Kotlin/Native TestProcessor phase to the first phase
  • KT-27090 Support contracts in getter and setter for top-level extension properties
  • KT-74809 Support unnamed local variables
  • KT-45683 Allow generics in contract type assertions
Performance Improvements
  • KT-81974 Do not eagerly initialize reflection for KProperty objects for delegated properties
  • KT-83697 Native: increased bitcode produced with enabled safe casts
  • KT-83036 Native: too many casts emitted with -Xgeneric-safe-casts=true
  • KT-80061 Compiler (or IDEA) hangs due to importing large Kotlin reflect functions (e.g. KFunction999999999)
  • KT-68592 Investigate performance implications of enabling -Xjvm-default for ir.tree module
  • KT-73687 Inefficient KtCommonFile#getFileAnnotationList
  • KT-71673 Consider making EnhancementSymbolsCache. enhancedFunctions using simple cache
Fixes
  • KT-84773 Annotations not persisted in IR for internal external functions
  • KT-78783 K2: absence of warning for KTLC-284 migration
  • KT-81553 INITIALIZER_TYPE_MISMATCH and ASSIGNMENT_TYPE_MISMATCH is reported on the entire initializer
  • KT-83395 Kotlin/Native 2.3.0 iOS release framework fails with Invalid LLVM module (PHI node type mismatch)
  • KT-84620 Incorrect optimization of property delegation
  • KT-81567 Add a use-site warning if a @DslMarker-marked annotation is used on entities where it is a no-op
  • KT-81700 flaky overload resolution behaviors (false-positive errors, different final candidates, compile-time failures)
  • KT-83372 compileDebugKotlinAndroid hangs in 2.3.0 with SQLDelight
  • KT-82579 Update specificity rule for context parameters
  • KT-83590 Some explicit backing fields must still be considered private-to-this
  • KT-83849 False-positive NULLABILITY_MISMATCH_BASED_ON_JAVA_ANNOTATIONS for Optional.orElse(null) call
  • KT-84192 "Member overrides different '@Throws' filter from" caused by overriding in different module
  • KT-72994 K2: Remove resolution to context receivers
  • KT-80247 No diagnostic on unresolved type annotation from a dependency in an inferred type
  • KT-78730 Move more LLVM-agnostic code to compiler/ir/backend.native or compiler/ir/backend.common
  • KT-74051 Add a Continuation for tail-call suspend functions
  • KT-83984 Data races around kotlinx.serialization plugin protobuf extensions registration
  • KT-83317 ClassCastException: with cast kotlin.UInt to java.lang.Number when defining constant
  • KT-83031 K2: unstable resolution of EnhancedNullability from type-use NotNull in presence of unused code
  • KT-83824 Delegated property in Gradle DSL fails to compile
  • KT-83657 [K/N] Pre-codegen inline produces invalid bitcode
  • KT-81555 Kotlin scripts: top-level name-based destructuring with _ = prop fails with “exception while generating code”
  • KT-83314 JSpecify @NullMarked changes Java equals(Object) to equals(Any?) causing override conflict in Kotlin 2.3
  • KT-83282 JvmExposeBoxed: Duplicate annotation interface kotlin.coroutines.jvm.internal.DebugMetadata in class %class%$1 for suspend inline class value
  • KT-78443 Refactor session component initialization for multi-target compilation
  • KT-83427 Arguments of plugin-generated annotations are serialized incorrectly
  • KT-83538 OPERATOR_RENAMED_ON_IMPORT is not reported for 'provideDelegate' operator
  • KT-83537 OPERATOR_RENAMED_ON_IMPORT is not reported for 'of' operator
  • KT-82721 Inconsistent explicit backing fields behavior
  • KT-83589 Explicit backing fields don't likely work with intersection overrides
  • KT-81951 K2: Another false positive "Assigned value is never read" in composable function
  • KT-83588 Explicit backing field is falsely accessible from a subclass via a substitution override
  • KT-82849 Collection literals (minor): collection literal should only be resolved to operator
  • KT-83363 VerifyError: "Bad type on operand stack" on multi-line suspending call with default parameter value since API version 2.4
  • KT-83570 K2: Resolve problematic IR when referencing Kotlin const from annotation in Java
  • KT-83362 Starting from 2.3 DefaultImpls bridge functions deprecated with the level HIDDEN are no longer synthetic
  • KT-9182 Java interoperability: Overload resolution ambiguity on Java's @NotNull and primitives
  • KT-83633 Forbid inline functional context parameters in inline functions
  • KT-83449 compile-time IR failure on smart cast information leaking from capturing closure
  • KT-82375 Add ATOMIC_REF_WITHOUT_CONSISTENT_IDENTITY warning for any argument without consistent identity
  • KT-82524 Access to a companion that requires opt-in is possible without opt-in
  • KT-83367 VolatileFieldsLowering may emit wrong parameter types for atomic intrinsic calls
  • KT-83382 K2: Unreachable method exit breaks MUST_BE_INITIALIZED checks for succeeding value declarations
  • KT-82211 False positive SENSELESS_NULL_IN_WHEN with nullable var
  • KT-83157 ExplicitBackingFields: "Property with explicit backing field should be final" in 2.3.0
  • KT-83269 K2: Wrong types in IR for explicit backing fields
  • KT-68606 Argument type mismatch, despite being from the same star-projected type
  • KT-83324 Native: problem with loops handling in types computation pass
  • KT-83241 K2: "NoSuchElementException: List is empty" with top-level destructuring declaration and lambda initializer
  • KT-82277 Misleading Inapplicable candidate(s): fun <K> WHEN_CALL(vararg branches: K): K when a when expression branch contains an unresolved reference
  • KT-80839 Get rid of an obsolete -Xcompile-builtins-as-part-of-stdlib flag once previous changes are bootstrapped
  • KT-82900 Language Feature EnhancedBridgesGeneration
  • KT-82651 Do not generate self-recursive bridges in JVM backend
  • KT-5486 Better errors for integers with leading zero
  • KT-83185 Kotlin repeatable annotations are incorrectly deserialized from bytecode
  • KT-82863 @NoInfer regression since 2.2.20
  • KT-82376 Header mode: Index out of bounds when generating bodies of data class
  • KT-82311 Header mode: Error expression when assigning function declaration to a property
  • KT-82408 Header mode: Java files are not compiled successfully
  • KT-82378 Header mode: Sequence contains no element matching the predicate
  • KT-82407 Header mode: Backend Internal error: Exception during IR lowering
  • KT-81763 Incorrect comparison result when using elvis ?: with nullable Long values
  • KT-83153 Properly ignore contract statements in the Return Value Checker
  • KT-83076 Don't report WRONG_JS_INTEROP_TYPE on expect types during metadata compilation
  • KT-78589 "Class does not have member field" caused by delegation from a Java to Kotlin class
  • KT-82640 K2: CCE on green code
  • KT-82684 "Don't know how to compile annotation value ERROR_EXPR" on incorrect array literal in annotation default arguments
  • KT-81948 K2: ClassCastException: "java.lang.String cannot be cast to java.lang.Void" when calling @Nullable Java function
  • KT-82788 false-positive duplicate JVM class name error in IJ monorepo
  • KT-82841 "kotlin.NoWhenBranchMatchedException" in when with !is check & non-sealed class in the middle of hierarchy
  • KT-82844 "when" with no branches does not evaluate subject (side effects ignored)
  • KT-81625 Incorrect empty parameters parsing (comma is highlighted in red)
  • KT-81193 K2: SOE from AbstractTypeApproximator.approximateToSuperType with local enum class
  • KT-65059 Stack overflo

Note

PR body was truncated to here.


Configuration

📅 Schedule: (UTC)

  • Branch creation
    • At any time (no schedule defined)
  • Automerge
    • At any time (no schedule defined)

🚦 Automerge: Enabled.

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 enabled auto-merge (squash) December 20, 2024 21:11
@renovate renovate Bot requested a review from hoc081098 December 20, 2024 21:11
@renovate renovate Bot force-pushed the renovate/kotlin-ksp-and-compose-compiler branch 2 times, most recently from 54862a6 to f2c2079 Compare January 28, 2025 23:03
@renovate renovate Bot force-pushed the renovate/kotlin-ksp-and-compose-compiler branch from f2c2079 to 2ccf6f7 Compare February 14, 2025 05:30
@renovate renovate Bot force-pushed the renovate/kotlin-ksp-and-compose-compiler branch from 2ccf6f7 to 75fff42 Compare February 27, 2025 20:42
@renovate renovate Bot force-pushed the renovate/kotlin-ksp-and-compose-compiler branch 3 times, most recently from ec4101b to 37e9f95 Compare March 21, 2025 04:50
@renovate renovate Bot force-pushed the renovate/kotlin-ksp-and-compose-compiler branch from 37e9f95 to 7776997 Compare March 26, 2025 18:27
@renovate renovate Bot force-pushed the renovate/kotlin-ksp-and-compose-compiler branch from 7776997 to b83221b Compare April 9, 2025 00:42
@renovate renovate Bot force-pushed the renovate/kotlin-ksp-and-compose-compiler branch from b83221b to 060a37f Compare May 1, 2025 01:02
@renovate renovate Bot force-pushed the renovate/kotlin-ksp-and-compose-compiler branch 2 times, most recently from b0c170c to b934e6f Compare May 14, 2025 00:34
@renovate renovate Bot force-pushed the renovate/kotlin-ksp-and-compose-compiler branch from b934e6f to 53847ea Compare June 10, 2025 00:48
@renovate renovate Bot force-pushed the renovate/kotlin-ksp-and-compose-compiler branch 2 times, most recently from 4188d4b to 9841675 Compare June 25, 2025 21:32
@renovate renovate Bot force-pushed the renovate/kotlin-ksp-and-compose-compiler branch 3 times, most recently from 30997fb to e3f19b9 Compare August 15, 2025 02:41
@renovate renovate Bot force-pushed the renovate/kotlin-ksp-and-compose-compiler branch 3 times, most recently from 608c2fe to 24b313f Compare September 13, 2025 00:59
@renovate renovate Bot force-pushed the renovate/kotlin-ksp-and-compose-compiler branch from 24b313f to 6154201 Compare October 9, 2025 03:41
@renovate renovate Bot force-pushed the renovate/kotlin-ksp-and-compose-compiler branch 2 times, most recently from 66b3a95 to 15ebd5b Compare October 23, 2025 10:52
@renovate renovate Bot force-pushed the renovate/kotlin-ksp-and-compose-compiler branch 2 times, most recently from f5b4cc6 to 77d14ab Compare November 6, 2025 20:15
@renovate renovate Bot force-pushed the renovate/kotlin-ksp-and-compose-compiler branch from 77d14ab to 558ef76 Compare November 20, 2025 22:34
@renovate renovate Bot force-pushed the renovate/kotlin-ksp-and-compose-compiler branch 2 times, most recently from c4c4889 to 60f517a Compare December 17, 2025 00:55
@renovate renovate Bot force-pushed the renovate/kotlin-ksp-and-compose-compiler branch from 60f517a to db55fb7 Compare January 28, 2026 21:54
@renovate renovate Bot force-pushed the renovate/kotlin-ksp-and-compose-compiler branch from db55fb7 to a3d7181 Compare February 5, 2026 11:01
@renovate renovate Bot force-pushed the renovate/kotlin-ksp-and-compose-compiler branch from a3d7181 to b3eac36 Compare February 17, 2026 23:55
@renovate renovate Bot force-pushed the renovate/kotlin-ksp-and-compose-compiler branch from b3eac36 to 92b592f Compare March 16, 2026 10:10
@renovate renovate Bot force-pushed the renovate/kotlin-ksp-and-compose-compiler branch 2 times, most recently from 2ce8db5 to b313523 Compare April 23, 2026 10:31
@renovate renovate Bot force-pushed the renovate/kotlin-ksp-and-compose-compiler branch from b313523 to 2ba2fb9 Compare May 13, 2026 23:26
@renovate renovate Bot force-pushed the renovate/kotlin-ksp-and-compose-compiler branch from 2ba2fb9 to 9ed8e38 Compare May 26, 2026 22:42
| datasource | package                                                                                           | from          | to     |
| ---------- | ------------------------------------------------------------------------------------------------- | ------------- | ------ |
| maven      | com.google.devtools.ksp:com.google.devtools.ksp.gradle.plugin                                     | 2.0.21-1.0.28 | 2.3.9  |
| maven      | org.jetbrains.kotlin.plugin.compose:org.jetbrains.kotlin.plugin.compose.gradle.plugin             | 2.0.21        | 2.4.0  |
| maven      | org.jetbrains.kotlin.plugin.parcelize:org.jetbrains.kotlin.plugin.parcelize.gradle.plugin         | 2.0.21        | 2.3.21 |
| maven      | org.jetbrains.kotlin.multiplatform:org.jetbrains.kotlin.multiplatform.gradle.plugin               | 2.0.21        | 2.4.0  |
| maven      | org.jetbrains.kotlin:kotlin-test-junit                                                            | 2.0.21        | 2.4.0  |
| maven      | org.jetbrains.kotlin:kotlin-test                                                                  | 2.0.21        | 2.4.0  |
| maven      | org.jetbrains.kotlin.plugin.serialization:org.jetbrains.kotlin.plugin.serialization.gradle.plugin | 2.0.21        | 2.4.0  |
| maven      | org.jetbrains.kotlin.native.cocoapods:org.jetbrains.kotlin.native.cocoapods.gradle.plugin         | 2.0.21        | 2.4.0  |
| maven      | org.jetbrains.kotlin.android:org.jetbrains.kotlin.android.gradle.plugin                           | 2.0.21        | 2.4.0  |
@renovate renovate Bot force-pushed the renovate/kotlin-ksp-and-compose-compiler branch from 9ed8e38 to 8d55929 Compare June 3, 2026 08:48
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant