Changelog
Analysis API
Fixes
KT-68198
Analysis API: Support application service registration in plugin XMLsKT-57733
Analysis API: Use optimizedModuleWithDependenciesScope
s in combined symbol providersKT-73156
AA: type retrieval for erroneous typealias crashesKT-71907
K2 debugger evaluator failed when cannot resolve unrelated annotationKT-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 invalidationKT-69630
KAPT User project builds with KAPT4 enabled fail with Metaspace overflow
Analysis API. Code Compilation
KT-71263
K2 evaluator: Error in evaluating self property with extension receiver
Analysis API. FIR
Performance Improvements
KT-72025
FileStructureElement: reduce redundant resolveKT-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 phaseKT-73017
Analysis API:FirReferenceResolveHelper.getSymbolsByResolvedImport
searches for classes even when the selectedFqName
is a known package
Fixes
KT-72308
getOrBuildFir returns null for this expression for plusAssign operatorKT-72660
ISE: Recursive update at org.jetbrains.kotlin.analysis.low.level.api.fir.caches.FirCaffeineCache.getValueKT-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-72148
K2: KISEWA: Expected FirResolvedArgumentList for FirAnnotationCallImpl of FirValueParameterImpl(DataClassMember) but FirArgumentListImpl foundKT-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-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-69671
TYPES phase contract violation through JavaSymbolProviderKT-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-73492
K2. FP error in Java file when using@JvmSuppressWildcards
annotation without argumentsKT-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-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
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-73776
Analysis API Standalone: Application services are missing registrations in tests and DokkaKT-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-73414
Analysis API: Support typealiased constructors in KaConstructorSymbolKT-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-74112
UI freeze:AnyThreadWriteThreadingSupport.getWritePermit
KT-73942
Extend resolveToSymbols cache to all referencesKT-73622
CacheresolveToSymbols
resultKT-72684
Drop explicit resolve from KaFirJavaInteroperabilityComponent#asPsiTypeElementKT-60486
Analysis API: optimize KaExpressionTypeProvider.returnType for simple cases
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-72099
Analysis API: implement an API to retrieve default importsKT-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_CONSTRUCTORKT-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 callsKT-72658
resolveToCall
doesn't work forKtSafeQualifiedExpression
KT-69930
K2 IDE: Kotlin/JS project: ISE: "Unsupported type DYNAMIC_TYPE"KT-71373
Make KaSessionProvider the internal APIKT-71869
KaClassSymbol.superTypes for kotlin.Any contains kotlin.Any itself (K1-only)KT-64190
K2 IDE: Analysis API: KDoc link leads to a function instead of interfaceKT-72075
defaultType
should be available forKaClassifierSymbol
instead ofKaNamedClassSymbol
KT-72002
Analysis API: psi KaTypeParameterSymbol for default Java constructor is null
Backend. Native. Debug
KT-73306
Native: add a way to specify a dir for the debug compilation unit fileKT-68536
Native: bridges and trampolines affect stepping in the debuggerKT-72398
Native: useDW_AT_trampoline
forobjc2kotlin_*
functions instead ofKonanHook
inkonan_lldb.py
Backend. Wasm
KT-71868
K/Wasm: support generating debug information in DWARF formatKT-71645
[Wasm] Check wasm test runner for groupByPackage=true caseKT-72232
Wasm, IC: Compilation exception on renaming of fileKT-73907
Wasm: Duplication of files in browser distributionKT-72223
Compiler generates an invalid glue-code for externals with backquoted identifiersKT-73015
[Wasm, IC] Implement possibility for readonly IC cacheKT-71763
K/Wasm: compiler generates incorrect code for is check on JsAnyKT-72156
custom-formatters.js exists in JAR after publishToMavenLocal but not in the published artifact in Maven publicKT-71037
[Wasm, IC] Investigate how make kotlin.test not fully loaded in IC
Compiler
New Features
KT-74049
Introduce special override rule to allow overriding T! with T & AnyKT-73256
Implementall
meta-target for annotationsKT-73255
Change defaulting rule for annotationsKT-61447
Support context receivers overloads in Kotlin multiplatformKT-67034
Warning when a property hides a Java field from superclassKT-71092
Native: Write out used dependenciesKT-71094
Kotlin/Native incremental compilation: fail compilation if cache build failedKT-71569
Improve diagnostic precision for OPT_IN_ARGUMENT_IS_NOT_MARKER
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#getFileAnnotationListKT-45452
K/N optimization: inline simple functions that aren't marked withinline
keywordKT-64898
K2: toFirProperty call in PsiRawFirBuilder forces AST loadingKT-71673
Consider making EnhancementSymbolsCache. enhancedFunctions using simple cacheKT-71973
KtPsiUtil#getEnclosingElementForLocalDeclaration shouldn't iterate over directories
Fixes
KT-75965
The iOS app did not run successfully in Release modeKT-57696
Deprecate JvmDefault annotation with level HIDDENKT-75578
K2: False negative [SUPER_CALL_WITH_DEFAULT_PARAMETERS] when calling the upper-class implementation of a method with the default value argumentKT-74764
Native: merge init nodes generated within the same LLVM module for the same klibKT-75444
Contradictions in the constraint system are ignored in case of multiple constraints from forking pointsKT-75649
K2: NPE on assigning platform type value to non-nullable lateinit varKT-75483
Native: redundant unboxing generated with smart castKT-73028
K2. FileAnalysisException on private property in ContextKT-73937
Context parameters: IllegalArgumentException: source must not be null on lateinit var with a contextKT-74104
Native: SynchronizedLazyImpl produces NPE on 2.1.20-Beta1 on mingwX64KT-71752
K2: Absent non-null check for platform types in assignmentsKT-75526
Regression in K2 scripting: local name doesn't shadow one from the implicit receiverKT-68131
K2: build Grazie monorepo main branchKT-72618
Cannot define operator inc/dec in class contextKT-74739
Native: "IllegalArgumentException: All constructors should've been lowered: FUNCTION_REFERENCE"KT-68768
K2: unsuccessful inference fork with jspecify annotationsKT-71943
K2: IAE "source must not be null" in FirJvmModuleAccessibilityQualifiedAccessCheckerKT-75111
False negative "This declaration needs opt-in" for usage of enum entry with OptIn marker in another moduleKT-73831
Do not choosefield
target in annotation classesKT-73494
Enable first-only-warn annotation defaulting modeKT-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-70789
CLI error "mixing legacy and modern plugin arguments is prohibited" on using -Xcompiler-plugin unless default scripting plugin is disabledKT-73903
Design 'replaceWith' / 'test-only' kinds for the 'LanguageFeature' classKT-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-67480
K/N: a separate inlining phase after the loweringsKT-72154
Dokka fails withnot array: KClass<out Annotation>
on Kotlin 2.1.20-dev with@SubclassOptInRequired
KT-72040
Extra checkers: false-positive unused parameter warnings on anonymous lambda parametersKT-74203
K2: False negative NO_ELSE_IN_WHEN of a generic type with star projection <*> bounded by a sealed hierarchyKT-63720
Coroutine debugger: do not optimise out local variablesKT-74024
K2: Prohibit declaring local type aliasesKT-73146
Context parameters CLI & diagnosticsKT-73251
Warn users about removal of context classes and constructorsKT-72222
Context parameters parsing & resolution part 1KT-61175
K2: FirReceiverParameter does not extend FirDeclarationKT-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-73691
DCE removes static initializer function, which is actually calledKT-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-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-72737
Avoid function references creation in lowerings after FunctionReferenceLoweringKT-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-70507
Should parentheses prevent from plus/set operator desugaring?KT-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 IDE / Kotlin Debugger: “Couldn't find virtual file” on evaluating inline function for enum class entries from test moduleKT-73912
Cannot evaluate inline methods from another module in KMP projectKT-73765
K2: Prohibit nested type aliases with inner RHS when it captures type parameters implicitlyKT-73869
[Native] Move KonanSymbols out ofbackend.native
KT-73823
Kotlin/Native: IndexOutOfBounds for java.util.Map::getOrDefaultKT-73755
K2: type mismatch error contains unsubstituted type parameter typesKT-72837
ERROR_IN_CONTRACT_DESCRIPTION message contains compiler internalsKT-73771
K2: Infinite compilation caused by buildList without typeKT-67520
Change of behaviour of inline function with safe cast on value typeKT-67518
Value classes leak their carrier type implementation details via inliningKT-71767
Generate default compatibility bridges in -Xjvm-default=all/all-compatibility modeKT-73716
Context parameters expose visibilityKT-73671
Context parameters: val/var on context parameter on a property is possibleKT-73510
Context parameters: It is possible to declare a context for init blockKT-72305
K2: Report error when using synthetic properties in case of mapped collectionsKT-72429
StackOverflowError when compiling large filesKT-72500
K2 Debugger: NSME on evaluating lambda with a call to internal class fieldKT-73845
K2: IllegalArgumentException during FIR2IR transformation when processing nested default values in annotationsKT-73538
K2 IDE / Kotlin Debugger: ISE “couldn't find inline method" on evaluating internal inline function with default arg from main module in test moduleKT-73347
K2: Expected is FirResolvedDeclarationStatusKT-71226
K2 Evaluator: Code fragment compilation with unresolved classes does not fail with exceptionKT-73902
Clean-up code around lateinit inline/value classesKT-73693
K2: DslMarker checker doesn't report violation for callable reference with bound receiverKT-73667
K2: DslMarker checker ignores function type annotations for invokeExtensionKT-72797
K2 IDE / Kotlin Debugger: AE “No such value argument slot in IrCallImpl” on evaluating inc()-operator for private fieldKT-68388
Compiler crash on convesion to fun interface with extension receiverKT-73801
False positive CONFLICTING_OVERLOADS between base suspend fun and derived propertyKT-62833
K2: Run smoke FP tests with SLOW_ASSERTIONS enabledKT-54068
Context receivers with lambda nesting result in Type mismatchKT-51383
Lambdas with context receivers do not accept context receivers from scopeKT-73331
Context parameters implicit invokeKT-73650
Implement DIFFERENT_NAMES_FOR_THE_SAME_PARAMETER_IN_SUPERTYPES for K2KT-73745
Migrate modularized tests to the latest stable versionKT-70233
Implement a deprecation error for FIELD-targeted annotations on annotation propertiesKT-72996
false-positive unresolved reference error on an overloaded callable reference in a lambda return position on the left-hand size of an elvis operatorKT-73791
Forbid usinginline
andvalue
class modifiers togetherKT-73704
[Native] Decouple KonanIrLinker from cinterop deserializationKT-73641
Context parameters DSL marker supportKT-59880
K2: Disappeared CONFLICTING_OVERLOADSKT-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-59443
K2: Implement missing K1 diagnosticsKT-67517
Value class upcast to Any leaks carrier type interfacesKT-73527
Prohibit (via a deprecation warning) accessing nested class through generic outer classKT-72852
JAVA_CLASS_ON_COMPANION compiler warning missing in K2KT-71704
K2: subAtom already initializedKT-73399
compile-time JVM codegen failure on a KProperty argument of a KSuspendFunction parameterKT-72281
K/N: "Failed to wait for cache to be built"KT-73049
Kotlin Debugger: CNFE on evaluating local function inside lambdaKT-72725
KMP: Unsupported actualization of inherited java field in expect classKT-73476
K2: Visibility of nested type aliases is not respected if RHS is innerKT-72957
K2: Don't use offsets for mapping annotations from IR plugins injected into metadataKT-72814
FIR: don't use function references in FirThisReferenceKT-73143
Context parameters resolution leftoversKT-71649
K2: Put operator on mutableMap<T?, V>() causes crashes on null keyKT-72832
Erroneous implicit cast inserted by smartcastKT-72930
K2 IDE / Kotlin Debugger: ISE “couldn't find inline method” on evaluating internal inline function from main module in test moduleKT-73095
K2: "Failed to find functional supertype for ConeIntersectionType"KT-70366
K2: "KotlinIllegalArgumentExceptionWithAttachments: Failed to find functional supertype for class "KT-73260
Rename context receivers to context parameters in frontendKT-73375
K2/JVM: -Xuse-type-table generates incorrect metadata for local delegated propertiesKT-72470
Annotations on effect declarations are unresolvedKT-72409
False negative "Type parameter is forbidden for catch parameter"KT-72723
K2: Replace unused FIR properties required by inheritence with computed propertiesKT-72246
Exception from FirReceiverAccessBeforeSuperCallChecker on red codeKT-47289
No error on companion object inside inner class in enum constructor callKT-46120
No error reported when Java interface method is implemented by delegation to Java class where corresponding method has different generic signatureKT-72746
K2: No IR overriddens generated for Nothing.toStringKT-70389
K2: StackOverflowError at org.jetbrains.kotlin.fir.resolve.calls.CreateFreshTypeVariableSubstitutorStage.shouldBeFlexibleKT-72537
[FIR Analysis] 'IllegalArgumentException: source must not be null' when typing '++++' (four pluses)KT-73010
K2: RefactorDispatchReceiverMemberScopeTowerLevel.processMembers
KT-72924
Extension property declaration shouldn't be possible in whenKT-72826
UNUSED_LAMBDA_EXPRESSION compiler warning missing in K2KT-25513
Report compilation error when in generated JVM bytecode there is a need for CHECKCAST to inaccessible interfaceKT-73153
K2: Standalone diagnostics on type arguments are not reportedKT-71252
JVM: Set the proper visibility to backing fields of lateinit propertiesKT-73213
K2: Initialize outer type parameter refs for inner (local) type aliases during FIR buildingKT-73215
Set up isInner property for inner type aliases during FIR buildingKT-73088
K2: Introduce NestedTypeAliases experimental featureKT-73192
K2: FirJavaField has incorrect modalityKT-60310
K2: introduce FirErrorContractDescription to distinguish unresolved contract from error oneKT-73008
K2: Resolve nested type aliases in derived classesKT-73009
K2: Treat nested type aliases as classes during supertypes resolution (they are not inner by default)KT-59886
K2: Disappeared ERROR_IN_CONTRACT_DESCRIPTIONKT-72839
Rewrite processConstraintStorageFromExpression using resolution atomsKT-73147
Context parameters FIR2IR supportKT-72789
Fix inconsistent IR produced by ScriptsToClassesLowering for script instance featureKT-66711
K2: INITIALIZER_TYPE_MISMATCH is reported on the whole lambda instead of RETURN_TYPE_MISMATCH on each return expressionKT-73011
K2: Allow overloads resolution for callable references based on expected type variable with constraintsKT-73031
K2: Callable reference unresolved inside elvis with a complex function typeKT-66161
K2: False-positive REDUNDANT_VISIBILITY_MODIFIER for protected modifier in private classKT-73065
CCE with context receiversKT-72345
K2: Method 'get' without@Override
annotation not calledKT-69981
K2: Refactor ResolutionMode.WithExpectedType.expectedType to be a ConeKotlinTypeKT-68363
ABSTRACT_MEMBER_NOT_IMPLEMENTED
diagnostic reported only for the first not implemented functionKT-72105
JVM: typeOf() result is sometimes incorrectly optimized to null in bytecodeKT-72813
FIR: fix containing declaration for annotations of a receiver parameterKT-72552
AutoboxingTransformer fails on during linkage on nested lambdas with cinteroped typesKT-71751
K2: Skipping code in last statement of lambdaKT-72863
K2: failed compilation for a context receiver with an annotated typeKT-68984
K2: Typealiased SAM constructors resolve to the expanded interfaceKT-57471
K2: Wrong diagnostics for named lambda argumentsKT-69560
Tidy up test data that affected byPrioritizedEnumEntries
orProperUninitializedEnumEntryAccessAnalysis
featuresKT-72894
"Placeholder projection cannot be mapped." error from resolve when using placeholder in a typealiasKT-70886
FIR/AA: Reduce strong memory footprint of cached symbol names providersKT-72238
Argument type mismatch in builder inside extension function after ?:KT-72738
Simplify naming scheme for function referencesKT-72340
K1/K2 difference in de-duplication of OPT_IN_USAGE and OPT_IN_TO_INHERITANCEKT-61272
Frontend: error message "feature ... is experimental and should be enabled explicitly" does not explain how to do itKT-72664
K2: Function type kind is not propagated for parameters of incomplete callsKT-64247
K2: FirContextReceiver does not extend FirDeclarationKT-67383
Incorrect optimisation when optimising for loop with UByteKT-70975
K2: Confusing INVISIBLE_REFERENCE message when accessing nested class in private-in-file classKT-72743
CCE inFirUninitializedEnumChecker
:FirPropertySymbol
cannot be cast toFirEnumEntrySymbol
KT-71708
False negative UNSUPPORTED for collection literals as trailing return valueKT-67707
K2: CCE "ArrayMapImpl cannot be cast to class OneElementArrayMap" from FIR evaluatorKT-71966
Seemingly bug in SupertypeComputationSession#breakLoopForKT-17455
Confusing error message "There's a cycle in the inheritance hierarchy for this type" when outer class inherits nested classKT-71119
K2: "AssertionError: Should be primitive or nullable primitive type" caused by comparing Double/Float and Any successor typeKT-57527
K1/K2: "IllegalArgumentException: Some properties have the same names" with inline classKT-57851
Wrong ValueClassRepresentation inside value classKT-67998
K2: CANNOT_INFER_PARAMETER_TYPE on incomplete call inside if in a Java SAMKT-71961
K2 debugger evaluation ClassCastException in IrElementsCreationUtilsKt#createFilesWithBuiltinsSyntheticDeclarationsIfNeededKT-72504
OptimizeKotlinLocalVirtualFile.isDirectory
for parent virtual filesKT-71399
Kotlin Script: NPE on type resolveKT-69283
Incorrect synthetic line numbers when inlining suspend funsKT-52929
Java cannot extend instantiations of generic Kotlin collections in the presence of instantiated Kotlin subclassesKT-71885
K2: confusing message when lateinit var is assigned onceKT-69920
K2: java.lang.IllegalArgumentException: FirNamedArgumentExpressionImpl.replaceConeTypeOrNull() during Space project compilationKT-55894
NI: Compile errors for out-projected types are more cryptic than previouslyKT-72231
K2: NONE_APPLICABLE instead of NAMED_ARGUMENTS_NOT_ALLOWED for non-Kotlin functions with overloadsKT-72422
KMP: False-positive report of ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT on SublcassOptInRequiredKT-72257
'javaClass' method cannot be evaluated in Kotlin project itselfKT-72408
Introduce new TYPE_VARIANCE_CONFLICT diagnosticsKT-71508
JAVA_CLASS_INHERITS_KT_PRIVATE_CLASS isn't reported when java class is inherited from an effectively private classKT-72177
K2: Argument type mismatch when using star projectionKT-72245
K2: When Java source roots are passed by file, fully qualified deep packages are unresolvedKT-63923
Confusing error messages for TYPE_MISMATCH from inferenceKT-57708
Unclear TYPE_MISMATCH messages in certain situations with genericsKT-72178
K2: "Unexpected FirPlaceholderProjectionImpl" exception when using "_" as key type in EnumMapKT-62455
"NullPointerException" with 'multi-field value class'KT-72302
K2: no error on type operator in annotation parameter default valueKT-72212
[Scripting] Guava dependency is not packaged correctlyKT-71662
PCLA: a type variable is not fixed on demand to a type containing a not-fixed type variableKT-72229
K2: Change LV of ProhibitConstructorAndSupertypeOnTypealiasWithTypeProjection to 2.2KT-70256
K2: Check forMISSING_BUILT_IN_DECLARATION
not only for JVM but for all platformsKT-72173
K2: simple object names from root package are resolved without imports in non-root packages when used as valuesKT-71480
JAVA_CLASS_INHERITS_KT_PRIVATE_CLASS isn't reported while java object isn't createdKT-60034
K2: Introduced NO_GET_METHODKT-72199
K1: Match the shape of references to synthetic Java properties to the shape of their gettersKT-15672
Improve diagnostics for accessing Enum companion object from enum constructorKT-71321
K2: ClassCastException caused by missed type mismatch when passing a method referenceKT-72041
Extra checkers: false-positive unused parameter warnings on implicit lambda parametersKT-71959
NO_VALUE_FOR_PARAMETER should use actual lambda parameter nameKT-69985
K2: simple classifier names from root package are resolved without imports in non-root packagesKT-70139
Remove dependencies of debugger on K1 and old JVM backendKT-72142
PSI: unrelated enums are treated as equivalentKT-57358
False positive "Const 'val' initializer should be a constant value" caused by equality with literalsKT-71753
PCLA: false-negative operator ambiguity error on fixing a type variable on demand for an operator assignmentKT-70844
K2 IDE: deprecated marker shouldn't highlight not deprecated type argumentKT-70854
K2 IDE: annotation on delegation causes illegal argument exceptionKT-56901
NI: Missing error on passing star-projection to reified type argumentKT-70856
K2: IllegalStateException: Non-empty unresolved argument listKT-71897
K2: Don't erase in projections in SAM conversion if -Xsam-conversion=class like in K1KT-66464
IntroduceisInlineable
parameter forFunctionTypeKind
KT-71590
K2: false alarm fromUselessCallOnNotNullChecker
KT-71919
Wrapped ProcessCanceledException in GenerationState#loadClassBuilderInterceptorsKT-70922
PSI for KtPropertyAccessor is inconsistent with KtNamedFunctionKT-28598
Type is inferred incorrectly to Any on a deep generic type with out projectionKT-71490
K2: missing REDUNDANT_ELSE_IN_WHENKT-36107
Remove deprecated mod operator conventionKT-71166
Generic synthetic property is unresolved when parameterized with UnitKT-71738
K2: False negative REDECLARATION inside object expressionKT-59908
K2: Disappeared RECURSIVE_TYPEALIAS_EXPANSIONKT-69937
Define & enforce user-friendly terminology for extended checkersKT-68834
Parentheses don't influence calls of any convention operators (except invoke operator) after safe navigation operatorKT-58437
K2: Do not use descriptors in KonanSymbolsKT-18563
Do not generate inline reified functions as private in bytecode
Compose compiler
b/397855145
Fix "Unknown file" error in target annotation inferenceb/377499888
Allow restarting overridden functions in a final classb/390151896
Fix default arguments with varargs in@Composable
functionsb/388030459
Kotlin compiler backend exception when lambda with anonymous object is memoizedb/310004740
Check vararg parameter length in skipping logicb/393400768
Use -1 for.changed
call if nullable enum parameter isnull
b/388505454
Change order of $changed bits with context parametersb/165812010
Support default values in open@Composable
functions (K2 only)b/285336821
Use stability of parent class in stability inferenceb/353744956
Fix context receiver/parameter handling in Composeb/195200551
CallEnum#ordinal
on enum values passed to Composer#changedb/378697545
Avoid using ComposableSingletons inside public inline functionsb/376148043
Use remember function source key for intrinsic rememberb/345204571
Remove IR offsets for conditions generated by Compose compilerb/376058538
Fix stack overflow when inferring stability of indirect generic loopb/339322843
Transform@Composable
property delegate referencesCMP-7571
1.8.0-alpha03 incompatible with Compose based on k1
IDE
KT-59445
Recursion detected on input: JavaAnnotationImpl
IR. Actualizer
KT-68830
Compiler crash on missing actual classKT-71809
Kotlin-to-Java direct actualization: the property isn't actualized by overridden getterKT-71817
Actualization of static members is broken for non-JVM platforms
IR. Inlining
Fixes
KT-69681
IR: Report warnings on exposure of private types in non-private inline functionsKT-72776
[JS] Add lowerings around inlining of private functions to the common prefix at the 1st phase of compilationKT-72775
[JS] Add lowerings up to "cache private inline functions" to the common prefix at the 1st phase of compilationKT-72440
[Native] Add lowerings around inlining of private functions to the common prefix at the 1st phase of compilationKT-72439
[Native] Add lowerings up to "cache private inline functions" to the common prefix at the 1st phase of compilationKT-74039
IR proto: Rename properties of IrInlinedFunctionBlockKT-73987
Cherry-pick the fix for KT-73482 to 2.1.20-Beta1KT-73475
Fix validation errors forsharedBox...
methodsKT-73588
Support serialization/deserialization of IrReturnableBlock and IrInlinedFunctionBlockKT-69009
Merge -Xverify-ir-visibility-after-inlining and -Xverify-ir-visibility CLI flagsKT-72915
UseLoweringContext
instead ofCommonBackendContext
for the first stage of compilationKT-73101
Try to unboundJsIntrinsic
fromJsIrBackendContext
KT-73110
Unbind JS version ofSymbols
fromSymbolTable
KT-73108
Unbind JS version ofSymbols
from contextKT-71864
[JS] Run IrValidator as the first lowering in 1st compilation phaseKT-73103
SwitchInlineCallableReferenceToLambdaPhase
to useLoweringContext
KT-73098
UseLoweringContext
forNativeInlineFunctionResolver
KT-73096
ChangeLateinitLowering
to useLoweringContext
instead ofCommonBackendContext
KT-71141
Merge lateinit-related loweringsKT-73099
UseBackendContext
for theJsCodeOutliningLowering
KT-73097
Try to useBackendContext
forLocalDeclarationsLowering
KT-73035
Remove field of type SymbolTable from SymbolsKT-72919
MoveJsCommonBackendContext.coroutineSymbols
intoSymbols
KT-72916
DropsymbolTable
reference fromBuiltinSymbolsBase
KT-72912
RewriteandAllOuterClasses
located inFunctionInlining
KT-72910
MoveisSideEffectFree
to theSymbols
KT-72907
ExtractSharedVariablesManager
fromBackendContext
KT-72905
UnbindKonanSharedVariablesManager
fromKonanBackendContext
KT-70961
[K/N] Test IR inliner on 1st stage with box testsKT-72884
Internal error in body lowering: IllegalStateException: Can't inline given reference, it should've been loweredKT-72920
Dropcontext
parameter fromJsCommonCoroutineSymbols
KT-72906
UnbindJsSharedVariablesManager
fromJsIrBackendContext
KT-67298
Write tests for deserialization/serialization of unbound IRKT-72521
Kotlin/Native: java.lang.AssertionError: kfun:androidx.compose.runtime#access$<get-androidx_compose_runtime_ProvidedValue$stable>$p$tComposerKt(){}kotlin.IntKT-67220
Drop caching of deserialized/lowered inline functionsKT-72623
Don't generate synthetic accessors in files other than the one being loweredKT-71859
[K/N] Run IrValidator as the first lowering in 1st compilation phaseKT-67292
Handling assertions before the IR inlinerKT-70423
KLIB: SyntheticAccessorLowering - generate static factory functions instead of synthetic constructorsKT-69765
Add language feature to enable IR inliner in K2 1st phase
IR. Interpreter
KT-72356
K2 Native: IllegalStateException when annotation has the same source range as a constant in another fileKT-71903
[K/N] Find a way to set up a synchronization point for the IR interpreterKT-66450
IR interpreter can't handle entries of lowered enumsKT-71971
K2 evaluator error on casting object of value type
IR. Tree
Performance Improvements
Fixes
KT-73553
[Native] Create testrunners for serialization testsKT-73224
Migratecompiler.ir.interpreter
to new IR parameter APIKT-73179
Drop IrAttributeContainerKT-67545
Autogenerate DeepCopyIrTreeWithSymbolsKT-73222
Migratecompiler.ir.inline
to new IR parameter APIKT-72735
Add new IR nodes for callable referencesKT-73248
MergeFileValidator
andCheckIrElementVisitor
intoIrValidator
KT-73221
Migratecompiler.ir.actualization
to new IR parameter APIKT-73219
Migratecompiler.tests-compiler-utils
to new IR parameter APIKT-73194
[IR] Consider moving platform-independent funs from SymbolLookupUtils to SymbolFinderKT-73218
Migratecompiler.tests-common-new
to new IR parameter APIKT-73227
Migratejs:js.tests
to new IR parameter APIKT-73258
[IR] Separate new lookup functionality from IrBuiltinsKT-73063
[JS][Wasm] Simplify ExpectDeclarationsRemoveLoweringKT-73350
Migrate:native.tests:klib-ir-inliner
to new IR parameter APIKT-68992
Fix IR serializer to handle IR with unbound symbolsKT-64866
Support deserializing and serializing unbound IRKT-72619
[IR] Steer checks for vararg types with new test directiveKT-69498
[IR] Merge twoIrTypeUtils.kt
sourcesKT-72376
Disable vararg types checking in org.jetbrains.kotlin.fir.pipeline.ConvertToIrKt#runMandatoryIrValidationKT-69454
[IR] Check vararg types in IrValidatorKT-68314
Remove IrBuiltins from IrModuleKT-71944
Move IR lowering phase descriptions to kdocKT-71826
stdlib fails to compile with-Xserialize-ir=all
JavaScript
Performance Improvements
KT-16379
KotlinJs - ArrayList get is now slowKT-71199
K/JS: charSequenceGet intrinsic should bypass Char range checksKT-73759
KJS: do not fillArrayVal if using an Array init functionKT-72180
Fix problems with memory spikes during JS Codegen/Box tests
Fixes
KT-70987
KJS:@JsExport
: NullPointerException with private data classKT-75606
KJS: java.lang.AssertionError: Different declarations with the same signatures were detectedKT-58797
Optimize the code generated for objects on JS and Wasm backendsKT-48468
KJS / IR: "StackOverflowError" when long and complexjs
usedKT-72437
KJS. Invalidcopy
method for inherited JSO with type parametersKT-72974
KJS / ESModules: EagerInitialization annotation has no effect on unused propertiesKT-71788
KJS: NPE when use@JsExport
with@JsPlainObject
KT-43567
KJS: toString() method and string interpolation of variable produce different codeKT-70778
Kotlin Js companion is undefined in production buildKT-73130
KJS: Missedbreak
for do/while in generated JS codeKT-68067
KJS: Overriding methods with default parameters doesn't workKT-71656
K2 JS: "IllegalStateException: Class has no primary constructor: kotlin.ULong"KT-72598
KJS: Nested@JsPlainObject
does not workKT-70078
@JsPlainObject
compiles broken code when inlining suspend functionKT-68904
@JsPlainObject
breaks when inside a file with@file
:JsQualifierKT-74067
KJS: ES class constructor is generated with 'return this'KT-72883
[JS] AbstractSuspendFunctionsLowering crashes on private top level suspend funKT-70533
KJS: changed string concatenation behavior in 2.0KT-71949
K/JS: investigate test failures in MPP codegen tests with friend dependenciesKT-71857
[JS] Add new step to codegen tests for IR inliner invocationKT-14013
JS toString produces different result for nullable/non-nullable ref to the same arrayKT-70803
Investigate generating call with invalid argument count in Js BackendKT-72200
Remove legacy JS test executorsKT-68332
Remove legacy Nashorn script engineKT-39337
KJS: remove LabeledBlockToDoWhileTransformation and related thingsKT-72732
KJS / ES6: "SyntaxError: 'super' keyword unexpected here" with enabled-Xir-generate-inline-anonymous-functions
and disabled arrow functionsKT-71821
K/JS tests are failing with coroutines flow and turbine on timeoutKT-70227
Remove JS from theorg.jetbrains.kotlin.test.TargetBackend
enumKT-71855
ES6ConstructorLowering sets extensionReceiver to a function without extension receiverKT-70226
Delete JS tests that were only run with the legacy JS backend
KMM Plugin
KT-66458
KMM Wizards: Get rid of deprecated 'kotlinOptions'
Klibs
Fixes
KT-70146
[KLIB Resolve] Don't fail on nonexistent transitive dependencyKT-75393
Non-JVM artifacts from Kotlin 2.1.20-RC fail on 2.1.x releases due to IMPLICIT_ARGUMENTKT-74045
Context parameters: conflicting signatures for properties with/without context on the non-JVM backendsKT-74050
Kotlin 2.1.0 with K1 throws a signature mismatch of Ir and Descriptor for Composable lambdaKT-73589
Design & implement signatures for context parametersKT-73721
NativeLibraryAbiReaderWithManifestTest - move to Common BE testsKT-73855
[Klibs] Changing function body causes change to header klibKT-73474
CreateNonLinkingIrInlineFunctionDeserializer
directly inside inline function resolverKT-72627
IrInstanceInitializer is always deserialized having kotlin/Unit typeKT-71500
Improve "incompatible ABI version" error messageKT-72965
Ignore subclassOptInRequired constructor warningKT-69309
Separate pure KLIB tests from Kotlin/Native testsKT-71917
[JS] Make it possible to run IR lowerings before serializing to KLIBsKT-67474
K2: Missing@ExtensionFunctionType
in metadata in KLIBsKT-68756
[K/N] Make it possible to run IR lowerings before serializing to KLIBsKT-72333
Ensure KLIBs with old local signatures (< 2.1.20) are mutually compatible with KLIBs with new local signatures (>= 2.1.20)KT-71633
[2.1.0] Suspicious "Argument type mismatch" errorKT-71333
KLIB cross-compilation: Add additional tests
Libraries
New Features
KT-72480
Move Instant and Clock from kotlinx-datetime to stdlibKT-31880
UUID functionality to fix Java bugs as well as extend itKT-54606
Print program name in Kotlin/Native executables
Performance Improvements
Fixes
KT-73654
Remove org.w3c packages from stdlib documentationKT-62423
Consider providing Common atomic typesKT-28492
Merge sources when building kotlin-osgi-bundleKT-74173
The sample code oflazy
on stdlib can not run on playground due to "samples" package importKT-73695
PublishedApi KDoc's link to inline functions page is not rendered properlyKT-73817
Part 1. Moving Atomics to kotlin.concurrent.atomics: bootstrap updatesKT-73743
UninitializedPropertyAccessException on AtomicReference initializationKT-73820
Part 2. Moving Atomics to kotlin.concurrent.atomics: move the API to the new packageKT-73816
Moving common Atomics to kotlin.concurrent.atomics packageKT-73747
AtomicBoolean.asJavaAtomic() and AtomicBoolean.asKotlinAtomic() have unnecessary type parameterKT-74641
k.t.Clock: bypass thread state validation for std::chrono::system_clock::now()KT-74676
Wasm: common atomic API actualizations are annotated with wrong experimental annotationKT-74600
Common atomic types could be used without explicit opt-inKT-73291
Uuid.random() requires security context in WasmJsKT-69575
kotlin.uuid.Uuid is not ComparableKT-54859
kotlin.repeat
should document behavior in the case of negative argumentsKT-74294
Make the Uuid.parse function able to parse multiple formatsKT-74279
Introduce Uuid.parseHexDash() and toHexDashString()KT-74272
Introduce Uuid.fromUByteArray and toUByteArrayKT-74314
Reduce bitwise operations on Longs in Uuid implementationKT-73391
Provide samples for common atomics APIKT-73890
Add kotlin-metadata-jvm to .zip compiler distributionKT-71099
Mention that selector for maxBy/minBy family is not invoked for 1-element collectionsKT-71762
ReplaceWith properties kdoc is rendered with extra spacesKT-73740
Unresolved reference 'AtomicBoolean' in 2.1.20-Beta1KT-73762
Warn about@Transient
being not sound to use with non-nullable typesKT-50395
Stdlib documentation for StringBuilder.removeRange is unclearKT-36863
Specify which element is returned from max/min functions if multiple elements are equal to min/maxKT-71606
Provide Atomic and AtomicArray builtins in a bootstrap compilerKT-73064
Samplification of the Optional extensions documentationKT-69545
Kotlin/Native: Deprecate API marked with FreezingIsDeprecated to errorKT-61184
Drop redundant@Suppress
from some classes in stdlib. After stdlib migration to K2KT-72380
Incorrect Duration parsing with extra leading zeros in components and multiple signsKT-72278
Clean up redundant stdlib code for Kotlin 2.1KT-49026
Add Regex.replace/replaceFirst samples
Native
KT-75807
CMP caching fails for iOS with Kotlin 2.1.20-RC2KT-70202
Xcode 16 Linker fails with SIGBUSKT-74377
Kotlin Native: release executable crashes with error 139KT-73559
K/Native: AndroidNativeArm64 linking fails starting from Kotlin 2.1.0KT-71976
[Native][KLIB Resolve]: compilation error if libraries have the sameunique_name
and the strategy is allow-all-with-warning or allow-first-with-warning
Native. Build Infrastructure
KT-72063
Jars usingnative
in their name are incompatible with JPMSKT-70990
Kotlin/Native: fix stdlib building taskKT-71820
Update the coroutines version used in kotlin-native build infrastructureKT-71261
Kotlin/Native: enable gradle caching for runtime building tasks
Native. C and ObjC Import
KT-74043
Drop obsolete parts of Skia (aka ad-hoc C++) import
Native. ObjC Export
KT-72673
Native: objc2kotlin "virtual" bridges have no debug info
Native. Swift Export
KT-73623
Swift Export: Interfaces: Add protocol printingKT-72703
Translate valueOf into static funcKT-72102
Create test infra for swift export in IDEKT-72096
Create module for swift-export-in-ideKT-71898
Swift Export: support List in overrides
Test Infrastructure
KT-67281
[Tests] Introduce an obligatory diagnostics test directive to choose a test runnerKT-62472
Remove suppressions of warnings which are presented only in K2 but not in K1 compiler in Kotlin projectKT-72094
K2: switch DEBUG_INFO_EXPRESSION_TYPE to regular FIR infrastructure for type rendering
Tools. CLI
KT-73319
Migrate the main JVM CLI pipeline to the phased structureKT-74099
Add CLI argument to enable nested type aliases featureKT-69384
Add a way to force colored compiler diagnostic outputKT-73320
Migrate the main JS CLI pipeline to the phased structureKT-73922
CompileEnvironmentUtil.writeToJar
is unbufferedKT-73967
JDK 25: "IllegalArgumentException: 25-ea" with EA buildsKT-72927
CombineFlexiblePhaseConfig
andPhaseConfig
KT-73244
:compiler:cli-base
depends on:compiler:ir.serialization.jvm
to read a single propertyKT-70179
K2: Building a file with kotlin-test-junit without junit does not include annotationsKT-41756
Sanitize stack trace in 'kotlin' runner CLI script
Tools. Commonizer
KT-74623
Drop metadata version check from KLIB commonizer
Tools. Compiler Plugin API
KT-71212
Allow compiler plugins to write custom data to declarations metadata
Tools. Compiler Plugins
New Features
KT-53563
Kotlin Lombok: Support@SuperBuilder
KT-71547
Lombok Compiler Plugin Does Not Support@Builder
on Constructors
Fixes
KT-73897
PowerAssert: Implicit argument detection is brittle in a number of casesKT-74315
Kotlin Lombok: "Unresolved reference" on generating@Builder
for static inner class where outer class is also using@Builder
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 functionKT-58695
Lombok Builders's subclassing leads to 'Unresolved reference'KT-73871
PowerAssert: Comparison via operator overload results in confusing diagramKT-73898
PowerAssert: Operator calls with multiple receivers incorrectly alignedKT-73870
PowerAssert: Object should not be displayedKT-73895
jvm-abi-gen: $serializer class name is written incorrectly to InnerClasses attributeKT-73349
Migrate power-assert sources to new IR parameter APIKT-73366
Migrate parcelize sources to new IR parameter APIKT-72824
Kotlin power-assert plugin StringIndexOutOfBoundsException
Tools. Compiler plugins. Serialization
KT-71072
KxSerialization: KeepGeneratedSerializer and sealed class in Map causes initialization-errorKT-73830
[Kotlin/Wasm] CompileError: WebAssembly.Module(): Compiling function #10198:"kotlinx.serialization.$serializer.serialize" failed
Tools. Daemon
KT-73311
"Unable to release compile session, maybe daemon is already down" flakinessKT-70556
Add support for SourcesChanges.ToBeCalculatedKT-72530
The daemon has terminated unexpectedly on startup attempt #1 with error code: UnknownKT-72373
Fix naming for the new daemon symbols added after KT-69929
Tools. Fleet. ObjC Export
KT-73237
ObjCExport: immutable property translated as mutable
Tools. Gradle
New Features
KT-41409
Gradle: Support binaries.executable for jvm targetsKT-58830
Expose AdhocComponentWithVariants API on KGP generated componentKT-72320
Gradle Plugin Diagnostics Reporter: add emojis to increase visibility
Performance Improvements
KT-69613
Remove usages ofgetCanonicalPath
andgetCanonicalFile
in plugins codeKT-68136
Gradle: improve classloaders cache eviction
Fixes
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 importKT-75026
Corrupted NonSynchronizedMetricsContainer in parallel Gradle buildKT-74997
Unexpected KGP warnings about kotlin scripting pluginKT-74322
Enable source information by default in Compose compiler gradle pluginKT-72337
kotlin-android-extensions plugin should fail the build on applyKT-72967
Remove deprecated KotlinPlatformJsPluginKT-74846
Gradle Configuration Cache miss on second build with 2.1.20-Beta2KT-74462
Flaky Kotlin Gradle Plugin Tests: IsInIdeaEnvironmentValueSource$Inject not foundKT-74415
Make composeCompiler.includeSourceInformation true by defaultKT-73782
KGP diagnostics reporter: emojis added to KGP warning/errors are displayed broken on WindowsKT-74095
Make ToolingDiagnosticBuilder internal APIKT-74124
Gradle: error message regression of incompatible Gradle version usageKT-74639
Executable binaries for JVM test cannot be created unless an additional suffix is set in GroovyKT-73728
'generatePomFileForMavenPublication' creates pom with dependencies with 'unspecified' versionKT-73974
Configuration cache when run Xcode tasks without xcode's environmentKT-74476
KGP uses internal Gradle API, DefaultArtifactPublicationSetKT-62273
Use new FUS plugin in KotlinKT-72963
Remove deprecated KotlinPlatformAndroidPluginKT-74017
Remove kotlin.androidExtensionsPlugin.enabled flagKT-73749
KGP diagnostics reporter: emojis are duplicated if a gradle task is executed from the IDEA UIKT-72467
kotlin.sourceSets extension not added for KotlinBaseApiPlugin.createKotlinAndroidExtension()KT-74143
Gradle: Add workaround for gradle/gradle#31881KT-72384
Run Gradle Integration tests against Gradle 8.11KT-70150
Android Kotlin Compile Task has ClassPath BackwardsKT-72495
Warn about kotlin-compiler-embeddable loaded along KGPKT-71549
K2: NoSuchMethodError: org.jetbrains.kotlin.incremental.storage.ExternalizersKt.saveToFile with dependency lockingKT-67277
Gradle: decommission properties to disable precise task outputs backupKT-73795
Fix failing checkNodeJsSetup test on WindowsKT-72383
Compatibility with Gradle 8.11 releaseKT-72394
ProjectDependency.getDependencyProject() is deprecated in Gradle 8.11KT-72385
Compile against Gradle API 8.11KT-71711
KGP: Kotlin Stdlib is leaking when KGP is applied in buildSrcKT-73128
Apply Kotlinlang template for partial HTMLsKT-58858
Add KDoc documentation for Kotlin Gradle plugin APIKT-73076
Kotlin Gradle Plugin API Reference: adjust settingsKT-72651
Unable to usetarget
for KotlinBaseApiPlugin.createKotlin(Jvm/Android)Extension()KT-72303
KGP 2.1.0-Beta2 broke compatibility with KSPKT-71405
Compose compiler gradle plugin: project.layout.file can't be used as a value of the 'stabilityConfigurationFiles' optionKT-71948
KotlinJvmFactory : get rid of replaces with TODO()KT-72092
Gradle: use packed klib variant as the default when no packaging attribute is present
Tools. Gradle. JS
KT-75485
KJS: "Module not found: Error: Can't resolve 'style-loader' and 'css-loader'" in 2.1.20-RCKT-74869
KJS:jsBrowserProductionWebpack
does not minify output with 2.1.20-Beta2KT-74859
Gradle configuration cache issues related to RootPackageJsonTaskKT-72175
JS, Wasm: Deprecate non-Provider API in JS infrastructure extensionsKT-66388
KJS / Gradle: Allow using an insecure protocol to download Node.js/Yarn when setting up project using Gradle >= 7KT-73614
org.jetbrains.kotlin.gradle.targets.jsAbstractSetupTask.destinationProvider should be publicKT-72027
JS target build fails on ARM64 WindowsKT-71362
KGP/JS: moduleName is not compatible with convention pluginsKT-72874
KJS: NodeJsRootExtension: "'download: Boolean' is deprecated. Use download from NodeJsExtension (not NodeJsRootExtension) instead You can find this extension after applying NodeJsPlugin. This will be removed in 2.2"KT-72872
Js, Wasm: downloadBaseUrl in NodeJsEnvSpec could not be disabled
Tools. Gradle. Multiplatform
Performance Improvements
KT-71888
Default Target Hierarchy results in very large heap usage/OoM when resolving IDE dependencies in larger projects
Fixes
KT-66542
Gradle: JVM target withwithJava()
produces a deprecation warningKT-71074
Optimize Granular Metadata Dependencies Transformation for Import after adding support for Project IsolationKT-74669
Executable binaries for JVM: a jar generated by jvmJar task isn't added to the build/install/testAppName/lib directoryKT-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-74898
The wording for the warning about incompatible 'application' plugin should be updated to suggest using the new binaries DSLKT-72488
Unify freeCompilerArgs property in swiftExport and compilerArgsKT-74727
Dependency resolve from a single target KMP module to another kmp module fails on non-found PSMKT-75062
Remove usage of deprecated ProjectDependency.getDependencyProjectKT-71130
Enable Isolated Projects support by default for KMPKT-74832
Relax JVM target validation diagnostic in KMP/Jvm projectsKT-57280
Expose Kotlin Project Structure metadata via consumable configurations instead of accessing all gradle projects directlyKT-72130
Gradle Project Isolation Violation in build.gradle due to KGPKT-74298
Incorrect DSL for swift export settings under the export nodeKT-73620
KMP 2.1.0: Transitive dependency is broken when setting publication groupIdKT-72112
KotlinNativeLink task fetches configuration that might not existKT-49155
MPP, Gradle: Cannot usetest-retry-gradle-plugin
with Kotlin multiplatform testsKT-61816
Remove Legacy Multiplatform Gradle PluginKT-72068
Distribution for klib cross-compilation is not downloaded during compile tasksKT-64998
Granular Metadata Dependencies Transformation is not compatible with Project IsolationKT-72454
Revert changes made in KT-69899 i.e. make kotlin.android.buildTypeAttribute.keep = false by default againKT-70380
KMM App failed to consume android binary libKT-71529
Deprecate targetFromPreset API with an error
Tools. Gradle. Native
KT-71398
kotlinNativeBundleConfiguration should not contain dependencies on unsupported platformsKT-74403
:commonizeNativeDistribution fails when configured native targets cannot be built on machineKT-62826
Show a warning when KGP and K/N versions mismatchKT-73572
[Gradle]kotlin.native.cacheKind=none
doesn't work anymoreKT-71722
kotlinNativeBundleConfiguration present in JVM-only Gradle projectKT-72686
Add warning about Kotlin native home conflict declarationKT-71419
Light bundle KGP IT run against a stable K/N versionKT-70558
False positive up-to-date status for CInterop tasks after changes in .h files
Tools. Gradle. Xcode
KT-71535
embedSwiftExportForXcode doesn't report configuration error about missed dependencyKT-72485
Swift Export DSL exposes unused options inbinaries
sectionKT-66894
XCFramework task fails when name passed to xcframework DSL is different from framework's nameKT-65675
XCFrameworkTask produces an xcframework with mismatched casing in embedded frameworks
Tools. Incremental Compile
KT-69333
Remove built-in ABI snapshot implementationKT-55940
Kotlin 1.8.0 compiler hangs indefinitelyKT-29860
Incremental compilation looping or incorrect results
Tools. JPS
KT-73688
Make it possible to build and run JPS locallyKT-73607
JPS incremental compilation is broken after KT-71549KT-68565
K2: IllegalStateException: Source classes should be created separately before referencing
Tools. Kapt
KT-75202
K2 kapt: mapped type class literal is converted incorrectlyKT-64385
K2: Enable K2 KAPT by defaultKT-71154
Kapt tests: EXPECTED_ERROR directive is checked incorrectlyKT-71776
K2 Kapt in 2.1.0-Beta1 fails withe: java.lang.IllegalStateException: FIR symbol "class org.jetbrains.kotlin.fir.symbols.impl.FirValueParameterSymbol" is not supported in constant evaluation
Tools. Maven
KT-69231
PowerAssert: Create maven plugin for power-assert
Tools. Scripts
KT-72277
Legacy REPL implementation is still based on the old backend