1.9.20
Analysis. API
New Features
KT-58834
Analysis API: Add source shadowing feature to resolve extensions
Performance Improvements
KT-57515
LL FIR: Performance bottleneck inCompositeModificationTracker.getModificationCount
KT-59266
K2: optimize FirElementBuilder.getOrBuildFir for elements outside bodyKT-59454
K2: drop resolve from org.jetbrains.kotlin.analysis.api.fir.components.KtFirVisibilityChecker#collectContainingDeclarationsKT-59453
K2: completion regression from org.jetbrains.kotlin.analysis.api.fir.components.KtFirVisibilityChecker#collectContainingDeclarationsKT-59189
Analysis API: KtFirKDocReference.resolveToSymbols is slowKT-58125
K2: LL FIR:KtToFirMapping.getElement
is slow forKtUserType
s due to on-air resolution of types
Fixes
KT-59240
K2: FirLazyResolveContractViolationException:lazyResolveToPhase(IMPORTS)
cannot be called from a transformer with a phase IMPORTS from superTypesKT-58499
K2: FirLazyBlock should be calculated before accessingKT-57966
K2: Analysis API: Reference Shortener does not work correctly when called on entire fileKT-60954
K2: Analysis API: Reference shortener does not work correctly with variable assignmentsKT-60940
K2: Analysis API: Reference shortener incorrectly handles types in vararg parameters declarationsKT-60488
Analysis API: forbid providing custom KtLifetimeToken for every analyze callKT-60728
K2: proper support for scripts in LL FIR transformersKT-59159
K2 IDE: declaration is not found exceptionKT-59297
K2: exception from body resolve leads to corrupted state and broken analysisKT-59077
KtFirExpressionTypeProvider behaviour for KtSimpleNameReferences in function callsKT-60586
K2: forbid analyze from write actionKT-57743
K2 IDE: StackOverflowError from LLFirSessionCache for simple JPS project with cyclic dependenciesKT-61026
K2 Scripts: FirLazyExpression should be calculated before accessing from on-air resolveKT-61009
K2 Scripts: KtFirExpressionTypeProvider: Expected FirResolvedTypeRef with ConeKotlinType but was FirImplicitTypeRefImplWithoutSourceKT-60357
K2 IDE. Reified types parameters are not resolved in a function bodyKT-60317
K2 IDE. IAE "This method will only work on compiled declarations, but this declaration is not compiled" on invoking Find Usages for enum method in libraryKT-60706
K2 IDE: FirJvmTypeMapper is not found for kotlin.kotlin-stdlib-commonKT-60552
K2: merge StateKeeper and lazy body calculator for ANNOTATIONS_ARGUMENTS_MAPPING transformerKT-60641
Analysis API: Scope for class org.jetbrains.kotlin.fir.types.impl.ConeClassLikeTypeImpl not found exception when stdlib is missingKT-60638
K2: Expected FirResolvedTypeRef with ConeKotlinType but was FirImplicitTypeRefImplWithoutSourceKT-54846
Analysis API: add isExpect/isActual to KtSymbolKT-60448
FirLazyResolveContractViolationException:lazyResolveToPhase(COMPILER_REQUIRED_ANNOTATIONS)
cannot be called from a transformer with a phase COMPILER_REQUIRED_ANNOTATIONS from AllOpen pluginKT-59342
K2 IDE. FirLazyResolveContractViolationException:lazyResolveToPhase(TYPES)
cannot be called from a transformer with a phase TYPESKT-59687
K2: Implement proper body update for in-block modificationsKT-59329
Resolve Extensions reference resolution breaks Find UsagesKT-60295
K2: move checkIsResolved for annotations from LLFirAnnotationArgumentsLazyResolver to LLFirTypeLazyResolverKT-59758
K2: Expected is FirResolvedTypeRef, but was FirImplicitTypeRefImplWithoutSource from ReturnTypeCalculatorWithJumpKT-60377
K2 IDE: This method will only work on compiled declarations, but this declaration is not compiledKT-59685
K2: rewrite on-air resolutionKT-60132
K2: properties and functions without a name should be re-analyzable as wellKT-59199
K2 IDE: PSI changes which do not cause OOB modifications can be unseen from the FIR elementsKT-59667
Analysis API: PsiInvalidElementAccessException from JavaClassifierTypeImpl.substitutorKT-59705
KotlinExceptionWithAttachments: No fir element was found for getterKT-59697
AA standalone: JRT module paths are not properly populated in WindowsKT-59505
K2: implicit type lazy resolution doesn't work for delegated declaration from other moduleKT-56426
K2 IDE: Typealised functional types cannot be renderedKT-59598
AA: stackoverflow while simplifying a type with a recursive type parameterKT-58497
K2: Expected FirResolvedTypeRef for initializer type of FirPropertyImpl(Source) but FirImplicitTypeRefImplWithoutSource foundKT-59511
AA standalone mode creates Application Environment for testsKT-58161
Analysis API: Make methods inKtCallResolverMixIn
more distinctive based on their receiver/return typeKT-59093
Do not throw exception on KtCall resolution,KtCallElement.resolveCall
should returnnull
on unknown casesKT-59243
K2: FirLazyResolveContractViolationException:lazyResolveToPhase(IMPORTS)
cannot be called from a transformer with a phase IMPORTS from permits typesKT-58194
K2: Low Level API: use smart pointers to store references to PSI from FIR declarations for JavaElementKT-59133
K2: java.lang.IllegalStateException: Fir is not initialized for FirRegularClassSymbolKT-58174
K2: LL FIR: Invalid type reference for T & Any typeKT-52615
LL FIR: build RAW FIR only by stubsKT-55053
K2: Exception "lateinit property diagnostic has not been initialized" in FirBuilderKT-58580
K2: LL FIR: Declarations provided by resolve extensions from a dependency module are not visible throughLLFirCombinedKotlinSymbolProvider
KT-58992
Analysis API: move org.jetbrains.kotlin.analysis.api.fir.utils.addImportToFile out of Analysis APIKT-58727
K2: AA FIR: implicit type in delegated function treated as errorKT-58653
K2: Analysis API: add functions for KtScope members access by nameKT-57559
K2 IDE: KotlinExceptionWithAttachments: Modules are inconsistent on intellij projectKT-58262
Analysis API: Declarations from Analysis API Resolve Extensions are not seen from completionKT-57455
LL FIR: CombineAbstractFirDeserializedSymbolProvider
s in session dependencies (optimization)KT-57207
LL FIR: CombineJavaSymbolProvider
s in session dependencies (optimization)KT-58546
K2: LL FIR: support name collision in a designation pathKT-58495
K2: Lazy calculation is redundantKT-58500
K2: null cannot be cast to non-null type org.jetbrains.kotlin.fir.FirPureAbstractElementKT-58493
K2: Expected FirResolvedTypeRef for default value type of FirValueParameterImpl(Source) but FirUserTypeRefImpl foundKT-58496
K2: Expected FirNamedReference, FirErrorNamedReference or FirFromMissingDependenciesNamedReference, but FirExplicitSuperReference foundKT-58491
K2: Expected FirResolvedTypeRef or FirImplicitTypeRef for return type of FirDefaultPropertyBackingField(Synthetic) but FirUserTypeRefImpl foundKT-56550
LL FIR: implement parallel resolve for non-jumping phasesKT-58503
Analysis API: KtFirNamedClassOrObjectSymbol.visibility/modality do not trigger STATUS resolveKT-57623
K2 IDE: ConcurrentModificationException from getSuperConeTypesKT-58083
K2: LL FIR: implement FakeOverrideTypeCalculator
Android
KT-27170
Android lint tasks fails in Gradle with MPP dependency
Backend. Native. Debug
KT-61131
Virtual functions trampolines have invalid debug info
Backend. Wasm
Fixes
KT-60244
K/Wasm: make the compiler compatible with Wasm GC phase 4 (Final) specificationKT-61262
K/Wasm: add a way to turn on k2 in wasm examples that don't use composeKT-61343
K/Wasm: add a wasi example to kotlin-wasm-examplesKT-62147
[Kotlin/Wasm] Nothing typed when expression cause a backend errorKT-59720
K/Wasm: update to final opcodesKT-60834
K/Wasm: investigate consequences of stopping usingbr_on_cast_fail
KT-59294
WASM: localStorage Cannot read properties of undefined (reading 'length')KT-60835
K/Wasm: fix compatibility with Node.js 20.*KT-60113
K/Wasm: illegal cast when using 1.9.20-devKT-60496
Compose-web Wasm crashes on remember { null } callsKT-58746
K/Wasm: Make Arrays' constructors with size and lambda inline (similar to other implementations)KT-58993
[K/Wasm] Fix w3c declarations with lambda parametersKT-59722
K/Wasm: Support new encoding with flags for br_on_cast and br_on_cast_fail instructionsKT-59713
K/Wasm: Implement enumEntries intrinsicKT-59082
WASM: NullPointerException caused by companion with String type constantsKT-58941
WASM Hang with extension delegate inside a ClassKT-60200
K/Wasm: generate types without supertypes properlyKT-52178
IR dump doesn't seem to work for Kotlin/WASM phasesKT-59556
Wasm: critical dependency when using with webpackKT-58681
K/Wasm: division remainder has a wrong signKT-56711
Wasm: IllegalStateException caused by dynamic type
Compiler
New Features
KT-58551
KMP: check all annotation from expect declaration are present on actualKT-58554
KMP: restrict expect opt-in annotations and actual typealiases to annotations with special meaningKT-58545
KMP: prohibit implicit actualization via JavaKT-58536
KMP: prohibitexpect tailrec
/expect external
KT-59764
Make a frontend checker that reports cast to forward declaration as uncheckedKT-60528
Updates for JVM/IR backend of kotlin-atomicfu-compiler-pluginKT-59558
Add support for creating annotation instances with type parametersKT-52367
Devirtualization algorithm improvementKT-58652
Native: Implement frontend checkers for HiddenFromObjC on classes
Performance Improvements
KT-59600
K2: CFG: do not add edges to nested classes and functionsKT-57860
K/N: Functions with default arguments of value/inline class types have poor performance due to value class boxing
Fixes
KT-60387
K2: IDE K2: "org.jetbrains.kotlin.fir.expressions.impl.FirArgumentListImpl cannot be cast to class org.jetbrains.kotlin.fir.expressions.impl.FirResolvedArgumentList"KT-61228
False positive MUST_BE_INITIALIZED_OR_FINAL_OR_ABSTRACT_WARNING for effectively final propertiesKT-61643
"Argument type mismatch" for mixed Java/Kotlin Project with Java 21KT-62389
JDK 21: Cannot access class 'TimeUnit'. Check your module classpath for missing or conflicting dependenciesKT-56768
K2. No error description on incomplete try catch declarationKT-52220
FIR + LightTree - Consider building a single tree on parsing into LightTreeKT-60601
K2 / Maven: Overload resolution ambiguity between candidates inline methodKT-62027
"java.lang.IndexOutOfBoundsException: Empty list doesn't contain element at index 0" caused by ClassicExpectActualMatchingContext.kt when annotation@AllowDifferentMembersInActual
usedKT-62747
Wrong warning message when overriding vararg with Array during actualizationKT-62655
Don't report a warning when new members and new supertypes are added to open expect actualizationKT-62313
Kotlin/Native Compiler crash: ClassCastException in IntrinsicGeneratorKT-60902
visibility vs upper bound expect actual matching conflictKT-61095
K2: "IAE: source must not be null" from FirMultipleDefaultsInheritedFromSupertypesCheckerKT-47567
'Val cannot be reassigned' error not reported in unreachable codeKT-59468
K2: build realm-kotlinKT-62026
KMP: Correctly handle a case when annotation on expect declaration is unresolvedKT-59476
K2: build ClashForAndroidKT-59487
K2: build KSP-playgroundKT-47409
K1/K2: Investigate and align inference for equality (==) operatorKT-59393
K2: Missing TYPE_ARGUMENTS_FOR_OUTER_CLASS_WHEN_NESTED_REFERENCEDKT-62127
"NoSuchFieldError: TRUE$delegate" on referencing companion's variable in submoduleKT-62335
Improve debuggability of code generator crashesKT-61165
More than one overridden descriptor declares a default value for 'cause: Throwable?'. As the compiler can not make sure these values agree, this is not allowedKT-62263
Turn "different expect/actual members" error into a warningKT-59969
K2: Disappeared UNSUPPORTED_CONTEXTUAL_DECLARATION_CALLKT-61616
K2:IrBuiltIns.extensionToString
fails during native compilationKT-59377
K2: Missing CALL_TO_JS_MODULE_WITHOUT_MODULE_SYSTEMKT-61645
K2/KMP: Set stdlib-native before stdlib-commonMain in dependencies for shared native metadata compilationKT-61924
Native: problem with abstract fake override from AnyKT-61933
K2: "Argument type mismatch: actual type is 'Foo<kotlin/Function0<kotlin/Unit>>' but 'Foo<kotlin/coroutines/SuspendFunction0<kotlin/Unit>>' was expected
"KT-59471
K2: build multiplatform-settingsKT-56077
K2: build kotlinx.atomicfuKT-59465
K2: build kotlinx-datetimeKT-60824
K2 IDE: FirSyntheticCallGenerator: IAE: List has more than one elementKT-61856
K2: "KotlinIllegalArgumentExceptionWithAttachments" on usage of javax.validation.constraints.Email.ListKT-54792
Store program order of properties inside@kotlin
.MetadataKT-56083
K2: build ktorKT-23861
Expect annotation should not be applicable wider than the actual oneKT-59466
K2: build kotlinx-benchmarkKT-60830
KMP, K2: expect actual annotation IR checker doesn't unwrap actual typealiases to annotationsKT-61668
Put expect/actual diagnostics introduced in 1.9.20 release under 1.9 Language VersionKT-61725
KMP: Annotation matching requirement for expect/actual leads to errors for annotations with@OptionalExpectation
KT-47892
False negative BREAK_OR_CONTINUE_OUTSIDE_A_LOOP withcontinue
ininit
block insidefor
KT-61784
KMP: [DEFAULT_ARGUMENTS_IN_EXPECT_WITH_ACTUAL_TYPEALIAS] checker missed for companion functionsKT-61173
K2: FirProperty.hasBackingField is true for an expect valKT-59743
K2: erroneous binding of typealias with two type parameters to a class with one type parameterKT-60650
KMP: prohibit problematic actual typealiasesKT-61461
K2: Kotlin native metadata compilation breaks when stdlib is present in -librariesKT-61270
Enabling Kotlin/Native caching causes 65K warnings from dsymutil when building Compose iOS appKT-58229
K2/MPP/JVM: compiler codegen crash on call of inherited generic class's method with actual-typealias as value parameterKT-47702
Support call of Java annotation constructor without specifying a default valueKT-56460
K2: Do not re-run DiagnosticCollectorVisitor from FirInlineDeclarationChecker.checkChildrenWithCustomVisitorKT-55933
K2: False negative Overload resolution ambiguity for call functions with named parameters if one of params is varargKT-59548
FIR2IR: inconsistent generation of dispatch receiver for object methodsKT-55072
K2: False positive "suspension point is inside a critical section"KT-58778
JVM IR inline: add fake variables for debuggerKT-59404
K2: Missing EXPECT_TYPE_IN_WHEN_WITHOUT_ELSEKT-59830
K2. False negative [FINAL_SUPERTYPE] on extending final class through type aliasKT-60580
K2: Not supported: class org.jetbrains.kotlin.fir.types.ConeFlexibleTypeKT-59391
K2: Missing JS_BUILTIN_NAME_CLASHKT-59392
K2: Missing NAME_CONTAINS_ILLEGAL_CHARSKT-58360
Intrinsics for atomic update of array elementsKT-59165
K2: Prohibit class literals with empty left-hand sideKT-60427
K2@Metadata
annotations contain outerType/outerTypeId information for non-inner nested classesKT-59376
K2: Missing TYPECHECKER_HAS_RUN_INTO_RECURSIVE_PROBLEM_ERRORKT-55221
K2: No error reported for self-referencing local function with inferred return typeKT-59586
K2: support JVM backend diagnostics in light tree modeKT-57780
K2: Calling a constructor through a deprecated typealias doesn't report a deprecationKT-59110
K2. "NotImplementedError: An operation is not implemented." error on incorrect@Target
annotationKT-59249
K2: Empty varargs are not serialized to KLIBKT-55373
K2. Unresolved reference error for type mismatch with callable referencesKT-55955
K2: callable references are not properly resolved when in conflict with expected typeKT-60144
JVM IR inline: backport primitive boxing in class literalsKT-60779
K2: missing INTERFACE_CANT_CALL_DEFAULT_METHOD_VIA_SUPERKT-60587
K2: Implement warning NO_REFLECTION_IN_CLASS_PATHKT-61145
False negative NOTHING_TO_OVERRIDE when context receivers don't matchKT-59378
K2: Missing FINITE_BOUNDS_VIOLATION and FINITE_BOUNDS_VIOLATION_IN_JAVAKT-61163
Default params on actual check and inheritance by delegation compilation errorKT-60800
[atomicfu-K/N]: turn on the tests for the K/N part of the compiler pluginKT-61029
K2: Duplicates when processing direct overridden callablesKT-55196
K2: False-negative CONST_VAL_WITH_NON_CONST_INITIALIZER on boolean .not() callKT-60862
Kotlin Scripting: NoSuchMethodError for ExternalDependenciesResolver.addRepositoryKT-57963
K2: MPP: Annotation calls should be actualizedKT-60854
K2: IrActualizer incorrectly generates fake overrides for synthetic java propertiesKT-59665
ACTUAL_FUNCTION_WITH_DEFAULT_ARGUMENTS isn't reported for actual typealias and fake-override actualizationKT-61039
False positive ABSTRACT_MEMBER_NOT_IMPLEMENTED in K1 when expect actual super types scopes don't matchKT-61166
Inherited platform declaration clash & accidental overrideKT-60531
K2/JS: Report diagnostics before running FIR2IRKT-32275
Embedding kotlin-compiler-embeddable into a Java EE App leads to CDI related deployment errorKT-57845
K2. Unresolved reference error on calling Java references with fully qualified nameKT-58757
K2: False-positive NON_PUBLIC_CALL_FROM_PUBLIC_INLINE error in case an inline fun is protected and is a part of an internal abstract class declarationKT-59736
kotlinx.serialization + K2 + JS: e: java.lang.IllegalStateException: Symbol for kotlinx.serialization.json.internal/FormatLanguage.|-547215418288530576[1] is unboundKT-59071
K2/MPP: internal declarations from common module are invisible in dependent source sets if there is more that one intermediate source set betweenKT-61167
Runtime failure: ReferenceError: MyPromise is not definedKT-59408
K2: Missing MULTIPLE_DEFAULTS_INHERITED_FROM_SUPERTYPESKT-61409
Kotlin/Native: crash in kmm-production-sample (compose-app) with escape analysis enabledKT-57329
K/N IR linkage issues due to the combination of static caches w/ Lazy IR & Compose compiler pluginKT-59247
Kapt+JVM_IR: AssertionError on anonymous object in enum super constructor callKT-58576
K2: IR actualization problems in MPP scenarioKT-61442
K2: Consider stricter filtering on implicit integer coercionKT-61441
K2: Wrong overload is chosen with ImplicitIntegerCoercion enabledKT-59328
K2: property with compound getter and without explicit type: compilation failure, IAE "List has more than one element" at FirDeclarationsResolveTransformer.transformFunctionWithGivenSignature()KT-61159
K2: OVERLOAD_RESOLUTION_AMBIGUITY between private top-level property in same file and top-level property in different moduleKT-59233
K2: false-negative diagnostic on creating a callable reference to a function with free type variablesKT-61418
k2: ImplicitIntegerCoercion to List leads to "IllegalStateException: Cannot find cached type parameter by FIR symbol"KT-61373
False positive: "The opt-in annotation is redundant: no matching experimental API is used" with multiplatform code.KT-58884
K2: NotAMockException for mock testing with lambda expression with MavenKT-58893
K2: MockitoException for mock testing with lambda expression with GradleKT-59483
K2: Build a Native appKT-57738
K2: unresolved class fields and methods in kotlin scriptsKT-59449
K2: Diagnostic messages contain debugging-style rendered FIRKT-59849
K2: IllegalArgumentException: List has more than one elementKT-57553
Implement deprecation for open val with backing field and deferred initialization in K1KT-57230
Support Kotlin/Wasm in the K2 platformKT-59409
K2: Missing DEFAULT_VALUE_NOT_ALLOWED_IN_OVERRIDEKT-59058
Companion object is not initialized on class constructor callKT-61017
K2: intermediate expect/actual class results in expected class has no actual declaration in moduleKT-60181
K2: "NotImplementedError: An operation is not implemented" with SpringKT-59472
K2: build ReaktiveKT-54786
MPP: "LazyTypeAliasDescriptor cannot be cast to class org.jetbrains.kotlin.descriptors.ClassDescriptor" caused by expected non-constant function argument on iOS if class is type aliasedKT-59753
K2: NotImplementedError when using annotation with vararg with default value from other moduleKT-60883
K2: FixtestRequireKotlinCompilerVersion
in LV 2.0 branchKT-59747
K2: cannot actualize expect class to Unit via typealiasKT-61054
K2: "IAE: source must not be null" with -no-reflect on calling property getter with implicit invokeKT-57126
[KLIB Reproducibility] Manifest is written using os-dependent line separatorsKT-60850
K2: FIR2IR generates incorrect signature for fake overrides for common declaration if it called from a platform moduleKT-59218
K2: return types of calls to@PolymorphicSignature
methods inside try-expressions don't resolve to void when requiredKT-60002
K2: Missing UNSUPPORTED_SUSPEND_TESTKT-61011
K2 Scripts: FirRecursiveProblemChecker: Expected FirResolvedTypeRef with ConeKotlinType but was FirImplicitTypeRefImplWithoutSourceKT-58906
K2. "Backend Internal error: Exception during IR lowering" instead of CANNOT_INFER_PARAMETER_TYPE error when parameter type missing in lambdaKT-59490
K2: build km-shopKT-60163
K2: vararg annotation argument value is serialized not as an arrayKT-59355
K2: Allow to actual classifier have wider visibility than the corresponding expect classKT-56179
[K2/N]interop_objc_tests/multipleInheritanceClash.kt
test failedKT-59411
K2: Missing ENUM_CLASS_CONSTRUCTOR_CALLKT-59410
K2: Missing TYPEALIAS_EXPANDED_TO_MALFORMED_TYPEKT-59382
K2: Missing PROTECTED_CONSTRUCTOR_NOT_IN_SUPER_CALLKT-59901
K2: Disappeared API_NOT_AVAILABLEKT-60474
K2: False negative type mismatch for array literal with wrong numeric literalKT-59610
K2: Calls to annotations with default values are serialized differently in K1 and K2KT-60139
K2: Refactor handling of implicitly actual declarations (annotation & inline class constructors and property of inline class)KT-60793
K2: IllegalStateException: Expected FirResolvedTypeRef with ConeKotlinType but was FirJavaTypeRefKT-60735
K2: lateinit property diagnostic has not been initializedKT-60137
K2: Quite complicated redeclaration error description is displayed for data classesKT-60639
K2: IllegalStateException: Unsupported compile-time value GET_CLASS type=kotlin.reflect.KClass<p1.A>KT-56888
CFA: Valid green in K1 -> red in K2.catch_end -> finally -> after_try
KT-60723
K2: Nested finally block has extra jump edge if surrounding try block jumpsKT-60573
K2: False positive/negative CONFLICTING_OVERLOADS for main functionsKT-60124
K2: Conflicting declarations on extension properties with different upper-bounded type parameterKT-60259
K2: Reflection target is missing on adapted function referncesKT-59036
InstantiationError when instantiating annotation with a parameter type as a default parameter of another annotationKT-59094
K2: Fix Scripting K2 testsKT-59711
K/N: Implement enumEntries intrinsicKT-59748
K2: Return type mismatch: expected Unit, actual Any? for when with an assignment in branchKT-60154
K2: Expected some types errorKT-58139
K2/MPP/metadata: compiler FIR serialization crash on complex expression as annotation argumentKT-59485
K2: build Anki-AndroidKT-59415
K2: Missing DATA_CLASS_OVERRIDE_DEFAULT_VALUES_ERRORKT-59710
K/JVM: Implement enumEntries intrinsicKT-57984
K2/JS fails with IdSignature clash for inherited expect/actual functionKT-59398
K2: Missing NOT_SUPPORTED_INLINE_PARAMETER_IN_INLINE_PARAMETER_DEFAULT_VALUEKT-60645
Native: dynamic caches are broken on LinuxKT-50221
FIR: handle enhanced/flexible nullability inside withNullability properlyKT-59281
JVM IR inline: incorrect type of created arrayKT-59507
JVM IR inline: invocation of arrayOfNulls by function reference results in exceptionKT-58359
Allow volatile intrinsics on inline function constant argumentsKT-60598
K2: add OptIn checkers for command line argumentsKT-59766
K2: ISE: Cannot find cached type parameter by FIR symbol during the coroutines library buildKT-59644
K2: the companion object in anexpect
class requires to be explicitly defined for compileNativeMainKotlinMetadataKT-59640
K2:expect
constructor requires callingthis
orsuper
but didn't use toKT-58883
K2: False negative type mismatch for generic annotation in collection literalKT-59581
K2: Initializer type mismatch: expected Array<KClass<*>>, actual Array<KClass> in annotation parameter default value using array literalKT-59069
K2 does not report EXPECTED_CLASS_CONSTRUCTOR_DELEGATION_CALLKT-59416
K2: Missing EXTERNAL_INTERFACE_AS_REIFIED_TYPE_ARGUMENTKT-59417
K2: Missing CALL_FROM_UMD_MUST_BE_JS_MODULE_AND_JS_NON_MODULEKT-59381
K2: Missing CALL_TO_JS_NON_MODULE_WITH_MODULE_SYSTEMKT-59384
K2: Missing DYNAMIC_NOT_ALLOWEDKT-59406
K2: Missing PROPERTY_DELEGATION_BY_DYNAMICKT-60247
K2: order of data class generated member differs in IRKT-57223
K2: false-negative INAPPLICABLE_JVM_NAME on non-final properties outside interfacesKT-60183
K2: INAPPLICABLE_JVM_NAME on private methods with all-open pluginKT-60120
K2 can't get a default parameter value of expect annotationKT-57240
K2 MPP: Actualization doesn't work for flexible typesKT-60436
K2: investigate possible FirJavaTypeRef equals parameter in FirDataFlowAnalyzer.hasEqualsOverrideKT-60299
K2: when a typealias toUnit
is returned, an explicitreturn
is now requiredKT-58005
K2: Unsupported compile-time value BLOCK for Repeatable annotationsKT-60223
K2: Wrong import with import aliasKT-54854
K2. Unresolved reference for not imported declaration when it is already imported as an import alias is absent in K2KT-59738
K2: NoSuchElementException from JvmValueClassLoweringDispatcher in MPP environmentKT-59708
K2: "Property must be initialized or be abstract" occurs due to constructors orderKT-58483
K2. -Xmulti-platform flag isn't workingKT-53490
FIR: Refactor augmented assignment resolving code - fix lhs-related problems and combine similar code in array and assign operator handlingKT-59673
K2: incorrect error messageKT-58578
K2: Commonize expect-actual logic between FIR and IR actualizerKT-54989
FIR2IR: fragile code in postfix op detectionKT-59464
K2: Investigate cases of implicit type refs in Fir2IrImplicitCastInserterKT-53898
K2: False negative VAL_REASSIGNMENT on member valsKT-57641
K2: "java.lang.NoSuchFieldException: INSTANCE" in kotlin-reflect forKClass.objectInstance
on an anonymous objectKT-59299
[K2] ISE in IrBindablePublicSymbolBase.bind on equals function from companion of serializable classKT-58844
Incorrect type mismatch error: "actual type is kotlin/Int but kotlin/Int was expected"KT-59413
K2: Missing VALUE_CLASS_CANNOT_HAVE_CONTEXT_RECEIVERSKT-56173
FIR: IrGenerationExtensions cannot see default values from expect declarationsKT-59611
FIR2IR: Unsupported callable reference for enum entry with clashing nameKT-59858
Kotlin Native: Compilation failed: Sequence contains more than one matching element, org.jetbrains.kotlin.backend.konan.lower.FunctionReferenceLowering$FunctionReferenceBuilder.buildClass(FunctionReferenceLowering.kt:644)KT-58539
[K2] Ir actualization fails to match expect/actual declarations that use custom function typesKT-59775
'toString()' on Object returns different result with concatenationKT-59737
K2: Actual class 'actual class FastArrayList : AbstractMutableList, MutableListEx, RandomAccess' has no corresponding members for expected class members because of different parameter names in JavaKT-59613
K2: Unhandled intrinsic in ExpressionCodegen exception in for expect function with default value in parameterKT-59216
K2. Unhelpful unresolved reference when inheriting from interface with constructor call (K1 reports NO_CONSTRUCTOR instead)KT-59057
Revise muted tests for native backendKT-57377
K2/MPP: internal declarations from common module are inivisible for intermediate modules during metadata compilationKT-59693
MPP: linkReleaseExecutableLinux fails with IllegalStateException: Drains have not been painted properlyKT-59362
K2/MPP:.toByte()
conversion for const val causes SourceCodeAnalysisException: java.lang.NullPointerException: nullKT-51670
FIR: questionable behavior for deprecated String constructorsKT-35314
StackOverflowError with nested try-finally and function with contractsKT-53460
False positive smartcast warning in if block after if blockKT-40851
False MUST_BE_INITIALIZED_OR_BE_ABSTRACT error for a property which is initialised in the init blockKT-59695
K2: false negative NON_PUBLIC_CALL_FROM_PUBLIC_INLINEKT-41198
False positive “Variable must be initialized” with assignment in scope function and safe callKT-58901
K2. Value parameter default values are not checked for type mismatchKT-48115
Member functions with type parameter and contract don't produce smartcastsKT-59541
K2: Type checking has run into a recursive problem on code that was compiling with Language 1.9KT-58943
K2: Incorrect with K1 priority of "invokeExtension + implicit receiver" candidateKT-37375
[FIR] Incorrect invoke resolutionKT-59789
K2: self-reference does not compile anymoreKT-59286
JVM IR inline: local property not foundKT-58823
K2: Android app crashes right after start: java.lang.NoSuchMethodError: No virtual method findViewById(I)Landroid/view/ViewKT-57754
K2: No public signature built for the synthesized delegate fieldKT-58533
K2: "Not enough information to infer type variable T" for generic call in throw expressionKT-34846
FIR Java: enhance type parameter bounds properlyKT-52043
FIR: FirValueParameter with SubstitutionOverride does not reference the original FIR declarationKT-59291
JVM IR inline: unexpected result ofapiVersionIsAtLeast
invocationKT-59550
K2: synthetic property isn't seen through JavaKT-59038
[K2] IllegalStateException in mixed Java/Kotlin inheritanceKT-59489
K2: builld spring-petclinic-kotlinKT-58908
K2. Internal error "kotlin.UninitializedPropertyAccessException: lateinit property firType has not been initialized" on incompleteis
KT-56755
K2: Investigate failures related to line numbers with LT compilation enabledKT-56139
K2: consider adding source element for implicit receiversKT-57489
K2: Incorrectly generated line numbers in companion object access inside classKT-58947
Run all existing codegen box tests with kapt stub generationKT-58827
K2 reports ACTUAL_WITHOUT_EXPECT on the whole classKT-54917
K2: ILT leak from a completed generic callKT-56187
K2: type parameter's upper bound is ignored in callable referencesKT-56186
K2: lack of type arguments in type constructor is ignored in callable referencesKT-59356
K2: Restrict rules for matching of expect supertypes for actual classKT-57217
K2: NoSuchMethodError ontoChar
call on java inheritor of java.lang.NumberKT-58356
K2: StackOverflowError with OptIn and Deprecated, while compiling Kotlin projectKT-57954
K2. Auto-generated "entries" member of enum class has higher priority than user-declared companion object with same name when language version is set to 2.0KT-59508
K2: Make sure that warnings-severity nullability annotations are not perceived as reasons for nullability errorsKT-53820
FIR: mismatching error message for invisible reference/memberKT-58641
K2: PublishedApi has no effect when internal fun used in the test source setKT-59461
K2: Erroneous null check when returning not-null typealias to nullable typeKT-58980
K2: Import of java field from companion's base breaks the compilerKT-59140
K2: "Symbol public final static field is invisible" caused by java static field called in kotlin codeKT-59501
Escape analysis constructs arrays of negative sizeKT-59452
apiVersionIsAtLeast calls in body of stdlib inline function may be evaluated on compile-timeKT-53967
[PL] Classifiers: Turning interface from fun to non-fun + adding member function causes Kotlin/JS fail: IAE: "Sequence contains more than one matching element"KT-59346
Not working breakpoints on not initialized variablesKT-55993
Wrong current pointer: strange behaviour of debugger or compiler when two IFs and an uninitialized variable between themKT-58335
K2: Exposed typealias from implementation dependency produces type mismatch in dependent moduleKT-58719
K2: false-positive INVISIBLE_REFERENCE error in case of importing an internal abstract classKT-57694
K2: False positive [NOTHING_TO_OVERRIDE] for a class overriding 'sort' method from the List collectionKT-58460
K2. return without argument became allowed for functions with return type AnyKT-49249
Incorrect nullability inferred for ThrowableKT-57429
K2: Fix computing a mangled name for members of a generic class that reference the class's type parameters in their signatureKT-57566
K2: Fix name mangling for functions that have dynamic type in their signatureKT-57818
K2: Fix FirMangleComputer to not include the "special" package name into mangled names of property accessors on non-JVM platformsKT-57777
K2: Fix computing a mangled name for the synthesizedentries
property getter of an enum classKT-57433
K2: Fix computing a mangled name for top-level functions and propertiesKT-58553
k2: Annotation type arguments are lost in FIR2IRKT-58184
K2: False negative INVISIBLE_MEMBER on destructuring declarationKT-58637
K2: False negative ABSTRACT_MEMBER_NOT_IMPLEMENTED on Entry of Enum with abstract member declarationKT-54952
JvmSerializationBindings does not work with K2KT-54844
FIR/Analysis API: create stubs for equals/hashCode/toString for data classes in FIRKT-58555
K2: Generic property reference inside delegation misses type argumentKT-57648
FIR: move deprecation calculation on COMPILER_REQUIRED_ANNOTATIONS phaseKT-57049
K2 generates duplicates of symbols/declarationsKT-55723
K2: deprecations for enum entries are not resolved on the TYPES phaseKT-59033
Doesn’t support vararg parameter in annotation instantiation with empty argumentsKT-58780
JVM IR inline: local property delegation is not working for K2KT-58779
JVM IR inline: correctly process special inlined block in value class loweringKT-58720
Generate full InnerClass attributes for the standard libraryKT-58215
K2: JVM IR produces line numbers for delegation bridges that are not marked with ACC_BRIDGEKT-42696
JVM IR generates line numbers for all bridges leading to extra steps in the debuggerKT-57228
K2: annotations for interface member properties implemented by delegation are copiedKT-57216
K2: non-trivial enum declaration does not have ACC_FINAL in the bytecodeKT-55866
K2: Constant as parameter of@JvmName
: BE: "Unsupported compile-time value CALL private final fun "KT-58717
Object on the left-hand side of callable reference is not initialized ifKCallable.name
optimization is usedKT-59211
Kapt+JVM_IR: AssertionError on delegating to anonymous objectKT-57251
K2: weird error message when trying to instantiate anexpect
class without explicit constructorKT-58623
Language version 2.0: compiling into common, Native does not report "Protected function call from public-API inline function is prohibited", while JVM, JS doKT-55945
NoSuchMethodError when calling method with value class parameter on java class inherited from kotlin classKT-58840
K1/K2: false positive EXPOSED_FUNCTION_RETURN_TYPE related to protected lower boundKT-57243
K2: no warning or error reported on expect class in CLI, and JVM backend tries to generate it to a .class fileKT-57833
K2 reports NO_ACTUAL_FOR_EXPECT for inherited properties with the same nameKT-58153
K2/MPP/JVM&Native: cannot override Any::toString when an expect-supertype has Any::toString override in actual-classKT-58124
K2: FIR2IR compiler crash with MPP (Fir2IrSimpleFunctionSymbol is already bound)KT-58346
k2: false negative MUST_BE_INITIALIZED for deferred initializationKT-57803
K2. "Kotlin: Only the Kotlin standard library is allowed to use the 'kotlin' package" error missing in 2.0KT-57504
[K2/N] Wrong coercion ofILT: 7
to kotlinx.cinterop.COpaquePointer causesCannot adapt kotlin.Int to kotlinx.cinterop.CPointer
during autoboxingKT-57484
K2: false positive OVERLOAD_RESOLUTION_AMBIGUITY with ImplicitIntegerCoercionKT-57971
K1/K2: False positive "Redundant 'suspend' modifier" warning on declaration site when suspend function is also argumentKT-56779
Checkers false negative: AbstractMethodError when accessing setter via an interface where the member is defined as var, but it's val in implementationKT-51793
FIR: Investigate property+invoke resolution prioritiesKT-57003
FIR: missing annotation on parameter ofdata
class' syntheticcopy
KT-57269
K2: collection stub forsort
is not generated for custom List subclassesKT-54748
K2: incomprehensible errors when type parameter has the same name as a classKT-50703
FIR: Improve reporting UPPER_BOUND_VIOLATED for type arguments of typealias constructor callsKT-57622
Fix incorrect metadata for data class generated methodsKT-54887
K2: fix behavior of references to value classes equals/hashCode/toStringKT-58937
K2: Annotation vararg arguments are incorrectly serializedKT-58621
K2: Private class shadows public function defined in the same packageKT-59041
K2. "IllegalStateException: Expected FirResolvedTypeRef with ConeKotlinType but was FirImplicitTypeRefImplWithoutSource " on incorrect collection declarationKT-58665
K2: Optional.of incorrectly accepts nullable StringKT-58938
K2. Abstract class can be invoked using member reference::
operatorKT-50798
FIR: False negative UPPER_BOUND_VIOLATED_IN_TYPEALIAS_EXPANSIONKT-58944
K2. StackOverflowError on incorrect intersection typesKT-59241
K2: broken inference of DNN typesKT-58294
K2 compiler crashes with OOM on deserializing annotation applied to itself with a enum outer/nested parameterKT-58972
K2: Error message of PRIVATE_CLASS_MEMBER_FROM_INLINE doesn't mention class membersKT-58989
K2: Forbid suspend operator get/setValue and provideDelegateKT-59177
K2: Report NAMED_ARGUMENTS_NOT_ALLOWED for named parameters in lambdasKT-57028
K2: "NSEE: Sequence contains no element matching the predicate" with stream related Java apiKT-58007
K2: Unsupported compile-time value GET_FIELD FIELD PROPERTY_BACKING_FIELD when const value is default for annotationKT-58472
Secondary constructor breaks MUST_BE_INITIALIZED checkKT-59022
Make is and as behaviour consistent in NativeKT-58902
K2: Calls to overridden method with default parameter are not compiledKT-58549
K2: variable type is infered to non-existing interfaceKT-58613
K2: ConcurrentModificationException from FirSignatureEnhancement.performFirstRoundOfBoundsResolutionKT-55552
K2. False negative TYPE_MISMATCH in implementation via delegationKT-57436
Fix computing mangled names of generic properties from IR-based declaration descriptorsKT-58543
[K2/N] Rewrite native MPP tests to avoid expect actual in same moduleKT-57701
Unify selection of inherited callable with default implementation among multiple candidates in JVM, Native & JS backendsKT-58444
K2/MPP/metadata: compiler FIR2IR crash on constant with intrinsic initializer from common source set in Native-shared source setKT-57756
K2: Missing syntax errors when light tree parsing is usedKT-57435
Fix computing mangled names for functions with context receiversKT-57219
K2: incorrect relative order of normal and use-site-targeted annotations on property getter in the resulting bytecodeKT-57955
K2: "ClassCastException: class org.jetbrains.kotlin.ir.declarations.impl.IrExternalPackageFragmentImpl cannot be cast to class org.jetbrains.kotlin.ir.declarations.IrDeclaration" with property delegateKT-58583
K2: false-positive invisible reference error on nested anonymous object literal extending a protected nested classKT-57425
K2: False-positive smartcast on property accessed through a property from another moduleKT-57844
K2. Not relevant errors when accessing Java member which have private overloads with argument type mismatchKT-58584
K2: "UninitializedPropertyAccessException: lateinit property packageFqName has not been initialized"KT-58529
K2: "Extension function type is not allowed as supertypes" compile errorKT-58379
K2: NEW_INFERENCE_ERROR in sortedBy call with exception in branchKT-58284
K2: False negative ITERATOR_MISSINGKT-55078
K2 IDE: Infinite recursion inorg.jetbrains.kotlin.fir.java.JavaScopeProvider#findJavaSuperClass
KT-58080
K2: False-positive TYPECHECKER_HAS_RUN_INTO_RECURSIVE_PROBLEM on annotated const valKT-58674
K2: No expected type for while loop conditionKT-56523
K2 should report MANY_INTERFACES_MEMBER_NOT_IMPLEMENTEDKT-58238
Support dumping signatures and mangled names in irText testsKT-58456
K2: Custom function type metadata breaks Compose library compatibilityKT-58267
K/N: do not reference hidden Array.content* functions from the compilerKT-57791
Native: Method returning String? leads to exception: Unexpected receiver type: kotlin.StringKT-58437
K2: Do not use descriptors in KonanSymbolsKT-57432
K2: Don't create default getters and setters in case when they are not neededKT-46047
FIR: incorrect type of integer literalsKT-57487
[K2/N] Stdlib ArraysTest fails withClass found but error nodes are not allowed
KT-56951
K2: False negative error on compound assignment for property of type ByteKT-57222
K2: compiler FIR serialization crash on two functions with captured type and object literalKT-58224
K2: deprecation on field is not detected properlyKT-55662
K2. Incorrect type mismatch error "inferred type is IOT" instead of "inferred type is Int"KT-55668
K2. 'in' modifier became applicable to star projectionKT-57064
K2: hidden internals of dealing with type-aliased primitive types are exposed to userKT-58252
K2: Symbol already bound for backing field during building resulting JS artifact for MPP projectKT-56940
K/Wasm: report compiler errors for unsupported external declarationsKT-56943
K/Wasm: implement@WasmImport
diagnosticsKT-55903
K2: False negative CANNOT_CHECK_FOR_ERASED on is-check for type with reified type argumentsKT-56944
K/Wasm: implement@JsFun
diagnosticsKT-58329
K2: False-positive suspend conversion for anonymous functionsKT-58028
K2: False-positive TYPE_PARAMETER_IS_NOT_AN_EXPRESSION
Docs & Examples
KT-60545
Documentation change on Interoperability with Swift/Objective-C: highlight that it is not normal to suppress errorsKT-50927
Kotlin / Docs: Delete all the information about old Kotlin/WasmKT-61398
Advertise hierarchy templates in 1.9.20-Beta what's new
IDE
New Features
KTIJ-23199
K2 IDE: Improve Import quick fix descriptionKTIJ-26056
Support highlighting of KNM files
Performance Improvements
KTIJ-26688
UAST: optimize methodNameCanBeOneOf
Fixes
KTIJ-26782
Internal error while highlighting "AndroidHighlighterExtension does not define or inherit highlightDeclaration"KTIJ-27188
Bundled DevKit plugin + 1.9.20-Beta* constantly throws exceptions when opening another plugin codebaseKTIJ-25220
Kotlin not configured dialog does not show if Kotlin stdlib is anywhere on classpathKTIJ-25563
Failed cinterop task becomes UP-TO-DATE and successfully passes on the second importKTIJ-26536
IDE in Java file resolves to property with the same name instead of method in the nested class from libraryKTIJ-25126
K2 IDE. No import quickfix for Java static membersKT-60341
K2 IDE: "UnsupportedOperationException: Unknown type CapturedType(*)?"KTIJ-25960
K2 IDE: KDoc references to static java methods are not resolvedKTIJ-7642
HMPP, IDE: False positive ''suspend' modifier is not allowed on a single abstract member' for common code if JVM target presentKTIJ-25745
K2 IDE: "Type info" intention shows the return type of a functional type instead of the functional type itselfKTIJ-26501
K2: IDE K2: False positive unused import when declaration used for vararg parameter typeKTIJ-26661
K2 IDE. PIEAE “Element class CompositeElement of type FUN” after removing/putting back function with operator modifierKTIJ-26672
K2 IDE: false positive in optimize import for ambiguity callsKTIJ-26760
K2 IDE: OVERLOAD_RESOLUTION_AMBIGUITY false positiveKTIJ-26867
K2 IDE: rename refactoring doesn't rename subclasses if they are used in import directivesKTIJ-26848
K2 IDE: index inconsistency in case of "" nameKTIJ-26666
K2 IDE: changed FirFile is treated as fully resolved after in-block modificationKT-59836
Symbol Light Classes: Type parameters from the parent interface aren't copied to DefaultImpls methodsKT-28611
MPP: Gradle -> IDE: settings provided viacompilations
DSL are not imported into common modules facetsKTIJ-25448
When project JDK is less than one defines in jvmToolchain block, run with Idea fails withhas been compiled by a more recent version of the Java Runtime
KT-60603
K2: Investigate intellij tests failures in branch 2.0KTIJ-25364
K2 IDE: References to Java records are red: OVERLOAD_RESOLUTION_AMBIGUITY, UNRESOLVED_REFERENCEKTIJ-24390
Kotlin assignment plugin: Imports are not recognized in build logic .kt files for Gradle buildKT-60590
Fix light classes related tests in branch 2.0KT-60530
K2 scripting: exception on .gradle.kts openingKT-60539
K2: "KtInaccessibleLifetimeOwnerAccessException: org.jetbrains.kotlin.analysis.api.lifetime.KtReadActionConfinementLifetimeToken@3ce52fd9
is inaccessible: Using KtLifetimeOwner from previous analysis" at highlightingKTIJ-26276
K2 IDE: Optimize import drops used import aliasKT-60518
K2 IDE. False positive [NON_MEMBER_FUNCTION_NO_BODY] when completing function withComplete current statement
KT-60323
K2 IDE. "KotlinExceptionWithAttachments: Unexpected returnTypeRef. Expected is FirResolvedTypeRef, but was FirImplicitTypeRefImpl" exception on contract return typeKT-60352
K2 IDE. Support Java RecordsKT-56503
K2 IDE: FIR tree is incorrect in a case of ProcessCancelledException was thrown during phase executionKTIJ-25653
K2 IDE. "KotlinExceptionWithAttachments: Containing function should be not null for KtParameter" exception on incorrect derived class declarationKT-59843
SLC:KotlinAsJavaSupport.packageExists
(viaKotlinStaticPackageProvider
) said ROOT package doesn't exist if noKtFile
s are givenKTIJ-26206
Support retrieving KtType from annotation constructor calls on getters and settersKT-59445
Recursion detected on input: JavaAnnotationImplKTIJ-26066
K2 IDE. "KotlinExceptionWithAttachments: Unexpected returnTypeRef. Expected is FirResolvedTypeRef, but was FirImplicitTypeRefImpl" on attempt to set contractKTIJ-26085
K2 IDE: treat psi modification of a contact inside a body as OOBMKTIJ-25869
K2 IDE. Expected FirResolvedTypeRef for return type of FirValueParameterImpl(Source) but FirImplicitTypeRefImplWithoutSource was foundKTIJ-24272
K2 IDE: "Expected some types"KTIJ-24730
K2 IDE. IllegalStateException on absence of opening bracket in main() functionKT-59533
AA/SLC: anonymous object appears during PsiType conversion, resulting in IllegalArgumentException:KtFirPsiTypeProviderKt.asPsiTypeElementKT-59563
Symbol Light Classes: Incorrect type erasure in $annotations methods for extension properties with generic parametersKT-57567
SLC: missingfinal
modifier on enum (non-synthetic) membersKT-59537
SLC: SymbolLightClassForAnonymousObject with null parentKTIJ-24121
K2 IDE. "failed to convert element KtLightField" when trying to declare property after function that has return with type mismatchKTIJ-25335
K2 IDE. "failed to convert element KtLightField:" on attempt to set property in class with constructorKT-59293
Symbol Light Classes: DefaultImpls methods must be static and have an additional $this parameterKTIJ-25976
K2 IDE: Fix "Unsupported compiled declaration of type" for type parametersKT-59325
Symbol Light Classes: Non-existing fields for properties from companion objectsKT-57579
SLC: unboxed type argument as method return typeKT-54804
Generate synthetic functions for annotations on properties in light classesKT-56200
Kotlin FIR reference resolve exception leaks user codeKT-58448
K2 / IDE / SLC:findAttributeValue
for attribute w/ default value raises ClassCastException
IDE. Completion
Fixes
KTIJ-26518
K2 IDE: Code completion does not insert import when completing a type in the vararg positionKTIJ-26713
K2 IDE: Code completion does not insert import when completing a type inside a functional typeKTIJ-26597
K2 IDE: "Change return type" quick fix adds full qualified name to anonymous functionKTIJ-26384
K2 IDE: Extension functions completion should recognize context receiversKTIJ-26419
K2 IDE: Completion in anonymous function inside when branch expression does not account for smart castKTIJ-26629
K2 IDE: Completion of types in anonymous function return is not shortenedKTIJ-26599
K2 IDE: Typingdo ... while
statement: InvalidFirElementTypeException: "For DO_WHILE with text... FirExpression expected, but FirDoWhileLoopImpl found"KTIJ-26113
K2 IDE: Completion in when branch does not account for smart casts ifelse
branch is presentKT-60451
K2 IDE: FirDeclaration was not found for class org.jetbrains.kotlin.psi.KtProperty, fir is class org.jetbrains.kotlin.fir.expressions.impl.FirBlockImplKTIJ-21103
FIR IDE: implement completion In KdocKTIJ-24096
K2 IDE: Completion should insert the fully-qualified class name when the short class name clashes with a name from scopeKTIJ-25116
K2 IDE: Name shortening in constructor's parameters affects constructorKTIJ-19863
Bad completion variants inside annotations
IDE. Decompiler, Indexing, Stubs
KTIJ-26706
Bytecode viewer: "IllegalStateException: Couldn't find declaration file" for a file with a delegated property with inline accessor in another moduleKTIJ-25465
IDE hangs when indexing Kotlin projectKTIJ-25979
K2 IDE: 'java.lang.IllegalStateException: Attempt to load decompiled text, please use stubs instead' exception if navigate to the decompiled KGP sourcesKTIJ-25985
Stub mismatch for names with special characters
IDE. Gradle Integration
KTIJ-25334
Gradle 8.1: Unresolved references in IDE for build.gradle.ktsKT-61777
Explicit API mode isn't reflected in IDE settings unless every task is configured with GradleKTIJ-26306
apiLevel (API version) for Kotlin/Native modules is set to 1.8 with KGP 1.9 and IDE Plugin 1.9.0-XXX, if the compiler bundled to IDE Plugin is still 1.8KT-61172
MPP: Stacktraces of diagnostics are always printed during IDEA syncKT-48554
[Multiplatform Import] Ensure consistency betweenGradleImportProperties
andPropertiesProvider
KT-36677
MPP Gradle plugin doesn't respect manually set compiler arg-opt-in
KT-58696
MPP + IDEA: tryK2 does not affect LV value of common facetsKT-53875
Warn users about erroneously adding dependsOn fromtest
tomain
KTIJ-23890
Gradle to IDEA import: "You are currently using the Kotlin/JS Legacy toolchain" balloon is shown when I actually use IR
IDE. Gradle. Script
KTIJ-25523
Scripts: support for standalone configuration flagKTIJ-25910
Scripts: transition to GistStorageKTIJ-26778
Gradle 8.3: some parts of build.gradle.kts look unresolvedKTIJ-26308
IAE “Unable to find script compilation configuration for the script KtFile: build.gradle.kts” on reopening project with build.gradle.ktsKT-60171
K2 IDE: scripting freeze on kotlin project build.gradle.kts fileKT-60236
K2 scripting: completion fails with exceptionKT-59801
K2 IDE: Adding of an import with a task name to a build script leads to unresolved referencesKT-60749
Scripting: default definition as a fallbackKT-60199
K2 scripting: exception on script openingKT-60193
K2 scripts: configuration discovery fails silently from time to time
IDE. Hints. Parameter Info
KTIJ-26824
K2 IDE: "Parameter Info" shows incorrect overload as selected
IDE. Inspections and Intentions
New Features
KTIJ-26302
K2 IDE: Support adding a@OptIn
annotation and suggesting to propagate opt-in requirement in quickFixesKTIJ-25002
Provide a quick fix to migrate use-site 'get' annotations on getters
Fixes
KTIJ-24832
K2 IDE: 'Redundant qualifier name' false positive for nested classes from supertypes on the outside of a classKTIJ-26103
K2 IDE: False positive in redundant qualifier inspectionKTIJ-26024
K2 IDE: False positive "Redundant qualifier" inspection on a nested class which extends its outer classKTIJ-26576
K2 IDE: "Redundant qualifier" false positive with referring parent's subclass in type constraintKTIJ-26785
K2 IDE: False positive "Redundant qualifier" inspection in extension function for Java interface with nested interfaceKTIJ-26695
K2 IDE. False negative "Redundant qualifier" directive for invoke function from objectKTIJ-26627
K2 IDE: False positive "Redundant qualifier" inspection on extension property called on object when other 'this' is present in scopeKTIJ-23407
K2 IDE. False positive unused import directive for invoke function from objectKTIJ-26808
K2 IDE. "Redundant qualifier" inspection on the receiver of static method from Java may change semantic when receiver is not direct parentKTIJ-26840
K2 IDE. False positive "Redundant qualifier" inspection when accessing companion object member inside anonymous object and there is a name clashKTIJ-26498
KMP: Create expect-actual dialog selects incorrect path on WindowsKTIJ-24877
K2 IDE. False negative unused import directive when declaration is available in file indirectlyKTIJ-25368
K2 IDE. Specify type explicitly intention does not work with Java records
IDE. JS
KTIJ-25023
K/JS: Remove balloon warning about migration to IR backend
IDE. Libraries
KTIJ-13660
MPP library: No gutters forexpect
andactual
symbols
IDE. Misc
KT-60053
IdeaKotlinBinaryCoordinates doesn't respect capabilities and classifier attributes
IDE. Multiplatform
Fixes
KTIJ-26700
KMP: false positive report of non matching expect and actual annotations if annotation is actual typealiasKTIJ-25997
KotlinMPPGradleTestTasksProvider: Support jvm targets with other names (such as android)KT-61686
Check and update places in compiler and IDE where we are saying that MPP is experimental/Beta/AlphaKTIJ-27058
Wizard's KMM application failed to build in 232 ASKT-59760
[BUG] Use bundled version of Kotlin IDE Plugin in KMM Tests instead of customKT-61520
Sources.jar is not imported for common and intermediate source-sets from the MPP libraryKTIJ-25842
MPP: New create expect/actual dialog uses deprecated location for android instrumented actual counterpartKTIJ-25746
MPP: Unable to distinguish android unit and instrumented tests in new create expect/actual dialog if instrumented tests are depends on commonKT-60410
Add minimum supported KGP version in intellij.git infrastructureKT-59794
Bump used KGP in multiplatform intellij.git tests after release 1.9.0KT-59518
Cherry-pick old-import tests into 231-1.9.0/masterKT-56736
Investigate how-to run multiplatform tests on real devicesKT-59519
Bump AGP versions in intellij.git tests in masterKTIJ-25591
MPP: Create expect/actual dialog doesn't allow selecting all targetsKT-56684
Adopt KMM UI tests to be used with IDEAKT-50952
MPP: Commonized cinterops doesn't attach/detach to source set on configuration changes
IDE. Navigation
KT-61894
Navigation from java sources leads to Kotlin decompiled code in case of suspend functionKTIJ-27053
Value parameters documentation of expect isn't shown in actualsKTIJ-26292
Documentation for expect/actual comes from a random actualKTIJ-26441
K2 IDE: navigation doesn't work when type parameters are missed in annotation callKTIJ-26566
K2 IDE: don't show no-name parameters in presentationsKTIJ-25366
K2 IDE. Go to declaration of Java record shows record and constructor
IDE. Refactorings. Rename
KTIJ-25762
K2 IDE. label rename doesn't change it's name in usages after rename refactoring
IDE. Script
KTIJ-25989
java.lang.NullPointerException: Cannot invoke "com.intellij.openapi.vfs.VirtualFile.getPath()" because the return value of "java.lang.ThreadLocal.get()" is nullKT-60519
Analysis API: scripts are not invalidated on PCEKTIJ-26670
K2 Scripts: We should be able to find a symbol forKTIJ-25731
KtAssignResolutionPresenceService is not available as a service in 231-1.9.20KT-60307
K2 IDE. KotlinExceptionWithAttachments in script file
IDE. Wizards
KTIJ-27005
Wizards 232: Fix generated kotlin version for 1.9.20-BetaKTIJ-26846
Adjust compatibility data for 1.9.20 releaseKTIJ-26479
1.9.20: Update versions in wizardsKT-59347
Rename Compose Multiplatform wizard to Compose for Desktop
IR. Interpreter
KT-60467
"InternalError: Companion object * cannot be interpreted" caused by java's package nameKT-60744
Restore binary compatibility of toIrConst function
IR. Tree
KT-59771
Restore compatibility of IdSignature.CommonSignatureKT-59772
Restore compatibility of IrFactory#createFunctionKT-59308
Auto-generate the IrFactory interface
JS. Tools
KT-44838
Kotlin/JS source-map-loader slow performance since 1.4.0
JavaScript
New Features
KT-58684
KJS: ES15 classes — creating instance by class
Performance Improvements
KT-58187
KJS / IR: Huge performance bottleneck while generating sourceMaps (getCannonicalFile)
Fixes
KT-60425
Kotlin/JS compiler incorrect behavior for object singleton with CompleteableDeferredKT-62790
java.lang.ClassCastException in compiler when ::class is usedKT-60495
K2: Make JS CliTestGenerated working with K2KT-6168
Ability to generate one JS file for each Kotlin source fileKT-60667
K2 / KJS: jsTest fails with "SyntaxError: Unexpected token '}'" on runtimeKT-61581
KJS: generate separate imports for useEsModules()KT-56737
K2: build Space JSKT-59001
K/JS: Use open-addressing hash map in JS stdlibKT-60131
KJS: Interference between@JsExport
and final implementation of propertiesKT-59712
K/JS: Implement enumEntries intrinsicKT-60202
JsExport.Ignored internal extension still has "JavaScript name () generated for this declaration clashes with another declaration"KT-51333
KJS: someKType
equalsNothing
'sKType
throws an exception, breaking its symmetryKT-58857
KJS/IR: js file is not generated when source is stored in /var folderKT-53482
KJS: Inheritance from JS class fails in ES6, because constructor is not called with newKT-58891
K/JS: non-local return in lambda may leave an unreachable JS code after returnKT-49077
KJS / IR: Wrong method called when using overloaded methods and class with the same nameKT-59718
K/JS: Concatenating a String with a Char can lead to boxing of the CharKT-59717
K/JS: a redundant boxing of a returned Char from an inline functionKT-39506
Kotlin/JS browser application using JS IR and React fails in runtime with "TypeError: _this__0._set_name__2 is not a function"KT-59151
K2 / KJS: NullPointerException in Fir2IrClassifierStorage.preCacheBuiltinClassesKT-59335
K/JS ES6 classes: A child constructor, when using parent secondary constructor super call, creates a parent objectKT-58797
Optimize the code generated for objects on JS and Wasm backendsKT-52339
FIx failing JS tests after bootstrap updateKT-46643
KJS / IR: Setter of overridden var of external val is removedKT-55315
IR: can't access thestack
property ofThrowable
KT-59204
Automatically generate NATIVE directive in tests for IR signaturesKT-59239
K/JS: Bridge not generated for checking parameter type in generic class overrideKT-57347
KJS: BE IR Incremental cache invalidation doesn't work after inserting Partial Linkage stubKT-58599
KJS: Adding an override method to open class does not rebuild children JS codeKT-58003
K2/MPP/JS: compiler IR serialization crash on multiple calls to inherited expect-functionKT-38017
KJS: tests generate invalid code depending on file namesKT-25796
KJS: Top-level constructs are put in an incorrect orderKT-58396
KJS / IR: "IllegalStateException: Validation failed in file" with Enum.entries and inheritance
KMM Plugin
KTIJ-27158
Import is failing after creation of new module if project don't use versionCatalogKT-59492
KMM AS plugin for Canary 231 reports error
Klibs
KT-58877
[klib tool] add ability to dump klib irKT-54402
Programmatic API to dump public signatures from KLibsKT-60576
Keep supported IR signature versions in manifestKT-59136
[PL] Lower the default PL engine messages log level down to INFOKT-59486
klib: Serialize mangled names along with signatures
Language Design
KT-22841
Prohibit different member scopes for non-final expect and its actualKT-49175
Inconsistency with extension super-type allowance between suspend / non-suspend function typesKT-61573
Emit the compilation warning on expect/actual classes. The warning must mention that expect/actual classes are in BetaKT-57614
KMP: consider prohibitingactual typealias
when the correspondingexpect class
has default argumentsKT-27750
Reverse reservation of 'yield' as keyword
Libraries
New Features
KT-59440
Rework Flags API in kotlinx-metadata-jvm
Fixes
KT-62381
K/Wasm: (re)publish libraries with 1.9.20-Beta2 (or newer if available)KT-62656
Drop@AllowDifferentMembersInActual
from stdlibKT-58887
Reflection: "IllegalArgumentException: argument type mismatch" when using reflection to invoke a value class returning function that suspendsKT-61507
Native: enum hashcode is not finalKT-56106
Migrate stdlib to current Kotlin Multiplatform PluginKT-58402
Migrate Vector128 from kotlin.native to kotlinx.cinteropKT-60911
Compatibility publishing of kotlin-stdlib-commonKT-53154
Deprecate enumValues and replace it with enumEntries in standard libraryKT-58123
Update deprecations in native atomic classes for 1.9.20KT-60444
transformJvmMainAtomicfu fails with java.lang.NoSuchMethodError: 'kotlin.Metadata kotlinx.metadata.jvm.KotlinClassMetadata.getAnnotationData()'KT-61342
kotlin-test-wasm-* artifacts include test codeKT-61315
Publish common sources in kotlin-test-js sources jarKT-56608
WASI Preview1 version of Kotlin/Wasm stdlibKT-55765
Review and stabilize stdlib surface available in K/NKT-55297
kotlin-stdlib should declare constraints on kotlin-stdlib-jdk8 and kotlin-stdlib-jdk7KT-57838
Native: raise ExperimentalNativeApi opt-in requirement level to ERRORKT-61028
Behavioural changes to the Native stdlib APIKT-61024
Native: Mark the kotlin.native.CName annotation with ExperimentalNativeApiKT-61025
Native: Deprecate HashSet.getElement() with WARNINGKT-53791
Publish standard library as a multiplatform artifact with Gradle metadataKT-57363
Remove reified constraint from Array constructors in platforms where Array type parameter is not required to be reifiedKT-57401
Native: Regex matching zero length should split surrogate pairsKT-57359
Provide Common StringBuilder.append/insert with primitive type argumentsKT-58264
K2: republish kotlinx.metadata to support LV 2.0KT-57710
Native: Internalize@Retain
and@RetainForTarget
annotationsKT-57720
Native: Consider strictening NativeRuntimeApi opt-in requirement level to ERRORKT-57837
Deprecate kotlin.native.SharedImmutable and kotlin.native.concurrent.SharedImmutableKT-58126
Wasm: Consider removing Primitive.equals(Primitive) overload on primitive typesKT-53327
Migrate all usages of 'Enum.values' to 'Enum.entries' in standard libraryKT-59366
Deprecate KmModule.annotationsKT-59365
Get rid of two-stage parsing in KotlinClassMetadataKT-35116
Enum.valueOf throws inconsistent exception across multiple platformsKT-59223
Native Enum.hashCode should return identity hash code, similar to JVMKT-56637
Native: 'String.indexOf' matches byte sequences not on the char boundary, which also makes the result of 'split' and 'replace' operation incorrectKT-59192
Align behavior of collection constructors across platforms
Native
New Features
KT-50463
Native: Provide a way to control the KONAN_DATA_DIR by the Gradle mechanismsKT-59448
K2: IR and FIR signatures are not same for composable functions
Fixes
KT-60230
Native: "unknown options: -ios_simulator_version_min -sdk_version" with Xcode 15 beta 3KT-62532
Support Xcode 15.0 frameworks as Kotlin/Native platform librariesKT-61382
Linking XCFramework fails with error: Invalid record (Producer: 'LLVM11.1.0' Reader: 'LLVM APPLE_1_1300.0.29.30_0')KT-61417
Native: string and array variables are not properly displayed in lldb when compiling with caches with Xcode 15KT-60758
Native: Building for 'iOS-simulator', but linking in dylib built for 'iOS' in Xcode 15 beta 4KT-59149
Native: check compiler compatibility with Xcode 15 beta 1KT-58537
iOS project fails to build with rootProject.name = "Contains Space"KT-59073
Native: don't include kotlinx.cli endorsed library into compiler distributionKT-58707
[K/N] Compiler crash building generics with redundant castKT-58654
Compiler error from kotlin.collections.Map : "Invalid phi record", while compiling for kotlin native
Native. C Export
KT-56182
[K2/N] C export doesn't work for non-root packages with K2
Native. C and ObjC Import
KT-59642
Remove ability to import forward declaration by library package nameKT-59643
K2: Disable merging of forward declaration with real declaration classKT-52882
MPP / Native: expect/actual mechanism broken when base contract is NSObjectProtocolKT-55578
Custom user message for linker errorKT-58585
[K2/N] Fix interop issuesKT-56041
[K2/N] Fix broken __builtin_nanf(String)KT-57716
[K2/N] Validation failed in file smoke.kt : unexpected type: expected platform.objc.Protocol?, got objcnames.classes.Protocol?KT-56028
[K2/N]cnames.structs.Foo
does not resolveKT-59645
Cast to objective C forward declaration crashes compilerKT-58793
[K2/N] Package separators after mangling are different for IR and FIR
Native. ObjC Export
KT-56090
[K2/N] Emit DocString klib extensions for ObjCExport
Native. Runtime. Memory
KT-61914
Kotlin/Native: massive increase in memory usageKT-61092
Kotlin/Native: Adjust initial values for expected heap sizeKT-61091
Kotlin/Native: GC scheduler pauses mutators too aggressivelyKT-61741
Kotlin/Native: tsan error in parallel markKT-57773
Kotlin/Native: track memory in big chunks in the GC schedulerKT-61089
Kotlin/Native: fix concurrent weak processing for new allocationsKT-55364
Implement custom allocator for Kotlin/NativeKT-57772
Kotlin/Native: concurrently process weak references in GCKT-57771
Kotlin/Native: parallel mark in GC
Native. Stdlib
KT-60608
Introduce AtomicArrays API in K/N stdlibKT-59120
Native: Rewrite stdlib AtomicReference with Volatile instead of custom C++ code
Reflection
KT-47973
Reflection: "IllegalArgumentException: argument type mismatch" when using callSuspend to call a function returning value class over primitiveKT-41373
"KotlinReflectionInternalError: Unresolved class" when inspecting anonymous Java classKT-61304
Reflection: Calling data classcopy
method via reflection (callBy) fails when the data class has exactly 64 fieldsKT-52071
Continue gracefully when the system property check "kotlin.ignore.old.metadata" fails
Tools. CLI
KT-60662
Add JVM target bytecode version 21KT-58183
ParseCommandLineArgumentsKt.parseCommandLineArguments takes ~500msKT-58690
OutOfMemory when compiling in CLIKT-58065
K2: Enable light tree instead of PSI for CLI compilation of JS and Native by default
Tools. CLI. Native
KT-59245
[K1/N] Compile sources to native binary in two stagesKT-56855
[K2/N] Command-line compiler doesn't support compiling sources directly to a native binary (without intermediate klib) with-language-version 2.0
KT-58979
[K2/N] FIR frontend cannot resolve symbols from resolved klib having non-normalized path
Tools. Commonizer
KT-59302
Commonizer: make sure that opt-in annotation generated by cinterop made it into commonized artifactKT-62028
False positive "Unnecessary '@OptIn
' Annotation" for ExperimentalForeignApiKT-55757
kotlinx.cinterop.UnsafeNumber
: empty opt-in messageKT-59859
Change the OptIn Level to Error for kotlinx.cinterop.UnsafeNumberKT-59132
K2/Native/CInterop: [UPPER_BOUND_VIOLATED] Type argument is not within its bounds: should be subtype of 'kotlinx/cinterop/CPointed'KT-58822
Kotlin Gradle Plugin: migrate tests off native deprecated targetsKT-47641
Enabled cInterop commonization triggers native compilation during Gradle sync in IDE
Tools. Compiler Plugin API
KT-58638
K2: Annotations generated by IR plugins are not included into metadataKT-61872
K2: Adding annotations to metadata from backend plugin doesn't work in the presence of comments on annotated declarationKT-61833
K2: annotations added viaaddMetadataVisibleAnnotationsToElement
to declarations from common sourceset in MPP project are invisibleKT-60051
K2: Support metadata serialization of primitive const annotation arguments generated by IR plugins
Tools. Compiler Plugins
KT-61550
[atomicfu-compiler-plugin]: check that atomic properties are declared as private or internal valKT-58079
K2/atomicfu: JVM IR transformer crash on atomic extension functionsKT-61293
Usage of atomicfu compiler plugin leads to UnsupportedClassVersionError if Gradle runs on JVM <11KT-55876
K2. "[Internal Error] java.lang.NoClassDefFoundError: org/jetbrains/kotlin/com/intellij/openapi/util/UserDataHolderBase" when project with languageVersion 2.0 is Built and Run using Intelij IDEAKT-58049
K2: Smartcast of nullable property fails when Spring compiler plugin is presentKT-57468
Kotlin assignment plugin: operation name cannot be found for reference
Tools. Compiler plugins. Serialization
KT-58501
K2/MPP/serialization: several classifier kinds seem to miss generated serializer functions when compiled to K/JS and K/Native targetsKT-59768
kotlinx.serialization + K2 + JS/Native: Support meta-annotations on sealed interfaces with user-defined companions
Tools. Gradle
New Features
KT-59000
Default standard library dependency should use the single artifact for all targetsKT-57398
Add ability to run compilation via build-tools-apiKT-34901
Gradle testFixtures don't have friendPaths setKT-44833
Gradle DSL: AddlanguageSettings
accessor tokotlin
extension that applies to all source setsKT-58315
Add build metrics for Kotlin/Native task
Performance Improvements
KT-62318
Android Studio sync memory leak in 1.9.20-BetaKT-62496
Configuration time regression with KGP 1.9.20-Beta caused by loading of propertiesKT-61426
Enabling compilation via the build tools API may cause high metaspace usage
Fixes
KT-61359
"Unresolved reference: platform" when enabling Gradle configuration cacheKT-59826
Update SimpleKotlinGradleIT#testProjectIsolation to run on Gradle 8KT-57565
Add ability to capture classpath snapshots via the build-tools-apiKT-51964
Optimizekotlin.incremental.useClasspathSnapshot
feature to improve incremental Kotlin compilationKT-61368
Native compiler option 'module-name' isn't available within the compilerOptions extension for native target while configuring it inside compilationsKT-61355
freeCompilerArgs arguments and its values are passed to the compiler 5 times if added through target-level compilerOptions{} extension inside compilationsKT-61273
KGP: TaskOutputsBackup.createSnapshot was failed by IOException sometimesKT-58987
Use some available JVM target if there's no JvmTarget for the inferred toolchain versionKT-58234
Kotlin Gradle Plugin: Deprecate and remove KotlinCompilation.source APIKT-61401
The reported language version value for KotlinNativeLink tasks in build reports and build scans is inaccurateKT-54231
Compatibility with Gradle 8.0 releaseKT-61950
K/Wasm: Add warning about changed sourceSetsKT-61895
KotlinTopLevelExtension.useCompilerVersion is not marked as experimentalKT-61303
The module-name value stays unchanged when configuring it through compiler options extension specific to the android targetKT-61194
MPP compiler options: part of JsCompilerOptions set up using js { compilerOptions {} } extension is lostKT-61253
CompileExecutableKotlinJs task is skipped while configuring LV either using sourceSets.all {} or both js compiler options extension and base multiplatform compiler options extensionKT-59588
Upgrade max gradle version to max supported in kapt connected testsKT-61292
Gradle: compilation tasks may capture wrong build directory when build directory is changed after task configurationKT-61193
Flag kotlin.experimental.tryK2 doesn't set LV 2.0 for tasks of kotlin-js gradle pluginKT-60541
Possibility to create a custom usableKotlinCompile
task without using internalsKT-59451
[K2][1.9.0-Beta] "Errors were stored into ..." log files never actually existKT-48898
Can't suppress warnings by Optin() in KMM build.gradle.kts or IDEA settingsKT-60660
konan.data.dir property not provided for K/N Gradle project build (on Linux or Mac) with a dependency from a MavenKT-56959
K2: Set up Ktor repo performance benchmarks with K2 enabledKT-56178
Compatibility with Gradle 8.1 releaseKT-61457
Kotlin Gradle Plugin should not use internal deprecated StartParameterInternal.isConfigurationCacheKT-60718
Kotlin Gradle Plugin's incremental compilation violates Project Isolation by accessing the tasks in the task graph that were produced by other projectsKT-60717
Kotlin Gradle Plugin violates Project Isolation restrictions by dynamically looking up properties in the projectKT-54232
Don't check if file exists in task file inputs configurationKT-61066
[KMP] iOS "Unkown Kotlin JVM target 20"KT-54160
New KGP API using lazy properties to add compiler plugin options may remove options with the same pluginIdKT-60839
KGP provides incorrect default value "ENABLED" for -Xpartial-linkageKT-15370
Gradle DSL: add module-level kotlin optionsKT-57645
build_scan failed in testBuildScanReportSmokeTestForConfigurationCache test with Gradle 8.0.2KT-59827
Update configuration to validate plugin inputsKT-59799
Validate Gralde Integrations tests has only one tagKT-59117
Add gradle integration tests for explicit api mode in Android projectsKT-59587
Upgrade max gradle version to max supported in jvmToolchain connected testsKT-56636
Bump max Gradle version for integration tests to 8.0KT-58353
Support reporting of diagnostics after projects are evaluatedKT-53822
Upgrade thegradle-download-task
dependency of the Kotlin Gradle pluginKT-58162
Kotlin Gradle Plugin: Remove kotlinx.coroutines from classpath of KGPKT-58104
Check values for MPP_PLATFORMSKT-58569
Bump language version for Gradle plugins dependencies to 1.5
Tools. Gradle. Cocoapods
KT-59263
Add diagnostic that a dummy framework is not present when build is triggered from XcodeKT-57741
KMP importing an iOS project with Xcode 14.3 fails when importing a pod that depends onlibarclite_iphoneos
KT-60050
Log reason why podInstall task is skippedKT-49430
Stop invalidating iOS framework generated by KMM module on each Gradle SyncKT-59522
Set the required environment for cocoapods invocationsKT-59313
Elevate to error deprecation of useLibrariesKT-58775
If the pod has a declared dependency on itself, then it will cause StackOverFlow exception while importing of a project
Tools. Gradle. JS
New Features
KT-49789
KJS / Gradle: Add npm style repository option for YarnRootExtension - and/or don't register github repository when download=false
Fixes
KT-60469
KJS: "Could not serialize value of type Build_gradle" caused by changed name in packageJson taskKT-61623
K/Wasm: Error with project dependency between modules with both wasmJs and wasmWasi targetsKT-56933
Add Kotlin/JS incremental tests with K2 enabledKT-58970
browserTest gradle task fails if karma is used and gradle configuration cache is enabledKT-42520
Add a way to setup generating separate js files for each module inside gradleKT-32086
Gradle, JS: runTask.enabled = false has no effect on npm dependenciesKT-48358
KJS: Circular dependency when multiple second-level Gradle modules have the same nameKT-50530
Kotlin/JS: enablingkotlin.js.ir.output.granularity=whole-program
does not remove superfluous .js output filesKT-50442
KJS / Gradle: webpack plugin errors not loggedKT-46003
KJS / IR: Should provide single distributions folder for production and development similarly to LegacyKT-47319
KJS: Error when project contains two modules with same nameKT-46010
KJS / Gradle: Can't find a file on building on WindowsKT-48923
KJS / Gradle: NoWebpack
error messages when Node.js process exits unexpectedKT-51942
KJS / Gradle: fails with two projects with the same name, but different pathsKT-51372
Kotlin/JS: Gradle compileKotlinJs processes directory just excluded from source setKT-52134
KJS: the default generated JS module name in a Gradle project with multiple subprojects is incomplete, which might cause duplicate names and build conflictsKT-52776
KJS / Gradle: Webpack version update despite yarn.lock breaks Kotlin/JS buildKT-54182
MPP / JS:StackOverflowError
when in a Gradle multi-project and Kotlin Multiplatform build with the JS IR target which depends on another with the same subproject name via a renamed published Maven artifactKT-58250
TheNodeJsExec
tasks are not compatible with Gradle configuration cacheKT-58256
TheD8Exec
tasks are not compatible with Gradle configuration cache
Tools. Gradle. Multiplatform
New Features
KT-60441
KGP based dependency resolution: Support 'idea.gradle.download.sources' flag
- See full ChangeLog in File
Checksums
File | Sha256 |
---|---|
kotlin-compiler-1.9.20.zip | 15a8a2825b74ccf6c44e04e97672db802d2df75ce2fbb63ef0539bf3ae5006f0 |
kotlin-native-linux-x86_64-1.9.20.tar.gz | 7da32e058506e6a8f4378be0e4471f5880b75235e23e1149ba29335d580db23c |
kotlin-native-macos-x86_64-1.9.20.tar.gz | 9a70e2f1d3020f31ac74f743d5dc3860c07101fa3916fc0325553f7b0ef4cfd5 |
kotlin-native-macos-aarch64-1.9.20.tar.gz | 630e883bca63d02f571dfcd5b21728be4a050545c9dca8b1846a326c14452f65 |
kotlin-native-windows-x86_64-1.9.20.zip | 78ea9f5a1ca3d665529b724400799e1f11040e784091ed033916dff1a77780b6 |