Releases: JetBrains/kotlin
Releases · JetBrains/kotlin
Kotlin 2.1.20-RC3
Kotlin 2.1.20-RC2
Changelog
Compiler
KT-75649
K2: NPE on assigning platform type value to non-nullable lateinit varKT-75483
Native: redundant unboxing generated with smart castKT-75526
Regression in K2 scripting: local name doesn't shadow one from the implicit receiverKT-75444
Contradictions in the constraint system are ignored in case of multiple constraints from forking pointsKT-75111
False negative "This declaration needs opt-in" for usage of enum entry with OptIn marker in another moduleKT-74764
Native: merge init nodes generated within the same LLVM module for the same klib
Compose compiler
CMP-7571
1.8.0-alpha03 incompatible with Compose based on k1b/397855145
Fix "Unknown file" error in target annotation inference
JavaScript
KT-75606
KJS: java.lang.AssertionError: Different declarations with the same signatures were detectedKT-72437
KJS. Invalidcopy
method for inherited JSO with type parameters
Klibs
KT-75393
Non-JVM artifacts from Kotlin 2.1.20-RC fail on 2.1.x releases due to IMPLICIT_ARGUMENT
Native
KT-70202
Xcode 16 Linker fails with SIGBUS
Tools. Compiler Plugins
KT-73897
PowerAssert: Implicit argument detection is brittle in a number of cases
Tools. Gradle
KT-73842
Gradle: AGP failing tests with "Failed to calculate the value of property 'generalConfigurationMetrics'" using KGPKT-74394
KGP + isolated projects: "Something has been appended to this collector already"KT-75262
Gradle test-fixtures plugin apply order breaks the projectKT-75277
FUS statistics: 'java.lang.IllegalStateException: The value for this property cannot be changed any further' exception is thrown during project import
Tools. Gradle. JS
KT-75485
KJS: "Module not found: Error: Can't resolve 'style-loader' and 'css-loader'" in 2.1.20-RC
Kotlin 2.1.20-RC
Changelog
Compiler
KT-74929
False positive TYPE_PARAMETER_OF_PROPERTY_NOT_USED_IN_RECEIVER if it is used with T&AnyKT-74227
K2: "Cannot infer type for this parameter. Please specify it explicitly" caused by lambda in another lambda with a parameterized function typeKT-74474
K2: Report more precise diagnostic when last expression of non-unit lambda is a statementKT-74478
K2: False negative RETURN TYPE_MISMATCH if the last statement of a lambda is indexed assignmentKT-74203
K2: False negative NO_ELSE_IN_WHEN of a generic type with star projection <*> bounded by a sealed hierarchy
Compose compiler
b/377499888
Allow restarting overridden functions in a final classb/390151896
Fix default arguments with varargs in@Composable
functionsb/388030459
Prevent usage of transitive captures in lambda memoizationb/310004740
Check vararg parameter length in skipping logicb/393400768
Use -1 for.changed
call if nullable enum parameter isnull
Native
KT-74377
Kotlin Native: release executable crashes with error 139
Tools. Compiler Plugins
KT-74102
"Lambda cannot be cast to class kotlin.jvm.functions.Function0" in 2.1.20-Beta1 with ComposeKT-75159
Compose: Missing 'FunctionKeyMeta' annotation on lamdas declared in non-composable function
Tools. Gradle
KT-74997
Unexpected KGP warnings about kotlin scripting pluginKT-75026
Corrupted NonSynchronizedMetricsContainer in parallel Gradle buildKT-74846
Gradle Configuration Cache miss on second build with 2.1.20-Beta2KT-74462
Flaky Kotlin Gradle Plugin Tests: IsInIdeaEnvironmentValueSource$Inject not found
Tools. Gradle. JS
KT-74869
KJS:jsBrowserProductionWebpack
does not minify output with 2.1.20-Beta2KT-74859
Gradle configuration cache issues related to RootPackageJsonTask
Tools. Gradle. Multiplatform
KT-74669
Executable binaries for JVM: a jar generated by jvmJar task isn't added to the build/install/testAppName/lib directoryKT-66542
Gradle: JVM target withwithJava()
produces a deprecation warningKT-37964
Gradle application/distribution plugin does not copy and name jar files correctly when using installDist task for multiplatform projectKT-30878
It's impossible to have .java sources in a Multiplatform Gradle Project with Android, becauseandroid()
andjvm { withJava() }
targets can not be applied to one and the same Gradle ProjectKT-66962
Kapt with Kotlin Multiplatform: Cannot query the value of this provider because it has no value availableKT-71074
Optimize Granular Metadata Dependencies Transformation for Import after adding support for Project IsolationKT-74727
Dependency resolve from a single target KMP module to another kmp module fails on non-found PSMKT-74832
Relax JVM target validation diagnostic in KMP/Jvm projects
Tools. Gradle. Native
KT-74403
:commonizeNativeDistribution fails when configured native targets cannot be built on machine
Tools. Kapt
KT-75202
K2 kapt: mapped type class literal is converted incorrectly
Kotlin 2.1.20-Beta2
Changelog
Analysis API
KT-73156
AA: type retrieval for erroneous typealias crashesKT-68198
Analysis API: Support application service registration in plugin XMLsKT-69630
KAPT User project builds with KAPT4 enabled fail with Metaspace overflow
Analysis API. FIR
Performance Improvements
KT-74012
RedundantFirAbstractBodyResolveTransformerDispatcher.<init>
CPU consumptionKT-73900
ContextCollectorVisitor#computeContext may spend significant time oncreateSnapshot
KT-73665
FirElementFinder is inefficient in large filesKT-73330
Remove bodies from functions without contracts after the CONTRACTS phase
Fixes
KT-74097
ISE: Recursive update at org.jetbrains.kotlin.analysis.low.level.api.fir.caches.FirCaffeineCache.getValueKT-74098
ISE: Recursive update at org.jetbrains.kotlin.analysis.low.level.api.fir.caches.FirCaffeineCache.getValueKT-73079
K2: Internal compiler error when conflicting type aliases are presentKT-73456
Expected FirResolvedContractDescription but FirRawContractDescriptionImpl found for FirSimpleFunctionImplKT-73259
Expected FirResolvedContractDescription but FirLegacyRawContractDescriptionImpl found for FirSimpleFunctionImplKT-72740
FirDanglingModifierList:lazyResolveToPhase(STATUS)
cannot be called from a transformer with a phase STATUSKT-69671
TYPES phase contract violation through JavaSymbolProvider
Analysis API. Light Classes
KT-73492
K2. FP error in Java file when using@JvmSuppressWildcards
annotation without arguments
Analysis API. Providers and Caches
KT-69247
Analysis API: Invalidate sessions after builtins modification eventsKT-72704
ISE: No 'org.jetbrains.kotlin.fir.scopes.impl.FirDelegatedMembersFilter'(53) in array owner: LLFirBuiltinsAndCloneableSession for Builtins for JS/wasm-js (JS)KT-67148
Analysis API: Introduce a weak reference cache for the originalKtSymbol
inKtSymbolPointer
Analysis API. Standalone
KT-73776
Analysis API Standalone: Application services are missing registrations in tests and Dokka
Analysis API. Surface
New Features
KT-73414
Analysis API: Support typealiased constructors in KaConstructorSymbol
Performance Improvements
KT-74112
UI freeze:AnyThreadWriteThreadingSupport.getWritePermit
KT-73942
Extend resolveToSymbols cache to all referencesKT-73622
CacheresolveToSymbols
resultKT-72684
Drop explicit resolve from KaFirJavaInteroperabilityComponent#asPsiTypeElement
Fixes
KT-70114
K2: Analysis API: do not lazy resolve declarations without deprecation to get it deprecationKT-73406
[Analysis API] Allow extending KaModule resolution scope for all KaModulesKT-65850
Cover Analysis API with KDocsKT-73662
KotlinIllegalArgumentExceptionWithAttachments: Expected FirResolvedTypeRef with ConeKotlinType but was FirUserTypeRefImplKT-70108
Analysis API: "KaScopeProvider.scopeContext" provides scopes from implicit companion objects with inaccessible classifiersKT-68954
Remove JAR publications with old artifact names (high-level-api family)KT-70134
Analysis API: Port API documentation from the guide to KDocKT-72973
Introduce KaSymbolOrigin.TYPE_ALIAS_CONSTRUCTOR
Backend. Wasm
KT-71645
[Wasm] Check wasm test runner for groupByPackage=true caseKT-73907
Wasm: Duplication of files in browser distributionKT-71868
K/Wasm: support generating debug information in DWARF format
Compiler
New Features
KT-74049
Introduce special override rule to allow overriding T! with T & AnyKT-61447
Support context receivers overloads in Kotlin multiplatformKT-73255
Change defaulting rule for annotationsKT-73256
Implementall
meta-target for annotations
Performance Improvements
KT-73434
Slow / infinite compile involving ConeInferenceContextKT-73328
Do not spillthis
to a local variable in coroutinesKT-69995
K2: Slow compilation when star projecting mutually recursive bounds from javaKT-73687
Inefficient KtCommonFile#getFileAnnotationList
Fixes
KT-70789
CLI error "mixing legacy and modern plugin arguments is prohibited" on using -Xcompiler-plugin unless default scripting plugin is disabledKT-74024
K2: Prohibit declaring local type aliasesKT-73858
Compose / iOS: NullPointerException on buildingKT-73864
[Native] DecoupleIrType.computePrimitiveBinaryTypeOrNull
from backend.nativeKT-73122
Move the upgrade references lowering to be first one in Native pipelineKT-73608
K2: "Initializer type mismatch" with map and typealias to objectKT-74104
Native: SynchronizedLazyImpl produces NPE on 2.1.20-Beta1 on mingwX64KT-74147
K2: False negative INCONSISTENT_TYPE_PARAMETER_VALUESKT-73454
K2: Fix type parameters mapping for typealiases with inner RHSKT-73043
K2 Compiler does not allow references to inner constructors with typealiasesKT-74040
Compilation of inner class usage does not check the visibility of parent class during compilation in different roundsKT-74195
Fully qualified names in error messages make them complicatedKT-74221
MakeFirSupertypesChecker
a platform checkerKT-72962
Consider enabling ConsiderForkPointsWhenCheckingContradictions LF earlierKT-74242
Freeze onrunCatching
call infinally
block inside SAM conversionKT-73903
Design 'replaceWith' / 'test-only' kinds for the 'LanguageFeature' classKT-29222
FIR: consider folding binary expression chainsKT-73760
Cannot implement two Java interfaces with@NotNull
-annotated type argument and Kotlin's plain (nullable) type parameterKT-58933
Applying suggested signature from WRONG_NULLABILITY_FOR_JAVA_OVERRIDE leads to red codeKT-74107
K2: Calling type alias constructor with inner RHS in static scope causes runtime crashKT-74244
Context parameters: context isn't checked for expect/actual property declarationKT-74276
Update ASM from 9.0 to 9.6.1KT-72295
K2: Generated accessors for delegated property should have property sourceKT-73150
Investigate/test approximation of context parameter type in completionKT-73862
[Native] Decouple NativePreSerializationLoweringContext from backend.nativeKT-72677
K2 IDE / Kotlin Debugger: “Couldn't find virtual file for p1/MainKt$foo$iface$1” on evaluating inline function from another moduleKT-72672
K2 ...
Kotlin 2.1.10
Changelog
Compiler
KT-73858
Compose / iOS: NullPointerException on buildingKT-73454
K2: Fix type parameters mapping for typealiases with inner RHSKT-73043
K2 Compiler does not allow references to inner constructors with typealiasesKT-74040
Compilation of inner class usage does not check the visibility of parent class during compilation in different roundsKT-73339
K2: "VerifyError: Bad type on operand stack" because of missing implicit cast on generic field receiver with star projectionKT-72585
K2: Compilation failure when upgrading to Kotlin 2.0.20+: Cannot replace top-level type with star projection: SKT-73399
compile-time JVM codegen failure on a KProperty argument of a KSuspendFunction parameterKT-72725
KMP: Unsupported actualization of inherited java field in expect classKT-73153
K2: Standalone diagnostics on type arguments are not reported
Compose compiler
CMP-5680
Compose compiler: unexpected stability warnings for classes compiled with 2.0.10b/381407900
Avoid adding Compose annotations on synthetic classes
IR. Inlining
KT-73981
[2.1.10] SuppresscheckIncorrectCrossFileDeclarationAccess
warning for Compose<class>$stable
field access
JavaScript
KT-70778
Kotlin Js companion is undefined in production buildKT-73130
KJS: Missedbreak
for do/while in generated JS codeKT-58797
Optimize the code generated for objects on JS and Wasm backends
Klibs
KT-70146
[KLIB Resolve] Don't fail on nonexistent transitive dependencyKT-73951
Workaround for "Partial linkage engine may not patch some discrepancies in IR when compiling Kotlin/Native static caches" in 2.1.10
Native
KT-73559
K/Native: AndroidNativeArm64 linking fails starting from Kotlin 2.1.0
Tools. CLI
KT-73967
JDK 25: "IllegalArgumentException: 25-ea" with EA builds
Tools. Daemon
KT-73311
"Unable to release compile session, maybe daemon is already down" flakiness
Tools. Gradle
KT-73728
'generatePomFileForMavenPublication' creates pom with dependencies with 'unspecified' version
Tools. Gradle. Multiplatform
KT-73620
KMP 2.1.0: Transitive dependency is broken when setting publication groupId
Tools. Gradle. Native
Kotlin 2.1.10-RC2
Changelog
Compiler
KT-73858
Compose / iOS: NullPointerException on buildingKT-74040
Compilation of inner class usage does not check the visibility of parent class during compilation in different rounds
Compose compiler
b/381407900
Avoid adding Compose annotations on synthetic classesCMP-5680
Compose compiler: unexpected stability warnings for classes compiled with 2.0.10
Kotlin 2.1.10-RC
Changelog
Compiler
KT-73454
K2: Fix type parameters mapping for typealiases with inner RHSKT-73043
K2 Compiler does not allow references to inner constructors with typealiasesKT-73339
K2: "VerifyError: Bad type on operand stack" because of missing implicit cast on generic field receiver with star projectionKT-72585
K2: Compilation failure when upgrading to Kotlin 2.0.20+: Cannot replace top-level type with star projection: SKT-73399
compile-time JVM codegen failure on a KProperty argument of a KSuspendFunction parameterKT-72725
KMP: Unsupported actualization of inherited java field in expect classKT-73153
K2: Standalone diagnostics on type arguments are not reported
Compose compiler
CMP-5680
Compose compiler: unexpected stability warnings for classes compiled with 2.0.10
IR. Inlining
KT-73981
Cherry-pick the fix for KT-73482 to 2.1.10
JavaScript
KT-58797
Optimize the code generated for objects on JS and Wasm backendsKT-70778
Kotlin Js companion is undefined in production buildKT-73130
KJS: Missedbreak
for do/while in generated JS code
Klibs
KT-73951
Workaround for "Partial linkage engine may not patch some discrepancies in IR when compiling Kotlin/Native static caches" in 2.1.10
Native
KT-73559
K/Native: AndroidNativeArm64 linking fails starting from Kotlin 2.1.0
Tools. CLI
KT-73967
JDK 25: "IllegalArgumentException: 25-ea" with EA builds
Tools. Daemon
KT-73311
"Unable to release compile session, maybe daemon is already down" flakiness
Tools. Gradle
KT-73728
'generatePomFileForMavenPublication' creates pom with dependencies with 'unspecified' version
Tools. Gradle. Multiplatform
KT-73620
KMP 2.1.0: Transitive dependency is broken when setting publication groupId
Tools. Gradle. Native
Kotlin 2.1.20-Beta1
Changelog
Analysis API
KT-71907
K2 debugger evaluator failed when cannot resolve unrelated annotationKT-57733
Analysis API: Use optimizedModuleWithDependenciesScope
s in combined symbol providersKT-69128
K2 IDE: "Unresolved reference in KDoc" reports existing Java class in reference to its own nested classKT-71613
KaFirPsiJavaTypeParameterSymbol cannot be cast to KaFirTypeParameterSymbolKT-71741
K2 IDE. Classifier was found in KtFile but was not found in FirFile inlibraries/tools/kotlin-gradle-plugin-integration-tests/build.gradle.kts
inkotlin.git
and broken analysisKT-71942
Need to rethrow Intellij Platform exceptions, like ProcessCanceledExceptionKT-70949
Analysis API: "containingDeclaration" does not work on nested Java classes in K2 implementationKT-69736
K2 IDE: False positive resolution from KDoc forvalue
KT-69047
Analysis API: Unresolved KDoc reference to extensions with the same nameKT-70815
Analysis API: Implement stop-the-world session invalidation
Analysis API. Code Compilation
KT-71263
K2 evaluator: Error in evaluating self property with extension receiver
Analysis API. FIR
Performance Improvements
KT-73017
Analysis API:FirReferenceResolveHelper.getSymbolsByResolvedImport
searches for classes even when the selectedFqName
is a known packageKT-72025
FileStructureElement: reduce redundant resolve
Fixes
KT-72148
K2: KISEWA: Expected FirResolvedArgumentList for FirAnnotationCallImpl of FirValueParameterImpl(DataClassMember) but FirArgumentListImpl foundKT-66132
K2: FirRegularClass expected, but FirFileImpl found | Containing declaration is not foundKT-72196
K2. KMP. IllegalStateException: expect-actual matching is only possible for code with sourcesKT-72652
FirProvider#getContainingClass
should supportFirDanglingModifierSymbol
KT-73105
Lazy resolve contract violation (BODY_RESOLVE from BODY_RESOLVE)KT-66261
K2: Analysis API: "FirDeclaration was not found for class org.jetbrains.kotlin.psi.KtProperty, fir is null" with MULTIPLE_LABELS_ARE_FORBIDDEN K2 errorKT-72315
K2. KIWA on usage of always-true OR in guard conditionKT-65707
K2 IDE: unresolved calls of callables imported with typealias as qualifierKT-61516
K2: Provide an LL FIR implementation forgetContainingClassSymbol
(inFirHelpers
)KT-72853
Expected FirResolvedArgumentList for FirAnnotationCallImpl of FirContextReceiverImpl(Source) but FirArgumentListImpl foundKT-64215
K2: do not resolve type annotations of receiver if it is used as an implicit return typeKT-64248
K2: do not resolve type annotations of context receiver if it is used as an implicit return typeKT-72821
Add assertion to diagnostic tests to check that all declarations have BODY_RESOLVE phase at the endKT-64056
K2: K2: FirLazyBodiesCalculator shouldn't calculate annotation arguments on type phaseKT-71651
K2 IDE: False positive NON_LOCAL_SUSPENSION_POINT in suspend function callKT-72164
K2. IllegalArgumentException when pre and post increment are used simultaneously in assignmentKT-71174
Illegal scope usedKT-72407
FirImplementationByDelegationWithDifferentGenericSignatureChecker: FirLazyExpression should be calculated before accessingKT-72228
K2: Reformat doesn't work in project with Kotlin2.0.21
KT-72308
getOrBuildFir returns null for this expression for plusAssign operatorKT-71348
K2: KotlinIllegalStateExceptionWithAttachments: 'By now the annotations argument mapping should have been resolved' during code inspectionKT-72024
FirClassVarianceChecker: Expected FirResolvedTypeRef with ConeKotlinType but was FirImplicitTypeRefImplWithoutSourceKT-71746
K2 IDE.ISE: Zero or multiple overrides found for descriptor in FirRegularClassSymbol serializing/ExternalSerializer
and red code on@Serializer
(forClass) ` usage
Analysis API. Infrastructure
KT-72922
KotlinFakeClsStubsCache project leakageKT-71988
Improve scripts test coverage by LL FIRKT-64687
K2: Analysis API: migrate AbstractFirLibraryModuleDeclarationResolveTest to kotlin repo
Analysis API. Light Classes
KT-66763
K2: Get rid of context receivers in Analysis API and LL APIKT-71781
SLC: migrate SLC from KotlinModificationTrackerService to KotlinModificationTrackerFactoryKT-67963
K2: PsiInvalidElementAccessException on redeclaration of class with constructorKT-71407
K2: Do not report@JvmField
default value as PsiField initializer in K2KT-72078
K2 PSI change for constructor parameter with value class type
Analysis API. Providers and Caches
KT-73395
Analysis API:JavaElementPsiSourceWithSmartPointer
contains strong references to PSIKT-72390
Kotlin project full of red codeKT-72388
KaFirStopWorldCacheCleaner: Control-flow exceptionsKT-72644
"PSI has changed since creation" reason is misleading
Analysis API. Standalone
KT-70346
Analysis API Standalone: Remove the custom class loader option in Standalone session creation
Analysis API. Stubs and Decompilation
KT-69398
K2 IDE: SOE on editing top level private variable nameKT-72897
Analysis API: Smart PSI element pointers forKtEnumEntry
stubs cannot be restoredKT-71565
KtClassOrObject should use isLocal from greenStub
Analysis API. Surface
New Features
KT-70301
Analysis API: 'KaSamConstructorSymbol' does not allow to find the constructed SAM typeKT-68236
Analysis API: addisExternal
property for KtPropertySymbolKT-68598
Analysis API: missed getClassLikeSymbolByClassId API
Performance Improvements
KT-60486
Analysis API: optimize KaExpressionTypeProvider.returnType for simple cases
Fixes
KT-72099
Analysis API: implement an API to retrieve default importsKT-70356
analyzeCopy with IGNORE_SELF cannot find private membersKT-66783
Analysis API:KtFirSymbolProvider
creates symbols when given PSI from unrelated modulesKT-72937
Migrate KaFirReceiverParameterSymbol to KaFirSymbol/KaFirKtBasedSymbolKT-70243
K2 IDE: PsiMethod.callableSymbol returnsnull
for constructorKT-66608
SupportOperatorFunctionChecks#isOperator
in AAKT-73068
Analysis API: AKaFirJavaFieldSymbol
for a static Java field is open instead of finalKT-73055
Get rid of the deprecated Analysis API APIKT-65065
ProvideKtTypeReference#getShortTypeText()
KT-63800
AA: this reference shortener doesn't simplify labelKT-72793
Analysis API: 'expressionType' returns raw type for typealiased constructors calls- [
KT-72658
...
Kotlin 2.1.0
Changelog
Analysis API
New Features
KT-68603
KotlinDirectInheritorsProvider: add an option to ignore non-kotlin results
Performance Improvements
KT-70757
Performance problem in KaFirVisibilityChecker for KaFirPsiJavaClassSymbol
Fixes
KT-70437
Class reference is not resolvableKT-57733
Analysis API: Use optimizedModuleWithDependenciesScope
s in combined symbol providersKT-72389
K2: False positive "Redundant 'protected' modifier" for protected property inside protected constructor from private or internal classKT-69190
K2: False-positive "redundant private modifier"KT-64984
Analysis API: Support Wasm targetKT-70375
K2: NPE at org.jetbrains.kotlin.analysis.api.fir.symbols.KaFirNamedClassSymbolBase.createPointerKT-71259
K2 evaluator: Invalid smart cast info collecting for Code FragmentsKT-69360
Lack of implicit receiver for the last statement under lambda in scriptsKT-70890
Analysis API: Experiment with weak references to LL FIR/analysis sessions in session cachesKT-70657
Analysis API: Inner types from classes with generics are incorrectly represented by the compiled jarsKT-71055
Suspend calls inside 'analyze()' break the block guaranteesKT-70815
Analysis API: Implement stop-the-world session invalidationKT-69819
K2 IDE: LHS type in callable references is unresolved when it has type arguments and is qualifiedKT-68761
Analysis API: Experiment with limited-size cache inKaFirSessionProvider
KT-70384
Analysis API Standalone: The same class in the same two renamed jars is unresolvedKT-71067
Exceptions from references cancel Find UsagesKT-69535
Redesign 'containingSymbol'KT-71025
K2 IDE: Scopes in "importingScopeContext" have reversed ordering and "indexInTower" valuesKT-67483
K2 IDE: Serializable plugin causes infinite resolve recursion when there is a star import from a class with annotation callKT-69416
K2 IDE / Completion: “No classifier found” on simple value creatingKT-70257
CCE: class kotlin.UInt cannot be cast to class java.lang.NumberKT-70376
K2 IDE / Kotlin Debugger: IAE “Only componentN functions should be cached this way, but got: toString” on evaluating toString() method for value classKT-70264
AA: service registration via XML fails with AbstractMethodError in Lint CLIKT-69950
Analysis API: IntroduceisSubtypeOf(ClassId)
KT-68625
K2: “lazyResolveToPhase(STATUS)
cannot be called from a transformer with a phase STATUS.”KT-67665
K2: contract violation for value class with a constructor parameter with an implicit typeKT-67009
Analysis API: Add abbreviated type tests for type aliases from source modulesKT-69977
KaFirFunctionalType#getAbbreviation is always nullKT-68341
Analysis API: Expanded function types from libraries don't have an abbreviated typeKT-68857
Analysis API: Refactor annotationsKT-70386
Do not filter out overloads from different libraries in dangling filesKT-65552
K2: CANNOT_CHECK_FOR_ERASED in KtTypeCodeFragmentKT-65803
K2: Analysis API: KtFirTypeProvider#getSubstitutedSuperTypes throws an exception in the case of "Wrong number of type arguments"KT-68896
Support VirtualFile binary dependency inputs to Analysis API modulesKT-69395
K2 IDE: incorrect overload selection from binary dependencies in a shared native source setKT-68573
ISE: "Unexpected constant value (kotlin/annotation/AnnotationTarget, CLASS)" at Kt1DescUtilsKt.toKtConstantValue()KT-69576
Analysis API: FIR implementation of "isImplicitReferenceToCompanion" returns false for companion references in implicit invoke operator callsKT-69568
Analysis API: FIR implementation of "isImplicitReferenceToCompanion" returns true for non-companion references in qualified callsKT-69436
Analysis API Platform: EncapsulateLLFirDeclarationModificationService
as an engine serviceKT-63004
K2: Analysis API: Design API for querying declarations generated by compiler plugins (similar to indices)KT-69452
AA FIR: wrong source PSI after compile-time evaluationKT-69598
AA: definitely not-null type at receiver position should be wrapped in parenthesisKT-60484
Analysis API: add support for KtType pointers similar to KtSymbolPointerKT-68884
Analysis API: Rename/deprecate/remove declarations as part of StabilizationKT-69453
AA FIR: miss to handle expected type of lambda with explicit labelKT-69533
Protect implementation parts of Analysis API with opt-in annotations
Analysis API. FIR
Performance Improvements
KT-71566
FirElementBuilder#getFirForNonKtFileElement should iterate a Psi file over and overKT-71224
Analysis API:FirElementFinder.collectDesignationPath
relies on naive iteration through FIR files
Fixes
KT-70327
Analysis API: Batch inspection causes deadlock inValueWithPostCompute
KT-69070
Analysis API: Querying declared member scope for Java symbols results in exception in some use casesKT-68268
LLSealedInheritorsProvider: reduce scope to kotlin filesKT-69671
TYPES phase contract violation through JavaSymbolProviderKT-70624
Declaration symbols from code fragments are treated as not localKT-70662
NPE: FirLazyBodiesCalculatorKt.calculateLazyBodyForPropertyKT-70859
Do not fail highlighting due to resolution problemsKT-70474
FirLazyResolveContractViolationException from JavaSymbolProviderKT-70323
FirLazyResolveContractViolationException:lazyResolveToPhase(TYPES)
cannot be called from a transformer with a phase TYPESKT-71567
LLFirCompilerRequiredAnnotationsTargetResolver should calculate annotation arguments on demandKT-71584
getNonLocalContainingOrThisDeclaration
treats KtParameter from functional type as non-local
Analysis API. Light Classes
Performance Improvements
KT-69998
Drop redundant cache from ClassInnerStuffCache
Fixes
KT-69833
Support value classesKT-71693
Wrong name mangling for JvmField class property and companion property clashKT-71469
KtLightClassForDecompiledDeclaration: missed kotlinOriginKT-70710
Provide light classes for KMP modules in Android LintKT-70548
SLC: text of class object access expression is not the same as raw textKT-70572
SLC: missingisInheritor
implementation for type parameterKT-70491
SLC: inconsistent source PSI of no-arg constructor for all default values- [
KT-70458
](https://youtrack.jetbrains.co...
Kotlin 2.1.0-RC2
Changelog
Compiler
KT-72345
K2: Method 'get' without@Override
annotation not calledKT-73065
CCE with context receiversKT-72996
false-positive unresolved reference error on an overloaded callable reference in a lambda return position on the left-hand size of an elvis operator
Compose compiler
CMP-6926
iOS compilation failure: Unresolved reference 'copy'
IR. Inlining
KT-72884
Internal error in body lowering: IllegalStateException: Can't inline given reference, it should've been lowered
JavaScript
KT-70533
KJS: changed string concatenation behavior in 2.0KT-14013
JS toString produces different result for nullable/non-nullable ref to the same arrayKT-43567
KJS: toString() method and string interpolation of variable produce different codeKT-72732
KJS / ES6: "SyntaxError: 'super' keyword unexpected here" with enabled-Xir-generate-inline-anonymous-functions
and disabled arrow functions
Klibs
KT-72965
Ignore subclassOptInRequired constructor warning
Tools. Compiler Plugins
KT-72804
Regression in Kotlin 2.1.0: compilation fails when building iOSKT-72824
Kotlin power-assert plugin StringIndexOutOfBoundsException