Update kotlin_version to v1.9.25 #27
Loading…
Reference in New Issue
Block a user
No description provided.
Delete Branch "renovate/kotlin_version"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
This PR contains the following updates:
1.3.50
->1.9.25
1.3.50
->1.9.25
Release Notes
JetBrains/kotlin (org.jetbrains.kotlin:kotlin-stdlib-jdk7)
v1.9.25
: Kotlin 1.9.25Note: This is a technical release for IntelliJ IDEA.
Changelog
Tools. JPS
KT-69204
Generate lookups in dumb mode for compatibility with ref indexv1.9.24
: 1.9.24Changelog
Backend. Wasm
KT-64890
K/Wasm compiler crash with external class and KodeinCompiler
KT-65235
JDK 21 might lead to change in overloads resolutionKT-66768
K1: False positive UNRESOLVED_REFERENCE in super.getFirst/getLast callNative
KT-67218
Native: nested classes in kx.serialization ProtoBuf produce empty array for release binaryTools. Gradle
KT-67139
Build reports can be overriddenKT-67138
Json report is empty for incremental compilationTools. Gradle. Multiplatform
KT-67127
KMP: IDE Dependency Resolver for CInterops reports errors on linux and windows machinesKT-66514
Don't get output file from Cinterop task for IDE Import if host os doesn't support itTools. JPS
KT-65043
JPS dumb mode should respect maps needed for the compilerTools. Wasm
KT-67785
Kotlin/Wasm: Node.JS 22 does not need experimental-wasm-gc flag anymoreKT-65864
K/Wasm: update Node.js to 22.xv1.9.23
: Kotlin 1.9.231.9.23
Apple Ecosystem
KT-65542
Cinterop tasks fails if Xcode 15.3 is usedBackend. Wasm
KT-64486
Kotlin/Wasm/WASI exported function callback for coroutines supportCompiler
KT-53478
Could not load moduleKT-66044
JDK's new API is used over Kotlin's SDK functionsKT-64640
Prevent mutating SequenceCollection methods from JDK 21 be available on read-only collectionsKT-65441
K1: Remove JDK 21 getFirst()/getLast() in (Mutable)List interfacesKT-65634
K/N: data race during monolithic cache creationKT-53109
CompilationErrorException generateUnboundSymbolsAsDependencies with builder inference and lambdasKT-52757
Type inference for builders fails if inferred from a functionTools. Gradle
KT-65792
Add JSON build reportKT-65091
Update compiler metrics in build reportsKT-62490
KGP dropping resource directoriesTools. Gradle. JS
KT-64119
K/JS: Migrate package manager from Yarn onto NPMKT-64561
K/JS tests are not executed after upgrade to 1.9.22Tools. Gradle. Multiplatform
KT-65954
commonTest dependencies affect commoMainMetadata compilationTools. Gradle. Native
KT-64573
Default value forproduceUnpackedKlib
was not providedv1.9.22
: Kotlin 1.9.22Changelog
JavaScript
KT-63719
KJS: Test results ignored for ES module kindKT-63808
compileTestDevelopmentExecutableKotlinJs failed in JsIntrinsicTransformersNative
KT-64139
Weird bug with while and coroutine in Kotlin NativeKT-63471
linkDebugTestIosX64 Failed to build cache: NoSuchFileException bitcode_depsKT-63789
Native: Incremental compilation problem with composeTools. CLI
KT-64485
CLI: cache and optimize parsing of command-line argumentsTools. Gradle
KT-63990
"Cannot query the value of property 'buildFlowServiceProperty' because it has no value available" with Isolated ProjectsTools. Gradle. Native
KT-63363
Kotlin Gradle Plugin:KotlinNativeHostSpecificMetadataArtifact
breaks configuration cache, implicitly includes output file as configuration cache inputKT-63742
Gradle wrongly caches Kotlin/Native compiler flagsTools. JPS
KT-64305
Kotlin JPS builder requests chunk rebuild with graph implementationKT-64112
Avoid using IJ's JPS mappings in Kotlin JPS testsKT-63799
Make plugin classpath serialization path agnosticChecksums
v1.9.21
: Kotlin 1.9.21Changelog
Compiler
KT-62885
Introduce a language feature entry for expect actual classes for easier configuration of MPP projectsKT-63081
Optimize new native caches: CachedLibraries.computeVersionedCacheDirectory()Docs & Examples
KT-55619
DocumentString.format
functionIDE. Gradle Integration
KT-62877
Artifact files collecting for project configuration was finished. Resolution for configuration configuration X will be skippedIDE. Gradle. Script
KT-60813
Scripts: NoSuchMethodError: 'void org.slf4j.Logger.error(java.lang.String, java.lang.Object)' when dependency uses Slf4j APIJavaScript
KT-60785
KJS: Destructured value class in suspend function fails with Uncaught TypeError: can't convert to primitive type errorKT-63207
KMP / JS: "TypeError: <mangled_name> is not a function" with 1.9.20KT-62778
package.json "main" field has .js extension when the result files have .mjs extensionKT-61795
KJS: Incremental Cache is not invalidated ifuseEsClasses
compiler argument was changedKT-61957
KJS: "Uncaught ReferenceError: entries is not defined" caused by enum class with@JsExport
and Enum.entries callKT-62444
KJS with commonJS modules should re-export in 1.9.20KT-63184
KJS / Serialization: JsExport on serializable interface creates erroneous TypeScriptKT-62190
KJS: "IllegalStateException: Expect to have either super call or partial linkage stub inside constructor" caused by Compose and useEsModules()KT-58685
KJS: "IllegalStateException: Not locked" cused by "unlock" called twiceKlibs
KT-62515
Interop klib of concurrent version is not accepted when building dependent project: "The library versions don't match"Tools. CLI
KT-63139
Incorrect kotlin implementation version (1.9.255-SNAPSHOT) in metadata infoTools. Gradle
KT-63499
Gradle: Source sets conventions are still registeredTools. Gradle. JS
KT-59523
MPP / KJS: ESM modules uses incorrect file extension on package.json (.mjs)Tools. Gradle. Kapt
KT-63366
Kapt processing fails with custom source setsTools. Gradle. Multiplatform
KT-32608
Create JUnit-XML result file in multiplatform gradle buildKT-63315
Wasm gradle plugin DSL is invalid for parameterless wasmWasi methodKT-63338
[KMP] metadata task fails to find cinterop classes from dependency projectsKT-63044
KGP: Multiplatform - 8.4 configuration cache supportKT-63011
Apple Framework Artifacts is not connected to KotlinNativeTaskKT-62601
AS/IntelliJ exception after updating a KMP project with a macos target to Kotlin 1.9.20-RCTools. Incremental Compile
KT-61590
K2/KMP: Expect actual matching is breaking on the incremental compilationTools. JPS
KT-63594
ClassCastException in JPS statisticsKT-63651
Fix NPE in Kotlin JPS after enabling graph implementation of JPSTools. Kapt
KT-57389
KAPT3 uses a Javac API for JCImport which will break in JDK 21KT-60507
Kapt: "IllegalAccessError: superclass access check failed" using java 21 toolchainTools. Scripts
KT-54819
Scripts: Not able to use slf4j in .main.ktsKT-61727
Scripts: Maven artifacts resolution is slowChecksums
v1.9.20
: Kotlin 1.9.201.9.20
Analysis. API
New Features
KT-58834
Analysis API: Add source shadowing feature to resolve extensionsPerformance 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 typesFixes
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 FakeOverrideTypeCalculatorAndroid
KT-27170
Android lint tasks fails in Gradle with MPP dependencyBackend. Native. Debug
KT-61131
Virtual functions trampolines have invalid debug infoBackend. 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 typeCompiler
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 classesPerformance 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 boxingFixes
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_EXPRESSIONDocs & 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 newIDE
New Features
KTIJ-23199
K2 IDE: Improve Import quick fix descriptionKTIJ-26056
Support highlighting of KNM filesPerformance Improvements
KTIJ-26688
UAST: optimize methodNameCanBeOneOfFixes
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 ClassCastExceptionIDE. 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 annotationsIDE. 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 charactersIDE. 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 IRIDE. 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 timeIDE. Hints. Parameter Info
KTIJ-26824
K2 IDE: "Parameter Info" shows incorrect overload as selectedIDE. 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 gettersFixes
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 recordsIDE. JS
KTIJ-25023
K/JS: Remove balloon warning about migration to IR backendIDE. Libraries
KTIJ-13660
MPP library: No gutters forexpect
andactual
symbolsIDE. Misc
KT-60053
IdeaKotlinBinaryCoordinates doesn't respect capabilities and classifier attributesIDE. 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 changesIDE. 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 constructorIDE. Refactorings. Rename
KTIJ-25762
K2 IDE. label rename doesn't change it's name in usages after rename refactoringIDE. 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 fileIDE. 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 DesktopIR. Interpreter
KT-60467
"InternalError: Companion object * cannot be interpreted" caused by java's package nameKT-60744
Restore binary compatibility of toIrConst functionIR. Tree
KT-59771
Restore compatibility of IdSignature.CommonSignatureKT-59772
Restore compatibility of IrFactory#createFunctionKT-59308
Auto-generate the IrFactory interfaceJS. Tools
KT-44838
Kotlin/JS source-map-loader slow performance since 1.4.0JavaScript
New Features
KT-58684
KJS: ES15 classes — creating instance by classPerformance 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 inheritanceKMM 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 errorKlibs
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 signaturesLanguage 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 keywordLibraries
New Features
KT-59440
Rework Flags API in kotlinx-metadata-jvmFixes
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 platformsNative
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 functionsFixes
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 nativeNative. C Export
KT-56182
[K2/N] C export doesn't work for non-root packages with K2Native. 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 FIRNative. ObjC Export
KT-56090
[K2/N] Emit DocString klib extensions for ObjCExportNative. 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 GCNative. Stdlib
KT-60608
Introduce AtomicArrays API in K/N stdlibKT-59120
Native: Rewrite stdlib AtomicReference with Volatile instead of custom C++ codeReflection
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" failsTools. 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 defaultTools. 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 pathTools. 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 IDETools. 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 pluginsTools. 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 referenceTools. 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 companionsTools. 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 taskPerformance 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 usageFixes
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.5Tools. 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 projectTools. Gradle. JS
New Features
KT-49789
KJS / Gradle: Add npm style repository option for YarnRootExtension - and/or don't register github repository when download=falseFixes
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 cacheTools. Gradle. Multiplatform
New Features
KT-60441
KGP based dependency resolution: Support 'idea.gradle.download.sources' flag- See full ChangeLog in File
Checksums
v1.9.10
: Kotlin 1.9.10Changelog
Compiler
KT-60769
Partially revert KT-58371KT-60659
Incorrect 'unresolved reference: addFirst' error with JDK 21KT-60371
Native custom allocator link errorKT-60986
Native: static caches with custom runtime options are broken on LinuxKT-60770
Fix false-positive ABSTRACT_MEMBER_NOT_IMPLEMENTED on toArray with JDK 21KT-60231
NoClassDefFoundError: $$$$$NON_LOCAL_RETURN$$$after upgrade to Kotlin 1.9.0
JavaScript
KT-60785
KJS: Destructured value class in suspend function fails with Uncaught TypeError: can't convert to primitive type errorKT-60852
Kotlin JS(IR): IllegalArgumentException: Cross module dependency resolution failed when updating to Kotlin 1.9.0KT-57509
KJS: Compiler generates native JS operator == for comparing values with Any typeNative
KT-60230
Native: "unknown options: -ios_simulator_version_min -sdk_version" with Xcode 15 beta 3KT-60758
Native: Building for 'iOS-simulator', but linking in dylib built for 'iOS' in Xcode 15 beta 4Native. C and ObjC Import
KT-59167
Native: cinterop is unable to build interop libraries against the Xcode 15 Beta 1Tools. Gradle
KT-61147
Kotlin Compiler 1.9.0 bundles a stripped unshadowed version of GsonKT-60543
NoClassDefFoundError for com/gradle/scan/plugin/BuildScanExtensionChecksums
v1.9.0
: Kotlin 1.9.0Changelog
Analysis API
New Features
KT-57930
Analysis API: provide an API for extending Kotlin resolutionKT-57636
K2: Add the return type of K2 reference shortener AAShortenCommand::invokeShortening()
e.g.,ShorteningResultInfo
to allow callers to access the shortening result PSIFixes
KT-58249
Analysis API: Disable error logging for FE10 implementation of resolveCall when resolve is not successfulKT-55626
Impossible to restore symbol by psi from script fileKT-57314
LL FIR: CombineLLFirProvider$SymbolProvider
s in session dependencies (optimization)KT-55527
K2 IDE: Rewrite KtScopeContext class to allow to handle each scope separatelyKT-55329
LL FIR: Unexpected ACTUAL_WITHOUT_EXPECT error on constructor and function declarationKT-50732
LL API: fix compiler based testsKT-57850
K2: contract violation due to SymbolLightAccessorMethod.propertyAccessorSymbolKT-56543
LL FIR: rework lazy transformers so transformers modify only declarations they suppose toKT-56721
K2: FirExtensionDeclarationsSymbolProvider: java.lang.IllegalStateException: Recursive updateKT-50253
Analysis API: Solve issues with ProcessCancelledExceptionKT-56800
K2 IDE: optimize deprecation calculation for symbolsKT-55006
Analysis API does not transform Java type refs for callable symbol return typesKT-57256
AA FIR: Reduce lazy resolve phase for deprecation statusKT-57619
K2: CFG for class initializer is not correctly built in reversed resolve modeKT-58141
K2: AA FIR: impossible to restore symbol for declaration with annotation with argument inside typeKT-57462
Symbol Light Classes: SymbolLightFieldForProperty should retrieve annotations not from KtPropertySymbol, but from the corresponding backing fieldKT-54864
Analysis API: add function to get expect KtSymbol list by actual KtSymbolKT-56763
Analysis API:.KtSourceModuleImpl is missing in the map.
on symbol restore when symbol cannot be seen from the use-site moduleKT-56617
Analysis API: optimize KtFirSymbolProviderByJavaPsi.getNamedClassSymbolKT-54430
K2: .getAllOverriddenSymbols() returns invalid resultsBackend. Native. Debug
KT-55440
Kotlin/Native debugger: inline function parameters are not visible during debuggingBackend. Wasm
KT-58293
Wasm: ReferenceError: e is not defined in kotlin.test.jsThrowKT-58931
Wasm tests are failing to start on Kotlin 1.9.0-BetaKT-58188
Restore binary compatibility of PlatformDiagnosticSuppressor.shouldReportUnusedParameterKT-57136
K/Wasm: Restrict non-external types in JS interopKT-57060
Clarify the lack of support for dynamic in Kotlin/WasmKT-56955
K/Wasm: Support restricted version of K/JSjs(code)
KT-57276
Wasm: "Body not found for function" error when compiling konform library with Kotlin/Wasm supportKT-56976
K/Wasm bug with calling override of external function with default parametersCompiler
New Features
KT-55333
Allow secondary constructors in value classes with bodiesKT-54944
@Volatile
support in nativeKT-54746
Deprecate with ERROR JvmDefault annotation and old -Xjvm-default modesKT-47902
Do not propagate method deprecation through overridesKT-29378
K2: rework warnings/errors for equality/identity operators on incompatible typesKT-57477
False-positive overload resolution ambiguity in case of lambda without argumentsKT-57010
Kotlin/Native: make it possible to compile bitcode in a separate compiler invocationKT-55691
K2: Avoid inferring Nothing? in presence of other constraints (beside type parameter bounds)KT-46288
Unexpected behavior of extension function on lambda with suspend receiverKT-24779
Inconsistent smart cast behavior for bound data flow valuesPerformance Improvements
KT-23397
Optimize out field for property delegate when it's safe (JVM)KT-56906
FIR: Use cached instance of FirImplicitTypeRefImpl in FIR buildersKT-56276
LanguageVersion.getVersionString() allocates 5k objects on project openingFixes
KT-57784
"NullPointerException: Parameter specified as non-null is null:" with enum, companion object, 'entries' and mapKT-55217
K2: support callable reference conversions on top-level expressionsKT-57232
K2: build Space JVM (master)KT-59079
"AE: SyntheticAccessorLowering should not attempt to modify other files!" with callable reference to constructor with value class parameterKT-58837
Partial linkage fails to report any compiler message on Windows when launched through Gradle pluginKT-57602
K2: Rework member scope of types having projection arguments for covariant parametersKT-55171
Put new contracts syntax under a feature flagKT-58719
K2: false-positive INVISIBLE_REFERENCE error in case of importing an internal abstract classKT-56030
[K2/N] Support Objective-C overloading by param names onlyKT-57510
K2: Data class equals/hashCode/toString methods are not written to Klib metadataKT-56331
K2: compiler backend crash on usage of expected function with default argumentsKT-53846
K2 / Context receivers: ClassCastException on secondary constructor of class with context receiverKT-58621
K2: Private class shadows public function defined in the same packageKT-59102
K2: constant evaluator does not provide Long type on shlKT-59066
[K2] delegation leads to "IllegalStateException: Expected some types"KT-56074
K2: build Space JVM (snapshot 2022.3)KT-58787
KAPT: "NullPointerException: null cannot be cast to non-null type" with delegateKT-57022
K2 IllegalStateException in signature computationKT-56792
K2: build kotlinpoetKT-57373
K2: FIR properties synthesized when implementing interface by delegation don't have accessorsKT-56583
K1: Implement opt-in for integer cinterop conversionsKT-59030
[PL] Workaround for broken@Deprecated
annotations in c-interop KLIBsKT-58618
K2: Local property delegates cannot infer generic return typeKT-36770
Prohibit unsafe calls with expected@NotNull
T and given Kotlin generic parameter with nullable boundKT-56739
K2: build Space iOSKT-57131
K2: stdlib test compilation fails on ListTest.kt in FirJvmMangleComputerKT-58137
K2: ISE "Usage of default value argument for this annotation is not yet possible" when instantiating Kotlin annotation with default parameter from another moduleKT-58897
K2: False positive unresolved reference with same-named enum class and its entryKT-40903
Forbid actual member in expect classKT-30905
Expect var property with default public setter matches with actual var property with private setterKT-56172
K2: Fix reporting of PRIVATE_CLASS_MEMBER_FROM_INLINE errorKT-56171
Implement deprecation warning for missing PRIVATE_CLASS_MEMBER_FROM_INLINE errorKT-27261
Contracts for infix functions don't work (for receivers and parameters)KT-56927
Enum with secondary constructor can't be compiled with K2 using JS/Native backendKT-53568
Partial linkage: absent class as type parameter bound causes failure ofcompileProductionExecutableKotlinJs
KT-53608
Partial linkage: Kotlin/JS fails with IllegalStateException: "Validation failed in file" when overridden declaration was visible, but now privateKT-53663
Partial linkage: usage of property which becomes abstract: no IrLinkageError, but AssertionError in Native backend insteadKT-56013
K2. a set of errors about local properties are missingKT-53939
Partial linkage: with turning object into class linkNative and jsTest tasks failKT-53938
Partial linkage: with turning interface into class and using as second parent Native build failsKT-53941
Partial linkage: with turning class into object accessing member via parameterless constructor does not failKT-53970
Partial linkage: on turning nested class into inner JS tasks are successful, Native build failsKT-53971
Partial linkage: turning inner class into nested: without usage in executable Native is successful, JavaScript failsKT-53972
Partial linkage: turning inner class into nested: with usage in executable Native fails with NPE in backendKT-54045
Partial linkage: turning class into type alias + calculating implicit function type: build fails with UninitializedPropertyAccessException: "lateinit property parent has not been initialized"KT-54046
Partial linkage: turning type alias into class + using it as type: build fails with AssertionError: "Expected exactly one delegating constructor call but none encountered"KT-53887
Partial linkage: turning from enum to regular class + reference to enum contant causes compileProductionExecutableKotlinJs fail with IllegalStateExceptionKT-54047
Partial linkage: reference to removed enum const causes JS fail with "IllegalStateException: Validation failed in file"KT-54048
Partial linkage: reference to removed enum const in runtime causes Native fail with IllegalStateException at IrBindablePublicSymbolBase.getOwner()KT-53995
Partial linkage: on turning class to abstract and direct constructor call Naive fails, JavaScript is successfulKT-43527
@ExtensionFunctionType
is allowed on function types with no parameters and leads to backend exceptionKT-55316
K2. IllegalStateException on incorrect import directive nameKT-57570
Remove source code excerpts from platform type nullability assertion exceptionsKT-56073
K2: build ExposedKT-47932
Report errors on cycles in annotation parameter typesKT-38871
Kotlin Gradle DSL, MPP: UNUSED_VARIABLE when configuring a sourceset with delegated propertyKT-46344
No error for a super class constructor call on a function interface in supertypes listKT-56609
K2: False positive NULL_FOR_NONNULL_TYPE with -Xjsr305=strict and@Nullable
annotation Java parameterKT-56656
K1/K2: inconsistent NOTHING_TO_OVERRIDE with complex nullable annotationsKT-58332
K2: local fun with suspend type is not marked as suspend in IRKT-57991
K2: Modifier 'suspend' is not applicable to 'anonymous function'KT-54294
K2: "Not all type variables found" in builder inference with type parameters inferred through a union of two branchesKT-58564
[PL] Annotations with unlinked parameters are not removedKT-52597
Provide Alpha Support for Multiplatform in the K2 platformKT-58523
K2: reference is resolved to imported type-alias instead of identically named top-level propertyKT-57098
Native: avoid object initialization while accessing const valKT-57973
32-th default value in inline classes override function is not usedKT-57714
"IllegalStateException: <B::!>" using reified genericsKT-57810
toString
of object erroneously considered as constant function in string concatenationKT-58076
K2: Incorrect inference of type of labeled receiverKT-57929
K2: Arguments of annotations are not calculated in a lot of strange locationsKT-54874
K2. No compilation error with incorrect Comparator invocationKT-55388
Consider enabling ProhibitUsingNullableTypeParameterAgainstNotNullAnnotatedKT-53041
NPE in Kotlin 1.7.0 when using RxJava Maybe.doOnEvent with anonymous parametersKT-54829
Cleanup local types approximation logicKT-58577
K2: private Kotlin property prevents use of Java set-method from Java-Kotlin-Java hierarchy in another moduleKT-58587
MUST_BE_INITIALIZED must take into account effectivelly finalKT-58524
K2: false-positive overload resolution ambiguity error on invoking a generic class's member function with id-shaped function-typed parameter on intersection-typed receiverKT-53929
Enum.entries: consider changing scope behavior in K1KT-58520
K2: FIR2IR: ISE during const evaluation of operator times with exposedKT-57905
K1: resolution to base class's Java field instead of derived class's Kotlin property is not deprecated in case of different typesKT-56662
K1: false negative INVISIBLE_SETTER for a var with internal setter accessed from a derived classKT-57770
K2: Support generation of serializer if base class for serializable class declared in different moduleKT-58375
Kapt: "wrong number of type arguments. required 1" when more than 22 type argumentsKT-48870
[FIR] Different behavior for explicit receiver resolution inside delegated constructorsKT-58013
K2: "Not enough information to infer type variable T" when using assert non-null (!!) and delegationKT-58365
K2: Fix stub types leakage in builder inference caused by implicit receiver type update with partially resolved calls (IGNORE_LEAKED_INTERNAL_TYPES for stub types)KT-58214
Continuation parameter only exists in lowered suspend functions, but function origin is LOCAL_FUNCTION_FOR_LAMBDAKT-58030
K2/MPP/JVM: compiler backend crash on super-call to indirectly inherited Java methodKT-58135
K2: Priority of extension property is lower than ordinary propertyKT-57181
[K1/N, K2/N] Expect and Actual funs have different IdSignature.CommonSignature, if Expect has default argumentKT-58219
K2/MPP/metadata: false-positive invisible reference error in Native-shared source setKT-58145
K2/MPP/metadata: compiler FIR crash on inheritance of a generic class with property by actual-class from Native-shared source setKT-56023
Constant operations (e.g. division) are not constant in K2 (JS, Native)KT-57354
In suspend function default arguments are sometimes not deleted in IRKT-55242
K2/MPP: basic build/link functionalityKT-57979
K2: Unresolved reference error when assigning to Java synthetic property with a different nullability getterKT-57543
K2 reports DELEGATE_SPECIAL_FUNCTION_NONE_APPLICABLEKT-58142
K2: val parameter with more specific type is lower priorityKT-48546
Missed TYPECHECKER_HAS_RUN_INTO_RECURSIVE_PROBLEM error at plus-assignKT-57854
RECEIVER_TYPE_MISMATCH on synthetic property from mutually recursive Java generics with disabled ProperTypeInferenceConstraintsProcessingKT-54518
False negative NON_PUBLIC_CALL_FROM_PUBLIC_INLINE when calling internal method of super classKT-58025
K2: Argument type mismatch when using Springs HandlerMethodArgumentResolverKT-58259
Unexpected unresolved function call with obvious invoke-convention desugaringKT-57135
K2: Fir should take into account an annotation's allowed targets as well as the use-site target when deciding whether it applies to a property, a field, or a constructor parameterKT-57069
K2: Method kind in metadata is DECLARATION when DELEGATION is used in K1KT-57958
K2: Initializer type mismatch when using extension property on type with star projectionKT-58149
K2: New inference error with buildListKT-58008
K2: "Cannot find cached type parameter by FIR symbol: T" on suspend function with generic and nested classKT-57835
K2: compiler crash on lambda with dynamic receiverKT-57601
K2: Builtin functionextensionToString
can't be accessedKT-57655
K2: ImplicitIntegerCoercion is not working for named argumentsKT-58143
K2: overload resolution ambiguity inside dynamic lambdaKT-58132
K2: Implicit int constant to long converion crashes FirSerializerKT-57378
Partial linkage: Run codegen box tests for Native & JS with enabled PLKT-58207
K2: Handle result of completion of synthetic call with callable reference argumentKT-56549
K2: Reference to Java sealed class fails to compileKT-57994
K2: Type inference failed on function referenceKT-58099
interop0 test fails with error "type kotlin.String? is not supported here: doesn't correspond to any C type"KT-57671
Synthetic $EntriesMappings declaration is public and generated even for enums from current module on ICKT-56517
K2: Reference to Java record fails to compile: "unresolved reference", "Overload resolution ambiguity between candidates"KT-58163
FIR: deserialized default property setter and getter must have FirResolvePhase.ANALYZED_DEPENDENCIES phaseKT-55646
K2: Report definitely non-nullable as reified errorKT-58043
k2: Expect call is not removed from IR with nullability-based overloadKT-56442
K2: Make sure K2 has the same behavior for defaults with overrides as K1 hasKT-55904
Fix tests for volatile annotation on K2KT-57928
K2: Arguments of annotations on constructor value parameter are not calculatedKT-57814
K2: Argument type mismatch with delegating propertyKT-56490
Implement deprecation for an anonymous type exposed from inline functions with type argumentKT-57781
K2: Generated serializer is invisible in a non-JVM test source setKT-57807
K2: Symbol already bound exception for arrayOf function from IrBuiltInsOverFirKT-57962
K2: No set method providing array access on dynamicKT-57353
K2: unresolved reference when using fully qualified object declaration name as an expression, when a declaration package is from another klib and has at least two name segmentsKT-57899
K2: compiler FIR2IR crash on anonymous object with inheritance by delegation to value of smart-casted type parameterKT-57988
K2: compiler exception on get operator on dynamic thisKT-57960
K2: incorrect type inference in lambda with dynamic receiverKT-57923
K2: Optional expectation annotation crashes const evaluatorKT-56511
K1: false negative SMARTCAST_IMPOSSIBLE when alien constructor property is accessed from a private classKT-58033
K2 reports Constructor must be private or protected in sealed class in actual sealed class if its constructor has own actual declarationKT-58061
K2: false-positive unsupported feature error on callable references to Java methods from annotation interfacesKT-55079
Refactor DiagnosticReporterByTrackingStrategy and fix some "diagnostic into black hole" problemsKT-57889
K2: false-positive lack of information for inline function's type parameter in case of builder-style inference from caller function's return expressionKT-57961
K2: Unresolved reference using dynamic lambda parameterKT-57911
K2: Contracts are not inherited by substitution overridesKT-57880
K2: false-positive argument type mismatch due to lambda receiver shadowing labeled outer lambda receiver when assigning lambda to variableKT-57986
K2: NPE on building SpaceKT-57873
K2: compiler FIR serialization crash on builder-style inference from lambda's return typeKT-57941
K2: Assertion error on loading serializable class with non-serializable property compiled with K1 compilerKT-57947
K2: Incorrect resolution results when property type for invokeExtension is not inferredKT-58002
K2: compiler FIR serialization crash on platform type with type-targeted Java annotation with Java enum as argumentKT-57263
K2/MPP/JVM: compiler codegen crash on expect-property as default argument for expect-function's parameterKT-56942
K2: False-negative NO_ELSE_IN_WHEN if subject is flexible typeKT-56687
Unexpected behaviour with enum entries when using outdated stdlibKT-56398
K2/MPP: compiler backend crash on inheritance from expected interfaceKT-57806
K2: string interpolation as annotation parameter causes errorKT-57611
K2: Annotation arguments are not evaluatedKT-56190
[K2/N] Const initializers are not serialized to klibKT-57843
K2: Missing diagnostic when calling constructor through typealias whose expansion has a deprecationKT-57350
FIR: deprecation diagnostic is not reported on a super class callKT-57532
K2: IrActualizer doesn't handle properties overloaded by extension receiver correctlyKT-57776
K2: Suppressing "INVISIBLE_REFERENCE" leads to AssertionError: Unexpected IR element found during code generationKT-57769
[K2] Load properties in proper order for classes compiled with kotlinx.serialization and LV < 2.0KT-57879
K2: compiler FIR serialization crash on passing Java constants as arguments to type-targeted annotationsKT-57893
K1/K2 inconsistency on smart casts of internally visible properties in friend modulesKT-57876
K2: stack overflow in compiler FIR deserialization on nested type-target annotation class used in enclosing classKT-57839
K2: Compiler crash on lambda returning anonymous object with implemented lambdaKT-57822
K2: Can't refer to external interface from class literalKT-57809
K2: No value passed for parameter of external classKT-56383
Build intellij master with LV 1.9KT-57735
K2: MPP: K2 reports hides member of supertype and needs 'override' modifier for the function with@PlatformDependent
annotation when there is an empty linux target in projectKT-55056
Builder inference causes incorrect type inference result in related callKT-57689
K2: Unresolved reference to nested typealias in KLIBKT-57665
K2: incorrect resolution of dynamic typeKT-57381
K2/MPP/Native: impossible to override Any::equals with non-external functionKT-57654
K2: Lambda with receiver deserialized as lambda without receiver during metadata compilationKT-57662
K2: The error message is poorly formatted and not precise in case of NO_ACTUAL_CLASS_MEMBER_FOR_EXPECTED_CLASS error and@Suppress
is usedKT-57763
FirExtensionRegistrar extension point brokenKT-57312
K2: IR interpreter fails on string interpolation withconst val
from a klib involvedKT-57768
Don't decompile code to search for annotation argumentsKT-55628
Diagnostics for kotlin.concurrent.Volatile annotation applicabilityKT-55860
K2. [CONFLICTING_INHERITED_MEMBERS] for inheritor of a class with overloaded generic functionKT-53491
K2: Implement "Operator '==' cannot be applied to 'Long' and 'Int'" errorKT-55804
K2: UNSAFE_CALL Non-nullable generic marked as nullable even if non-null assertedKT-57682
K2: Incorrect composing of signatures for calls on dynamic typesKT-55405
K2: false-negative INVISIBLE_REFERENCE in import directivesKT-54781
K2: no error on unresolved import statement with more than one packageKT-57635
K2/MPP: Expect constructors are not considered as expect during metadata deserializationKT-57376
K2/MPP: false-positive K/JS diagnostic in absence of K/JS target when sharing a source set between K/JVM and K/NativeKT-55902
K2: Support ImplicitIntegerCoercion annotationKT-56577
Migrate Native KLIB ABI compatibility tests to K2KT-56603
[K2/N] Segfault invoking fun from binary compatible klibKT-57457
K2: the error message is not quite informative in case of EXPOSED_PROPERTY_TYPE_IN_CONSTRUCTOR_ERRORKT-57568
K2: K2, Native reports overload resolution ambiguityKT-57446
K2: Adapter function reference is not generated inside when expressionKT-54894
K2: False positive RETURN_TYPE_MISMATCH on function which returns a functional type with@UnsafeVariance
argumentKT-57001
K2 compilation fails due to nullabillity subtyping not working properlyKT-57271
Delay forbidding inference to an empty intersection to version 2.0KT-57209
K2: type parameters are available in companion object scopeKT-50550
False positive NO_ELSE_IN_WHEN with annotatedwhen
branch conditionKT-57431
K2 MPP JS: Compiler crash on transitive common dependenciesKT-57456
K2 reports uninitializied variable in enum class when variable is used in lambda and defined in companion objectKT-57583
K2/MPP/JS&Native: FIR2IR compiler crash on reference to Any method inherited by expect-classifierKT-56336
[K2/N] Multiplatform test fails with unexpected "actual declaration has no corresponding expected declaration" compiler errorKT-57556
K2: Rename error 'This API is not available after FIR'KT-23447
Integer.toChar compiles to missing methodKT-46465
Deprecate and make open Number.toChar()KT-49017
Forbid usages of super or super if in fact it accesses an abstract memberKT-56119
BinaryVersion.isCompatible binary compatibility is brokenKT-57369
K2/MPP: supertypes established in actual-classifiers from other source sets are not visibleKT-55469
[K2/N] equals(Double,Double) and equals(Boolean,Boolean) are not foundKT-57250
K2: the metadata is serialized for anexpect
class even if theactual
class is present when compiling to klibKT-56660
K2/MPP: compiler backend crash on invoking a K/Common constructor in K/JS codeKT-55055
K1: Builder inference violates upper boundKT-57316
Initialize Enum.entries eagerly: avoid using invokedynamicsKT-57491
Kotlin synthetic parameter looks ordinaryKT-56846
K2: incorrect line & symbol numbers in exception reportingKT-56368
K2/MPP: compiler backend crash on missing actual declarationKT-57104
K2: false-positive conflicting inherited JVM declarations error despite use of@JvmName
in another moduleKT-56747
[K2/N] Return type forlambda: (Any) -> Any
which returns Unit is different for K1 and K2 and return statement is missing with K2KT-57211
K2: incorrect "error: an annotation argument must be a compile-time constant" on unsigned array in annotation argumentKT-57302
K2 fails with IllegalStateException on reading inherited property of Java enumKT-57424
K2 IDE: "By now the annotations argument mapping should have been resolved" exceptionKT-57241
K2 MPP: Actualization doesn't work for actual enum that has primary constructor with argumentsKT-57210
K2 MPP: Support of arguments with dynamic typeKT-57182
K2 MPP: Actualization doesn't work for nested objectsKT-56344
K2: Implement correct errors reporting of IrActualizerKT-54405
K2 compiler allows val redeclarationKT-54531
[K2] Uncaught Runtime exception is thrown instead of user friendly error messages with details in case -no-jdk option set to trueKT-56926
K2: incorrect line number generated for class constructor or method with default parameter when comment beforeKT-56913
K2: Incorrect line numbers in overriden field getters and settersKT-56982
K2: Incorrect line number start in when expressionKT-56720
K2: false positive MANY_IMPL_MEMBER_NOT_IMPLEMENTED in case of delegation in diamond inheritanceKT-57175
K2: false-positive INVALID_TYPE_OF_ANNOTATION_MEMBER on type aliasesKT-25694
Fix reporting of uninitialized parameter in default values of parametersKT-57198
K2: false-positive type mismatch error on inherited raw-typed class with type parameters in upper bounds of other type parametersKT-15470
Inconsistency: use-site 'set' target is a compilation error, use-site 'get' target is okKT-57179
FIR: preserve prefix increment behavior like in K1 by calling getter twiceKT-57405
K2. Function call ambiguity error when nullable String is passed to function with Spring@Nullable
annotation in signatureKT-57284
K2: compiler codegen crash at property initialization in constructor after smartcast of dispatch receiver to indirectly derived typeKT-57221
K2: compiler FIR2IR crash on function's unavailable cached type parameterKT-57036
Unresolved reference: with inferred type of class constructor with extension parameterKT-56177
K2: FIR should not generate annotation on both property and parameterKT-54990
NI: Type mismatch when encountering bounded type parameter and projectionsKT-57065
K2: overload resolution ambiguity between type-aliased constructor and identically named functionKT-49653
Deprecate and remove Enum.declaringClass synthetic propertyKT-57190
K2: false-positive unsafe call error on safe call on type-aliased nullable receiver in SAM-conversionKT-57166
K2: false-positive val reassignment error when synthetic property with implicitly typed overridden getter is called from implicitly typed member that is declared earlierKT-55828
[K2/N]: Fix test fails in OPT mode :Internal compiler error: no implementation found ... when building itable/vtable
KT-56169
False negative deprecation warning about future inference error with builder inferenceKT-56657
K1/K2: inconsistent behavior in nullability mismatch (Guava hash set/map)KT-57105
K2: compiler codegen crash at property initialization in constructor after smartcastKT-56379
K2: build tests for the Kotlin standard libraryKT-56079
K2: build YouTrack 2022.3KT-57092
K2: false-positive multiple inherited implementations errorKT-56696
K2: Allow to access uninitialized member properties in non-inPlace lambdas in class initializationKT-56354
K2/MPP: unresolved references to library entitiesKT-57095
K2: false-positive lack of type arguments error on raw cast of Base<*> to Derived: Base<T?>KT-56630
FIR: ClassCastException on compilation hierarchy with a raw typeKT-57171
K2: Implement bytecode testsKT-57214
K2: compiler FIR crash on annotation usage before annotation class declarationKT-57204
K2: callable reference to mutable property of inherited by delegation superinterface isn't properly resolvedKT-57195
K2: false-positive VAR_TYPE_MISMATCH_ON_OVERRIDE on changing property's platform type to non-nullable type when overridingKT-56814
K2. PsiElement is null inside IrClass. As a result ClassBuilder defineClass gets null as originKT-54758
DeprecateClassBuilderInterceptorExtension.interceptClassBuilderFactory
and provide another method without dependency on K1KT-57253
K2: clean up callable reference logic in FIR2IRKT-56225
K2. "BackendException: Backend Internal error: Exception during IR lowering" error on incorrect constructor in inline classKT-56769
K2. Annotation applicability is ignored during compilation when there's use-site@target
KT-56616
K2: cannot infer Java array type properlyKT-57247
K2: false-positive INVALID_TYPE_OF_ANNOTATION_MEMBER on type-aliased vararg propertyKT-57206
K2: false-positive val reassignment error on synthetic property from generic class with overridden getter but not setterKT-56519
K2: Compiler crash on a function reference on companion receiver that inherits from outer classKT-56506
K1/K2 inconsistency: VAL_REASSIGNMENT on synthetic setter with different nullabilityKT-56877
K2: false-positive UNRESOLVED_LABEL for labeled this-expression in contract descriptionKT-56863
K2: false-positive property initialization analysis errors after smartcastKT-56864
K2: Unexpected behavior with default parameter inheritance and function referenceKT-56665
K2: false positive RECURSIVE_TYPEALIAS_EXPANSIONKT-53966
K2 does not support SAM conversions with condition into Java/Kotlin functional interfacesKT-56659
FIR: Increment operator on object leads to exception from resolveKT-56771
FIR: Increment operator on qualified expressions leads to exception from resolveKT-56759
K2: False-positive UNRESOLVED_REFERENCE on labeled desctructuring declaration in LT modeKT-56548
K2: false positive overload resolution ambiguity for Java record constructorKT-56476
K2: false positive NO_RETURN_IN_FUNCTION_WITH_BLOCK_BODY at inline fun use-siteKT-56138
K2: Illegal conversion of lambda with parameters to ExtensionFunction expected typeKT-56448
K2: False-positive unsafe call due to incorrect inference of smartcasted typeKT-55966
K2: Not enough information to infer type variable K if smartcast is usedKT-57168
K2: compiler FIR2IR crash on synthetic property from generic class with overridden getter but not setterKT-56876
K2: false-positive UNRESOLVED_REFERENCE for name of nested class in contract descriptionKT-57194
K2: overload resolution doesn't prioritize Double over FloatKT-57067
Warning about expect/aсtual in the same module doesn't take into account absence of 'actual' modifierKT-56954
K2: function literals can be passed as arguments to parameters with kotlin.reflect function typesKT-55423
K2: Implement CONTRACT_NOT_ALLOWEDKT-56923
K2: no line number in bytecode when ASTORE exception in catchKT-56829
K2: compiler FIR2IR crash on passing to function a callable reference to nested class's constructor with default argumentsKT-57029
Per-file caches fail on local inline function in an inline functionKT-57085
K2:@Suppress
is sensitive to its argument's caseKT-57103
K1: AssertionError: Mismatching type arguments: 0 vs 1 + 0 when calling inline function with callable reference to generic synthetic propertyKT-57033
Make KtClassLiteralExpression stub basedKT-57035
Make KtCollectionLiteralExpression stub basedKT-40857
Invalid parameterized types for extension function on parameterized receiver when javaParameters=trueKT-56154
Compiler backend crash on reference to Java synthetic property from generic classKT-56692
StackOverflow in PrivateInlineFunctionsReturningAnonymousObjectsCheckerKT-55879
Modularized tests: fir.bench.language.version is used as API version, not language versionKT-51821
ClassCastException on anonymous fun interface implementation when unrelated vararg is usedKT-56820
K2: compiler FIR crash on Java field access after smartcastKT-56579
[K2/N] IR actualizer crashed with K2 on expect annotation marked with@OptionalExpectation
, without actual.KT-56750
K2: "IllegalArgumentException: No argument for parameter VALUE_PARAMETER" when calling typealias method referenceKT-55614
K2: consider serializing static enum members (values/valueOf/entries) to match K1 behaviorKT-30507
Unsound smartcast if null assignment inside index place and plusAssign/minusAssign is usedKT-56646
K2: "IllegalStateException: No single implementation found for: FUN FAKE_OVERRIDE" when compiling a functional interfaceKT-56334
K2: can't call expected function with default argumentsKT-56514
K2 should report ACTUAL_TYPE_ALIAS_NOT_TO_CLASSKT-56522
K2 should report ACTUAL_FUNCTION_WITH_DEFAULT_ARGUMENTSKT-56910
Exception during IR lowering: Cannot determine lineNumber of element FUN name:cancelProgressKT-56542
K2: false positive TOO_MANY_ARGUMENTS in VarHandle.set callKT-56861
FIR: test FirPluginBlackBoxCodegenTestGenerated.testClassWithAllPropertiesConstructor is failing with runtime errorKT-56234
K2: "ISE: Expected value generated with NEW" with inline property setter and noinline parameterKT-56722
K2: cannot resolve component call after smart castKT-56875
K2: isOperator flag is incorrectly set for java methodsKT-56714
K2: wrong argument mapping in DSLKT-56723
K2: lambda accidentally returns Unit? instead of UnitKT-55877
K2: Secondary constructor without call to parent: no frontend error, ISE: "Null argument in ExpressionCodegen for parameter VALUE_PARAMETER"KT-56386
K2: Make possible to access Java field which is shadowed by Kotlin invisible property`KT-56862
Compatibility problem with using Kotlin in Intellij 223 or higher because of missing particular trove4j dependencyKT-55088
JS, Native compilation fail with internal error onSomeEnum.entries
reference whenSomeEnum
is from klib compiled with disabled EnumEntries language featureKT-40904
No warning when declare actual in the same target (module) as expectKT-56707
K2: Unexpected TYPECHECKER_HAS_RUN_INTO_RECURSIVE_PROBLEM where only getter type specified explicitlyKT-56508
Context receivers: Internal compiler error when compiling code containing a class with a secondary constructorKT-56706
K2: False-positive ARGUMENT_TYPE_MISMATCH for generic nested types from libraryKT-56505
K2: MissingNO_EXPLICIT_VISIBILITY_IN_API_MODE
errors on various declarationsKT-56682
K2: False-negative UNINITIALIZED_VARIABLE on access to delegated propertyKT-56678
K2: False-negative UNINITIALIZED_VARIABLE if corresponding variable has initializerKT-56612
K2: false positive NO_TYPE_ARGUMENTS_ON_RHS on raw cast with type alias based argumentKT-56445
K2: False-positive unresolved reference to callable reference to function with default argumentKT-55024
K2: overload resolution ambiguity/unresolved reference if variable is smart-casted to an invisible internal classKT-55722
K2: Incorrect OVERLOAD_RESOLUTION_AMBIGUITY with smart cast on dispatch receiver (simple)KT-56563
Inference within if stops working when changing expected type from Any to a different typeKT-55936
K2: Support proper resolution of callable references as last statements in lambdaKT-45989
FIR: wrong callable reference type inferredKT-55169
K2: False-negative NO_ELSE_IN_WHENKT-55932
K2. No compiler error when elvis operator returns not matched typeKT-53987
K2: False negative "TYPE_MISMATCH" with if statement returnKT-41038
NI: TYPE_MISMATCH when passing constructor of nested classKT-42449
Can not resolve property for value of type Any even after casting type to a type with star projectionKT-52934
StackOverflow fromPseudocodeTraverserKt.collectDataFromSubgraph
withif
insidefinally
KT-52860
StackOverflowError when casting involving recursive generics and star projectionKT-52424
ClassCastException: Wrong smartcast to Nothing? with if-else in nullable lambda parameterKT-52262
TYPE_MISMATCH: Nonnull smartcasting fails with non-exhaustive whenKT-52502
Forbid extension calls on inline functional parametersKT-51045
SETTER_PROJECTED_OUT: Star projected nullable property can't be set to nullKT-40480
[FIR] SupporthasStableParameterName
from metadataKT-50134
NI: Type inference regression in java streams groupingByKT-50160
False positive "USELESS_CAST" caused by indexed access operatorKT-42715
Unable to use implicit lambda paramit
for overloaded methodsKT-49045
False positive USELESS_CAST in generic type with nullable type parameterKT-49024
AssertionError: Variance conflict: type parameter variance 'out' and projection kind 'in' cannot be combinedKT-48975
Type mismatch: inferred type is X but Nothing! was expected with the AssertJ latest versionKT-47870
INVISIBLE_MEMBER: Kotlin class can't access protected annotation defined in Java parent classKT-47495
ReenteringLazyValueComputationException on invalid codeKT-47490
Missed diagnostic for incorrect callable reference in finallyKT-47484
"Recursion detected in a lazy value under LockBasedStorageManager" on invalid codeKT-46301
Combining branches with sealed interfaces inwhen
breaks type inferenceKT-44392
False negative: redundant nullability/not null check on cast with as operatorKT-43936
Recursion detected on input: ANNOTATION_ENTRY with annotation on star-imported nested classKT-43846
No smart cast when returning function closures with captured smart-cast variableKT-43603
False positive USELESS_CAST leads to TYPECHECKER_HAS_RUN_INTO_RECURSIVE_PROBLEM on "when" with smart cast and extension propertyKT-43553
JVM / IR: "AssertionError: Unbound symbols not allowed" caused by annotation class with TYPE targetKT-42169
False negative CAST_NEVER_SUCCEEDS for incompatible types with generic parameter and star projectionKT-42136
NI: False positive [USELESS_CAST] when list serves to create a mutable listKT-41721
SAM conversion fails on varargs with type approximated to NothingKT-38288
Unresolved reference for type parameter upper bound of nested class when outer class extends it with star projected type argumentKT-37490
NULL_FOR_NONNULL_TYPE: "Null can not be a value of a non-null type Nothing" when null is passed to nullable argument of type projected methodKT-37365
NPE fromReflectionReferencesGenerator.generateCallableReference
with inner class function reference and wrong parenthesisKT-36958
NI: missed unresolved on parenthesized callable reference passing through call (back-ends throw an exception)KT-30756
No smartcast if elvis operator as a smartcast source in while or do-while is used as the last statementKT-24737
Report an error on invalid this-expression with angle brackets on left-hand side of a callable referenceKT-21463
Compiler doesn't take into accout a type parameter upper bound if a corresponding type argument is in projectionKT-6822
Smart cast doesn't work inside local returned expression in lambdaKT-55840
Inconsistency between members of enums in bytecode between FE 1.0 + JVM IR and FIR + JVM IRKT-47815
JVM: "Recursion detected in a lazy value under LockBasedStorageManager" when trying to inherit interface from a class with non-trivial functionKT-17817
No error reported on invalid LHS for class literalKT-47373
Missed diagnostics on/after non-null assertion (!!) on generic class class use with class literalKT-51143
Wrong Unit-requiring at if/when branch with stub typesKT-53671
False-positive diagnostic reported on OptIn annotation import from root packageKT-53494
Mistaken type inference in compound 'if' expression with nullability check and covariant typeKT-28668
"AssertionError: Unrelated types in SAM conversion for index variable" if lambda argument of '[...]' in LHS of augmented assignment is used as an implementation for different SAM interfacesKT-55931
Inference for callable reference inside synthetic calls for if/when/try/etc stops working when brought into lambda for a callKT-20223
Inline access check ignores operator calls toinvoke()
KT-54478
@NoInfer
causes CONFLICTING_OVERLOADSKT-56472
K2: Add stack of all FIR elements to CheckerContextKT-41126
[FIR] Inconsistency of a compiler behaviour at init block for an enum entry with and without a qualifier nameKT-54931
Annotations defined in nested classes cannot be instantiated directlyKT-52338
"IncompatibleClassChangeError: Expected non-static field" with Kotlin class with same-named companion object property as base Java class fieldKT-24901
No smart cast forwhen
with early returnKT-53086
"Cannot access '' before superclass constructor has been called" with inner class secondary constructorKT-55137
Callable references with conversion are incorrectly allowed to be promoted to KFunctionKT-30497
EXACTLY_ONCE contract doesn't work in a function withvararg
parameterKT-47074
Front-end Internal error: Failed to analyze declaration State / java.lang.IllegalStateException: Should not be called! when try to add ParcelizeKT-24503
Return-as-expression is allowed as this/super constructor parameterKT-55379
False positive NO_ELSE_IN_WHEN with smartcast to BooleanKT-47750
False positive NO_ELSE_IN_WHEN in presence of smartcast to sealed interfaceKT-53819
False positive UNINITIALIZED_VARIABLE with secondary constructor and custom property getter in local classKT-56457
JVM: Enum.entries are not annotated with@NotNull
KT-56072
K2. "IllegalStateException: Fir2IrSimpleFunctionSymbol for is already bound" when trying to access java synthetic property of inherited classKT-50082
Kotlin non-overriding property of subclass doesn't shadow same-named Java field from base classKT-55822
False positive ABSTRACT_CLASS_MEMBER_NOT_IMPLEMENTED with raw types and mixed overridden membersKT-55666
K2: label on local function is rejected: "Target label does not denote a function"KT-56283
False-positive INVISIBLE_MEMBER on overridden member of more specific type after smart castKT-51969
[FIR] Compilation for expect value class fails with "Fir2IrSimpleFunctionSymbol for [declaration] is already bound"KT-56329
K2: compiler backend crash on two expected functions with similar signaturesKT-56361
K2/MPP: receiver isn't available in lambda literals with receiverKT-55295
K2/MPP: JS build functionalityKT-55909
[K2/N] IndexOutOfBoundsException for a reference to a function defined in companion object superclassKT-55664
K2: eliminate ClassId.isSame call from FirClass.isSubclassOfKT-56353
K2. False negative "Unresolved reference" in default value of secondary constructor's parameterKT-56381
K2: Function type kind not extracted from lambda literal in generic callKT-55747
K2. "Convention for 'mod' is forbidden. Use 'rem'" error is missingKT-56104
Unnecessary inner classes attributes in class files for subclassesKT-55570
K2: ACTUAL_WITHOUT_EXPECT error is not reported on a simple actual classKT-56176
[K2/N] "IllegalStateException: actual type is kotlin.Int, expected kotlin.Long" when expected type uses typealiasKT-56229
K2: IllegalStateException (already bound) for triangle-like dependencies scheme with MPP scenarioKT-56199
K2 + MPP + kotlinx.serialization: java.lang.VerifyError: Bad type on operand stack in aaloadKT-56212
K2: Exception when compiling extension function declaration with illegally chained type parameter receiverKT-55503
K2: "Argument type mismatch" caused by using the wrong "this"KT-56050
K2: inconsistency regarding visibility of synthetic properties with protected getter and public setterKT-49663
FIR: Support@kotlin
.jvm.PurelyImplements for java collectionsKT-55468
[K2/N] Crash with debuginfo caused by changed tree using IMPLICIT_COERCION_TO_UNITKT-56269
[K2/N] Don't test "Tailrec is not allowed on open members" in K2KT-54647
K2: Function call with Lambda on LHS of assignment leads to KotlinExceptionWithAttachments: FirDeclaration was not found for class org.jetbrains.kotlin.psi.KtFunctionLiteralKT-54648
K2: Function call on left side of erroneous assignment isn't resolvedKT-55699
K2. False Negative "Type parameter T is not an expression"KT-56132
Restore 'JvmBackendContext' constructor signature for compatibilityKT-55973
K2: Exception from UnusedChecker on an unused destructuringKT-56275
K2 IDE: Missed error for enum super typeKT-54775
K2. "IllegalStateException: Expected FirResolvedTypeRef with ConeKotlinType but was FirImplicitTypeRefImpl " exception on incorrect codeKT-55528
K2: CFA for property initialization analysis is not run for class initialization graphsKT-54410
K2: Deprecation warning instead of "this declaration is only available since Kotlin X" when language version in project are below required to use language featureKT-55186
K2: No compilation error on calling exception without constructorKT-36776
Treat special constructions (if, when, try) as a usual calls when there is expected typeKT-50947
False negative: FE 1.0 doesn't report type variance conflict error on an inner typeKT-39041
Collection literals should not be allowed inside annotation classesKT-54694
Consider enabling BooleanElvisBoundSmartCasts in K1 or K2KT-54587
K2. CCE on compilation when some operator fun is needed and it is implemented as an extension function for another classKT-52774
Resolve unqualified enum constants based on expected typeDocs & Examples
KT-53643
Update coding style conventions to include rangeUntil operatorKT-57902
Create migration tutorial from kotlin-js to kotlin-multiplatform gradle pluginKT-58381
[Docs][Libraries] Document Path.createParentDirectoriesIDE
Performance Improvements
KTIJ-23501
Make main run configuration detection lighterKT-56613
Reduce memory consumption of light classesFixes
KT-57849
K2: contract violation due to implicit java type with annotationKT-57857
LC: FakeFileForLightClass: Read access is allowed from inside read-actionKT-57578
SLC: incorrect upper bound wildcardsKT-57917
Analysis API: decompiled value parameters are not resolvedKT-56046
K2 IDE: Avoid redundant resolve from annotationsKT-57569
SLC: incorrect visibility for lateinit var with private setterKT-57547
SLC: non-lastvararg
value parameter type mismatchKT-57548
SLC: incorrect inheritance list for ComparatorKT-56843
Light classes: certain kinds of constant values in property initializers aren't supportedKT-56868
SLC: IncorrectOperationException on enum annotation arguments that are not valid Java identifiersKT-56833
Light classes: Accessors to lateinit properties don't have@NotNull
annotationsKT-56845
Light classes: Overridden property accessors don't have@Override
annotationKT-56441
K2 IDE: reference from Java to ObjectName.INSTANCE of private object is red in IDE, but compiled successfullyKT-56891
Symbol Classes: DefaultImpls classes contain methods without default implementationKT-56842
Light Classes: Primitive-backed context receiver parameters shouldn't be marked with@NotNull
KT-56835
Light classes: Underlying fields for delegated properties should be marked as final and@NotNull
KT-56840
Light Classes: Inline classes backed by Java primitives shouldn't be marked with@NotNull
KT-56728
K2 IDE. False positivenot applicable to
for kotlin annotation with target annotating Java elementKT-55815
SLC: Keep annotations on type when converting toPsiType
KT-55669
K2 IDE: INRE from light classesIDE. Completion
KTIJ-25108
K2 IDE: Code completion in Java context for Kotlin top level members: "Slow operations are prohibited on EDT" through KtAnalysisScopeProviderImpl.canBeAnalysed()KTIJ-24989
K2 IDE: completion should show information about expanded types for type alias parametersKTIJ-24992
K2 IDE: completion shows return type with incorrect nullability when type is stub typeKTIJ-24948
K2 IDE: "ERROR: class org.jetbrains.kotlin.fir.types.jvm.FirJavaTypeRef cannot be cast to class org.jetbrains.kotlin.fir.types.FirResolvedTypeRef" during completion of inner classes' constructorsKTIJ-24256
K2 IDE: Angle brackets are missing in completion of function with type parametersKTIJ-24083
K2, Completion: Exception on adding a type parameter receiver to a functionKTIJ-23963
K2 IDE: Completion in Kotlin suggests overriding a Java field; fails with "Unknown member to override"KTIJ-22359
K2 IDE: no completion for Java synthetic properties from super classKTIJ-23880
Completion doesn't work for Java synthetic property referenceIDE. Decompiler, Indexing, Stubs
KTIJ-25152
Kotlin Bytecode tool window: ISE Symbol with IrSimpleFunctionSymbolImpl is unbound on actual callable with argument in mpp project with IRKTIJ-24475
Migrate kotlin index extension implementation from object to classesKTIJ-24335
Kotlin Bytecode tool window: NoSuchElementException caused by duplicate Boolean type descriptor in JvmSharedVariablesManager.getProviderKTIJ-24206
Kotlin Bytecode tool window: "Unhandled intrinsic in ExpressionCodegen" when compiling a source file with an expect functionKTIJ-15764
IR by default in Kotlin bytecode tool windowIDE. Gradle Integration
KT-59034
MPP build failed with "Factory type is not known for plugin variants" in kt-231-*KT-56671
KGP import: K/N distribution libraries should'n be resolved for IDE by KGP with package namesKTIJ-24573
KGP-based import: commonized cinterop libraries don't include source set targets, unsupported by hostKTIJ-25757
KJS: 1.9.0-Beta fails to run when running in Android StudioKTIJ-24701
KGP import: JVM+Android shared source sets don't receive a correct default stdlib dependencyKTIJ-24745
IDE sync of kotlin("js") projects with js(BOTH) set fails with exception because of the new MPP IDE importKTIJ-24567
Enable KGP dependency resolution by defaultKTIJ-24729
KotlinMPPGradleProjectResolverKt must not be requested from main classloader on project importKTIJ-11978
IDE does not recognize the sources JAR of a published to mavenLocal MPP libraryIDE. Inspections and Intentions
KTIJ-24684
K2 IDE: 'Redundant qualifier name' false positive in type specification in extension functionKTIJ-24662
K2 IDE: False positive "Redundant qualifier name" inspection for nested class from base interfaceKTIJ-25232
K2 IDE: "Redundant qualifier name" inspection false positive with object referenced via propertyKTIJ-25447
Make Enum.entries and RangeUntil inspections don't check for opt-in when APIs become stableKTIJ-23588
K2 IDE. False positive unused import directive for extension function of an objectKTIJ-25112
K2 IDE: False positive "Actual value of parameter 'b' is always 'null'"KTIJ-24485
Explicit API mode: false positive "redundant 'public' modifier"KTIJ-24453
Unsuccessfull resolve error from OperatorToFunctionIntention on recursive property declarationIDE. JS
KT-58427
Kotlin Gradle Plugin ignores language version value for Kotlin/JS sourcesIDE. Libraries
KTIJ-25096
K2 IDE: Library sessions are garbage collected between performance test runs with enabled library cachesKTIJ-24413
Cannot navigate to enum of the Kotlin library via entries callIDE. Multiplatform
KTIJ-25859
MPP: Library wizard with android target uses deprecatedandroidTest
source setKTIJ-25479
Compiler options is not imported correctly for js source setsKTIJ-24011
MPP: Native tests are missing run guttersJavaScript
New Features
KT-12784
JS: generate ES2015 compatible modulesKT-48154
KJS / IR: Inline members support for external typesKT-51582
FIR: support basic compile-time evaluation for JS backendFixes
KT-43490
KJS / IR: "Cannot set property message of Error which has only a getter" caused by class that is child of ThrowableKT-57690
K2/MPP: compileProductionLibraryKotlinJs fails with Module has a reference to symbol kotlin/arrayOf|3204918726020768747[0]. Neither the module itself nor its dependencies contain such declarationKT-56911
K2/MPP: Compile K/JS fails for@Serializable
annotation with class IrDeclarationOrigin$GeneratedByPlugin cannot be cast to class IrDeclarationOriginImplKT-56950
Support KLIB IC with K2KT-58570
KJS: ES6 classes + PL throw java.lang.NullPointerExceptionKT-58835
K2/JS: Fix incremental compilation klib testsKT-58794
KJS / K2: Assertion failed with Space buildKT-51706
Partial linkage: in case of absent symbol referred from declaration Native compiler is successful, JavaScript failsKT-54452
Kotlin/JS libraries with "joined" legacy+IR content: publish IR sources for themKT-53180
Kotlin/JS: generated TypeScript constructor can have "TS1016: A required parameter cannot follow an optional parameter" error with certain properties orderKT-39650
KJS IR: provide a way to enable ES2015 class generationKT-57990
KJS/IR. Invalidsuper
call for final parent methods (ES classes)KT-58246
KJS: ES15 classses — duplicated code in class constructorKT-57479
KJS: Add an annotation for a function parameter which checks that a passed argument has an external typeKT-58201
Unknown statement type when building with ES modulesKT-30810
values and valueOf are miscompiled for external enum classesKT-57024
Ugly TypeScript definitions for declarations with both@JsExport
and@Serializable
KT-56237
KJS + IC: Adding or removing interface default implementation doesn't invalidate children and doesn't update JS codeKT-54638
K2/JS: Fir2ir - implement and use JS-specific manglerKT-54028
Native / JS: Using private object implementing a sealed interface causes a linker errorKT-57423
KJS: Add an annotation for external interfaces which allows to be inherited only by other external interfaces, classes or objectsKT-57711
K2: Native & JS fail to compile a KLIB that uses const val from a dependency KLIBKT-57078
JS IC: Unbound symbol left inSymbolTable
inJsIr[ES6]InvalidationTestGenerated.testBreakKlibBinaryCompatibilityWithVariance
testsKT-57254
Deprecateexternal enum
declarationsKT-57002
KJS: "JsParserException: missing name after . operator" when a js(...) block contains an interpolated constantKT-56961
JS IR: serializedIrFileFingerprints in klib manifest has a wrong formatKT-56282
KJS: Invalidate incremental cache in case of compiler internal errorsKMM Plugin
KT-55402
"Framework not found SQLCipher": after selection of "Regular framework" as "iOS framework distribution" and installing SqlCihper through CocoaPodsKT-55988
KN debugger in KMM plugin for Android Studio can't recognize the source codeLanguage Design
New Features
KT-48872
Provide modern and performant replacement for Enum.values()KT-15613
Introduce special syntax for the until operatorKT-4107
Design and implement a solution for toString, equals and hashCode on objects (data object)Fixes
KT-28850
Prohibit protected visibility in final expected classesKT-39362
Expect fun interface must have actual fun interface counterpartKT-48994
Prohibit type unsound java fields assignmentsKT-58791
Prolongate PROGRESSION_CHANGE_RESOLVE diagnostics to 2.xKT-53778
Release stdlib API about "rangeUntil" operator in 1.9KT-53653
Export Enum.entries to Objective-C and SwiftKT-55177
Deprecate declaration of expect and actual counterparts of same class in one moduleKT-49110
Prohibit access to members of companion of enum class from initializers of entries of this enumKT-47986
Forbid implicit inferring a type variable into an upper bound in the builder inference contextKT-57395
Delay ForbidInferringPostponedTypeVariableIntoDeclaredUpperBound feature to LV 2.0KT-55082
Bump KLib version for Enum.entriesKT-49264
Deprecate infix function calls of functions named "suspend" with dangling function literalLibraries
New Features
KT-58046
Stabilize remaining kotlin.time API: time sources, time marks, measureTimeKT-58074
Stabilization of Atomics API in K/NKT-55268
Mutiplatform@Volatile
annotationKT-51908
Provide common function for getting regex capture group by nameKT-53263
Path.createParentDirectoriesKT-7637
Add toString() to standard delegates classes (NotNullVar, LazyVal, BlockingLazyVal, ...)KT-40728
Add AssertionError constructor withcause: Throwable
parameter to common stdlibKT-57298
Avoid FileAlreadyExistsException from Path.createParentDirectories in case of parent is symlinkPerformance Improvements
KT-54739
build
method in collection builders (Set, Map, List) should return a single instance for empty collectionsKT-42589
Provide common listOf(value) overload to avoid allocation of the varargKT-55091
Stdlib: Sequence.toSet() and Sequence.toList() may create the collection twiceKT-57617
Optimize ReversedListReadOnly iteratorKT-57607
KJS: Bad performance for ArrayList.addAllFixes
KT-58841
Serialization: NPE when obtaining a serializer of a sealed base class with a self-referencing propertyKT-57728
Explicitly specify level of stability of programmatically-accessible interoperability APIKT-58985
Update KClass.isData KDocKT-57762
Introduce HexFormat for formatting and parsing hexadecimalsKT-55612
Stabilize experimental API for 1.9KT-58548
Stabilize standard library API for Enum.entriesKT-56400
Disable compilation of atomicfu-runtime with legacy JS backendKT-58276
Deprecate redundant public declarations in kotlin.native.concurrentKT-35973
Extract org.w3c declarations from stdlib-jsKT-58073
JS/Legacy compiler blocks compilation of kotlinx.atomicfu with K2KT-57317
Repack EnumEntries from stdlib into the compilerKT-54702
Native: mark Worker and related APIs as obsoleteKT-55610
Deprecate kotlin.jvm.Volatile annotation in platforms except JVMKT-57404
Native: Support AnnotationTarget.TYPE_PARAMETERKT-57318
Change EnumEntries stdlib implementation to be eagerKT-57137
Native: Consider removing ArrayAsListKT-56661
Missing EnumEntries-related bytecode in kotlin-stdlib-1.9.255-SNAPSHOT.jarKT-51579
PlatformImplementations loading is not compatible with graalvm native-image --no-fallbackNative
KT-54098
Decommission and remove 'enableEndorsedLibs' flag from Gradle setupKT-52594
Provide Alpha support for Native in the K2 platformKT-56071
K2/MPP: Native build functionalityKT-56218
[K2/N] Receiver annotations for properties are not serializedKT-56326
[K2/N] RemoveRedundantCallsToStaticInitializersPhase removes important static initializerKT-27002
lateinit
intrinsics frontend checkers aren't applied on NativeNative. Build Infrastructure
KT-58160
Native: performance build configuration fails with NoSuchMethodError: 'boolean kotlinx.coroutines.CompletableDeferredKt.completeWith(kotlinx.coroutines.CompletableDeferred, java.lang.Object)'Native. C and ObjC Import
KT-54610
Kotlin Native can't callobjc_direct
functionsKT-57918
[K2/N] Support typealiases in FirClassSymbol<*>.selfOrAnySuperClass()KT-58651
Native c-interop tool generates broken@Deprecated
annotationsKT-57541
Compilation fails without explicit cast on cinterop codeKT-54805
KMP ios memory leak when using CA LayerKT-57490
[K/N] Duplicate package names for cinterop klibs with objc protocols fails to linkNative. ObjC Export
KT-58839
K/N: Exception during HiddenFromObjC marked class extension function compilingKT-56464
K/N: Allow HiddenFromObjC for classesKT-57507
K2: Set of Objc exported declarations is different between K1 and K2Native. Runtime
KT-58441
Kotlin/Native:@ObjCAction
@ObjCOutlet
generate bridges without switching stateKT-57091
Align Native and Java file/class initialization behaviorNative. Runtime. Memory
KT-56233
[Kotlin/Native] Crash when enum values are accessed in multiple threadsKT-58130
Implement preview of custom allocator for Kotlin/NativeKT-56402
Native: if a Kotlin peer for an Obj-C object is created on the main thread, then Kotlin runtime should run objc_release for it on the main threadNative. Stdlib
KT-57344
Try to remove strange .equals overload on primitive typesKT-57592
Native: Remove the default parameter value for AtomicLong constructorNative. Testing
KT-57349
Enable more K2 MPP codegen/box tests for Kotlin/NativeKT-57026
K2: Fix Native test infrastructure for MPPReflection
KT-54833
Reflection: Incorrect behaviour for Field.kotlinProperty function in companion objectsKT-56650
ArrayStoreException from InlineClassAwareCaller.call with an array of inline classKT-56093
Metaspace leak in a Gradle plugin built with Kotlin 1.8.0KT-55937
Optimize implementation of kotlinFunction/kotlinPropertyTools. CLI
KT-57495
Add JVM target bytecode version 20KT-57154
Incorrect version of JDK is provided through CoreJrtFsKT-56209
Add CLI support for HMPP in K2KT-58351
Confusing error message when using removed -Xjvm-default mode valueKT-57535
K2: Kotlin command line compiler doesn't see class files on the class path in 2.0KT-57644
K2: Prohibit passing HMPP module structure with CLI arguments to metadata compilerKT-56351
Reduce memory usage spent on compiler settingsTools. Commonizer
KT-57796
NoSuchFileException in :module-B:commonizeCInterop with Kotlin 1.8.20KT-56207
Investigate failing tests in ClassifierCommonizationFromSourcesTestTools. Compiler Plugins
Fixes
KT-57821
K2: Compiler calls declaration generation plugins twice for classes in the common source setKT-57406
FIR Compiler plugins: Assignment plugin incorrectly recognizes qualified names of annotationsKT-57626
K2: SERIALIZER_NOT_FOUND for serializable class from another moduleKT-57400
FIR Compiler Plugins:annotated
predicate does not work with Java classesKT-57140
K2: Implement backwards compatibility for FirFunctionTypeKindExtensionKT-56685
K2: ArrayIndexOfBound during session creation if compiler plugins are enabledKT-55375
Remove "legacy" mode of jvm-abi-gen pluginKT-53470
FIR: passMemberGenerationContext
to all methods of FirDeclarationGenerationExtensionKT-51092
Lombok@Value
causes IllegalAccessErrorKT-55885
K2 plugin API: Backend-only declarations are not visible from other modulesKT-55584
K2: Improve registration of session components from compiler pluginsKT-55843
FIR Plugin API: metaAnnotated predicate returns meta-annotation itself as wellKT-53874
Optimize checking for plugin applicability and redesign DeclarationPredicatesTools. Compiler plugins. Serialization
Fixes
KT-58954
Serialization: NPE at run time when accessing a delegating property of a deserialized objectKT-56537
Serialization: Presence of (transient) delegated field in the serialized class breaks deserializationKT-58918
Serialization: NPE at run time obtaining a serializer for a sealed class with a generic self-referencing propertyKT-59113
Serialization: NPE at run time when accessing a delegating property of a deserialized objectKT-57647
Serialization: "IllegalAccessError: Update to static final field" caused by serializable value classKT-57704
K2/serialization: false-positive SERIALIZER_NOT_FOUND when compiling against 1.7.20 binary with enum classKT-57083
K2/serialization: can't resolve serializers for classes from other modulesKT-56480
K2: false-positive warning about incompatible serializer type when using type aliasesKT-56594
K2/serialization reports SERIALIZER_NOT_FOUND over aliased String or primitive typesKT-56553
Support 'serialization plugin intrinsics' feature in K2KT-56244
kotlinx.serialization compiler intrinsic does not work with encodeToString function in 1.8.0Tools. Daemon
KT-50846
Remove "new" Kotlin daemon from codebaseTools. Gradle
New Features
KT-56971
Expose jvmTargetValidationMode property in KotlinCompile Gradle taskKT-57159
Add project level compiler options for Kotlin/JVM pluginPerformance Improvements
KT-57052
Gradle: Stop using exceptions for flow controlKT-57757
Reduce classpath snapshotter memory consumptionKT-56052
Implement an in-memory wrapper for PersistentHashMap to avoid applying changes to IC caches before successful compilationFixes
KT-55624
Update KGP integration tests that use removed in Gradle 8 getClassifier methodKT-59589
Gradle: 'java.lang.NoClassDefFoundError: com/gradle/scan/plugin/BuildScanExtension' on 1.9.0-RC when applying Enterprise Plugin from initscriptKT-59063
Explicit API mode broken in Kotlin 1.9.0-BetaKT-57653
Explicit API mode is not enabled when free compiler arguments are specified in Gradle projectKT-59256
[1.9.0-Beta] ServiceLoader does not pick up classes defined in the same projectKT-58662
Gradle 8.1 + Configuration Cache: custom values data is missing from build reportKT-58280
org.jetbrains.kotlin.jvm Gradle plugin contributes build directories to the test compile classpathKT-59191
Actual compilation failure exception might be hidden in the case of a Kotlin daemon crashKT-56211
Improve Kotlin build reportsKT-57767
Gradle: "ZipException: invalid entry size" with 1.8.20KT-57736
K2: Introduce an easy way to try K2 compiler in Gradle user projectsKT-59056
FreeCompilerArgs options added using 'subprojects' extension override module-level freeCompilerArgs optionsKT-55740
Gradle 8: Listener registration using Gradle.addBuildListener() has been deprecatedKT-37652
Support explicit mode for Android projectsKT-58251
Build Statistics. Kotlin-specific tags are missing in build scans if projects use Gradle 8+KT-57224
Add an indicator into build metrics report to show whether K1 or K2 compiler was used to compile the codeKT-58571
ExplicitApi mode should not apply for test compilationsKT-42718
Test and AndroidTest sources should be excluded from explicit API requirements for librariesKT-58916
[1.9.0-Beta] PLUGIN_CLASSPATH_CONFIGURATION_NAME and NATIVE_COMPILER_PLUGIN_CLASSPATH_CONFIGURATION_NAME should stay public or offer an alternative APIKT-58869
K2, Gradle: Improve message "100% (2/2) tasks have compiled with Kotlin 2"KT-52811
Kotlin Serialization metadata issue due to incompatibility between Gradle Kotlin embedded version and Kotlin Gradle Plugin versionKT-57330
Provide collection of usage statistics for the DokkaKT-57393
jvm-target value set through 'android.kotlinOptions' is ignored and overwritten with the default 1.8 valueKT-58745
KaptGenerateStubs task should also be configured with the same compiler plugin optionsKT-58682
Explicit api mode does not apply in MPP projectsKT-52976
Remove deprecated Gradle conventions usagesKT-58530
Compiler plugin unbundling changes should be backward compatible with Kotlin pluginKT-36904
Adding folders to sourceSets.resources.srcDir() in Gradle script does not workKT-58313
An exception in console if no task is executed and file build reports are enabledKT-58619
Move all pm20 interfaces into Gradle plugin codebaseKT-58320
Kotlin daemon OOM help message is missing on OOM in Kotlin Daemon itselfKT-53923
Add 'progressive' compiler argument to Gradle compiler optionsKT-53924
Add 'optIn' compiler arguments to Gradle compiler optionsKT-53748
Remove KotlinCompile setClasspath/getClasspath methodsKT-56454
Bump minimal support AGP version to 4.2.2KT-57397
Add infrastructure to use the build-tools-api to run compilation from GradleKT-56946
Switch incremental Gradle tests for K2 to use language version 2.0KT-57782
Disable daemon fallback strategy for Gradle integration tests by defaultKT-57142
Split org.jetbrains.kotlin.gradle.tasks/Tasks.kt into several source filesKT-54447
Remove usage of deprecated internal Gradle field in Kotlin Gradle Plugin, replace with equivalent in public APIKT-49785
Avoid creating task output backups until really neededKT-56047
False positive message about full recompilation is displayed while restoring from build cache and then making a syntax errorKT-56421
Gradle: plugin should not use BasePluginExtension deprecated propertiesKT-55241
Gradle: the VariantImplementationFactories build service state is not persistent making impossible to access factories with configuration cache lazilyKT-56357
Gradle: "DefaultTaskCollection#configureEach(Action) on task set cannot be executed in the current context" because of VariantImplementationFactoriesKT-56352
Make build scan reports more readableKT-55972
Gradle: Add an assertion to all integration tests ifwarningMode
is notFAIL
, but the build doesn't produce any warningsTools. Gradle. Cocoapods
KT-38749
Support reusing generated C-interop between dependant podsKT-54161
Support adding extra code to generated Podfile from the Kotlin gradle pluginKT-56162
Provide granular Gradle warnings suppression for CocoaPodsITTools. Gradle. JS
New Features
KT-48791
KJS: Support for Power(ppc64le) and Z(s390x)KT-32209
org.jetbrains.kotlin.js does not respect Gradle's archivesBaseNameKT-52646
KJS / Gradle: make "KotlinCompilationNpmResolver already closed" a warningKT-52647
KJS / Gradle: Make "Projects must be configuring" a warningKT-56158
KJS: Support implementation dependenciesFixes
KT-59604
Unresolved reference: useKarma in convention pluginKT-57604
JS, Space: Circular dependency between tasksKT-59116
K/JS npm dependcies are not resolved properly on Kotlin 1.9KT-54731
KJS / Gradle: "There are multiple versions of "kotlin" used in nodejs build: 1.6.21, 1.7.20." with kotlin-dsl in buildSrcKT-58970
browserTest gradle task fails if karma is used and gradle configuration cache is enabledKT-59004
Kotlin JS 1.9.0-Beta, yarn.lock is unstable in multi module projectKT-56458
KJS / Gradle: Unnecessary and confusing "There are multiple versions of "kotlin" used in nodejs build" generated fromYarnImportedPackagesVersionResolver
KT-57985
K/JS:packageJson
Gradle configurations don't inherit unique attributes from JsTarget DSLKT-57817
JS: executables for couple of JS targets builds in the same directoryKT-58199
K/JS: Remove useCoverage methodKT-57116
KJS / Gradle:commonWebpackConfig
not applied if called afterbinaries.executable()
KT-58522
K/JS: Upgrade NPM dependency versionsKT-57629
K/JS: Change default destination of JS production distributionKT-57480
K/JS: Use IR compiler by default without explicit choosing of js compilerKT-58345
K/JS: Webpack task skipped with ES modules because files have mjs extensionKT-58071
KJS / Gradle:jsNodeTest
task is not incrementalKT-43809
KJS: browserProductionExecutableDistributeResources tasks deletes distributions directoryKT-56690
Kotlin2JsCompiler friendDependencies cannot be configured through friendPathsKT-57920
K/JS: Make imported NPM package not considering dev dependenciesKT-56025
KJS / Gradle: Gradle 8.0 jsBrowserProductionWebpack uses the output of another project's jsProductionExecutableCompileSyncKT-57630
K/JS: webpack updating twice on one change of kt sourcesKT-47351
KJS / IR::jsTestPackageJson
is unable to find nested included builds under composite buildKT-44754
K/JS:browserRun --continuous
keeps rebuilding without any changesKT-49774
KJS / Gradle: Errors during NPM dependencies resolution in parallel build lead to unfriendly error messages like "Projects must be closed"KT-57387
Remove support of webpack 4KT-57386
Kotlin/JS upgrade npm dependenciesKT-56705
KJS / Gradle: Module name starting with '@' isn't properly set when FUS is disabledKT-46428
KJS / IR: Composing build failed "Failed to create MD5 hash for package.json"KT-53687
Don't trigger npm and yarn related tasks if it not relevant for assembleKT-49915
KJS / Gradle: Gradle build cache miss because of absolute path inKotlinJsIrLink.filteredArgumentsMap
KT-56192
KJS: In browser testing no original sources in stacktraceKT-42395
Kotlin/JS: Gradle DSL: PackageJson.customField() does not accept nullKT-43305
Support Node.JS downloading for UbuntuKT-48631
KJS: Unconditionally uses linux/x86 binariesKT-38015
NodeJS installation does not extract symlinks correctly (npm and npx)Tools. Gradle. Multiplatform
New Features
KT-34662
Provide an option for Android targets to compile & runcommonTest
tests as unit tests only, instrumented tests only, or bothKT-55881
Add possibility to enable/disable sources publication similar to Java Gradle Plugin APIFixes
KT-59446
MPP: transformCommonMainDependenciesMetadata failing for api java dependency in shared jvm source set with Future was not completed yetKT-55751
MPP / Gradle: Consumable configurations must have unique attributesKT-57688
MPP:compileDebugKotlinAndroid
task fails with llegalArgumentException: 'moduleName' is null!KT-56210
Pass module structure to CLI of K2 if K2 enabledKT-57531
KotlinNativeLink: StackOverflowError when consuming library with dependency cycles (from constraints)KT-58281
Kotlin Gradle Plugin: Enable Kotlin/Android SourceSetLayout v2 by defaultKT-57903
Prepare for migration to the pluggable android target pluginKT-49933
Support Gradle Configuration caching with HMPPKT-58661
KGP: KotlinJvmTarget: Implement 'run' carrier taskKT-59055
KotlinJvmRun not respecting jvmToolchain settingKT-57959
Module-name value can't be changed for the android target of a multiplatform projectKT-55506
TCS: Gradle Sync: kotlin-stdlib-common is not filtered from JVM + Android source setsKT-57652
Don't expose sourcesElements for project2project dependenciesKT-58601
Finalise "ExternalKotlinTargetApi" shape for initial 1.9 releaseKT-58710
External Target Api: Add API to control SourceSetTreeKT-58488
Add a diagnostic message to KGP in case of val androidTest by getting usageKT-57482
cleanNativeDistributionCommonization is not compatible with configuration cache with gradle 8.0KT-58062
Commonizer configuration cache not compatible with Gradle 8.1KT-58086
Warn about using MPP libraries published in the legacy modeKT-56439
TCS: Gradle Sync: IdeBinaryResolver: Add componentFilter API for compilations/configurationsKT-57023
Cryptic Gradle task descriptions for compile tasksKT-58470
Warning about using MPP libraries published in the legacy mode is not reported if the dependency is declared in an intermediate source setKT-58466
K2 Gradle: non *.kt files are passed to -Xfragment-sourcesKT-58319
kotlin.git: ProjectMetadataProviderImpl "Unexpected source set 'commonMain'"KT-51940
HMPP resolves configurations during configurationKT-58261
Link kotlin native binary framework tasks fails when configuration cache is enabledKT-41506
UnknownDomainObjectException: "KotlinSourceSet with name not found" when creating custom compilations after applying withJava to an MPP JVM targetKT-58209
Do not use the term 'Module' in KotlinTargetHierarchyKT-56153
When the dependency is unresolved, import fails and don't import anything instead of degrading gracefullyKT-56571
New import broke apiVersion for commonMain, commonTest and jvmAndAndroidMain modulesKT-56712
Multiplatform;Composite Builds: Classpath isolation: .MppDependencyProjectStructureMetadataExtractorFactory cannot be cast to class *MppDependencyProjectStructureMetadataExtractorFactoryKT-56461
MPP: resolvableMetadataConfiguration: Ensure consistent resolution across all compile dependenciesKT-56841
MPP: Module-to-module dependencies don't work inside included build in included buildKT-42748
Project that transitively depends on composite build of multimodule multiplatform library cannot resolve dependencies properlyKT-52356
MPP / Gradle: Missing common classes on KMM project integrated via Gradle included build into an Android applicationKT-51293
Unresolved references with hierarchical project structure when building KotlinMetadata from native-common source setKT-56700
V2 MPP Source Set layout warnings should include link to docsKT-55926
TCS: Gradle Sync: Import Extras on KotlinSourceSet and KotlinTargetKT-55730
MPP / Gradle: compileKotlinMetadata fails to resolve symbols in additional source setsTools. Gradle. Native
KT-58838
KGP/Multiplatform: 1.9.0-Beta with custom cinterops: IllegalStateException: Could not create domain object 'jni' (DefaultCInteropSettings)KT-57823
KotlinNativeCompileOptions.moduleName value is ignored and replaced with the default one if to set up using compilationsKT-57815
KotlinNativeCompileOptions.moduleName isn't accessible if to configure using compilerOptions.configure {}KT-57944
K2: K2, MPP, Native: K2 reports "Source does not belong to any module" for native sourcesKT-53108
Expose Kotlin/Native compiler options as Gradle DSLKT-58063
Kotlin/Native tasks configuration cache are not compatible with Gradle 8.1KT-38317
Kotlin/Native: NSURLConnection HTTPS requests fail in iOS tests due to --standalone simctl flagKT-56280
Gradle: freeCompilerArgs are no longer propagated from compilations to Native binariesTools. Incremental Compile
KT-58289
IC fails to detect a change to class annotationsKT-58986
New IC: ISE "The following LookupSymbols are not yet converted to ProgramSymbols: LookupSymbol(name=$$delegatedProperties, ...)"KT-56197
If use classpathSnapshot, the invoke place of subclass's super function who has default parameters will not recompiled if it is incremental buildKT-56886
K2: Changes to Java sources used in Kotlin project do not trigger a rebuild if a previous build was successfulTools. Kapt
KT-54468
KAPT Gradle plugin causes eager task creationKT-59521
Kapt maven plugin require version of annotation processorKT-58301
K2: Compile Kotlin task failure for the generated by Kapt sources : 'Source NameOfTheGenerated.kt does not belong to any moduleKT-57598
K2: Support a fallback mode executing Kapt with K1 even when the compiler is run with languageVersion=2.0KT-58226
KAPT: “org.jetbrains.kotlin.psi2ir.generators.ErrorExpressionException: null: KtNameReferenceExpression” with enum with secondary constructorTools. Maven
KTIJ-25445
Maven. JVM target is imported as 1.6 when no target specified in pom.xmlTools. Parcelize
KT-59112
K2: "IllegalStateException: Function has no body with@Parcelize
" on nested sealed class hierarchiesTools. Scripts
KT-58366
The obsolete kotlin-script-util jar is still published and contains broken JSR-223 implementationTools. Wasm
KT-56585
Change wasmBrowserRun Browser Executable to System DefaultKT-56159
Running (karma) tests doesn't work in a project generated by wizard "Browser Application for Kotlin/Wasm"KT-57203
Update Kotlin/Wasm to support Gradle 8Checksums
v1.8.22
: Kotlin 1.8.22Changelog
Tools. Gradle
KT-58280
org.jetbrains.kotlin.jvm Gradle plugin contributes build directories to the test compile classpathChecksums
v1.8.21
: Kotlin 1.8.21Changelog
Compiler
KT-57848
Native: compilation of dynamic/static library fails with Xcode 14.3KT-57875
Native compilation failure: Suspend functions should be lowered out at this point, but FUN LOCAL_FUNCTION_FOR_LAMBDAKT-57946
KAPT: "RuntimeException: No type for expression" with delegateJavaScript
KT-57356
KJS: StackOverflowException on@JsExport
with type parameters referring to one anotherTools. Commonizer
KT-57796
NoSuchFileException in :module-B:commonizeCInterop with Kotlin 1.8.20Tools. Compiler plugins. Serialization
KT-58067
Serialization: NullPointerException caused by@Contextual
property with type with genericKT-57730
Serialization: "IllegalStateException: Serializer for element of type .Foo has not been found" caused by serialization of Java typeTools. Gradle. JS
KT-57766
KJS / Gradle "Module not found: Error: Can't resolve 'kotlin-kotlin-stdlib-js-ir'" when using "useEsModules"Tools. Kapt
KT-58027
Kotlin 1.8.20 kapt issue "null: KtCallExpression: build()"Tools. Maven
KT-58048
Maven: "Too many source module declarations found" after upgrading to 1.8.20KT-58101
'Unable to access class' in kotlin-maven-plugin after updating to Kotlin 1.8.20Checksums
v1.8.20
: Kotlin 1.8.20Changelog
Analysis API
KT-55510
K2: Lost designation for local classesKT-55191
AA: add an API to compare symbol pointersKT-55487
K2: symbol pointer restoring doesn't work for static membersKT-55336
K2 IDE: "java.lang.IllegalStateException: Required value was null." exception while importing a compiled JPS projectKT-55098
AA: KtDeclarationRenderer should render a context receiversKT-51181
LL API: errors for SAM with suspend function from another moduleKT-50250
Analysis API: Implement Analysis API of KtExpression.isUsedAsExpressionKT-54360
KtPropertySymbol: support JvmField in javaSetterName and javaGetterNameAnalysis API. FE1.0
KT-55825
AA FE1.0: stackoverflow when resolution to a function with a recursive type parameterAnalysis API. FIR
KT-54311
K2: proper implementation of KtSymbolPointerKT-50238
Analysis API: Implement KSymbolPointer for KtSymbolAnalysis API. FIR Low Level API
KT-52160
FIR: Substitution overrides on FirValueParameter-s are incorrectly unwrappedKT-55566
LL FIR: Tests incompiler/testData/diagnostics/tests/testsWithJava17
fail under LL FIRKT-55339
LL FIR: Missing RECURSIVE_TYPEALIAS_EXPANSION error in function type aliasKT-55327
LL FIR: Diverging UNRESOLVED_REFERENCE errors in recursive local function testKT-54826
KtSymbolPointer: migrate from IdSignature to our own solutionAndroid
KT-54464
MPP, Android SSL2: Add a flag for suppressing warning in case of using Android Style foldersBackend. Wasm
KT-38924
Wasm support in nodejsKT-56160
Getting WebAssembly.CompileError in browsers not supported GC and other required proposalsKT-46773
Implement an experimental version of the Kotlin/Wasm compiler backendKT-56584
K/Wasm: Can't link symbol classKT-56166
Fix compatibility with Firefox NightlyKT-55589
Basic support of WASIKT-53790
Reading from "node:module" is not handled by plugins error with Kotlin/Wasm 1.7.20-BetaCompiler
New Features
KT-54535
Implement custom equals and hashCode for value classes in Kotlin/JVMKT-55949
Release experimental@Volatile
support in nativeKT-44698
Frontend (K2): print file name/line on compiler crash/exceptionKT-54666
K2: Allow to skip specifying type arguments for members from raw type scopeKT-54524
Implement Java synthetic property references in compilerKT-54024
K2: support -Xlink-via-signatures modePerformance Improvements
KT-33722
JVM: Result API causes unnecessary boxingKT-53330
Optimize for-loops and contains over open-ended ranges with until operator (..<
) for all backendsKT-54415
JVM BE: performance loss related to multi-field inline class loweringKT-48759
Infix compareTo boxes inline classesKT-55033
Make org.jetbrains.kotlin.resolve.calls.inference.model.NewConstraintSystemImpl#runTransaction an inline functionKT-54501
Improve code generation for inline classes with custom equalsFixes
KT-56965
K/N: linkDebugFrameworkIosArm64 tasks failing with UnsupportedOperationException: VAR name:disposables type:com.badoo.reaktive.disposable.CompositeDisposable [val]KT-56611
Native: new native caches are broken when KONAN_DATA_DIR is defined to a directory inside ~/.gradleKT-55251
Enum.entries compilation error should be more specificKT-56527
K2: "AssertionError: Assertion failed" during compilation in SequentialFilePositionFinderKT-56526
InvalidProtocolBufferException on reading module metadata compiled by K2 in 1.8.20KT-57388
Kapt+JVM_IR: "RuntimeException: No type for expression" for delegated propertyKT-53153
Synthetic Enum.entries can be shadowed by user-defined declarationsKT-51290
"AssertionError: Parameter indices mismatch at context" with context receiversKT-57242
Equals behaviour for value classes implementing interfaces is different between 1.8.10 and 1.8.20-RCKT-57261
"IllegalArgumentException was thrown at: MemoizedInlineClassReplacements.getSpecializedEqualsMethod" when comparing non-inline class instance with an inline class instanceKT-57107
Handling of Windows line endings CRLF broken in latest snapshot with K2KT-57117
K2: Compiler reports invalid columns in diagnostics in case of crlf line endingsKT-56500
The type parameter TYPE_PARAMETER name:E index:0 variance: superTypes:[kotlin.Any?] reified:false is not defined in the referenced function FUN LOCAL_FUNCTION_FOR_LAMBDAKT-56258
VerifyError: Bad local variable type when using -XdebugKT-54455
Unexpected result of equality comparison of inline class objectsKT-56251
Generic Java synthetic property references don't work in K2KT-55886
K2: Wrong code location mapping with Windows line endingsKT-43296
FIR: Complicated interaction between smart cast and inference leads to false-positive diagnosticKT-57053
Problem around anonymous objects in inline functionsKT-54950
NoSuchMethodError on calling 'addAll' on inline class implementing mutable listKT-56815
compileKotlin task is stuck with while(true) and suspend functionKT-56847
Unresolved reference to Java annotation in Kotlin class with the same name packagesKT-52459
Context receivers: AbstractMethodError caused by Interface method with both an extension and a context receiver is overriden incorrectly in subclassesKT-56215
JVM: Object extension function nullable receiver null check false negative when object is nullKT-56188
K/N: AssertionError when casting SAM wrapper with generic type parameterKT-56033
Restore 'isMostPreciseContravariantArgument' function signature for compatibilityKT-56407
Backend Internal error: Exception during IR lowering during:daemon-common-new:compileKotlin
KT-55887
K2. "IllegalStateException: org.jetbrains.kotlin.ir.expressions.impl.IrErrorCallExpressionImpl is not expected" on adding kotlin.plugin.jpaKT-56701
K2 (with LightTree) reports syntax errors without additional informationKT-56649
K2 uses 0-index for line numbers rather than 1-indexKT-54807
K2. Support@OnlyInputTypes
diagnostic checks (contains
like calls)KT-51247
"AssertionError: org.jetbrains.kotlin.ir.expressions.impl.IrFunctionReferenceImpl" caused by context receiver functional typesKT-55436
K1: implement warning about shadowing of the derived property by the base class fieldKT-56521
Static scope initializers sometimes not called when first accessed from interopKT-49182
Strange cast from Unit to StringKT-55288
False negative WRONG_ANNOTATION_TARGET on type under a nullability qualifierKT-33132
Cannot override the equals operator twice (in a class and its subclass) unless omitting the operator keyword in the subclassKT-56061
K1 does not report error on inconsistent synthetic property assignmentKT-55483
K2: Fir is not initialized for FirRegularClassSymbol java/lang/invoke/LambdaMetafactoryKT-55125
Difference in generated bytecode for open suspend functions of generic classesKT-54140
SOE atIrBasedDescriptorsKt.makeKotlinType
with mixing recursive definitely not nullable type with nullabilityKT-56224
Clarify message "Secondary constructors with bodies are reserved for for future releases" for secondary constructors in value classes with bodiesKT-54662
K2: Assign operator ambiguity on synthetic property from javaKT-54507
K2: WrongimplicitModality
for interface inFirHelpers
KT-55912
"UnsupportedOperationException: Unsupported const element type kotlin.Any" caused bykotlin
fqn in annotationKT-56018
[K2/N] Fir2Ir does not take value parameters annotations from FIR to IRKT-56091
[K2/N] Fix various property annotationsKT-54209
K2: false positive deprecation on a class literal with deprecated companionKT-55977
[K2/N] Suspend function reference type is wrongly serialized to klibKT-55493
K2: False-negative VAL_REASSIGNMENTKT-55372
K2: false-negative INVISIBLE_MEMBER for call of static method of package-private Java grandparent classKT-55371
K2: compiled code fails trying to call static method of package-private Java grandparent classKT-55408
K2: can't access indirectly inherited from a package-private class Java members through a type aliasKT-55116
K2: store static qualifiers in dispatch receiver fieldKT-55996
K2: cannot switch the light tree mode off with -Xuse-fir-lt=falseKT-55368
K2/MPP: Metadata compilerKT-54305
K1: implement warning "synthetic setter projected out"KT-52027
"NullPointerException" when using context receivers with inline funKT-55984
Stack allocated array is not cleaned between loop iterationsKT-52593
Provide Alpha support for JS in the K2 platformKT-54656
NoSuchMethodError on invoking Java constructor which takes an inline value class as a parameterKT-56015
Remove unnecessary stack traces for special checks for ObjC interopKT-55606
K2. Infix operator "in" works on ConcurrentHashMap when it's declared through another classKT-53884
K2: "IllegalStateException: Fir is not initialized for FirRegularClassSymbol com/appodeal/consent/Consent.a" when importing this classKT-54502
Synthetic extensions on raw types work differently from regular getter callsKT-49351
FIR: Raw type scopes are unsupportedKT-49345
FIR: Properly support raw types in type parameter upper boundsKT-55733
K2. Reference resolve works incorrectly for classes declared through typealiasKT-46369
FIR: Investigate raw types for arraysKT-41794
[FIR] Implement raw type based scopeKT-55181
K2. No compilation error on throwing not throwableKT-55398
Kotlin inline nested inline lambda's inline variable will inline not correctlyKT-55359
K2. No error when secondary constructor does not delegate to primary oneKT-55759
K2: Unresolved reference ofserializer
if library linking is used (with kotlinx.serialization plugin)KT-54705
Kotlin scripting doesn't support files with UTF-8 BOMKT-51753
FIR: various errors due to expect/actual mapping absence in translatorKT-44515
FIR DFA: extract non-null info from anonymous object's initializationKT-55018
K2 / serialization: FIR2IR fails on local companionKT-55284
Refactor org.jetbrains.kotlin.diagnostics.KtDiagnosticReportContextHelpersKt#reportOn(...)KT-55693
K2. Type inference changed in k2KT-54742
K2: lambda with conditional barereturn
inferred to return Any, not UnitKT-54332
Add deprecation warning for false-negative TYPE_MISMATCH for KT-49404KT-55509
Invisible fake overrides are listed among lazy IR class membersKT-55597
K2.This type has a constructor, and thus must be initialized here
error is missed for anonymous object inherits class with no-arg constructorKT-54357
"ClassCastException: class org.jetbrains.kotlin.resolve.scopes.receivers.ExtensionReceiver cannot be cast to class org.jetbrains.kotlin.resolve.scopes.receivers.ContextClassReceiver" with anonymous object extending a class with a context receiverKT-51397
"VerifyError: Bad type on operand stack" with context receiversKT-54905
KLIB check on compiled with pre-release versionKT-55615
K2 often does not expand type aliases in annotation positionKT-54522
K2: ambiguity between operator candidates on += (plusAssign) to reassigned var of MutableList typeKT-54300
K2: No "Projections are not allowed for immediate arguments of a supertype" for projection in supertypes of an anonymous objectKT-55495
K2: support lateinit intrinsic applicability checkerKT-55494
MPP. Error when building for native: Compilation failed: Global 'kclass:io.ktor.serialization.$deserializeCOROUTINE$0' already existsKT-54980
K2: Explicit type arguments in calls with the wrong number of type arguments are not resolvedKT-54730
K2: type aliases to generic functional interfaces attempt to re-infer explicitly specified type parametersKT-55611
IC / MPP: Optional internal annotations are not visible on incremental buildsKT-55324
K2: ControlFlowGraphBuilder fails with index out of bounds exceptionKT-55656
K2: PRIMARY_CONSTRUCTOR_DELEGATION_CALL_EXPECTED being a warning causes a NPE in runtimeKT-51277
"NoSuchElementException: Collection contains no element matching the predicate" with context receivers and star projectionKT-52791
Class with multiple context receivers fails -Xvalidate-ir with "Validation failed in file"KT-55071
Shared Native Compilation: Calls from intermediate common source set cannot use default parameters declared in expect common functionsKT-52193
Native: Unable to call primary constructor with default values in an actual class without passing the values, in nativeMain source setKT-54573
K2: untouched implicit types in delegated constructor call of data class with@JvmRecord
KT-55037
Support jspecify annotations moved to the new package org.jspecify.annotations in jspecify 0.3KT-48989
JVM / IR: "IllegalStateException: Bad exception handler end" when first parameter of inline function is nullable with "try/catch/finally" default value and second parameter tries to call toString() on the firstKT-55231
K2: Contract declarations are not passed to checkersKT-54411
False positive: INFERRED_TYPE_VARIABLE_INTO_POSSIBLE_EMPTY_INTERSECTION on kotlinx.coroutines codeKT-55005
Inconsistent behavior of array set operation in Kotlin 1.7.21KT-44625
Property backing/delegate field annotations are not serialized/deserialized for non-JVM targetsKT-42490
Receiver annotations are not serialized/deserialized for non-JVM targetsKT-53441
K2: cannot access static method of package-private Java grandparent classKT-54197
[K2] Exception from inliner for inline function with context receiverKT-55246
Disable 'CustomEqualsInValueClasses' feature in 1.9 language versionKT-55247
Disable 'InlineLateinit' feature in 1.9 language versionKT-53957
K2 and -Xlambdas=indy: LambdaConversionException on reference to method with both context and extension receiversKT-55421
K2: get rid of potentially redundant call of preCacheBuiltinClassMembers from getIrClassSymbolKT-52815
Compiler option -Xjdk-release fails to compile mixed projectsKT-52236
Different modality in psi and firKT-54921
K2: cannot access static field of package-private Java parent classKT-53698
K2: FIR2IR fails on call of inivisble extension function with SuppressKT-53920
K2: "NoSuchElementException: Keyorg.jetbrains.kotlin.fir.resolve.dfa.cfg.ClassExitNode@ef115ab
is missing in the map" with unreachable code and anonymous objectKT-55358
INTEGER_OPERATOR_RESOLVE_WILL_CHANGE is not reported in return positions of functionsKT-51475
"ArrayIndexOutOfBoundsException: Index 4 out of bounds for length 4" with context(Any) on inline function with contractKT-51951
"IllegalStateException: No receiver" caused by implicit invoke on typealias context receiverKT-52373
Context receivers: ClassCastException: function with dispatch, context, and extension receivers produces this when a parameter's default is includedKT-54220
K2: compiler fails on compiling plus expression on unsigned intKT-54692
K2: compiler fails on compiling unsigned shiftsKT-54824
K2: missing smartcast after two levels of aliasing and a reassignmentKT-53368
Out of bounds read in sse version of String::hashCodeKT-54978
K2: Property accesses with explicit type arguments pass frontend checkersKT-51863
ClassCastException when using context receivers with named argument.KT-55123
JvmSerializableLambda is not applicable in common code in multiplatform projectsKT-45970
Missing deprecation warnings for constant operators calls in property initializersKT-54851
K2: analysis of as/is contains multiple errors that result in missing diagnosticsKT-54668
K2: Inference error in body of lazy property with elvis with Nothing in RHSKT-55269
FIR2IR: Static functions and nested classes are missing from Fir2IrLazyClassKT-55026
K2: Function hides internal constructor from another moduleKT-53070
Update intellij testdata fixes for FIR and merge it to masterKT-53492
No parameter null check generated for constructor taking an inline class typeKT-50489
Smart cast may lead to failing inferenceKT-55160
Kotlin's fragment element types must not extendIStubFileElementType
KT-55143
K2: INAPPLICABLE_JVM_NAME in JVM does not work for inline classesKT-47933
Report warning if kotlin.annotation.Repeatable is used together with java.lang.annotation.RepeatableKT-55035
FIR: do not use FirValueParameter for FirFunctionalTypeRefKT-55095
Wrong containingDeclarationSymbol in type parameter from EnhancementKT-53946
K2: don't resolve Enum.declaringClass and Enum.getDeclaringClassKT-54673
K2. "Superclass is not accessible" from interface error for sealed interfacesKT-55074
OptIn false negative: constructor call with default argument valueKT-54260
K2: "AssertionError: No modifier list, but modifier has been found by the analyzer" when annotated annotation and AllOpen pluginKT-55034
FIR: provide information about containing function/constructor to FirValueParameterKT-54744
K2: reassigning a var erases smartcast info of a variable derived from the old valueKT-53988
K2: False negative "The expression cannot be a selector (occur after a dot)"KT-53983
K2 crashes with NPE when 'this' is used inside enum class constructorKT-54910
Can not declare typed equals operator in inline class with "Nothing" return typeKT-54909
Usage of custom typed equals operator in generic inline class is type-unsafeKT-53371
Properly resolve FIR to get fully resolved annotationsKT-53519
FIR: argument mapping for annotations on value parameter is not properly builtKT-54827
MPP: "java.lang.IndexOutOfBoundsException: Index: 0" during compilation ofandroidMain
targetKT-54417
K2: move receiver-targeted annotations to KtReceiverParameterSymbol and remove it from FirProperty receiver typeKT-54972
K2: Local functions with multiple type arguments are brokenKT-54762
Private constructor is accessible from a public inline function via@PublishedAPI
annotationKT-54832
Deprecate incorrect callable references resolution behavior for KT-54316KT-54732
DirectedGraphCondensationBuilder.paint fails with StackOverflowError during linkReleaseFrameworkIos64KT-54897
K2: value class with private constructor stripped by jvm-abi-gen cannot be used in another moduleKT-54784
NPE from IrSourceCompilerForInlineKt.nonLocalReturnLabel on non-local break and continue in anonymous initializers and in scriptsKT-54840
Field for const property on interface companion object loses deprecated status when copied to interfaceKT-53825
class files are generated when compilation fails with platform declaration clashKT-54526
K2: Raw type scope is lost after exiting from elvisKT-54570
K2: False-positive OVERLOAD_RESOLUTION_AMBIGUITY in case of combination of raw typesKT-52157
Annotation on type parameter isn't present in the symbol loaded from the libraryKT-54318
VerifyError on{ null }
in catch blockKT-54654
K2: Implicit types leaks into delegated memberKT-54645
K2: Clash of two inherited classes with the same nameKT-53255
[FIR2IR] StackOverflowError with long when-expression conditionsKT-48861
No warning on incorrect usage of array type annotated as Nullable in JavaKT-54539
@Deprecated
on members of private companion object is no longer neededKT-54403
Unexpected behaviour on overridden typed equals in inline classKT-54536
Unexpected result of comparison of inline class instancesKT-54603
ClassCastException on comparison of inline classes with custom equalsKT-54401
Unhandled exception on compilation inline class with 'equals' from 'Any' returning 'Nothing'KT-54378
K2: smart cast breaks subtyping in case with complex projectionsKT-53761
Reified type not propagated to supertype token through two inline functionsKT-53876
Manually instantiated annotations with unsigned arrays are not equalKT-51740
NO_VALUE_FOR_PARAMETER: Consider increasing error highlighting rangeKT-54084
ClassCastException when trying to call a context receiver's methodKT-51282
IllegalAccessError: Compiler for JVM 1.8+ makes lambdas access unaccessible classes when using@JvmMultifileClasses
KT-53479
False positive "Cannot access 'runCatching' before superclass constructor has been called"KT-50950
JVM IR: "AssertionError: FUN SYNTHETIC_GENERATED_SAM_IMPLEMENTATION" when using bound reference to suspend SAM functionKT-49364
"VerifyError: Bad type on operand stack" on cast which "can never succeed" from ULong to IntKT-51478
Inapplicable receiver diagnostic expected when there are two context receiver candidatesDocs & Examples
KT-32469
@Synchronized
on extension method doesn't generate instance lockIDE
New Features
KTIJ-24378
Update Kotlin plugin to 1.8.0 in IDEA 223.2Performance Improvements
KT-55445
KtUltraLightClassModifierList.hasModifierProperty requires resolve for PsiModifier.PRIVATEFixes
KTIJ-24657
Disable pre-release and other metadata checks in IDEKT-55929
Unresolved dependencies for intermediate multiplatform SourceSetsKTIJ-24179
Bundle Kotlin 1.8.0 with Intellij IDEA 2022.3.2KTIJ-23547
K2 IDE: Functional type: explicit parameter name VS ParameterName annotationKTIJ-23347
K2 IDE. False positive "Symbol fun intFun(): Unit is invisible" in testsKT-55862
Can't resolve kotlin-stdlib-js sources in IDEKTIJ-23587
K2: SOE in delegate field resolutionKT-55782
[SLC] Typealiases are not exapnded in arguments of annotationsKT-55778
[SLC] Incorrect determination of useSitePostion for types of local declarationsKT-55780
[SLC] No approximation of anonymous and local types in membersKT-55743
K2 SLC: SymbolLightClassForClassOrObject must have a nameKT-55604
Descriptor leakKT-55502
SLC: drop redundant 'final' modifier from synthetic static enum membersKT-55497
LC: drop@NotNull
annotation from parameter from synthetic Enum.valueOfKT-55496
SLC: generated synthetic enum methods by symbols instead of manual creationKT-55481
SLC: implement correct java annotations for annotation classes (Retention, Target, etc.)KT-55470
SLC: implement light class for RepeatableContainerKT-55442
SLC: 'isInheritor' for 'DefaultImpls' should work correctlyKTIJ-23449
K2: "parent must not be null" from SymbolLightClassBase.getContext()KT-40609
IDE: False positive "Exception is never thrown..." in Java when Kotlin getter is annotated with ThrowsKT-54051
Migrate symbol light classes from KtSymbol to KtElementIDE. Completion
KTIJ-22503
Support code completion for data objectsKTIJ-22361
ISE “java.lang.IllegalStateException: Expected FirResolvedTypeRef with ConeKotlinType but was FirImplicitTypeRefImpl ” on K2IDE. Debugger
KTIJ-24259
Debugger is stuck in an infinite loop in an Android projectKTIJ-24003
Smart step into doesn't work for Java synthetic properties referencesKTIJ-24039
Support smart step into for property settersIDE. Decompiler, Indexing, Stubs
KTIJ-24351
Kotlin Bytecode tool window: NullPointerException during inlining of inline function with object literalIDE. Gradle Integration
KTIJ-24616
Gradle Integration: "NoSuchMethodError: 'java.util.Collection org.jetbrains.kotlin.idea.projectModel.KotlinCompilation.getDeclaredSourceSets" during sync fail after updating Kotlin IJ Plugin to 1.8.20-BetaKT-55347
Broken IDE sync for js: java.lang.IllegalStateException: Accessing Compile Dependencies Transformations is not yet initialisedKTIJ-23781
TCS: Gradle Sync: Support friend&dependsOn via IdeaKotlinSourceDependencyIDE. Gradle. Script
KT-56941
Gradle KTS / Navigation: Go to declaration for Java types doesn't workIDE. Inspections and Intentions
KTIJ-23404
K2 IDE. Platform type is inserted as type parameter for "Change return type" intentionKTIJ-24319
"Set module version to *" quickfix isn't workingKTIJ-23225
"Change package" intention unintentionally and intractably replaces text inside of critical strings and commentsKTIJ-23892
UsePropertyAccessSyntaxInspection should also suggest replacing getter method references with method synthetic properties referencies after Kotlin 1.9KTIJ-22087
Support IDE inspections for upcoming data objectsKTIJ-24286
Constant conditions: false positive "Cast will always fail" with cast of java.lang.String to kotlin.StringKTIJ-23859
ConvertObjectToDataObjectInspection support more hashCode and toString casesKTIJ-23760
Get rid ofreadResolve
logic in ConvertObjectToDataObjectInspectionIDE. KDoc
KTIJ-24342
KDoc: First line break character is swallowed when pastedIDE. Misc
KTIJ-24370
Remove link to k2.xml from plugin.xml in kt-223 branchesKTIJ-24210
Compatibility issue with the CUBA pluginIDE. Multiplatform
KTIJ-21205
MPP: Kotlin not configured error is shown for K/N sources if Android target is presentedKT-52172
Multiplatform: Support composite buildsKT-56198
Multiplatform;Composite Builds: import fails if single jvm target multiplatform project consume included jvm buildKTIJ-24147
MPP: NullPointerException: versionString must not be nullIDE. Refactorings. Move
KTIJ-24243
Move declarations: "Search in comments and strings" and "Search for text occurrences" options are always enabled when files are movedIDE. Script
KT-56632
Script configuration cannot be loaded for embedded code snippetsIDE. Wizards
KTIJ-24562
Android target created by wizard contains AGP higher than supportedKTIJ-24402
Changes "Browser Application for Kotlin/Wasm" wizard templateKTIJ-23525
Wizard: Compose multiplatform: project won't build and require higher compileSdkVersionJavaScript
New Features
KT-54118
Kotlin/JS IR: keep declarations with non-minified namesKT-35655
Investigate could we use "names" field in SourceMaps to improve debug experienceFixes
KT-55971
KJS: Result of suspend function cannot be assigned to property of dynamic valueKT-52374
KJS / IR: caling suspend function as dynamic ignores the rest of the expressionKT-56884
KJS: "Top-level declarations in .d.ts files must start with either a 'declare' or 'export' modifier." caused by enum and array inside the companion objectKT-51122
Provide fully-qualified method name in Kotlin/JS source mapsKT-56602
KJS / Serialization: polymorphicDefaultDeserializer unbound on Kotlin 1.8.20-BetaKT-56580
KJS: languageVersionSettings string is unstableKT-56581
KJS: Lock file for incremental cacheKT-56582
KJS: Function type interface reflection crashes the compiler in incremental buildKT-55720
KJS:ReferenceError: SuspendFunction1 is not defined
with 1.8 when importingkotlin.coroutines.SuspendFunction1
KT-56469
KJS: BE Incremental rebuild spoils source map commentKT-55930
KJS: A recursive callable reference of the inline function leads broken cross module referencesKT-31888
Kotlin/JS: make possible to callmain()
in main run tasks, but not in test tasksKT-51581
FIR: support JS backendKT-55786
KJS: Rewriting of secondary constructors if they are protectedKT-52563
KJS / IR: Invalid TypeScript generated for class extending base class with private constructorKT-55367
KJS / IR + IC: Moving an external declaration between different JsModules() doesn't rebuild the JS codeKT-55240
KJS: "NoSuchElementException: No element of given type found" caused by@JsExport
andThrowable's
child classKT-54398
KJS / IR + IC: Support *.d.ts generationKT-55144
KJS / IR + IC: Modifying an inline function which is used as a default param in another inline function doesn't invalidate a callerKT-54134
KJS / IR: "TypeError: Cannot read properties of undefined" in js block wrapped with suspend functions aroundKT-54911
KJS / IR + IC: invalidate all klib dependencies after removing itKT-54912
KJS / IR + IC: Commit cache header only in the end (after lowering)KT-52677
Native: StackOverFlow during "kotlin.ir.util.RenderIrElementVisitor$renderTypeAnnotations$1.invoke"KT-54480
KJS: "Exported declaration contains non-consumable identifier" warning when exporting modules as defaultKT-41294
KJS: Weird behaviour of j2v8 in test infraKT-54173
Kotlin/JS + IR: failed to providekeep
setting to avoid DCE remove of default interface function from implementing objectLanguage Design
KT-55451
Preview of lifting restriction on secondary constructor bodies for value classesKT-54621
Preview of Enum.entries: modern and performant replacement for Enum.values()KT-54525
Preview of Java synthetic property referencesKT-55337
Preview of data objectsKT-55344
Deprecate@Synchronized
in platforms except JVMLibraries
KT-35508
EXC_BAD_ACCESS(code=2, address=0x16d8dbff0) crashes on iOS when using a sequence (from map() etc.)KT-56794
Libraries: "Recursively copying a directory into its subdirectory is prohibited" Path.copyToRecursively fails on copying from one ZipFileSystem to another ZipFileSystemKT-55935
[Kotlin/JVM] Path.copyToRecursively does not work across file systemsKT-55978
Provide Common Base64 encoding in stdlibKT-46211
[Kotlin/Native] Stack overflow crash in Regex classes with simple pattern and very large inputKT-31066
Add Closeable & use to common stdlibKT-55609
Introduce experimental kotlin.concurrent.Volatile annotationKT-39789
Segfault in Kotlin/Native regex interpreterKT-53310
Native: HashMap/HashSet doesn't reclaim storage after removing elementsNative
KT-56443
Native link task reports w: Cached libraries will not be used for optimized compilationKT-55938
[Kotlin/Native] Inline functions accessing ObjC class companion cause compiler to crash when building static caches in 1.8.20 dev buildNative. C and ObjC Import
KT-55303
Objective-C import: improve-fmodules
flag discoverability.KT-39120
Cinterop tool doesn't support the -fmodules compiler argumentKT-40426
Incorrect Objective-C extensions importing that prevents UIKit usageKT-55653
Since Kotlin 1.8.0 NSView.resetCursorRects doesn't exist anymore and cannot override itKT-54284
Kotlin/Native: cinterop produces non-deterministic metadataNative. ObjC Export
KT-56350
Kotlin/Native: restore "use Foundation" in generated Objective-C frameworksKT-55736
Native: exporting suspend function from a cached dependency to Objective-C crashes with "Suspend functions should be lowered out at this point"KT-53638
Native: support disabling mangling globally for Swift names in generated Objective-C headerKT-53069
SOE on K/N framework build for Arm64KT-53317
ObjCName annotation is not applied to an extension receiver in Objective-C exportNative. Stdlib
KT-53064
Native: provide stdlib API to obtain memory management statisticsReflection
KT-27585
Flaky IllegalPropertyDelegateAccessException: Cannot obtain the delegate of a non-accessible property. Use "isAccessible = true" to make the property accessibleKT-55178
Improve performance of KCallable.callByKT-53279
Reflection: "KotlinReflectionInternalError: Method is not supported" caused by@Repeatable
annotation deserialization at runtime if it's repeated and contains arraysKT-44977
Reflection: ClassCastException caused by annotations with "AnnotationTarget.TYPE" usage on array attributes accessTools. CLI
KT-57077
1.8.20-RC-243
shows Java 19 warnings even if configured with Java 17 toolchainKT-56992
Performance test regression in Gradle when switching to Kotlin 1.8.20KT-56789
Metaspace memory leak in CoreJrtFileSystemKT-56925
Remove warning about assignment pluginKT-54652
Enable -Xuse-fir-lt by default when -Xuse-k2 is turned on, provide way to disableKT-55784
Unable to format compilation errors with ansi colors in compilation serverKT-54718
K2: Compiler crashes with "IllegalArgumentException: newPosition > limit"KT-54337
CLI: compiling module-info.java without explicitly specified JDK home leads to a weird errorTools. Commonizer
KT-47429
[Commonizer] OKIO supportKT-51517
C Interop Commonizer Fails On Classifier That Doesn't ExistTools. Compiler Plugins
Fixes
KT-53590
K2 Allopen does not look for transitive meta-annotationsKT-56487
Add more methods to DescriptorSerializerPluginKT-54020
[K2] [NEW_INFERENCE_NO_INFORMATION_FOR_PARAMETER] error in case 'static Name' param was added to@AllArgsConstructor
annotation and an empty list is set as a constructor param valueKT-53096
Create a pack of compiler utilities for generating declarations from pluginsKT-55248
K2/PluginAPI: getCallableNamesForClass/generateClassLikeDeclaration are not called for synthetic companions of local classesKT-54756
Deprecate "legacy" mode of jvm-abi-gen pluginKT-55233
jvm-abi-gen strips out InnerClass attributesKT-54994
K2 plugin API: Compile-time constants are not evaluated before IRKT-55023
K2 plugin API: Compilation with Kotlin daemon fails after certain number of triesKT-55286
K2: Parcelize plugin sometimes can't find nested objects in current classKT-54500
Private type aliases can be referenced from public declarations, but are stripped by jvm-abi-genTools. Compiler plugins. Serialization
KT-56738
Unexpected SERIALIZER_NOT_FOUND when compiling against binary with enumKT-56990
"AssertionError: SyntheticAccessorLowering should not attempt to modify other files" in kotlinx-serialization using@Serializer
and List argumentKT-54441
Prohibit implicit serializer customization via companion objectKT-49983
Implement prototype of kotlinx.serialization for K2 compilerKT-48733
"AssertionError: Unexpected IR element found during code generation" caused by Serialization and annotation with default parameterKT-54297
Regression in serializable classes with star projectionsTools. Gradle
New Features
KT-54691
Kotlin Gradle Plugin libraries alignment platformKT-54492
Send gradle build errors from ideaKT-55540
Add compilation speed metric in build reportsKT-55541
Validate FUS metrics values on Gradle sidePerformance Improvements
KT-54836
Kotlin/JVM Gradle plugin creates task eagerly on Gradle 7.3+KT-55995
Add ability to perform precise compilation task outputs backupKT-54579
Kapt tasks slow down significantly on Windows when running with JDK 17 compared to JDK 11KT-54588
KotlinCompile: Avoid callingFileCollection.getFiles()
multiple timesFixes
KT-57296
Build statistics sending errors in case of buildSrc directory usage with kotlin-dsl plugin appliedKT-56645
Gradle: KGP reports an incorrect resources processing task name for JVM projectsKT-55824
DeprecatecommonMain.dependsOn(anything)
in user scriptsKT-56221
Gradle KTS: False positiveVal cannot be reassigned
when using an extension and its property with an implicitset
operatorKT-55452
Values of the compiler arguments set via KotlinCompile task configuration are duplicated by the KaptGenerateStubs taskKT-55565
Consider de-duping or blocking standard addition of freeCompilerArgs to KaptGenerateStubsTaskKT-55632
'The configuration :kotlinCompilerClasspath is both consumable and declarable' messages are displayed in logs for different types of projects for KotlinCompile task with gradle 8KT-56414
Dependency locking and failed builds with Kotlin 1.8.10KT-52625
Compatibility with Gradle 7.4 releaseKT-55544
Gradle: add more debugging information for finding usages of kotlinOptions.freeCompilerArgsKT-52149
Gradle: declare shared build services usages withTask#usesService
KT-55323
Gradle: allow to opt-out of reporting compiler arguments to a http statistics serviceKT-53811
Compatibility with Gradle 7.6 releaseKT-52998
Compatibility with Gradle 7.5 releaseKT-55741
Gradle 8: Build service '' is being used by task '' without the corresponding declaration via 'Task#usesService'.KT-55174
KotlinCompile task produces deprecation "Build service 'variant_impl_factories_...' is being used by task"KT-54425
Kotlin Gradle Plugin should not use deprecated UsageContext#getUsage()KT-54998
"kotlin.gradle.performance" FUS collector reports data twiceKT-55520
Add required configuration for Kotlin Gradle Plugin API reference publicationKT-52963
Build report code breaks Gradle project isolation.KT-55164
KGP: "Cannot access project ':' from project ':list'" JVM - Project Isolation with Multi Modules and Configuration Cache failsKT-52490
Gradle: [org.jetbrains.kotlin.gradle.testing.internal] TestReport.destinationDir and TestReport.reportOn deprecation warningsKT-55000
Include information about the new IC into "kotlin.gradle.performance" FUS collectorKT-54941
Gradle, Daemon, MacOS M1: "Native integration is not available for Mac OS X aarch64" on first buildKT-45748
Migrate all Kotlin Gradle plugin Android tests to new test setupKT-54029
Validate Binary Compatibility for kotlin-gradle-plugin-apiTools. Gradle. Cocoapods
KT-41830
CocoaPods integration: Support link-only mode for podsKT-55117
PodGenTask doesn't declare ouputs properlyKT-55243
Gradle 7.6: Cocoapods plugin generates invalid podspec when applied in root projectKT-56304
Podspec generated with new K/N artifact DSL contains wrong artifact names for static and dynamic librariesKT-56298
Assemble tasks for native binaries fail if more than one kotlin artifact is declared in one gradle projectKT-55801
Deprecate useLibrariesKT-55790
Improper sdk selected for watchosDeviceArm64 targetTools. Gradle. JS
New Features
KT-25878
Provide Option to Define Scoped NPM PackageKT-37759
[Gradle, JS] Support arguments of command line for webpack and nodejs taskKT-33518
Allow specifying command line args for node in nodejs or mocha testsKT-46163
KJS / Ktor: Support run on the next free port if default one is occupiedPerformance Improvements
KT-55476
KotlinWebpack should be cacheableKT-39108
Kotlin multiplatform plugin targeting js takes too long compared to the old kotlin-frontend pluginKT-45411
Investigate memory consumption in npm packageKT-51376
KJS / Gradle: Dukat tasks make impact on build time even if there's no npm dependenciesFixes
KT-57285
KJS / Gradle / MPP: FileNotFoundException on publishing empty KJS sourcesetKT-57068
KJS / Gradle: "Unable to find method 'kotlin.gradle.targets.js.dsl.KotlinJsBrowserDsl.testTask'" after updating to 1.8.20-BetaKT-54445
KJS Remove dukat integrationKT-56999
K/JS: KotlinJsIrLink::rootCacheDirectory property must be publicKT-56765
K/JS: Several binaries use same cache directoryKT-54529
KJS / IR: generate typescript definitions only on explicit Gradle actionKT-56488
Debugger won't stop on breakpoints of JS browser testKT-56719
KJS / Gradle: Compile sync task has to sync only changed filesKT-56131
KJS / Gradle: Could not create an instance of type org.jetbrains.kotlin.gradle.targets.js.subtargets.KotlinNodeJs when task configuration avoidance is brokenKT-37668
Kotlin/JS: nodeTest failure due to main() function fail is reported as "BUILD SUCCESSFUL"KT-35285
Kotlin/JS + Gradle: browserDevelopementWebpack and browserProductionWebpack could write to different locationsKT-55593
KotlinJsCompilerType and KotlinJsCompilerTypeHolder LEGACY and BOTH constants should be marked as@Deprecated
in 1.8KT-33291
JS: No build result with gradle parallel build in multiproject buildKT-40925
KJS: need a way to configure extra environment variables for the test taskKT-47236
KJS:kotlinNpmInstall
fails if no yarn is downloadedKT-53288
KJS / Gradle: FileNotFoundException when customising moduleNameKT-54511
Kotlin/JS generated package.json main field is not correctly set if module name contains a/
(slash)KT-54421
KJS / Legacy: Kotlin 1.7.20 fails when running tests on Node 14KT-54503
Make the target observer API public in kotlin JS ExtensionKT-54418
KJS: Change test running with kotlin-test adapterKT-54132
KJS IR: Sometimes karma failed on teamcity because of uninitialized browserTools. Gradle. Multiplatform
New Features
KT-54766
TCS: external Android Target APIs: Milestone: CompileKT-50967
Make c-interop libs resolve robust to build cleanKT-53570
multiplatform 'natural hierarchy' prototypeFixes
KT-36943
Gradle Plugin (multiplatform) - Consider publishing a 'sourcesElements' variant for the sources.jarKT-57460
Kotlin Gradle Plugin: Nullthis
pointer in transformCommonMainDependenciesMetadataKT-57306
[Kotlin 1.8.20-RC] GradleException: Could not load the value of fieldapiConfiguration
oforg.jetbrains.kotlin.gradle.plugin.mpp.compilationImpl.DefaultKotlinCompilationConfigurationsContainer
KTIJ-23750
KotlinMppModelSerializationService is not invoked in production environmentKTIJ-24223
Update latest tested KGP version to 1.9.0-dev-764KT-56536
Multiplatform: Composite build fails on included build with rootProject.name != buildIdentifier.nameKTIJ-23889
TCS: Gradle Sync: Match sources.jar dependencies to sourceSetName scoped dependenciesKT-56729
commonizeCInterop: Duplicated libraries: co.touchlab:sqliter-driver-cinterop-sqlite3KT-56510
Import with included plugin build may fail with OverlappingFileLockException during commonizeNativeDistributionKT-54180
TCS: Initial external Android Target APIsKT-55010
TCS: External Android Target Prototype: Setup Android dependenciesKT-54783
KotlinJvmWithJavaCompilation mututal .all listener loop creates two compilationsKT-54867
KotlinWithJavaCompilation does not respect javaSourceSet classpathsKT-52413
MPP: Gradle dependency substitution breaks KMP import for native targetsKT-56115
Multiplatform;Composite Builds: Support import with cinterop commonization enabledKT-54312
TCS: Replace CompilationDetails abstract class hierarchy by composable implementationKT-47441
MPP: Unresolved reference for dependent on the other module with dependencySubstitutionKT-56429
Fix flaky: MppIdeDependencyResolutionIT.test cinterops - are stored in root gradle folderKT-56337
Unable to import a project with cinterop with enableKgpDependencyResolutionKT-55873
Unrequested dependencies leaking into common source sets: Regression after703fd0f
KT-55891
Deprecate pre-HMPP flagsKT-56278
TCS: Gradle Sync: [MISSING_DEPENDENCY_CLASS] on libraries used in shared native source setsKT-56143
CInteropDependencyConfiguration and CInteropApiElementsConfiguration are missing attributes defined on targetKT-56285
TCS: Gradle Sync: IdeProjectToProjectCInteropDependencyResolver: Ensure lenient resolutionKT-56204
KotlinTargetHierarchy: Changing naming from 'any' to 'with' prefixKT-56111
Multiplatform;Composite Builds: Clean builds fail on when 'hostSpecificMetadata' is requiredKT-54974
TCS: Gradle Sync: Implement IdeKotlinDependencyResolversKT-38712
Gradle configuration's name with word "implementation" is camelcased to "İmplementation" if default locale is TurkishKT-54975
TCS: Gradle Sync: Implement stdlib-common filter for platform source setsKT-48839
Sources.jar of the root artifact of MPP library includes source files from test sourcesetsKT-55492
TCS: Gradle Sync: Sources and Documentation as extra 'classpath'KT-55237
TCS: Gradle Sync: Support stdlib-native sourcesKT-55475
TCS: Gradle Sync: Fine tune jvmAndAndroid source setsKT-55189
TCS: Gradle Sync: Support icons (native, js) and global librariesKT-55218
KotlinTargetHierarchy: Disambiguate declaring targets vs including targetsKT-55112
TCS: Gradle Sync: Resolve Source DependenciesKT-54977
TCS: Gradle Sync: Implement debugging toolsKT-54948
TCS: Gradle Sync: Port IdeaKpmPlatformDependencyResolver to TCSKT-55289
TCS: Gradle Sync: Prototypical sources jar resolutionKT-55238
TCS: Gradle Sync: Support commonized native distributionKT-55230
Remove metadata dependencies transformation for runtimeOnly scopeKT-53338
Prettify the message about incompatible AGP and KGP versionsKT-55134
MPP / Gradle: Cannot read test tasks stateKT-54506
Test tasks are considered up-to-date after a failure when triggered byallTests
KTIJ-23509
Update latest tested KGP version to 1.8.20-dev-1815KT-54787
Test tasks are not up-to-date when an individual test task called after aggregating test taskKT-54033
Multiplatform/Android Source Set Layout 1: Also support setting source dirs using AGP ApisKT-54202
CInterop Commonization fails on first run when native distribution is not yet commoniziedKT-54135
Add documentation with examples to CompositeMetadataArtifactTools. Gradle. Native
KT-37051
MPP Gradle plugin: duplicated cinterop libraries in composite buildKT-55650
Pass through errors from Gradle to XcodeKT-56205
Shared Native Compilation: False positive 'w: Could not find' warnings on metadata klibsKT-54969
Support podspec generation for the new K/N artifact DSLTools. Incremental Compile
KT-55021
New IC: "The following LookupSymbols are not yet converted to programSymbols" when removing/renaming file facadesKTIJ-21161
Incremental build is taking too long when no files have changed in the projectKT-53832
Enable new incremental compilation by default in GradleKT-55622
MPP: Incremental compilation ignores changes in source set structureKT-55309
IC: Get rid ofNonCachingLazyStorage
KT-53402
Incremental compilation tries to compile resourcesKT-54791
Incremental compilation in JPS broken in 1.8.20-dev-1815Tools. JPS
KT-56165
Language version 1.9 and 2.0 is absent in Kotlin Compiler settingsKT-51536
[JPS] Recompile module on facet settings changeKT-53735
JPS / IC: "IOException: The system cannot find the file specified" on WindowsKT-47983
[JPS] Adding compilerSettings to Facet should initiate rebuild of moduleKT-54449
Cyrillic characters in a filename break builds on linuxTools. Kapt
New Features
KT-53135
Enable JVM IR for KAPT stub generation by defaultKT-41129
kotlin-maven-plugin + kapt - allow aptMode to be set according to docsFixes
KT-56635
KAPT / IR: "Unresolved reference: DaggerGeneratedCodeTest_AppComponent " caused by stub generation with Kotlin 1.8.20-BetaKT-56360
Kapt with JVM IR changes fields orderKT-54380
Kapt / IR: Build failed when inheritance by functional interface with suspend modifierKT-54245
JVM IR / Kapt / Serialization: NullPointerException in SerializableIrGenerator.ktKT-33847
Kapt does not included Filer-generated class files on compilation classpathKT-55490
Kapt + JVM IR: "annotation@Foo
is missing default values"KT-43786
KAPT: IllegalStateException: SimpleTypeImpl should not be created for error type: ErrorScopeKT-43117
Kapt: "System is already defined in this compilation unit"KT-46966
Kapt: correctErrorTypes: receiver type is NonExistentClassKT-46965
Kapt: correctErrorTypes: custom setter gets Object parameter typeKT-51087
KAPT:@JvmRepeatable
annotations are present in inverse order in KAPT stubsKT-54870
KAPT stub generation with JVM_IR backend throws exception for delegated propertiesKT-44350
Kapt Gradle integration tests failing with Android Gradle plugin 7.0KT-54030
Kapt: annotation processor warnings are displayed as errors on JDK 17+KT-32596
kapt replaces class generated by annotation processor with error.NonExistentClass when the class is used as an annotationKT-37586
KAPT: When delegated property use an unknown type (to-be-generated class),correctTypeError
will mess up the$delegate
field typeTools. Maven
KT-56697
IC: "Incremental compilation was attempted but failed" Failed to get changed files: java.io.IOException: readPrevChunkAddressKT-55709
Maven: "java.lang.reflect.InaccessibleObjectException: Unable to make field protected java.io.OutputStream java.io.FilterOutputStream.out accessible"KT-29346
Add components.xml to automatically compile kotlin maven projectsKT-13995
Maven: Kotlin compiler plugin should respect model's compile source rootsKT-54822
Maven: Too low-level error message "Parameter specified as non-null is null: method kotlin.text.StringsKt__StringsJVMKt.startsWith, parameter " from Kotlin Maven plugin invoking compiler when tags are emptyKT-47110
Disable jdk8-specific warnings in kotlin-maven-pluginTools. Scripts
KT-54095
It is difficult (if not impossible) to use kotlin compiler plugins with scriptingKT-54461
Warnings and stack traces when executing scripts via kotlin-maven-pluginKT-54733
Scripts: ConcurrentModificationException in *.main.kts scriptsKT-53283
Scripts: main-kts JAR does not relocate embedded SLF4J and jsoup librariesChecksums
v1.8.10
: Kotlin 1.8.10Changelog
Compiler
KT-55483
K2: Fir is not initialized for FirRegularClassSymbol java/lang/invoke/LambdaMetafactoryKT-55729
"None of the following functions can be called with the arguments supplied:" in 1.8.0KT-55769
"ERROR: Could not find accessor": Android DataBinding fails with Kotlin 1.8.0KT-55308
InnerClass attributes should be sorted (innermost last)JavaScript
KT-56282
KJS: Invalidate incremental cache in case of compiler internal errorsKT-55852
JS: "IllegalStateException: Unexpected ir type argument" caused by List with star projection typeKT-55716
KJS / IC: "Cannot read properties of undefined" with overriding variables with 1.8.0KT-55758
KJS / IR: Checking implemented interface on a class implementing a @JsExport interface returns the wrong resultReflection
KT-56093
Metaspace leak in a Gradle plugin built with Kotlin 1.8.0Tools. Compiler plugins. Serialization
KT-56347
[Kotlin 1.8] Regression kotlinx.serialization compiler plugin internal errorKT-55681
Serialization: NullPointerException after update to 1.8.0 caused by@Serializer(forClass= ..)
KT-56244
kotlinx.serialization compiler intrinsic does not work with encodeToString function in 1.8.0KT-55683
Serialization: "IllegalStateException: Expected to have a primary constructor" with expect class and companion objectKT-55682
Serialization: "IllegalStateException: Function has no body: FUN name:serializer" with 1.8.0Tools. Gradle
KT-55697
KGP 1.8.0 adds compileOnly dependencies to unit test compile classpathTools. Gradle. Multiplatform
KT-55730
MPP / Gradle: compileKotlinMetadata fails to resolve symbols in additional source setsTools. Gradle. Native
KT-56280
Gradle: freeCompilerArgs are no longer propagated from compilations to Native binariesTools. Kapt
KT-48013
Kapt generates illegal stubs for private interface methodsChecksums
v1.8.0
: Kotlin 1.8.0Changelog
Analysis API
KT-50255
Analysis API: Implement standalone mode for the Analysis APIAnalysis API. FIR
KT-54292
Symbol Light classes: implement PsiVariable.computeConstantValue for light fieldKT-54293
Analysis API: fix constructor symbol creation when its accessed via type aliasAndroid
KT-53342
TCS: New AndroidSourceSet layout for multiplatformKT-53013
Increase AGP compile version in KGP to 4.1.3KT-54013
Report error when using deprecated Kotlin Android Extensions compiler pluginKT-53709
MPP, Android SSL2: Conflicting warnings forandroidTest/kotlin
source set folderBackend. Native. Debug
KT-53561
Invalid LLVM module: "inlinable function call in a function with debug info must have a !dbg location"Compiler
New Features
KT-52817
Add@JvmSerializableLambda
annotation to keep old behavior of non-invokedynamic lambdasKT-54460
Implementation of non-local break and continueKT-53916
Support Xcode 14 and new Objective-C frameworks in Kotlin/Native compilerKT-32208
Generate method annotations into bytecode for suspend lambdas (on invokeSuspend)KT-53438
Introduce a way to get SourceDebugExtension attribute value via JVMTI for profiler and coveragePerformance Improvements
KT-53347
Get rid of excess allocations in parserKT-53689
JVM: Optimize equality on class literalsKT-53119
Improve String Concatenation LoweringFixes
KT-53465
Unnecessary checkcast to array of reified type is not optimized since Kotlin 1.6.20KT-49658
NI: False negative TYPE_MISMATCH on nullable type withwhen
KT-48162
NON_VARARG_SPREAD isn't reported on *toTypedArray() callKT-43493
NI: False negative: no compilation error "Operator '==' cannot be applied to 'Long' and 'Int'" is reported in builder inference lambdasKT-54393
Change in behavior from 1.7.10 to 1.7.20 for java field override.KT-55357
IllegalStateException when reading a class that delegates to a Java class with a definitely-not-null type with a flexible upper boundKT-55068
Kotlin Gradle DSL: No mapping for symbol: VALUE_PARAMETER SCRIPT_IMPLICIT_RECEIVER on JVM IR backendKT-51284
SAM conversion doesn't work if method has context receiversKT-48532
Remove old JVM backendKT-55065
Kotlin Gradle DSL: Reflection cannot find class data for lambda, produced by JVM IR backendKT-53270
K1: implement synthetic Enum.entries propertyKT-52823
Cannot access class Thread.State after upgrading to 1.7 from 1.6.1 using -Xjdk-release=1.8KT-55108
IR interpreter: Error occurred while optimizing an expression: VARARGKT-53547
Missing fun IrBuilderWithScope.irFunctionReferenceKT-54884
"StackOverflowError: null" caused by Enum constant name in constructor of the same Enum constantKT-47475
"IncompatibleClassChangeError: disagree on InnerClasses attribute": cross-module inlined WhenMappings has mismatched InnerClassesKT-55013
State checker use-after-free with XCode 14.1KT-54802
"VerifyError: Bad type on operand stack" for inline functions on arraysKT-54707
"VerifyError: Bad type on operand stack" in inline call chain on a nullable array valueKT-48678
Coroutine debugger: disable "was optimised out" compiler featureKT-54745
Restore KtToken constructors without tokenId parameter to preserve back compatibilityKT-54650
Binary incompatible ABI change in Kotlin 1.7.20KT-52786
Frontend / K2: IndexOutOfBoundsException when opting in to K2KT-54004
Builder type inference does not work correctly with variable assignment and breaks run-timeKT-54581
JVM: "VerifyError: Bad type on operand stack" with generic inline function andwhen
inside try-catch blockKT-53794
IAE "Unknown visibility: protected/protected and package/" on callable reference to protected member of Java superclassKT-54600
NPE on passing nullable Kotlin lambda as Java's generic SAM interface withsuper
type boundKT-54463
Delegating to a field with a platform type causes java.lang.NoSuchFieldError: value$delegateKT-54509
Ir Interpreter: unable to evaluate string concatenation with "this" as argumentKT-54615
JVM: Internal error in file lowering: java.lang.AssertionError: Error occurred while optimizing an expressionKT-53146
JVM IR: unnecessary checkcast of null leads to NoClassDefFoundError if the type isn't available at runtimeKT-53712
Add mode to prevent generating JVM 1.8+ annotation targets (TYPE_USE, TYPE_PARAMETER)KT-54366
K2: no JVM BE specific diagnostics (in particular CONFLICTING_JVM_DECLARATIONS) in 1.8KT-35187
NullPointerException on compiling suspend inline fun with typealias to suspend function typeKT-54275
K2: "IllegalArgumentException: KtParameter is not a subtype of class KtAnnotationEntry for factory REPEATED_ANNOTATION"KT-53656
"IllegalStateException: typeParameters == null for SimpleFunctionDescriptorImpl" with recursive generic type parametersKT-46727
Report warning on contravariant usages of star projected argument from JavaKT-53197
K2: 'init' hides member of supertype 'UIComponent' and needs 'override' modifierKT-53867
K2:@JvmRecord
does not compile to a java recordKT-53964
K2 is unable to work with Java recordsKT-53349
K2: TYPE_MISMATCH caused by non-local returnKT-54100
"Type variable TypeVariable(P) should not be fixed" crash in code with errorsKT-54212
K2: cannot calculate implicit property typeKT-53699
K2: Exception during IR lowering in code with coroutinesKT-54192
Warn about unsupported feature on generic inline class parametersKT-53723
Friend modules aren't getting passed to cache build during box testsKT-53873
K2: Duplicated diagnostics reported from user type ref checkersKT-50909
"VerifyError: Bad type on operand stack" caused by smartcasting for nullable inline class property in classKT-54115
Restore Psi2IrTranslator constructor from 1.7.20KT-53908
K2: Self-referencing generics in Java class causes New Inference Error (IE: class Foo<T extends Foo>)KT-53193
K2: compile error on project that compiles fine with normal 1.7.10KT-54062
K2 Invalid serialization for type-aliased suspend function type with extension receiverKT-53953
Forbid usages of super or super if in fact it accesses an abstract memberKT-47473
NI: Missed UPPER_BOUND_VIOLATED diagnostics if use type aliases with type parametersKT-54049
K2: false positive MANY_IMPL_MEMBER_NOT_IMPLEMENTEDKT-30054
Wrong approximation if nullable anonymous object with implemented interface is usedKT-53751
Postpone IgnoreNullabilityForErasedValueParameters featureKT-53324
Implement Enum.entries lowering on K/NKT-44441
K2: report redeclaration error if there is a Java class with the same name as the Kotlin classKT-53807
No warning about declaringClass on an enum valueKT-53493
K2:val on function parameter
counts as just warningKT-53435
K2: "IllegalArgumentException: class KtValueArgument is not a subtype of class KtExpression for factory ANNOTATION_ARGUMENT_MUST_BE_CONST" if string in nested annotation is concatenatedKT-52927
AssertionError: LambdaKotlinCallArgumentImplKT-53922
Make Enum.entries unstable feature to poison binariesKT-53783
Exception during psi2ir when declaring expect data objectKT-53622
[OVERLOAD_RESOLUTION_AMBIGUITY] when enum entry called 'entries' is present in K2KT-41670
JVM IR: AbstractMethodError when using inheritance for fun interfacesKT-53178
K2: implement diagnostics for serialization pluginKT-53804
Restore old and incorrect logic of generating InnerClasses attributes for kotlin-stdlibKT-52970
Default value constant in companion object works on JVM and JS, but fails on nativeKT-51114
FIR: Support DNN checksKT-27936
Write InnerClasses attribute for all class names used in a class fileKT-53719
Parsing regression on function call with type arguments and labeled lambdaKT-53261
Evaluate effect from inline for primitive typesKT-53706
K2: Context receivers are not resolved on properties during type resolution stageKT-39492
Kotlin.Metadata's packageName field cannot be an empty stringKT-53664
Ir Interpreter: unable to evaluate name of function reference marked with JvmStatic from another moduleKT-52478
[Native] Partial linkage: Building native binary from cached KLIBs fails if one library depends on removed nested callable member from another oneKT-48822
CompilationException: Back-end (JVM) Internal error: Failed to generate expression: KtProperty - ConcurrentModificationExceptionKT-50281
IllegalStateException: unsupported call of reified inlined functionKT-50083
Different error messages in android and JVM (Intrinsics.checkNotNullParameter).KT-53236
Support Enum.entries codegen on JVM/IR BEKT-41017
FIR: should we support smartcast after null checkKT-53202
"ISE: Descriptor can be left only if it is last" after direct invoke optimization on a capturing lambdaKT-46969
@BuilderInference
with nested DSL scopes cause false-positive scope violation in Kotlin 1.5KT-53257
FIR: Improper context receiver argument is chosen when there are two extension receiver candidatesKT-53090
Anonymous function and extension function literals are generated as classes even with -Xlambdas=indyKT-53208
K2: Cannot get annotation for default interface method parameter when compiled with-Xuse-k2
KT-53184
K2: NoSuchMethodError on KProperty1.get() referenced via nullable typealiasKT-53198
K2: Return type mismatch: expected kotlin/Unit, actual kotlin/Unit?KT-53100
Optimization needed: (CONSTANT_PRIMITIVE(x: T?)) => xKT-49875
[FIR] Support infering PRIVATE_TO_THIS visibilityKT-53024
Refactor FIR renderer to composable architectureKT-50995
[FIR] Support SAM with receiver pluginKT-53148
K1: introduce warning for inline virtual member in enumKT-49847
Devirtualization fails to eliminate boxing in function reference contextKT-52875
Extension function literal creation with-Xlambdas=indy
fails with incorrect argumentsKT-53072
INVALID_IF_AS_EXPRESSION error isn't shown in the IDE (LV 1.8)KT-52985
Native: a function with typeT?
returned akotlin.Unit
instead ofnull
KT-52020
FIR warning message includes internal renderingKT-48778
-Xtype-enhancement-improvements-strict-mode not respecting@NonNull
annotation for property accesses?IDE
Fixes
KTIJ-22357
CCE “class org.jetbrains.kotlin.fir.types.impl.FirImplicitTypeRefImpl cannot be cast to class org.jetbrains.kotlin.fir.types.FirResolvedTypeRef” in K2KT-55150
Argument for@NotNull
parameter 'scope' of org/jetbrains/kotlin/resolve/AnnotationResolverImpl.resolveAnnotationType must not be nullKTIJ-22165
IDE notification to promote users to migrate to the new Kotlin/JS toolchainKTIJ-22166
IDE notification (or something else) about JPS and Maven support for Kotlin/JS is deprecatedKT-53543
Rework light classes for file facadeKT-48773
Investigate the possibility of removing dependency on old JVM backend in light classesKTIJ-19699
IDE: False positive type mismatch in Java code for Kotlin nested class non-direct inheritor from external libraryKT-51101
FIR IDE: Exception on "Show Type Info" actionKTIJ-22295
MPP, IDE: False positive UPPER_BOUND_VIOLATED when JVM module implements the generic interface from MPP module and the type parameter is not equal to itself.KT-51656
FIR IDE: ProgressCancelled exception is masked in the compiler during resolveKT-51315
FIR IDE: move out base modules from fe10 plugin to reuse in k2 pluginKTIJ-22323
K2: ISE during resolve of stdlib calls from the stdlibKTIJ-21391
Generate -> Override methods : don't delegate to abstract methodsKT-53097
Extract common part of light classes to another moduleKTIJ-22354
FIR LC: annotation owner is always nullKTIJ-22157
Kotlin call resolver leaks user code when reporting exceptionIDE. Completion
KTIJ-22552
Kotlin: 'for loop' postfix completion doesn't work - "Fe10SuggestVariableNameMacro must be not requested from main classloader"KTIJ-22503
Support code completion for data objectsIDE. Debugger
KT-51755
Compilation exception with scripting compilation during debug sessionKTIJ-21963
Debugger / IR: Expression evaluation of the debugger doesn't workIDE. Decompiler, Indexing, Stubs
KTIJ-22750
Initialize Kotlin stub element types lazilyKTIJ-18094
IDE: "AssertionError: Stub count doesn't match stubbed node length" with minified Android AAR libraryKTIJ-17632
IndexOutOfBoundsException: Cannot decompile a class located in minified AARIDE. Gradle Integration
KT-48135
In the IDE import, reuse dependency granular source set KLIBs across multi-project build to avoid duplicate external librariesKTIJ-22345
False positive unresolved reference for members of subclasses of expect classes.KT-53514
HMPP: False positive forNone of the following functions can be called with the arguments supplied.
with Enum in common moduleKT-51583
Gradle 7.4+ | SamplesVariantRule interference: Could not resolve all files for configuration ':kotlinKlibCommonizerClasspath'KTIJ-21077
Dependency matrix does not work with Jetpack compose / multiplatform projectsIDE. Inspections and Intentions
KTIJ-19531
Adapt changes about new rules for method implementation requirementsKTIJ-22087
Support IDE inspections for upcoming data objectsKTIJ-20510
Quick fix to implement and call correct super method in case of inheritance with defaultsKTIJ-20170
Provide quickfix for deprecated resolution to private constructor of sealed classKTIJ-22630
FIR IDE: Lazy resolve exception after invocation ofOverride members
action on value classKT-49643
Intentions: "Implement members" fails when base type function declaration uses unresolved generic typesIDE. JS
KTIJ-22167
Make JS IR default in projects created by wizardKTIJ-22332
Wizard: Kotlin/JS projects: cssSupport DSL should be updatedIDE. KDoc
KTIJ-22324
K2 IDE: implement reference resolve inside KDocsIDE. Multiplatform
KTIJ-19566
New Project Wizard: Update HMPP-related flags in multiplatform wizardsIDE. Navigation
KT-51314
FIR IDE: show Kotlin declarations in search symbolKTIJ-22755
Find usage for constructor from kotlin library doesn't work for secondary constructor usagesIDE. Script
KTIJ-22598
Add warning for standalone scripts in source rootsKT-54325
.settings.gradle.kts and .init.gradle.kts are reported as standalone scriptsIDE. Structural Search
KTIJ-21986
KSSR: "CodeFragment with non-kotlin context should have fakeContextForJavaFile set: originalContext = null" warning shows up when replacingIDE. Tests Support
KT-50269
FIR IDE: Allow running tests via gutterIDE. Wizards
KTIJ-23537
Wizard: projects with Android modules require higher sdkCompileVersionKTIJ-23525
Wizard: Compose multiplatform: project won't build and require higher compileSdkVersionKTIJ-22763
New Project Wizard: remove deprecated Android extensions plugin from Android target in the project constructorKTIJ-22481
Wizard: Kotlin -> Browser application (gradle groove). Build errorJavaScript
Fixes
KT-55097
KJS / IR + IC: Using an internal function from a friend module throws an unbound symbol exceptionKT-54406
Kotlin/JS: build with dependencies fails with "Could not find "kotlin" in [~/.local/share/kotlin/daemon]"KT-53074
Make JS IR BE default in toolchain (gradle & CLI)KT-50589
UTF-8 Instability in kotlin.js.mapKT-54934
KJS / IR + IC: Suspend abstract function stubs are generated with unstable lowered ic signaturesKT-54895
KJS / IR + IC: broken cross module references for function default param wrappersKT-54520
KJS / IR Allow IdSignature clashesKT-54120
JS IR + IC: pointless invalidation of dependent code after modifying companionsKT-53986
KJS / IR + IC: compiler produces different JS file names with IC and without ICKT-54010
JS IR + IC: Force IC cache invalidation after updating language version or featuresKT-53931
KJS / Gradle: Regression with 1.7.20-RC: ReferenceError: println is not definedKT-53968
Kotlin/JS: no UninitializedPropertyAccessException on access to non-initialized lateinit property defined in dependenciesKT-54686
KJS / IR: Incorrect generation of signatures when one of argument is nested classKT-54479
KJS / IR + IC: Adding or removing companion fields leads java.lang.IllegalStateException in the compiler IC infrastructureKT-54382
KJS / IR: Wrong type check for inheritors of suspend functionsKT-54323
KJS / IR + IC: Intrinsics from stdlib may lose their dependencies in incremental rebuildKT-53361
KJS / IR: No debug info is generated for in-line js codeKT-53321
Implement Enum.entries lowering on JS/IRKT-53112
KJS IR turn on IC infra by defaultKT-50503
Kotlin/JS: IR + IC: compileTestDevelopmentExecutableKotlinJs fails with ISE: "Could not find library" after removing module dependencyKT-54011
JS IR + IC: EnumEntries don't work well when IC is enabledKT-53672
KJS / IR: "IndexOutOfBoundsException: Index 0 out of bounds for length 0" caused by function reference to extension function of reified type variableKT-43455
KJS: IR. Incremental compilation problem with unbound symbolsKT-53539
KJS: Exported class inherited non-exported class shows warningKT-53443
KJS/IR: NullPointerException caused by anonymous objects inside lambdasKT-52795
K/JS and K/Native IR-validation/compilation errors for a valid kotlin codeKT-52805
KJS/IR: Invalid call of inline function inalso
blockKT-51151
KJS / IR: Wrong overloaded generic method with receiver is calledKT-52830
KJS/IR: Sourcemap disabling doesn't workKT-52968
KJS / IR: Buggy generation of overridden methodsKT-53063
KJS / IR + IC: undefined cross module reference for implemented interface functionsKT-51099
KJS / IR + IC: Cache invalidation doesn't check generic class variance annotations (in, out)KT-51090
KJS / IR + IC: Cache invalidation doesn't check suspend qualifierKT-51088
KJS / IR + IC: Cache invalidation doesn't check class qualifiers (data, inline)KT-51083
KJS / IR + IC: Cache invalidation doesn't check inline function which was non inline initiallyKT-51896
KJS / IR + IC: Cache invalidation doesn't trigger rebuild for fake overridden inline functionsLanguage Design
KT-48385
Deprecate confusing grammar in when-with-subjectKT-48516
Forbid@Synchronized
annotation on suspend functionsKT-41886
Ability to require opt-in for interface implementation, but not for usageKT-34943
OVERLOAD_RESOLUTION_AMBIGUITY inconsistent with the equivalent Java codeKT-51334
Implement type-bound labelthis@Type
Libraries
New Features
KT-21007
Provide Kotlin OSGI Bundle with extensions for JRE8 (and JRE7)KT-54082
Comparable and subtractible TimeMarksKT-52928
Provide copyToRecursively and deleteRecursively extension functions for java.nio.file.PathKT-49425
Update OptIn documentation to reflect latest design changesKT-54005
Allow callingdeclaringJavaClass
on EnumKT-52933
rangeUntil members in built-in typesPerformance Improvements
KT-53508
Cache typeOf-related KType instances when kotlin-reflect is usedFixes
KT-51907
Switch JVM target of the standard libraries to 1.8KT-54835
Document that Iterable.all(emptyCollection) returns TRUE.KT-54168
Expand on natural order in comparator docsKT-53277
Stabilize experimental API for 1.8KT-53864
Review deprecations in stdlib for 1.8KT-47707
Remove the system property and the brittlecontains
optimization code itselfKT-52336
Different behavior on JVM and Native in stringBuilder.append(charArray, 0, 1)KT-53927
Remove deprecation from ConcurrentModificationException constructorsKT-53152
Introduce EnumEntries to stdlib as backing implementation of Enum.entriesKT-53134
stdlib > object Charsets > not thread safe lazy initializationKT-51063
Gradle project with JPS runner: "JUnitException: Failed to parse version" JUnit runner internal error with JUnitKT-52908
Native: setUnhandledExceptionHook swallows exceptionsNative
KT-51043
Kotlin Native: ObjC-Interop: kotlin.ClassCastException: null cannot be cast to kotlin.Function2KT-50786
Native: prohibit suspend calls inside autoreleasepool {}KT-52834
Implement test infrastructure for K2/NativeNative. C Export
KT-36878
Reverse C Interop: incorrect headers generation for primitive unassigned type arraysKT-53599
[Reverse C Interop] Provide box/unbox API for unsigned primitive typesKT-41904
Kotlin/Native : error: duplicate member for interface and function with the same nameKT-42830
[Reverse C Interop] Add API to get value of boxed primitivesKT-39496
K/N C: optional unsigned types as function parameters crash the compilerKT-39015
Cannot compile native library with nullable inline classNative. C and ObjC Import
KT-54738
Cocoapods cinterop: linking platform.CoreGraphics packageKT-54001
Kotlin/Native: support header exclusion in cinterop def filesKT-53151
Native: Custom declarations in .def don't work with modules, only headersNative. ObjC Export
KT-53680
Obj-C refinement annotationsKT-54119
Native: runtime assertion failed due to missing thread state switchKT-42641
Don't export generated component* methods from Kotlin data classes to Obj-C headerNative. Platform Libraries
KT-54225
Native: update to Xcode 14.1KT-54164
Native: commonizer fails on CoreFoundation typesKT-39747
Why is there no WinHttp API in Kotlin/Native's Windows API?Native. Runtime
KT-49228
Kotlin/Native: Allow to unset unhandled exception hookKT-27305
Fix FILE macro insideRuntimeCheck
andRuntimeAssert
Native. Runtime. Memory
KT-54498
Deprecation message of 'FreezingIsDeprecated' is not really helpfulKT-53182
New memory manager: Unexpected memory usage on IOSNative. Stdlib
KT-52429
Small Usability Improvements for Worker APIReflection
KT-54629
Incorrectly cached class classifierKT-54611
KTypeImpl
does not take into account class loader from theclassifier
propertyKT-48136
MakeReflection.getOrCreateKotlinPackage
use cache whenkotlin-reflect
is usedKT-50705
Use ClassValue to cache KClass objects in kotlin-reflectKT-53454
Properly cache the same class's KClass when it's loaded by multiple classloaders in getOrCreateKotlinClassSpecification
KT-54210
Update Kotlin specification to mention that since 1.8 generics in value classes are allowedTools. CLI
KT-54116
Add JVM target bytecode version 19KT-53278
Support values 6 and 8 for -Xjdk-releaseKT-46312
CLI: Kotlin runner should use platform class loader to load JDK modules on Java 9+Tools. Commonizer
KT-54310
Commonizer fails on 1.8.0-dev K/N distributionsKT-48576
[Commonizer] platform.posix.pselect not commonized in KtorTools. Compiler Plugins
KT-46959
Kotlin Lombok: Support generated builders (@Builder
)KT-53683
Unresolved reference compilation error occurs if a file is annotated with@
Singular and has any guava collection type : ImmutableTable, ImmutableList or elseKT-53657
[K2] Unresolved reference compilation error occurs if a field is annotated with@
Singular and has type NavigableMap without explicit types specificationKT-53647
[K2] Unresolved reference compilation error occurs if a field is annotated with@
Singular and has type Iterable<>KT-53724
Param of the@
Singular lombok annotation ignoreNullCollections=true is ignored by kotlin compilerKT-53451
[K2] References to methods generated by@
With lombok annotation can't be resolved with enabled K2 compilerKT-53721
[K2] There is no compilation error while trying to add null as a param of the field with non-null typeKT-53370
Kotlin Lombok compiler plugin can't resolve methods generated for java boolean fields annotated with@
With annotationTools. Compiler plugins. Serialization
KT-54878
JVM/IR: java.lang.ClassCastException: class org.jetbrains.kotlin.ir.types.impl.IrStarProjectionImpl cannot be cast to class org.jetbrains.kotlin.ir.types.IrTypeProjection on serializer<Box<*>>()KT-55340
Argument for kotlinx.serialization.UseSerializers does not implement KSerializer or does not provide serializer for concrete typeKT-55296
Improve exceptions in serialization pluginKT-55180
KJS: regression in serialization for Kotlin 1.8.0-betaKT-53157
Recursion detected in a lazy value under LockBasedStorageManager in kotlinx.serializationKT-54297
Regression in serializable classes with star projectionsKT-49660
kotlinx.serialization: IndexOutOfBoundsException for parameterized sealed classKT-43910
JS IR: Serialization with base class: "IndexOutOfBoundsException: Index 0 out of bounds for length 0"Tools. Daemon
KT-52622
Kotlin/JS, Kotlin/Common compilations start Kotlin daemon incompatible with Kotlin/JVM compilation on JDK 8Tools. Gradle
New Features
KT-27301
Expose compiler flags via Gradle lazy propertiesKT-53357
Change single build metrics propertyKT-50673
Gradle: KotlinCompile task(s) should use@NormalizeLineEndings
KT-34464
Kotlin build report path not clickable in the IDEPerformance Improvements
KT-51525
[Gradle] Optimize evaluating args for compile tasksKT-52520
Remove usage of reflection from CompilerArgumentsGradleInputFixes
KT-48843
Add ability to disable Kotlin daemon fallback strategyKT-55334
kaptGenerateStubs passes wrong android variant module names to compilerKT-55255
Gradle: stdlib version alignment fails build on dynamic stdlib version.KT-55363
[K1.8.0-Beta] Command line parsing treats plugin parameters as source filesKT-54993
Raise kotlin.jvm.target.validation.mode check default level to error when build is running on Gradle 8+KT-54136
Duplicated classes cause build failure if a dependency to kotlin-stdlib specified in an android projectKT-50115
Setting toolchain via Java extension does not configure 'kotlinOptions.jvmTarget' value when Kotlin compilation tasks are created eagerlyKT-55222
Migrate AndroidDependencyResolver to the new Gradle APIKT-55119
There is no validation for different jvmTarget and targetCompatibility values in multiplatform projects with jvm target and used java sourcesKT-55102
Compile java task fails with different target version in pure kotlin projectKT-54995
[1.8.0-Beta] compileAppleMainKotlinMetadata fails on default parameters withNo value passed for parameter 'mustExist'
KT-35003
Automatically set targetCompatibility for kotlin-jvm projects to work with gradle 6 metadataKT-45335
kotlinOptions.jvmTarget conflicts with Gradle variantsKT-48798
Android: going from one to more than one productFlavor causes inputs of commonSourceSet$kotlin_gradle_plugin property of compileKotlin task to changeKT-55019
Gradle sync: UnknownConfigurationException when adding implementation dependencies to a Kotlin with Java compilationKT-55004
jvmTarget value is ignored by depending modules if a task "UsesKotlinJavaToolchain" is configured for all project modules using allProjects {}KT-54888
Add Gradle property to suppress kotlinOptions.freeCompilerArgs modification on execution phaseKT-54399
Undeprecate 'kotlinOptions' DSLKT-54306
Change the naming of newly added Compiler*Options classes and interfacesKT-54580
KotlinOptions in AbstractKotlinCompilation class are deprecatedKT-54653
java.lang.NoClassDefFoundError: kotlin/jdk7/AutoCloseableKt exception if a dependency to the kotlin-stdlib is addedKT-52624
Compatibility with Gradle 7.3 releaseKT-54703
Stdlib substitution does not work with JPMS modulesKT-54602
Prevent leaking Gradle Compile DSL types into compiler cli runtimeKT-54439
Project failed to sync Native LaguageSettings to compiler options in afterEvaluateKT-53885
Bump minimal supported Gradle version to 6.8.3KT-53773
Protect and system properties can contain sensitive dataKT-53732
Add custom values limits for build scan reportsKT-52623
Compatibility with Gradle 7.2. releaseKT-51831
Gradle: removekotlin.compiler.execution.strategy
system propertyKT-51679
Change deprecation level to error for KotlinCompile setClasspath/getClasspath methodsKT-54335
Kotlin build report configuration. There is no validation for SINGLE_FILE output if the required kotlin.build.report.single_file property is empty or absentKT-54356
Kotlin build report configuration. Wrong path is used for the property kotlin.internal.single.build.metrics.fileKT-53617
KotlinCompilerExecutionStrategy value is ignored by depending modules if configure once for all project modules using allProjects {}KT-53823
Kotlin Gradle Plugin uses deprecated Gradle API: Provider.forUseAtConfigurationTime()KT-54142
Increase Kotlin Gradle plugin Gradle target API to 7.5KT-50161
Android variant filter breaks KotlinCompile cache compatibilityKT-54113
LanguageSettings to KotlinNativeLink.toolOptions sync are executed on the wrong contextKT-53830
Versions of kotlin-stdlib-jdk8 and kotlin-stdlib-jdk7 aren't overrided if added as transitive dependencies to kotlin-stdlibKT-54112
Missing target input on KotlinNativeLink taskKT-45879
Documentation: Wrong kotlin languageVersion "1.6 (EXPERIMENTAL)"KT-54103
Remove JvmTarget.JVM_1_6 from generated Gradle compiler typeKT-52959
KMP code is breaking Gradle project isolationKT-50598
MULTIPLE_KOTLIN_PLUGINS_SPECIFIC_PROJECTS_WARNING is only shown on first buildKT-53246
Gradle: Special characters in paths of errors and warnings should be escapedKT-47730
How to avoid stdlib coming from Kotlin gradle pluginKT-52209
Corrupted cache and non-incremental build if produce caches "in process" and restore then compiling with kotlin daemonKT-41642
"TaskDependencyResolveException: Could not determine the dependencies" when trying to apply stdlibKT-53390
Drop usage of -Xjava-source-roots when passing java sources required for Kotlin compilationKT-52984
Kotlin Gradle plugin is misbehaving by resolving DomainObjectCollection earlyKT-38622
Non-incremental compilation because of R.jar with Android Gradle plugin 3.6KT-38576
AnalysisResult.RetryWithAdditionalRoots crashes during incremental compilation with java classes in classpathTools. Gradle. Cocoapods
KT-54314
Cocoapods: Signing pod dependency for Xcode 14KT-54060
Xcode 14: disable bitcode embedding for Apple frameworksKT-53340
Change default linking type for frameworks registered by cocoapods pluginKT-53392
Deprecate and delete downloading pod dependencies by direct linkKT-53695
Build of macOS application fails if a framework is integrated via Cocoapods pluginTools. Gradle. JS
KT-53367
KJS: Migrate cssSupport APIKT-45789
KJS / IR: Transitive NPM dependencies are not included in PublicPackageJsonTask outputKT-55099
K/JS: Second declaration of JS target without compiler type report warning incorrectlyKT-52951
[KGP/JS] Browser test target registration via propertiesKT-52950
KJS: Report if yarn.lock was updated during builtKT-53374
KJS / Gradle: Implement IDEA sync detection logic via ValueSource to improve configuration cache supportKT-53381
Kotlin/JS: with erased kotlin-js-store/ and reportNewYarnLock = true the task kotlinUpgradeYarnLock always failsKT-53788
KJS / Gradle: Disable Gradle build cache for KotlinJsDce when development mode is enabledKT-53614
Kotlin/JS upgrade npm dependenciesTools. Gradle. Multiplatform
New Features
KT-53396
Support 'implementation platform()' by gradle kotlin mpp plugin for JVM targetKT-40489
MPP / Gradle: support BOM (enforcedPlatform) artifacts in source set dependencies DSLPerformance Improvements
KT-52726
[MPP] Optimize caching/performance/call-sites of 'compilationsBySourceSets'Fixes
KT-54634
MPP: Test Failure causes:KotlinJvmTest$Executor$execute$1 does not define failure
KT-35916
Gradle MPP plugin: Configurations for a main compilation and its default source set have different namingKT-46960
Repeated kotlin/native external libraries in projectKT-27292
MPP: jvm { withJava() }: Gradle build: Java source under Kotlin root is resolved while building, but does not produce output class filesKT-34650
Naming clash in MPP+Android: androidTest vs androidAndroidTestKT-54387
Remove MPP alpha stability warningKT-31468
Targets disambiguation doesn't work if a depending multiplatform module useswithJava()
modeKT-54090
Take an Apple test device from the device listKT-54301
KotlinToolingVersionOrNull: IllegalArgumentExceptionKT-53256
Implement K/N compiler downloading for KPMKT-45412
KotlinCompilation: Make sure .kotlinSourceSets and .allKotlinSourceSets include the default source setKT-49202
Tests on android target can't be executed in multiplatform project if dependency to kotlin-test framework is provided as a single dependency and tests configured to be executed via Junit5Tools. Gradle. Native
New Features
KT-43293
Support Gradle configuration caching with Kotlin/NativeKT-53107
Add arm64 support for watchOS targets (Xcode 14)Fixes
KT-53704
Native cinterop: eager header path calculationKT-54814
Kotlin/Native: Github Actions: Testing watchOSX64 with Xcode 14 — Invalid device: Apple Watch Series 5KT-54627
Native: :commonizeNativeDistribution with configuration cache enabled fails even when set to warn on JDK 17KT-54339
Link tasks fail if Gradle Configuration Cache is enabledKT-53191
Native cinterop sync problem with gradleKT-54583
watchosDeviceArm64 target shouldn't register test tasksKT-52303
Gradle / Native: Build tasks ignore project.buildDirKT-54442
Gradle iOS test tasks fail if a device is not selected explicitlyKT-54177
Gradle: DeprecateenableEndorsedLibs
flagKT-47355
Support macos target for FatFramework taskKT-53339
MPP / CocoaPods: The static framework fails to install on a real iOS deviceKT-31573
Missing description for Native Gradle tasksKT-53131
Gradle Sync: "NoSuchElementException: Array contains no element matching the predicate" with CocoaPodsKT-53686
Task assembleReleaseXCFramework fails with "error: the path does not point to a valid framework" if project name contains a dashTools. Incremental Compile
KT-54144
New IC: "IllegalStateException: The following LookupSymbols are not yet converted to ProgramSymbols" when changing an inline function with custom JvmNameKT-53871
New IC: "IllegalStateException: The following LookupSymbols are not yet converted to ProgramSymbols" when changing an inline property accessorKT-19804
Relocatable IC cachesTools. JPS
KT-45474
False positive NO_ELSE_IN_WHEN on sealed class with incremental compilationKT-54228
Switching abstract to sealed classes causes incremental issueKT-38483
JPS: Stopping compilation causes IDE CompilationCanceledExceptionKT-50310
False positive NO_ELSE_IN_WHEN on incremental build when adding sealed classesKT-48813
Move cache version to compilerKTIJ-921
JPS: FileNotFoundException on project build in mixed Kotlin/Scala projectTools. Kapt
KT-54187
JVM IR + kapt: incorrect modifierfinal
is generated for nested enum in interfaceKT-48827
Remove 'kapt.use.worker.api' propertyTools. Scripts
KT-54355
Scripts: Internal compiler error (languageVersion=1.9)KT-53009
Scripting: NDFDE “Descriptor wasn't found for declaration SCRIPT” on using script definition with kotlin from masterChecksums
v1.7.22
: Kotlin 1.7.22This is a technical release. It doesn't contain any fixes that aren't included in Kotlin 1.7.21.
Version 1.7.22 of the Kotlin plugin will not be available for downloading or installing in any IDEs.
Checksums
v1.7.21
: Kotlin 1.7.21Changelog
Compiler
KT-54463
Delegating to a field with a platform type causes java.lang.NoSuchFieldError: value$delegateKT-54509
Ir Interpreter: unable to evaluate string concatenation with "this" as argumentKT-54004
Builder type inference does not work correctly with variable assignment and breaks run-timeKT-54393
Change in behavior from 1.7.10 to 1.7.20 for java field override.KT-54615
JVM: Internal error in file lowering: java.lang.AssertionError: Error occurred while optimizing an expressionKT-54581
JVM: "VerifyError: Bad type on operand stack" with generic inline function andwhen
inside try-catch blockKT-53146
JVM IR: unnecessary checkcast of null leads to NoClassDefFoundError if the type isn't available at runtimeKT-54600
NPE on passing nullable Kotlin lambda as Java's generic SAM interface withsuper
type boundKT-54707
"VerifyError: Bad type on operand stack" in inline call chain on a nullable array valueKT-54650
Binary incompatible ABI change in Kotlin 1.7.20KT-54802
"VerifyError: Bad type on operand stack" for inline functions on arraysNative. Runtime. Memory
KT-54498
Deprecation message of 'FreezingIsDeprecated' is not really helpfulTools. Gradle. Multiplatform
KT-54387
Remove MPP alpha stability warningKT-48436
False positive "The Kotlin source set androidAndroidTestRelease was configured but not added to any Kotlin compilation"Tools. JPS
KT-45474
False positive NO_ELSE_IN_WHEN on sealed class with incremental compilationChecksums
v1.7.20
: Kotlin 1.7.201.7.20
Analysis API
KT-52667
FIR IDE: fun interfaces (SAM interfaces) are not properly resolvedKT-52136
FIR: Implicit type declaration from the other module cannot be used for overloadingAnalysis API. FE1.0
KT-51962
Analysis API: Finish Analysis API for FE1.0Analysis API. FIR
KT-52779
FIR IDE: Import Optimizer cannot handle generic type qualifiersKT-50236
Fix OOB modification trackers for non-Kotlin codeKT-51240
Analysis API: KtAnalysisSession for a specific module cannot create a symbol for PSI that cannot be seen from that module.KT-50868
Analysis API: decompiled type aliases are not resolvedCompiler
KT-53739
Builder inference, extension hides membersKT-53733
Kotlin/Native: update source documentation for the new default memory managerKT-53667
Compiler crashes on attempt to alloc a string on the stack in new MMKT-53480
Internal error in file lowering: java.lang.ClassNotFoundException: com.android.systemui.R$stringKT-52843
Compose: NPE at Parameters.getParameterByDeclarationSlot if inline function with default arguments takes a lambda which captures value class represented by LongKT-53475
Kotlin/Native for iOS: "IllegalArgumentException: Sequence has more than one element"New Features
KT-52495
Support until operator in back-endsKT-52420
Implement resolve of until operatorKT-52419
Implement until operator in the parserKT-33755
Kotlin/Native: Provide a way to customize a bundle Identifier of a generated frameworkKT-51665
FIR: implement label resolve for "typed this" caseKT-52361
Report warning on potentially empty intersection typesPerformance Improvements
KT-47816
Disable script discovery for non-script environmentsKT-48635
JVM IR: Double/Float values are boxed when comparing for equality in equals method of data/value classesKT-23397
Optimize out field for property delegate when it's safe (JVM)Fixes
KT-53272
Backend Internal error: Exception during IR lowering / No such value argument slot: 2KT-53124
Receiver type mismatch when combining extension properties, type projections, Java sources, and F-bounded type-variablesKT-51868
JVM / IR: Inconsistent behaviour between lambda expression and SAM interface conversion for the same interfaceKT-36770
Prohibit unsafe calls with expected@NotNull
T and given Kotlin generic parameter with nullable boundKT-52974
"IllegalStateException: Symbol with IrSimpleFunctionSymbolImpl is unbound" compiling native targets of MPP projectKT-53007
JVM: "Bad invokespecial instruction: current class isn't assignable to reference class" when call superclass of outer class method from inner classKT-53019
K2: cannot cast callable reference to Function1 in runtimeKT-53031
K2 compiler crashes with IllegalStateException: No type in ProtoBuf.ValueParameterKT-29168
Prohibit upper bounds violation with generic typealias using not all type parameters as arguments for underlying type in supertypesKT-52432
Using the IDE compiled with K2 (useFir) throws VerifyError exceptionKT-52327
False negative: TYPECHECKER_HAS_RUN_INTO_RECURSIVE_PROBLEM isn't reportedKT-49682
Support JVM IR in KAPT stub generationKT-24643
Prohibit using a type parameter declared for an extension property inside delegateKT-51972
FIR, Gradle: "Symbol is invisible" compilation error with enabled Kotlin Lombok compiler pluginKT-52011
[FIR] All-open compiler plugin isn't supportedKT-51950
JVM IR: "IndexOutOfBoundsException: Cannot pop operand off an empty stack" with crossinline lambdas and interface delegationKT-52540
Native: kotlin.NotImplementedError with Arrow libraryKT-48031
"IllegalStateException: Type variable TypeVariable(T) should not be fixed!"KT-47708
RequiresOptIn check does not flag experimental method usage in SAM lambda expressionsKT-52913
JVM / IR: "IllegalArgumentException: Inline class types should have the same representation" when trying to down cast cast a value classKT-50771
IR partial linkage: Removed abstract callable members are not supportedKT-52994
Enable generic inline classes as experimental featureKT-52742
CYCLE_IN_ANNOTATION_PARAMETER_ERROR false positive on annotations with default valuesKT-52743
Non-null generic functions throws NPE when assigned to valKT-52745
Frontend / K2: "IncompatibleClassChangeError: class A$B overrides final method A.length()I" caused by delegation in a sealed classKT-52832
Tree-generator's method FirExpression::isFirType returns true and false for different field names; it should always be trueKT-52403
IncompatibleClassChangeError when inlining suspend funsKT-50107
Missed USAGE_IS_NOT_INLINABLE diagnostic: Leaking inline lambda parameter through extension receiverKT-47965
Missed USAGE_IS_NOT_INLINABLE diagnostic on inline lambda parameter usage as receiver of .let callKT-25787
No error on crossinline usage of receiver parameter of functional type in an inline functionKT-52762
Frontend / K2: Named arguments for Java classes lead to "Cannot find a parameter with this name"KT-52680
K2: overload resolution ambiguity ifthis
is casted in a different methodKT-52676
K2: Unsupported compile-time value IrGetFieldImpl instead of IrConst in AnnotationCodegen for constant from JavaKT-50293
False positive: USELESS_CAST on stub typesKT-52175
WRONG_ANNOTATION_TARGET for annotation that used inside ifKT-52338
"IncompatibleClassChangeError: Expected non-static field" with Kotlin class with same-named companion object property as base Java class fieldKT-49507
JVM: "IllegalAccessError: class X tried to access private field" with same-named Kotlin property and Java base class fieldKT-44512
FIR DFA: incorrect smartcast after null assignment inside a lambdaKT-49200
FIR/FE 1.0: different behavior with multiple matching star importsKT-52718
declaringClass deprecation message mentions the wrong replacement in 1.7KT-52190
FIR2IR: Unexpected IrErrorTypeImpl type for put method inside buildMapKT-52197
Incorrect inference of var type inside lambda that passed to extension function with type parameters that defined inside this lambdaKT-52057
Unsupported compile-time value STRING_CONCATENATION and GET_FIELD in annotation argumentsKT-47823
JVM IR: "IllegalArgumentException: Inline class types should have the same representation" withbreak
usage in the loop rangeKT-51883
Kotlin 1.6.20 generates "-" in type names around lambdas and inline extension function with reified type which breaks Apache BeamKT-52684
Syntax error regression on complicated combination of LT and GTEQKT-52417
Reflection: Can't reflect on type parameters captured by SAM converted lambdaKT-46797
JVM IR: suspendImpl has no generic signature, breaking reified types in anonymous object supertypes when using the type token patternKT-51464
FIR: Unable to infer type in coroutines flow codeKT-52163
JVM IR: Double.compareTo(Int) compiled to integer comparisonKT-41980
FIR: erroneous scope during annotation resolveKT-47159
KtPsiUtils.areParenthesesUseless()
is returning a false positive on expressions for interface delegationKT-51418
Substitute anonymous type's supertypesKT-35544
kotlin.TypeCastException has no message on NativeKT-52386
StackOverflowError during Kotlin/Native gradle buildKT-52592
NPE from KProperty.getExtensionDelegate on property delegated to another propertyKT-52551
Delegating to object property reference does not invoke object's initializerKT-51704
Contracts: "AssertionError: Arguments and parameters size mismatch" with companion objectKT-25527
False positive UNUSED_VALUE for delegated property/variableKT-51002
[FIR] Hidden declaration hides visible oneKT-51008
[FIR] Star import does not work for nested calssifiers of java classKT-52407
FIR: Star import has lower priority than built-in importKT-52431
Reported error instead of warning due to empty intersection type foundKT-49394
Bad message and suggestion: The feature "unit conversion" is disabledKT-51168
FIR: Inference error with Java interop and captured typesKT-49961
"AssertionError: Left expression was not processed: BINARY_EXPRESSION" when analyzing dangling [bracketed] expression inside elvisKT-50108
Difference in fun interface conversion behavior for uninitialized not-null function valuesKT-51889
Calls to super-classes constructors with context receivers fail on runtimeKT-51228
[FIR] Unresolved reference on callable reference on implicitthis
with smartcastKT-52364
False positive for INFERRED_TYPE_VARIABLE_INTO_EMPTY_INTERSECTIONKT-52237
JVM / IR: "IllegalArgumentException: No argument for parameter VALUE_PARAMETER CONTINUATION_CLASS" when implementing Map interface on class with suspending functionsKT-50832
Method references to suspend inline functions are processed incorrectlyKT-52194
False positive "Class 'my.packge.MyClass' is compiled by a pre-release version of Kotlin and cannot be loaded by this version of the compiler" but builds fineKT-47203
JVM Debugger: Parameter value doesn't change for tailrec functionKT-52131
False positive variable unused warning when calling inline function in finally blockKT-51738
Debugger: stepping over in inline function with multiple inline lambda invocations is incorrectKT-52198
Losing reference to the value of an outer variable (Ref$ObjectRef) when using suspend inline with suspendCancellableCoroutineKT-50994
FIR: AssertionError during inference of delegated properties with implicit typesKT-51757
FIR does not see various JS/Native specific declarations in common modulesKT-51201
FIR: ARGUMENT_TYPE_MISMATCH diagnostic contains generic parameter instead of the actual typeKT-48444
FIR: type argument rejected for annotationKT-51754
JVM: Local variable table invalid for do-while with continueKT-51936
Breakpoint not hit on last line of suspend function on AndroidKT-27333
Forbid@Synchronized
annotation on suspend functionsKT-51530
"StackOverflowError: CoroutineTransformerMethodVisitor.spillVariables" with data class in FlowKT-51460
FIR: Protected property inaccessible from inner classKT-53947
IllegalStateException: No mapping for symbol: VALUE_PARAMETER INSTANCE_RECEIVERKT-51234
Context receivers can be duplicated in function declarationKT-51576
Context receivers: "AssertionError: Callers must check that current token is IDENTIFIER followed with '@'" withat
characterKT-49479
JVM / IR: "IllegalStateException: IrErrorType" during IR lowering with non-trivial recursion callsKT-52270
NullPointerException caused by braces on if-else returning a method reference inside lambdaKT-47621
False negative INVISIBLE_MEMBER on call to inaccessible protected synthetic property setterKT-37796
NI: "ISE: Error type encountered" when inferring type of a property that delegates to itselfKT-45430
PSI2IR: "org.jetbrains.kotlin.psi2ir.generators.ErrorExpressionException: null: KtCallExpression: toString()" with recursive function call in "also" block in nontrivial contextKT-52691
K2: Expected FirResolvedTypeRef with ConeKotlinType but was FirImplicitTypeRefImpl with intertwined functional interfacesKT-52822
Fix contract for KtElement.getReference()KT-50223
IndexOutOfBoundsException fromClassicTypeSystemContext$DefaultImpls.getParameter
during call resolutionKT-51963
Change Maven version to 1.7.255KT-47664
Incorrect type checking in the case of generic typesKT-48765
NI: Inferred type does not respect the bound of type variableKT-51243
False positive error "No required context receiver" inside contextual lambdaKT-43541
TYPE_MISMATCH for member function which is not occur for top level function during unsafe castKT-51016
[FIR] False positive OVERLOAD_RESOLUTION_AMBIGUITY between two extensions on different supertypesKT-50155
FIR: support contextual receiversKT-38637
Catch NoSuchFieldException in optimized when expression over enumDocs & Examples
KT-49896
Kotlin/JS: improve-Xir-property-lazy-initialization
description due to making it true by defaultIDE
KTIJ-22286
Kotlin JPS project created via wizard does not contain Kotlin libraries in case of not-released versionKTIJ-22065
IDE notification motivating Kotlin users to use EAPKTIJ-22209
Configure Kotlin on 221 idea adds 1.6.10 Kotlin (despite the fact that IDE plugin is 1.7.10)KTIJ-22171
Fix test BuiltInDecompilerConsistencyTestKTIJ-22016
Empty .kt file and build.gradle.kts can trigger an error while searching for a facade light classKT-52571
MPP Tasks on import are not up-to-date after subsequent launchesKT-47777
ISE thrown from KtLightClassForFacadeImpl.Companion.createForFacadeNoCache has wrong message.IDE. FIR
KT-52360
FIR IDE: Make the fix ofisInheritor
method betterKT-51786
FIR IDE: IllegalStateException exception in Inspections' infrastructureKT-52331
Analysis API: ArrayIndexOutOfBoundsException exception in Diagnostics' infrastructureIDE. Code Style, Formatting
KTIJ-21346
Incorrect formatting for functions with context receivers and visibility modifiersIDE. Completion
KTIJ-21910
FIR IDE: Fix completion tests started failing after visibility checker refinementIDE. Decompiler, Indexing, Stubs
KTIJ-21243
ContextReceivers: "UpToDateStubIndexMismatch: PSI and index do not match" plugin exception on library with context receivers usage attemptIDE. Gradle Integration
KT-47627
IDE import fails with com.intellij.util.lang.PathClassLoader error forrunCommonizer
Gradle task on 212, 213 IDEAsKTIJ-21638
MPP: IntelliJ can not resolve MPP references in common-codeKT-52216
HMPP / KTOR: False positive "TYPE_MISMATCH" with Throwable descendantIDE. Inspections and Intentions
KTIJ-22540
Invalid "remove unnecessary parentheses" when delegating a functional interface to a SAM in bracketsIDE. J2K
KTIJ-21665
J2K generates non compiling code when liftingreturn
and one branch is broken before binary operatorIDE. JS
KTIJ-22337
Wizard: Kotlin/Js for browser: cssSupport DSL should be updatedIDE. K2
KTIJ-21672
FIR IDE: Method reference on generic class breaks resolveKTIJ-21714
FIR IDE: Inherently imported type from another module is not properly resolvedIDE. Script
KT-52525
Update scripts handling in source rootsIDE. Misc
KTIJ-21699
Refactoring: move out parts of the plugin useful for both FE10 and K2JavaScript
New Features
KT-39423
KJS: Optionally generate a method to handle optional parameters for function in typescriptKT-42282
KJS IR: add an ability to run separate testsPerformance Improvements
KT-50270
KJS IR: Unnecessary getter and setter calls when accessing class membersFixes
KT-51133
Kotlin/JS - IR: even simple lambdas generate a lot of useless boilerplateKT-51123
Provide a way to add comments to generated JSKT-48493
KJS / IR: Invalid d.ts for inner classes inside objectsKT-52553
KJS / IR: diamond hierarchy with super.toString produces stack overflow in runtimeKT-23252
JS: Unit materialization on declaration and assignmentKT-51128
Kotlin/JS - IR generate huge count of useless blocksKT-50778
KJS/IR: Inline class has no field when building production distributionKT-50157
KSJ IR: Applying identity equality operator to Chars always returns falseKT-38262
Javascript generation (and Typescript) fails on 'then', 'catch' and 'finally' (and others?) claiming they are reserved namesKT-51066
KJS / IR: suspend lambda parameter of value class is undefinedKT-51102
KJS/IR: Assertion failed at translateCallArguments(jsAstUtils.kt:343)KT-51878
KJS / Legacy: Unit is not materialized in an overridden method, but it should beLanguage Design
KT-47986
Implicit inferring a type variable into an upper bound in the builder inference contextKT-49264
Deprecate infix function calls of functions named "suspend" with dangling function literalKT-25636
Native: Object is frozen by default problemKT-49303
Implement support for basic compile-time evaluationLibraries
KT-52932
Open-ended ranges in the standard libraryKT-52910
Provide visit extension functions for java.nio.file.PathKT-48232
Multiplatform function for computing cubic rootKT-52778
The documentation for theDuration
does not indicate any differences from the ISO-8601KT-52618
ThreadLocalRandom is not a good source of randomness on Android before SDK 34, so don't use it for Kotlin RandomNative
KT-53346
MPP project with kotlinx-serialization-json:1.4.0-RC is not builtNative. C Export
KT-45468
Kotlin/Native: Bitcode verification error when trying to export a cached klib to a static or dynamic libraryNative. C and ObjC Import
KT-53373
Native: @ExportObjCClass doesn't work with the new memory managerKT-49034
Kotlin/Native:cnames.structs.Foo
resolves into wrong declarationKT-26478
Objective-C object's class name is null in ClassCastException's messageNative. ObjC Export
KT-51593
Include more information in Objective-C header documentationKT-33117
Improve customizing Info.plist in produced frameworksKT-52681
Native:@end;
for Objective-C is generated with an unnecessary semicolonNative. Platforms
KT-52226
Kotlin/Native: Add support for cross-compilation of MIPS targets from macOS and Windows hostsNative. Runtime
KT-52430
KMM 1.6.21 framework built with Xcode13, new MM GC Can't support iOS 9.xKT-53534
Kotlin/Native:-Xruntime-logs=gc=info
flag doesn't work with compiler caches in 1.7.20-betaNative. Runtime. Memory
KT-52692
Kotlin/Native: fix tests with aggressive GCKT-52130
Kotlin/Native: use Xallocator for Kotlin objects onlyKT-51436
Kotlin/Native: optimize mark queueReflection
KT-51804
An error occurs when callBy a KFunction that contains a value class as an argument, has a default argument set, and has more than 32 arguments.Tools. CLI
KT-52465
CLI: IllegalStateException IrSimpleFunctionPublicSymbolImpl when source root is duplicatedKT-52380
Invalid path to compiler plugins should be reported as a compiler errorKT-51025
JVM CLI compiler takes class file from classpath instead of input java source fileKT-51846
Setting random value to the compiler argument where number is expected should produce an error. "-Xbackend-threads=abcd"Tools. Compiler Plugins
KT-52486
[K2] Looking for function/constructor whose parameters are annotated or meta annotatedKT-52872
Mark supportsK2 in ComponentRegistrar.kt as JvmDefault to avoid compatibility problemsKT-52804
A function obtained by Fir IrBuiltins has an incorrect packageKT-52468
Rename module and jar for lombok compiler pluginTools. Gradle
KT-53670
Gradle: Cyclic dependency between kotlin-gradle-plugin-idea-1.7.20-Beta and kotlin-gradle-plugin-idea-proto-1.7.20-BetaKT-53615
Gradle: Fix deprecation warnings in CleanableStoreImplKT-53118
Fully up-to-date builds are slower with Kotlin 1.7.0KT-51923
Improve usability of errors and warnings by being able to click on themKT-53244
Report from gradle about compiler pluginsKT-52839
Warn in Gradle log why incremental compilation failedKT-46019
Compatibility with Gradle 7.1 releaseKT-47047
Migrate Kotlin Gradle Plugin from using Gradle conventionsKT-52698
Don't add InspectClassesForMultiModuleIC task when new incremental compilation is enabledKT-52867
Provide simplified JVM toolchain configuration methodKT-45747
Add basic JUnit 5 Kotlin Gradle Plugin Android tests setupKT-46034
Shadow Kotlin Gradle plugin dependenciesKT-28664
Support ExtensionContainer on kotlin targets and source sets.KT-19472
Useful extensions of Gradle Kotlin DSL provided by Gradle Kotlin pluginKT-34393
Kotlin Gradle DSL: Inconsistent srcDir configuration between Java and KotlinKT-51629
There isn't enough info about incremental compilation state in logs while running build with --info keyTools. Gradle. Cocoapods
KT-53174
CocoaPods: Synthetic Podfile does not specify platformKT-53127
"MaterialComponents normal armv7" in Cocoapods plugin between Kotlin 1.6.21 and 1.7.0KT-44155
Cocoapods doesn't support pods without module map file insideKT-49032
Cocoapods cinterop: some header files are not foundKT-53337
Add warning about future changing default linking type of framework provided via cocoapods pluginTools. Gradle. JS
KT-52637
KJS / Gradle: Add SCSS webpack configKT-51527
Kotlin/JS: BrowserXRun causes full-screen Webpack error "Compiled with problems: asset size limit/entrypoint size limit" for fresh Kotlin-React project from wizardKT-51532
Kotlin/JS: passing environment variable via Gradle script causes "Execution optimizations have been disabled" warningsKT-52221
Kotlin/JS: failed Node tests are not reported in a standard wayTools. Gradle. Multiplatform
KT-52243
CInteropProcess is not cacheable despite the annotationKT-52741
MPP: klib outputs are not reproducibleKT-52208
MPP: Gradle plugin 1.7 doesn't support latest api versions (1.8, 1.9)KT-54071
MPP/AGP compatibility: Bump maxSupportedVersion to 7.3.0Tools. Gradle. Native
KT-52632
Gradle / Native: commonizeNativeDistributionTask can never be up-to-dateKT-52328
"ld: framework not found SQLCipher" linkDebugTestIosSimulatorArm64 errorTools. Incremental Compile
KT-53168
Incremental compilation doesn't perform correctly after a few iterationsKT-52925
[IR BE] Non incremental build occurs after build failure for compileKotlinJs taskKT-52946
CompileKotlinJs task is executed non-incrementally if there were changes made to the dependant moduleKT-52329
Reduce memory usage of classpath snapshot cacheKT-53266
Increment Compilation: "IllegalStateException: The following LookupSymbols are not yet converted to ProgramSymbols" when changing companion object constant fieldKT-53231
New IC reports build failures for missing classpath snapshotsTools. JPS
KT-47824
'when expression must be exhaustive' isn't thrown during incremental compilationKT-51873
JPS build is incorrect after gdw buildKTIJ-17072
JPS does not rebuild Kotlin usages of declared in Java when enum entry is addedKT-51537
Rebuild module on plugin classpaths changeTools. REPL
KT-45065
REPL: Incorrect output for unsigned valueKT-53043
Scripting: Changes in REPL protocol: mark end of errorsTools. Scripts
KT-52598
Scripts and REPL snippets are not checked against using 'kotlin' packageKT-47187
Kotlin ScriptEngine Failes to Compile a Trivial Statement After Failing to Compile a Broken OneKT-47191
[Kotlin Script Engine] Compiling Without Evaluating Leaves Engine in a Bad StateTools. Kapt
KT-52761
Kotlin 1.7.0 breaks kapt processing for protobuf generated java sourcesChecksums
v1.7.10
: Kotlin 1.7.10Changelog
Compiler
KT-52702
Invalid locals information when compilingkotlinx.collections.immutable
with Kotlin 1.7.0-RC2KT-52892
Disappeared specific builder inference resolution ambiguity errorsKT-52782
Appeared receiver type mismatch error due to ProperTypeInferenceConstraintsProcessing compiler featureKT-52718
declaringClass deprecation message mentions the wrong replacement in 1.7IDE. Configuration
KTIJ-21982
Cannot run/build anything with Kotlin plugin since last updateTools. Gradle
KT-52777
'org.jetbrains.kotlinx:atomicfu:1.7.0' Gradle 7.0+ plugin variant was published with missing classesTools. Gradle. JS
KT-52856
Kotlin/JS: Upgrade NPM dependenciesTools. Gradle. Multiplatform
KT-52955
SourceSetMetadataStorageForIde: Broken 'cleanupStaleEntries' with enabled configuration caching or isolated ClassLoadersKT-52694
Kotlin 1.7.0 breaks Configuration Caching in Android projectsTools. Incremental Compile
KT-52669
Full rebuild in IC exception recovery leaves corrupt IC dataChecksums
v1.7.0
: Kotlin 1.7.0Changelog
Analysis API. FIR
KT-50864
Analysis API: ISE: "KtCallElement should always resolve to a KtCallInfo" is thrown on call resolution inside plusAssign targetKT-50252
Analysis API: Implement FirModuleResolveStates for librariesKT-50862
Analsysis API: do not create use site subsitution override symbolsAnalysis API. FIR Low Level API
KT-50729
Type bound is not fully resolvedKT-50728
Lazy resolve of extension function from 'kotlin' package breaks over unresolved typeKT-50271
Analysis API: get rid of using FirRefWithValidityCheckBackend. Native. Debug
KT-50558
K/N Debugger. Error is not displayed in variables view for catch blockCompiler
New Features
KT-26245
Add ability to specify generic type parameters as not-nullKT-45165
Remove JVM target version 1.6KT-27435
Allow implementation by delegation to inlined value of inline classKT-47939
Support method references to functional interface constructorsKT-50775
Support IR partial linkage in Kotlin/Native (disabled by default)KT-51737
Kotlin/Native: Remove unnecessary safepoints on watchosArm32 and iosArm32 targetsKT-44249
NEW_INFERENCE_NO_INFORMATION_FOR_PARAMETER with type usage in higher order functionPerformance Improvements
KT-48233
Switching to JVM IR backend increases compilation time by more than 15%KT-51699
Kotlin/Native: runtime has no LTO in debug binariesKT-34466
Use optimized switch over enum only when all entries are constant enum entry expressionsKT-50861
FIR: Combination of array set convention and plusAssign works exponentiallyKT-47171
For loop doesn't avoid boxing with value class iterators (JVM)KT-29199
'next' calls for iterators of merged primitive progressive values are not specializedKT-50585
JVM IR: Array constructor loop should use IINCKT-22429
Optimize 'for' loop code generation for reversed arraysKT-50074
Performance regression in String-based 'when' with single equality clauseKT-22334
Compiler backend could generate smaller code for loops using range such as integer..array.size -1KT-35272
Unnecessary null check on unsafe cast after not-null assertion operatorKT-27427
Optimize nullable check introduced with 'as' castFixes
KT-46762
Finalize support for jspecifyKT-51499
@file:OptIn
doesn't cover override methodsKT-52037
FIR: add error in 1.7.0 branch if run with non-compatible pluginsKT-46756
Release the K2/JVM compiler in AlphaKT-49715
IR: "IllegalStateException: Function has no body: FUN name:toString" during IR lowering with shadowed extension inside interfaceKT-45508
False negative ABSTRACT_CLASS_MEMBER_NOT_IMPLEMENTED on a fake override with an abstract super class memberKT-28078
Report error "Public property exposes its private type" for primary constructor properties instead of warningKT-49017
Forbid usages of super or super if in fact it accesses an abstract memberKT-38078
Prohibit calling methods from Any with "super" qualifier once they are overridden as abstract in superclassKT-52363
Evaluate impact of qualifiedthis
behavior change warningsKT-52561
JVM: Coroutine state machine loses value after a check-induced smart castKT-52311
java.lang.VerifyError: Bad type on operand stackKT-41124
Inconsistency of exceptions at init block for an enum entry with and without a qualifier nameKT-46860
Make safe calls always nullableKT-52503
New green code appeared at the callable reference resolutionKT-51925
Native: "IllegalStateException: Symbol for kotlinx.cinterop/CStructVar|null[0] is unbound" caused by inline functionKT-49317
"IllegalStateException: Parent of this declaration is not a class: FUN LOCAL_FUNCTION_FOR_LAMBDA" with parameter of suspend type with the default parameterKT-51844
New errors in overload resolution involving vararg extension methodsKT-52006
"java.lang.Throwable: Unbalanced tree Exception" on indexing kotlin projectKT-51223
Report warning about conflicting inherited members from deserialized dependenciesKT-51439
FE 1.0: implement type variance conflict deprecation on qualifier type argumentsKT-51433
FE 1.0: implement warnings about label resolve changesKT-51317
Regression in resolution of lambdas where expected type has an extension receiver parameterKT-45935
JVM IR: Add not-null assertion for explicit definitely not-null parametersKT-51818
"ClassCastException: class CoroutineSingletons cannot be cast to class" with suspendCoroutineUninterceptedOrReturn and coroutinesKT-51718
JVM / IR: "VerifyError: Bad type on operand stack" caused by nullable variable inside suspend functionKT-51927
Native:The symbol of unexpected type encountered during IR deserialization
error when multiple libraries have non-conflicting declarations with the same nameKT-52394
JVM: Missing annotation on method with value class return type when a subclass is present in the same file in Kotlin 1.7.0-BetaKT-51640
FIR: remove warning about "far from being production ready"KT-45553
FIR: support hiding declaration from star import by as importKT-52404
Prolong deprecation cycle for errors at contravariant usages of star projected argument from JavaKT-50734
TYPE_MISMATCH: NonNull parameter with a type of Nullable type argument causes compiler warningKT-51235
JVM / IR: "AbstractMethodError: Receiver class does not define or inherit an implementation of the resolved method" when property with inline class type is overridden to return Nothing?KT-48935
NI: Multiple generic parameter type constraints are not applied as expected when the parameter is of function typeKT-49661
NI: No TYPE_INFERENCE_UPPER_BOUND_VIOLATED when argument is inferred by return typeKT-50877
Inconsistent flexible typeKT-51988
"NPE: getContainingDeclaration…lDeclarationType.REGULAR) must not be null" when using@BuilderInference
with multiple type argumentsKT-48890
Revert Opt-In restriction "Overriding methods can only have opt-in annotations that are present on their basic declarations."KT-52035
FIR: add error in 1.7.0 branch if run on JS / Native configurationKT-45461
NI: False negative TYPE_INFERENCE_UPPER_BOUND_VIOLATED when passing an argument to a function with generic constraintsKT-52146
JVM IR: "AssertionError: Primitive array expected" on vararg of SAM types with self-type and star projectionKT-50730
Implement error for a super class constructor call on a function interface in supertypes listKT-52040
JVM: ClassFormatError Illegal method name "expectFailure$__proxy-0"KT-50845
Postpone rxjava errors reporting in the strict mode till 1.8 due to found broken casesKT-51979
"AssertionError: No modifier list, but modifier has been found by the analyzer" exception on incorrect Java interface overrideKT-51759
FIR DFA: false positive "Variable must be initialized"KT-50378
Unresolved reference for method in Jsoup library in a kts script fileKT-34919
"Visibility is unknown yet" when named parameter in a function type used in a typealias implemented by an abstract classKT-51893
Duplicated [OVERRIDE_DEPRECATION] on overridden propertiesKT-41034
K2: Change evaluation semantics for combination of safe calls and convention operatorsKT-51843
Functional interface constructor references are incorrectly allowed in 1.6.20 without any compiler flagsKT-51914
False positive RETURN_TYPE_MISMATCH in intellij ultimateKT-51711
Compiler warning is displayed in case there is 'if' else branch used with elvisKT-33517
Kotlin ScriptEngine does not respect async code when using bindingsKT-51850
FIR cannot resolve ambiguity with different SinceKotlin/DeprecatedSinceKotlinKT-44705
Deprecate using non-exhaustive if's and when's in rhs of elvisKT-44510
FIR DFA: smartcast after elvis with escaping lambdaKT-44879
FIR DFA: Trackinc
anddec
operator calls in preliminary loop visitorKT-51758
FIR: explicit API mode errors should not be reported for effectively internal / private entitiesKT-51203
FIR: Inconsistent RETURN_TYPE_MISMATCH and TYPE_MISMATCH reporting on functions and propertiesKT-51624
FIR: false-positive INAPPLICABLE_LATEINIT_MODIFIER for lateinit properties with unresolved typesKT-51204
FIR IC: Incremental compilation fails on nested crossinlineKT-51798
Fix ISE from IR backend when data class inherits equals/hashCode/toString with incompatible signatureKT-46187
FIR: OVERLOAD_RESOLUTION_AMBIGUITY on SAM-converted callable reference to List::plusKT-51761
Incorrect NONE_APPLICABLE in expect classKT-51756
FIR: false positive NO_VALUE_FOR_PARAMETER in expect class delegated constructor callKT-49778
Support cast to DefinitelyNotNull type in NativeKT-51441
-Xpartial-linkage option specified in Gradle build script is not passed to Native linkerKT-34515
NI: "AssertionError: Base expression was not processed: POSTFIX_EXPRESSION" with double not-null assertion to bracketsKT-48546
PSI2IR: "org.jetbrains.kotlin.psi2ir.generators.ErrorExpressionException: null: KtCallExpression" with recursive property access in lazy blockKT-28109
"AssertionError: No setter call" for incrementing parenthesized result of indexed access convention operatorKT-46136
Unsubstituted return type inferred for a function returning anonymous object upcast to supertypeKT-51364
FIR: ambiguity due to String constructors clashKT-51621
FIR: visible VS invisible qualifier conflictKT-50468
FIR compilers fails with CCE when meets top-level destructionKT-51557
Inline stack frame is not shown for default inline lambdaKT-51358
OptIn: show default warning/error message in case of empty message argumentKT-44152
FIR2IR fails on declarations from java stdlib if java classes are loaded from PSI instead of binariesKT-50949
PSI2IR: NSEE fromArgumentsGenerationUtilsKt.createFunctionForSuspendConversion
with providing lambda as argument with suspend typeKT-39256
ArrayStoreException with list of anonymous objects with inferred types created in reified extension functionKT-39883
Deprecate computing constant values of complex boolean expressions in when condition branches and conditions of loopsKT-36952
Exception during codegen: cannot pop operand off an empty stack (reference equality, implicit boxing, type check)KT-51233
AssertionError in JavaLikeCounterLoopBuilder with ComposeKT-51254
Verify Error on passing null to type parameter extending inline classKT-50996
[FIR] Support Int -> Long conversion for property initializersKT-51000
[FIR] Support Int -> Long? conversionKT-51003
[FIR] Consider Int -> Long conversion if expected type is type variableKT-51018
[FIR] Wrong type inference if one of constraints is integer literalKT-51446
Metadata serialization crashes with IOOBE when deserializing underlying inline class value with type table enabledKT-50973
Redundant line number mapping for finally block with JVM IRKT-51272
Incompatible types: KClass and callable reference Collection::classKT-51274
"Expected some types" exception on when branch for when expression of erroneous typeKT-51229
FIR: private constructor of internal data class treated as internal and not privateKT-50750
[FIR] Report UNSUPPORTED on array literals not from annotation classesKT-51200
False EXPOSED_PARAMETER_TYPE for internal type parameter of internal typeKT-49804
False positive of UPPER_BOUND_VIOLATED and RETURN_TYPE_MISMATCHKT-51121
Inconsistent SAM behavior in multiple cases causing AbstractMethodError (Kotlin 1.6.10)KT-50136
FIR: syntax error on (T & Any)KT-49465
FIR2IR: support definitely not-null typesKT-51357
FIR: error in inference while using integer literal in expected Long positionKT-49925
[FIR] Incorrect builder inference (different cases)KT-50542
"IllegalStateException: Type parameter descriptor is not initialized: T declared in sort" with definitely non-null type Any & T in generic constraintKT-51171
FIR: classError
resolution problemKT-51156
Multiplatform linkDebugFramework task throws NoSuchElementException when expect class constructors utilize nested enum constantKT-51017
[FIR] Ambiguity on callable reference between two functions on generic receiver with different boundsKT-51007
[FIR] False positive ILLEGAL_SUSPEND_FUNCTION_CALL if fun interface with suspend function declared in another moduleKT-50998
[FIR] Int.inv() cal does not considered as compile time callKT-51009
[FIR] Incorrect inference of lambda in position of returnKT-50997
[FIR] Incorrect type of typealias for suspend functional typeKT-49714
Compiler reports "'operator modifier is inapplicable" if expect class with increment operator is provided via type aliasKT-48623
Type nullability enhancement improvementsKT-44623
"IllegalStateException: IdSignature is allowed only for PublicApi symbols" when suspending receiver is annotated with somethingKT-46000
JVM / IR: AssertionError on isSubtypeOfClass check in copyValueParametersToStatic with ComposeKT-50211
Annotation Instantiation with default arguments in NativeKT-49412
Controversial "type argument is not within its bounds" reported by FIRKT-48044
[FIR] Investigate behavior ofUPPER_BOUND_VIOLATED
on complex casesKT-37975
Don't show deprecation of enum class itself for its own memberKT-50737
Inheritance from SuspendFunction leads to compiler crashKT-50723
Implement a fix of reporting of uninitialized parameter in default values of parametersKT-50749
Implement UNSUPPORTED reporting on array literals inside objects in annotation classesKT-50753
Implement reporting errors on cycles in annotation parameter typesKT-50758
Fix inconsistency of exceptions at init block for an enum entry with and without a qualifier nameKT-50182
CONST_VAL_NOT_TOP_LEVEL_OR_OBJECT: clarify error message forconst
in object expressionKT-50183
Fix missing apostrophe escapes in compiler error messagesKT-50788
FIR: false unsafe call on not-null genericKT-50785
FIR: inconsistent smart cast after comparison with trueKT-50858
[FIR LL] FIR in low level mode creates multiple symbols for same declarationKT-50822
Analysis API: make declaration transformers machinery to be a thread safeKT-50972
FIR doesn't report VAL_REASSIGNMENT on synthetic propertiesKT-50969
FIR: diamond inheritance with different parameter types depends on a supertype orderKT-50875
FIR: no smart cast after reassignment with elvisKT-50835
Inline functions with suspend lambdas break the tail-call optimizationKT-49485
JVM / IR: StackOverflowError with long when-expression conditionsKT-35684
NI: "IllegalStateException: Expected some types" from builder-inference about intersecting empty types on trivial codeKT-50776
FIR: ambiguity between Sequence.forEach and Iterable.forEachKT-48908
Error for annotation on parameter type could have distinct ID and message referring 1.6KT-48907
SUPERTYPE_IS_SUSPEND_FUNCTION_TYPE error could have message referring version 1.6KT-50774
FIR2IR: NSEE in case of lambda in enum entry constructor callKT-49016
Drop QUALIFIED_SUPERTYPE_EXTENDED_BY_OTHER_SUPERTYPE diagnosticKT-34338
Parameterless main causes duplicate JVM signature errorKT-50577
JVM_IR: No NPE when casting uninitialized value of non-null type to non-null typeKT-50476
JVM_IR: NSME when calling 'super.removeAt(Int)' implemented in Java interface as a default methodKT-50257
JVM_IR: Incorrect bridge delegate signature for renamed remove(I) causes SOE with Kotlin class inherited from fastutils IntArrayListKT-50470
FIR: inapplicable candidate in delegate inference due to nullabilityKT-32744
Inefficient compilation of null-safe call (extra null checks, unreachable code)Docs & Examples
KT-52032
Document performance optimizations of the Kotlin/JVM compiler in 1.7.0KT-49424
Update KEEP for OptInIDE
Fixes
KTIJ-21735
Exception when opening a projectKTIJ-17414
UAST: Synthetic enum methods have null return valuesKTIJ-17444
UAST: Synthetic enum methods are missing nullness annotationsKTIJ-19043
UElement#comments is empty for a Kotlin property with a getterKTIJ-10031
IDE fails to suggest a project declaration import if the name clashes with internal declaration with implicit import from stdlib (ex.@Serializable
)KTIJ-21515
Load JVM target 1.6 as 1.8 in Maven projectsKTIJ-21151
Exception about wrong read access from "Java overriding methods searcher" with Kotlin overridesKTIJ-20736
NoClassDefFoundError: Could not initialize class org.jetbrains.kotlin.idea.roots.KotlinNonJvmOrderEnumerationHandler. Kotlin plugin 1.7 fails to startKT-50111
Resolving into KtUltraLightMethodKTIJ-21063
IDE highlighting: False positive error "Context receivers should be enabled explicitly"KTIJ-20810
NoClassDefFoundError: org/jetbrains/kotlin/idea/util/SafeAnalyzeKt errors in 1.7.0-master-212 kotlin plugin on project openKTIJ-19088
KotlinUFunctionCallExpression.resolve() returns null for calls to@JvmSynthetic
functionsKTIJ-17869
KotlinUFunctionCallExpression.resolve() returns null for instantiations of local classes with default constructorsKTIJ-21061
UObjectLiteralExpression.getExpressionType() returns the base class type for Kotlin object literals instead of the anonymous class typeKTIJ-20200
UAST:@Deprecated(level=HIDDEN)
constructors are not returning UMethod.isConstructor=trueKTIJ-19624
NoDescriptorForDeclarationException on iosTest.kt.vmIDE. Code Style, Formatting
KTIJ-20554
Introduce some code style for definitely non-null typesIDE. Completion
KTIJ-14740
Multiplatform declaration actualised in an intermediate source set is shown twice in a completion popup called in the source setIDE. Debugger
KTIJ-20815
MPP Debugger: Evaluation of expect function for the project with intermediate source set may fail with java.lang.NoSuchMethodErrorIDE. Decompiler, Indexing, Stubs
KTIJ-21472
"java.lang.IllegalStateException: Could not read file" exception on indexing invalid class fileKTIJ-20802
Definitely Not-Null types: "UpToDateStubIndexMismatch: PSI and index do not match" plugin error when trying to use library function with T&AnyKT-51248
Function and parameter names with special symbols have to backtickedIDE. FIR
KTIJ-20443
FIR IDE: Work in Dumb modeKTIJ-21374
FIR IDE: Incorrect highlighting for operatorsKTIJ-21013
FIR IDE: Inconsistent smartcasts highlightingKTIJ-21343
FIR IDE: Navigation from explicit invoke call does not workKTIJ-20852
FIR IDE: Exception when checkingisInheritor
on two classes in different modulesKTIJ-21021
FIR IDE: Completion of extension function does not work on nullable receiverKTIJ-20637
FIR IDE: Strange exception while commenting-uncommenting FirReferenceResolveHelper.ktKTIJ-20971
FIR IDE: "Parameter Info" shows parameters of uncallable methodsIDE. Gradle Integration
KTIJ-21807
Gradle to IDEA import: language and API version settings are not imported for Native facetKTIJ-21692
Kotlin Import Test maintenance: 1.7.0-BetaKTIJ-20567
Kotlin/JS: Gradle import into IDEA creates no proper sub-modules, source sets, facetsIDE. Hints. Inlay
KTIJ-20552
Support definitely non-null types in inlay hintsIDE. Inspections and Intentions
New Features
KTIJ-18979
Quickfix for INTEGER_OPERATOR_RESOLVE_WILL_CHANGE to add explicit conversion callKTIJ-19950
Provide quickfixes forINVALID_IF_AS_EXPRESSION_WARNING
andNO_ELSE_IN_WHEN_WARNING
KTIJ-19866
Create quick-fix for effective visibility error on private-in-file interface exposing private classKTIJ-19939
Provide quickfix for deprecated confusing expressions in when branchesFixes
KTIJ-20705
Register quickfix forNO_CONSTRUCTOR_WARNING
diagnosticKTIJ-21226
"Remove else branch" quick fix is not suggestedKTIJ-20981
Definitely non-null types: quick-fixes suggested incorrectly for LV=1.6 when Xenhance-type-parameter-types-to-def-not-null flag is setKTIJ-20953
Add quickfix for OVERRIDE_DEPRECATION warning to 1.7 - 1.9 migrationKTIJ-20734
Replace with [@JvmInline
] value quick fix should be appliable on a whole projectKTIJ-21420
Add 'else' branch quick fix suggestion is displayed twice in case 'if' isn't completedKTIJ-21192
"Make protected" intention is redundant for interface propertiesKTIJ-18120
"Make public" intention does not add explicit "public" modifier when using ExplicitApi Strict modeKTIJ-20493
"Create expect" quick fix doesn't warn about platform-specific annotationsIDE. Misc
KTIJ-21582
Notification for Kotlin EAP surveyIDE. Multiplatform
KT-49523
Improve environment setup experience for KMM projectsKT-50952
MPP: Commonized cinterops doesn't attach/detach to source set on configuration changesIDE. Native
KT-44329
Improve UX of using Native libraries in KotlinKTIJ-21602
With Native Debugging Support plugin Gradle run configurations can't be executed from IDEA: LLDB_NATVIS_RENDERERS_ENABLEDIDE. Wizards
KTIJ-20919
Update ktor-html-builder dependency in kotlin wizardsKTIJ-20962
Wizard: Invalid Ktor importsJavaScript
New Features
KT-51735
KJS / IR: Minimize member names in production modePerformance Improvements
KT-51127
Kotlin/JS - IR generates plenty of uselessUnit_getInstance()
KT-50212
KJS IR: Upcast should be a no-opKT-16974
JS: Kotlin.charArrayOf is suboptimal due to Rhino bugsFixes
KT-44319
JS IR BE: Add an ability to generate separate JS files for each moduleKT-52518
Kotlin/JS IR: project with 1.6.21 fails to consume library built with 1.7.0-RC: ISE "Unexpected IrType kind: KIND_NOT_SET" at IrDeclarationDeserializer.deserializeIrTypeData()KT-52010
K/JS IR: both flows execute when using elvis operatorKT-41096
KJS IR:@JsExport
should use original js name for external declarationsKT-52144
KJS / IR: Missing property definitions for interfaced defined propertiesKT-52252
KJS / IR: overridden properties are undefined/nullKT-51973
KJS / IR overridden properties of inherited interface missingKT-51125
Provide a way to useimport
keyword injs
expressionsKT-40888
KJS / IR: Missing methods are no longer generated (polyfills)KT-50504
KJS / IR: Transpiled JS incorrectly uses the unscrambled names of internal fieldsKT-51853
JS compilation fails with "Uninitialized fast cache info" errorKT-51205
K/JS IR: external class is mapped to anyKT-50806
Typescript definitions contain invalid nested block comments with generic parent and type argument without@JsExport
KT-51841
KJS / IR: No flat hash for FUN FAKE_OVERRIDE with kotlin.incremental.js.ir=trueKT-51081
KJS / IR + IC: Passing an inline function with default params as a param to a higher-order function crashes the compilerKT-51084
KJS / IR + IC: Cache invalidation doesn't check generic inline functions reified qualifierKT-51211
K/JS IR: JsExport: Can't export nested enumKT-51438
KJS / IR: Duplicated import names for the same external namesKT-51238
Kotlin/JS: IR + IC: build fails after clean oncompileTestDevelopmentExecutableKotlinJs
task: "Failed to create MD5 hash for file '.../build/classes/kotlin/main' as it does not exist"KT-50674
KJS / IR: JS code cannot modify local variableKT-50953
KJS IR: Incorrect nested commenting in d.tsKT-15223
JS: function that overrides external function withvararg
parameter is translated incorrectlyKT-50657
KJS / IR 1.6.20-M1-39 - Date in Kotlin JS cannot be created from long.Language Design
New Features
KT-45618
Stabilize builder inferenceKT-30485
Underscore operator for type argumentsKT-49006
Support at least three previous versions of language/APIKT-16768
Context-sensitive resolution prototype (Resolve unqualified enum constants based on expected type)KT-14663
Support having a "public" and a "private" type for the same propertyKT-50477
Functional conversion does not work on suspending functionsKT-32162
Allow generics for inline classesFixes
KT-12380
Support sealed (exhaustive) whensKT-27750
Reverse reservation of 'yield' as keywordKT-22956
Release OptIn annotationsKT-44866
Change behavior of private constructors of sealed classesKT-49110
Prohibit access to members of companion of enum class from initializers of entries of this enumKT-29405
Switch default JVM target version to 1.8Libraries
New Features
KT-50484
Extensions for java.util.Optional in stdlibKT-50146
Reintroduce min/max(By/With) operations on collections with non-nullable return typeKT-46132
Specialized default time source with non-allocating time marksKT-41890
Support named capture groups in Regex on NativeKT-48179
Introduce API to retrieve the number of CPUs the runtime hasPerformance Improvements
KT-42178
Range and Progression should override last()Fixes
KT-42436
Supportjava.nio.Path
extension in the standard libraryKT-51470
Stabilize experimental API for 1.7KT-51775
JS: Support named capture groups in RegexKT-51776
Native: Support back references to groups with multi-digit indexKT-51082
Introduce Enum.declaringJavaClass propertyKT-51848
Promote deepRecursiveFunction to stable APIKT-48924
KJS:toString
in base 36 produces different results in JS compare to JVMKT-50742
Regular expression is fine on jvm but throws PatternSyntaxException for native macosX64 targetKT-50059
Stop publishing kotlin-stdlib and kotlin-test artifacts under modular classifierKT-26678
Rename buildSequence/buildIterator to sequence/iteratorNative
KT-49406
Kotlin/Native: generate standalone executable for androidNative targets by defaultKT-48595
Enable Native embeddable compiler jar in Gradle plugin by defaultKT-51377
Native: synthetic forward declarations are preferred over commonized definitionsKT-49145
Kotlin/Native static library compilation fails for androidNative*KT-49496
Gradle (or the KMM plugin) is caching the Xcode Command Line Tools locationKT-49247
gradle --offline should translate into airplaneMode for kotin-native compilerNative. Build Infrastructure
KT-52259
kotlin-native releases from GitHub don't contain platform libsNative. C and ObjC Import
KT-49455
Methods from Swift extensions are not resolved in Kotlin shared moduleKT-50648
Incorrect KMM cinterop conversionNative. ObjC Export
KT-50982
RuntimeAssertFailedPanic in iOS when Kotlin framework is initialized before loadingKT-49937
Kotlin/Native 1.5.31: 'runtime assert: Unexpected selector clash' when 'override fun toString(): String' is usedNative. Platforms
KT-52232
Kotlin/Native: simplify toolchain dependency override for MinGWNative. Runtime
KT-52365
Kotlin/Native fails to compile projects for 32-bit targets when new memory manager is enabledNative. Runtime. Memory
KT-48537
Kotlin/Native: improve GC triggers in the new MM.KT-50713
Kotlin/Native: Enable Concurrent Sweep GC by defaultNative. Stdlib
KT-50312
enhancement: kotlin native -- add alloc<TVarOf>(T)Native. Testing
KT-50316
Kotlin/Native: Produce a list of available tests alongside the final artifactKT-50139
Create tests for Enter/Leave frame optimizationReflection
KT-27598
"KotlinReflectionInternalError" when usingcallBy
on constructor that has inline class parametersKT-31141
IllegalArgumentException when reflectively accessing nullable property of inline class typeTools. CLI
KT-52409
Report error when use-k2 with MultiplatformKT-51717
IllegalArgumentException: Unexpected versionNeededToExtract (0) in 1.6.20-RC2 with useFir enabledKT-52217
Rename 'useFir' to 'useK2'KT-29974
Add a compiler option '-Xjdk-release' similar to javac's '--release' to control the target JDK versionKT-51673
Make language version description not in capital lettersKT-48833
-Xsuppress-version-warnings allows to suppress errors about unsupported versionsKT-51627
kotlinc fails withjava.lang.RuntimeException
if/tmp/build.txt
file exists on the diskKT-51306
Support reading language settings from an environment variable and overriding the current settings by themKT-51093
"-Xopt-in=..." command line argument no longer worksTools. Commonizer
KT-43309
Overwrite return type and parameter types of callable member to succeed commonizationKT-52050
[Commonizer] 'platform.posix.DIR' not implementing 'CPointed' when commonized for 'nativeMain' on linux or windows hostsKT-51224
MPP: For optimistically commonized numbers missed kotlinx.cinterop.UnsafeNumberKT-51215
MPP: Update Kdoc description for kotlinx.cinterop.UnsafeNumberKT-51686
Cinterop: Overload resolution ambiguity in 1.6.20-RC2KT-46636
HMPP: missed classes fromplatform.posix.*
KT-51332
Optimistic number commonization is disabled by default in KGP with enabled HMPPTools. Compiler Plugins
KT-50992
jvm-abi-gen breaks inline functions in inline classes with private constructors in Kotlin 1.6.20Tools. Daemon
KT-32885
KT. Kotlin daemon compilation process is broken: java.lang.IllegalStateException Service is dying at entities generation by Kotlin.kts scriptTools. Gradle
New Features
KT-49227
Support Gradle plugins variantsKT-50869
Provide API that allow AGP to set up Kotlin compilationKT-48008
Consider offering a KotlinBasePluginKT-52030
Provide experimental possibility to view internal information about Kotlin Compiler performancePerformance Improvements
KT-52141
Optimize Java class snapshotting for thekotlin.incremental.useClasspathSnapshot
featureKT-51978
Optimize classpath snapshot cache for thekotlin.incremental.useClasspathSnapshot
featureKT-51326
Kotlin-gradle-plugin performance issue with mass java SourceRootsFixes
KT-52448
Compilation tasks are missing input/output/internal annotations on includes/excludes propertiesKT-52239
Type based task configuration-blocks for JVM stopped working in GradleKT-52313
No recompilation in Gradle after adding or removing function parameters, removing functions (and maybe more) in dependent modulesKT-51854
Add Ktor to gradle performance benchmarkKT-52086
Rename flag 'use-fir' to 'use-k2'KT-52509
Main variant published to Gradle plugin portal uses unshadowed artifactKT-52392
Gradle: 1.7.0 does not support custom gradle build configuration on Windows OSKT-32805
KotlinCompile inherits properties sourceCompatibility and targetCompatibility which breaks Gradle's incremental compilationKT-52189
Provide Gradle Kotlin/DSL friendly deprecated classpath property in KotlinCompiler taskKT-51415
Confusing build failure reason is displayed in case kapt is used and different JDKs are used for compileKotlin and compileJava tasksKT-52187
New IC can not be enabled in an Android project using kaptKT-51898
Upgrading Kotlin/Kotlin Gradle plugin to 1.5.3 and above breaks 'com.android.asset-pack' pluginKT-51913
Gradle plugin should not add attributes to the legacy configurationsKT-34862
Restoring from build cache breaks Kotlin incremental compilationKT-45777
New IC in GradleKT-51360
Show performance difference in percent between releasesKT-51380
Add open-source project using Kotlin/JS plugin to build regression benchmarksKT-51937
Toolchain usage with configuration cache prevents KotlinCompile task to be UP-TO-DATEKT-48276
Remove kotlin2js and kotlin-dce-pluginKT-52138
KSP could not access internal methods/properties in Kotlin Gradle PluginKT-51342
Set minimal supported Android Gradle plugin version to 3.6.4KT-50494
Remove kotlin.experimental.coroutines Gradle DSL optionKT-49733
Bump minimal supported Gradle version to 6.7.1KT-48831
Remove 'KotlinGradleSubplugin'KT-47924
Remove annoying cast in toolchain extension method for Kotlin DSLKT-46541
Fail Gradle builds when deprecated kotlinOptions.jdkHome is setKT-51830
Gradle: deprecatekotlin.compiler.execution.strategy
system propertyKT-47763
Gradle DSL: Remove deprecated useExperimentalAnnotation and experimentalAnnotationInUseKT-51374
NoSuchFileException in getOrCreateSessionFlagFile()KT-51837
kotlin-gradle-plugin:1.6.20 fails xray scan on shadowed Gson 2.8.6.KT-51454
KotlinJvmTest is not a cacheable taskKT-45745
Migrate only Kotlin Gradle Plugin tests to new JUnit5 DSL and run them separately on CIKT-47318
Remove deprecated 'kotlinPluginVersion' property in `KotlinBasePluginWrapper'KT-51378
Gradle 'buildSrc' compilation fails when newer version of Kotlin plugin is added to the build script classpathKT-46038
Gradle:kotlin_module
files are corrupted in the KotlinCompile output, and gets cachedKT-51064
Kotlin gradle build hangs on MetricsContainer.flushKT-48779
Gradle: Could not connect to kotlin daemonTools. Gradle. Cocoapods
KT-50622
Cocoapods Plugin: cocoapods-generate does not work correctly with ruby 3.0.0 and higherKT-51861
Custom binary name in CocoaPods plugin isn't respected by fatFramework taskTools. Gradle. JS
KT-52221
Kotlin/JS: failed Node tests are not reported in a standard wayKT-51895
K/JS: Redundant technical messages during JS testsKT-51414
Allow set up environment variables for JS testsKT-51623
Kotlin/JS: Mocha could not failed when external module not foundKT-51503
Update NPM dependency versionsTools. Gradle. Multiplatform
New Features
KT-51386
[KPM] IdeaKotlinProjectModelBuilder: Implement dependenciesFixes
KT-49524
Improve DSL for managing Kotlin/Native binary outputKT-51765
com.android.lint in multiplatform project without android target should not trigger warningKT-38456
MPP with Android source set: allTests task does not execute Android unit testsKT-44227
Common tests are not launched on local JVM for Android via allTests task in a multiplatform projectKT-51946
Temporarily mark HMPP tasks as notCompatibleWithConfigurationCache for Gradle 7.4KT-52140
Support extensibility Kotlin Artifacts DSL by external gradle pluginsKT-51947
Mark HMPP tasks as notCompatibleWithConfigurationCache for Gradle 7.4 using ReflectionKT-50925
Could not resolve all files for configuration ':metadataCompileClasspath'KT-51262
[KPM] IDEA import: Move model builder to KGPKT-51220
[KPM][Android] Implement generic data storage and import pipelineKT-48649
No run task generated for macosArm64 target in Gradle pluginTools. Gradle. Native
KT-47746
Allow customization of the Kotlin/Native compiler download urlKT-51884
Gradle Native: "A problem occurred starting process 'command 'xcodebuild''" when buildingassembleFooXCFramework
task on LinuxTools. Incremental Compile
KT-51546
FIR incremental compilation fails with assertion "Trying to inline an anonymous object which is not part of the public ABI"KT-49780
IncrementalCompilerRunner bug: Outputs are deleted after successful rebuild following fallback from an exceptionKT-44741
Incremental compilation: inspectClassesForKotlinIC doesn't determine changes with imported constantTools. JPS
KTIJ-17280
JPS: don't use java.io.File.createTempFile as it is not working sometimesKTIJ-20954
NPE at at org.jetbrains.kotlin.metadata.jvm.deserialization.JvmProtoBufUtil.readNameResolver on compiling by JPS with LV > 1.7Tools. Kapt
KT-49533
Make kapt work out of the box with latest JDKsKT-52284
FIR: add error in 1.7.0 branch if run with KaptKT-51463
KAPT: Incremental compilation not working when rerunning unit testsKT-51132
KAPT: Support reporting the number of generated files by each annotation processorKT-30172
Kapt: Shutdown kotlinc gracefully in case of error in annotation processorTools. Scripts
KT-49173
Add support for nullable types in provided properties and other configuration-defined declarationsKT-52294
[Scripting] Update oudated org.eclipse.aether dependencies to new org.apache.maven.resolverKT-51213
Kotlin JSR223 crashes with "ScriptException: ERROR java.lang.NullPointerException:" if bindings contain one or more null valuesKT-48812
Script: "IllegalStateException: unknown classifier kind SCRIPT" when passing a function reference to a FlowKT-50902
Scripts loaded from the compilation cache ignore theloadDependencies
eval configuration propertyKT-52186
Scripts: Backend Internal error: Exception during IR lowering when using symbol from a dependency inside a functionKT-51731
Script: jsr223 memory leak in spring-boot Fat JarKT-49258
Scripts: method 'void ()' not found with multiple evals using kotlin script JSR223KT-51346
Scripts: "BackendException: Exception during IR lowering" with variable of imported script inside classChecksums
v1.6.21
: Kotlin 1.6.21Changelog
Compiler
KT-51979
"AssertionError: No modifier list, but modifier has been found by the analyzer" exception on incorrect Java interface overrideKT-51893
Duplicated [OVERRIDE_DEPRECATION] on overridden propertiesKT-51927
Native:The symbol of unexpected type encountered during IR deserialization
error when multiple libraries have non-conflicting declarations with the same nameKT-51843
Functional interface constructor references are incorrectly allowed in 1.6.20 without any compiler flagsKT-51672
JVM IR: Inline class mangling issue in interface default methods split across multiple modulesKT-51711
Compiler warning is displayed in case there is 'if' else branch used with elvisKT-49317
"IllegalStateException: Parent of this declaration is not a class: FUN LOCAL_FUNCTION_FOR_LAMBDA" with parameter of suspend type with the default parameterIDE. Native
KTIJ-20819
Native debugging support: "Debug is impossible without lldb binaries required by Kotlin/Native" on "Attach to process"JavaScript
KT-52010
K/JS IR: both flows execute when using elvis operatorKT-51973
KJS / IR overridden properties of inherited interface missingKT-50504
KJS / IR: Transpiled JS incorrectly uses the unscrambled names of internal fieldsTools. Gradle
KT-51837
kotlin-gradle-plugin:1.6.20 fails xray scan on shadowed Gson 2.8.6.Tools. Gradle. Multiplatform
KT-51810
MPP / Gradle: Dependency locking fails with 1.6.20KT-51765
com.android.lint in multiplatform project without android target should not trigger warningChecksums
v1.6.20
: Kotlin 1.6.20Changelog
Compiler
New Features
KT-48217
Add an annotation JvmDefaultWithCompatibility to allow generating DefaultImpls classes if -Xjvm-default=all option is usedKT-49929
[FIR] Support programmatic creation of annotation class instancesKT-49276
Warn about potential overload resolution change if Range/Progression starts implementing CollectionKT-47902
Do not propagate method deprecation through overridesKT-49857
Require Xcode 13 for building Kotlin/Native compilerKT-47701
Support instantiation of annotation classes on NativeKT-46085
Support experimental parallel compilation of a single module in the JVM backendKT-46603
Generate SAM-conversions to Java interfaces extending 'java.io.Serializable' as serializable using java.lang.invoke.LambdaMetafactoryPerformance Improvements
KT-50156
HMPP: Slow frontend/ide performance in OKIO (ExpectActualDeclarationChecker)KT-50073
Performance regression in adapted function referencesKT-50076
Performance regression in super call to an interface member in $DefaultImplsKT-50080
Performance regression in string template with generic property with primitive upper boundKT-50084
Performance regression in concatenation with 'String?'KT-50078
Performance regression in for-in-array loopKT-50039
Performance regression in inner class constructor call with default parametersKT-48784
An anonymous class has fields for variables that are only used in the constructorKT-42010
Generate IINC instruction for postfix increment in JVM_IRKT-48433
JVM_IR don't generate null check on 'this$0' parameter of inner class constructorKT-48435
JVM_IR ConstForLoopBenchmark performance regressionKT-48507
JVM_IR ForLoopBenchmark regressionsKT-48640
Performance regression in 'longDownToLoop' benchmarksKT-29822
Generate specialized bytecode for loops withIndex over unsigned arraysKT-48669
Generate optimizable counter loop for loops over indices of unsigned arraysKT-49444
Possible performance degradation with UInt downTo loopKT-48944
Possible performance regression with comparison of local KFunctionsKT-17111
Eliminate redundant store/load instructions when the value stored is simpleKT-36837
Generate more compact code for for-in-range loop in JVM_IRKT-48947
JVM / IR Possible performance regression with string templatesKT-48931
JVM / IR: Performance degradation with string concatenationKT-36654
Generate more compact bytecode for safe call in JVM_IRFixes
KT-24643
Prohibit using a type parameter declared for an extension property inside delegateKT-51747
MakeKtCallableDeclaration.getContextReceivers
default to preserve compatibilityKT-49658
NI: False negative TYPE_MISMATCH on nullable type withwhen
KT-43493
NI: @BuilderInference prevents compilation error of "Operator '==' cannot be applied to 'Long' and 'Int'"KT-51649
Kotlin/Native: reduce binary size of watchosArm32 and iosArm32 targets by limiting inlining of runtime functionsKT-48626
JVM IR: incorrect behavior for captured for-loop parameter since 1.6.20-dev-723KT-51036
JVM / IR: "NullPointerException: Parameter specified as non-null is null" with synchronized and companion objectKT-51471
Native: incorrect debug information when inheriting suspend fun invoke implementationKT-51352
"ClassCastException: class ScopeCoroutine cannot be cast to class Iterable" caused by coroutines and context receiversKT-51271
"ArrayIndexOutOfBoundsException: Index 3 out of bounds for length 3" with inlining of context functionKT-47084
JVM IR: "AssertionError: inconsistent parent function for CLASS LAMBDA_IMPL" with tailrec function default parameter nested inline lambdaKT-30616
Script: "Don't know how to generate outer expression" for top-level variable reference from static context (companion object, enum)KT-50520
"NPE: containingDeclaration.ac…lDeclarationType.REGULAR) must not be null" with implicit type on self-referencing lambda in a builderKT-51353
IncompatibleClassChangeError: Expected non-static field com.soywiz.korim.color.Colors.BLACKKT-48945
JVM IR: special bridge forget
is not generated in a Map subclassKT-48499
Interface call with an inline/value parameter generates AbstractMethodError after rebuilding the module, but NOT the file.KT-49998
JVM: missing default value for annotation parameter of an unsigned typeKT-49793
JVM:IncompatibleClassChangeError: Expected non-static field
when property delegation uses receiver of another delegated propertyKT-51302
Kotlin/Native 1.6.20-M1 compiler fails because of assertion in NativeAnnotationImplementationTransformerKT-51148
"AssertionError: At this stage there should be no remaining variables with proper constraints" caused by two type parametersKT-50970
Kotlin/Native: use arm instruction set instead of thumb-2 for iosArm32 and watchosArm32 targetsKT-50843
Kotlin/Native: LLVM constant merge pass does not work for Kotlin constantsKT-51157
JVM / IR: "IndexOutOfBoundsException: Index: 1, Size: 1" caused by interface hierarchy and UInt method parameterKT-50498
Exception after analysing an erroneous lambdaKT-50258
equals()
returnsfalse
on the same enum instances if we check it for the second time inwhen
KT-51062
Progressions resolve changing warning isn't reported for Java methodsKT-48544
JVM / IR: "UnsupportedOperationException: Unknown structure of ADAPTER_FOR_CALLABLE_REFERENCE" with callable reference::arrayOf
KT-50978
[Native] Error while building static cache: NoSuchElementException at IrTypeInlineClassesSupport.getInlinedClassUnderlyingType(InlineClasses.kt:341)KT-50977
[Native] Error while building static cache: IllegalStateException: Class CLASS ENUM_ENTRY is not found at KonanIrlinkerKt.findClass(KonanIrlinker.kt:229)KT-50976
[Native] Error while building static cache: IllegalStateException: No descriptor found at DescriptorByIdSignatureFinder.findDescriptorForPublicSignature(DescriptorByIdSignatureFinder.kt:157)KT-51040
Type inference fails on 1.6: "Cannot use 'CapturedType(*)' as reified type parameter" with EnumSet and elvis operatorKT-51080
Line number in mapping for the first instruction is lostKT-49526
JVM IR: Function reference with non-denotable intersection type argument is not inlined and is incorrectly approximatedKT-50399
Error: unexpected variance in super type argument: out@0
KT-50649
JVM IR: ClassCastException when returning Result as generic typeKT-50617
JVM IR: java.lang.IndexOutOfBoundsException "Empty list doesn't contain element at index 0" when class and interface have the same name and extension function is usedKT-50856
SAM conversion generates invalid bytecode for genericsKT-45693
False negative INCOMPATIBLE_TYPES withwhen
with generic subjectKT-49903
JVM IR: InlineOnly optimization leads to behavior change for println with mutating System.outKT-51022
Fix error messages for resolution ambiguity with stub typesKT-51035
PSI2IR: "org.jetbrains.kotlin.psi2ir.generators.ErrorExpressionException: null: KtCallExpression:" caused by recursive call of java functionKT-50797
Implement fix for false negative UPPER_BOUND_VIOLATED with generic typealias using not all type parameters as arguments for underlying typeKT-50878
Usage of contextual declarations from third-party library is allowed without-Xcontext-receivers
KT-49829
Wrong "cast can never succeed" diagnostic with builder inferenceKT-49828
Improve builder inference diagnostics with overload resolution ambiguityKT-50989
CCE cause by EmptySubstitutor in ResolutionWithStubTypesCheckerKT-49729
Implement deprecation warning for private constructors of sealed classesKT-49349
Implement deprecation for invalid if as expression in rhs of elvisKT-46285
[SEALED_SUPERTYPE_IN_LOCAL_CLASS] Error message isn't adopted to local objects and sealed interfacesKT-49002
Allow OptIn marker on override if base class has the same markerKT-48899
Report warnings on overrides with wrong types nullabilityKT-49461
Implement prohibitation of access to members of companion of enum class from initializers of entries of this enumKT-49754
Kotlin/JS:@JsExport
on enum class reports NON_EXPORTABLE_TYPE warningKT-49598
Misleading error message "Using @JvmRecord is only allowed with -jvm-target 15 and -Xjvm-enable-preview flag enabled"KT-44133
Inline classes: class literal in annotation arguments uses underlying typeKT-47703
ClassCastException: Programmatically created annotation can't hold Array<KClass<*>>KT-47549
JVM / IR: Null argument in ExpressionCodegen for parameter VALUE_PARAMETER CONTINUATION_CLASS caused by suspend function inside "fun interface" in another fileKT-50120
HMPP: False positive [NO_VALUE_FOR_PARAMETER] for expect function usagesKT-49864
JVM IR: NoSuchMethodError calling default interface method with inline class return type in -Xjvm-default=all modeKT-49812
JVM / IR: "java.lang.VerifyError: Bad return type" when using Result type attribute + extension function with same nameKT-49936
Extension property in a data class with the same name as the constructor parameter leads to incorrect component function being resolved and generatedKT-48181
"ISE: Null argument in ExpressionCodegen for parameter VALUE_PARAMETER" on creating instance of kotlin.MetadataKT-50215
VerifyError caused by missing cast after is check in whenKT-49977
"Parameter specified as non-null is null" when inline class implements interface method with default parametersKT-50385
DUPLICATE_LABEL_IN_WHEN is reported on incorrect branchesKT-49092
JVM: ArrayIndexOutOfBoundsException on compiling call withif
expression and TODO() argumentsKT-48987
JVM / IR: Smartcast, which never succeed, crashes the compilerKT-50277
Invalid bytecode generated for inline lambda in suspend functionKT-50219
FIR DFA/CFA: no smart cast after null check and assignmentKT-44561
FIR DFA: extract non-null info from comparison against variable with initial constant valueKT-44560
FIR DFA: propagate non-null info to original variables in not-null assertion or cast expressionKT-50278
FIR: accidental resolve to inaccessible value parameterKT-47483
JVM IR: "NoSuchElementException: Sequence contains no element matching the predicate" on compiling Array instantiation with TODOKT-50304
EXC_BAD_ACCESS at IntrinsicsNative.kt starting coroutine on object with suspend fun as supertypeKT-49765
JVM: ClassCastException when trying to add object to EmptyListKT-46879
"AssertionError: Stack should be spilled before suspension call" with Flow and reified typeKT-50172
"AssertionError: Not a callable reflection type" on local function reference with the same name as local variableKT-49443
JVM IR, Script: "IllegalStateException: No mapping for symbol: VALUE_PARAMETER INSTANCE_RECEIVER" with constructor call of class that has a top-level extension function callKT-50193
Garbage collection is not working the same way after jvm-ir-backend changeKT-19424
Compilation exception for script with property delegate calling operator invoke on an objectKT-43995
Script: "IllegalStateException: No mapping for symbol: VALUE_PARAMETER INSTANCE_RECEIVER" if companion object initializer calls method on listKT-47000
Allow graceful migration to -Xjvm-default=all-compatibility by allowing to inherit from interfaces even in the old (-Xjvm-default=disable) modeKT-50180
FIR: not enough information to infer type variable for definitely not null typeKT-50163
FIR: ISE unsupported compile-time value BLOCK on complex annotationsKT-50171
JVM IR: "UninitializedPropertyAccessException: Parent not initialized: IrVariableImpl" on SAM-converted property setter reference with Double parameter inside lambdaKT-50140
Internal error on explicit string concatenation of generic type value with 'String' upper boundKT-49992
Anonymous object should not have access to private members from supertypesKT-49973
Check existing of default error message for all diagnosticsKT-50019
Property delegated to callable reference: "ISE: Local class should have its name computed in InventNamesForLocalClasses" with -Xno-optimized-callable-referencesKT-49645
JVM / IR: "IllegalStateException: Local class should have its name computed" caused by default suspend function in interface and value classKT-50028
Incorrect implicit casts from UnitKT-49615
JVM / IR: "Exception during IR lowering" with list of value classes with non-trivial constructor inside suspend lambdaKT-49127
FIR: smart cast is not performed after comparisonKT-48708
Incorrect cast from Unit to IntKT-48376
FIR: False positive UNITIALIZED_VARIABLE after try/finally with return from tryKT-48113
FIR: (false) positive EQUALITY_NOT_APPLICABLE for intersection with platform typeKT-48305
FIR: incorrect raw type castKT-48378
FIR: synthetic accessor lowering should not attempt to modify other filesKT-48634
FIR: false property-setter-function resolve cycleKT-48621
FIR: SyntheticAccessorLowering should not attempt to modify other files for protected JvmFieldKT-48381
Invalid LLVM module: verification failure of createInlineClassInArgumentPosition.ktKT-48527
Native: top-level properties in files with@Test
functions are initialized eagerly even if lazy initialization is enabledKT-48559
IllegalArgumentException: Unexpected super type argument: *@ 0
during IR loweringKT-48687
IR dump mismatch after deep copy with symbols in IR text testKT-44811
[FIR] Exception in body resolve of new contractsKT-48363
FIR behaves differently in case of resolution between classifier and top-level propertyKT-48801
"AssertionError: Stack should be spilled before suspension call" with Flow and crossinlineKT-46389
JVM / IR: "ClassCastException: class IrGetValueImpl cannot be cast to class IrConst" with inheritance of supertypes member functions with similar signaturesKT-47797
Regression during migration to 1.6 in compilerKT-47987
Can't infer a postponed type variable based on callable reference receiver typeKT-48446
"IllegalStateException: IrErrorType (getErasedUpperBound)" caused by suspend function referenceKT-48651
Collect intermediate annotations during type expandingKT-48754
JVM IR: in EnclosingMethod leads to IncompatibleClassChangeError on Android 5.0KT-45034
Use the new type inference for top-level callable referencesKT-49001
OptIn marker should spread from class to its members, taking into account real dispatch receiver typeKT-49038
Generics are discriminated during callable references resolution (false negative)KT-48954
JVM IR: IllegalAccessError when using Java method reference in constructorKT-48284
JVM / IR: "IllegalStateException: Function has no body: FUN STATIC_INLINE_CLASS_REPLACEMENT" caused by inline member toString of value class and string interpolationKT-49053
JVM / IR: "AssertionError: Unbound symbols not allowed" on inheriting a protected Java method that returns a package private class from a differently-named fileKT-49106
JVM: infinite recursion with overridden default suspend interface method where override calls superKT-45345
FIR DFA:FirDataFlowAnalyzer
seems to add wrong type constraints for type parametersKT-44513
FIR DFA: extract non-null info from x?.y!!KT-44559
FIR DFA: propagate non-null info from not-null assertion (!!)KT-49073
FIR: REDUNDANT_MODIFIER and DEPRECATED_MODIFIER_PAIR should be warningsKT-46371
FIR: Investigate FunctionType -> ExtensionFunctionType coercionKT-49078
FIR: false positive TYPE_VARIANCE_CONFLICTKT-47135
FIR: local class references does not compileKT-48600
NON_TAIL_RECURSIVE_CALL missing for calls inside lambdaKT-48602
NON_TAIL_RECURSIVE_CALL missing for calls with explicit dispatch receiver to a singletonKT-48982
JVM / IR: KotlinNothingValueException caused by function with local objectKT-49087
FIR: false positive REPEATED_ANNOTATIONKT-48648
JVM IR: "AssertionError: Should be primitive or nullable primitive type" with @JvmField generic property with Number upper boundKT-49069
FIR: False positive INAPPLICABLE_JVM_NAME on getterKT-49203
JVM IR: "AssertionError: Unbound symbols not allowed" with lateinit var andplusAssign
operator convention callKT-48993
JVM / IR: "IllegalStateException: Validation failed in file <multi-file facade ...>" using @JvmMultifileClass and one of the symbols in the file exposes a @JvmInline value classKT-48938
FIR: Investigate how priorities should work in case SAM-conversion + type parametersKT-49129
FIR: false positive of INNER_CLASS_OF_GENERIC_THROWABLE_SUBCLASSKT-49076
FIR: false positive "An annotation argument must be compile-time constant" on array of importsKT-49222
FIR: StackOverflow in MethodSignatureMapperKT-49083
FIR erroneously requires default value parameters for override calls when imported from objectKT-49135
FIR: ambiguity between type alias and functionKT-49134
FIR makes no difference between lambda with empty parameter list and without explicit parameter listKT-49301
FIR: Unresolved reference: for object inherited from inner classKT-49070
FIR: ABSTRACT_CLASS_MEMBER_NOT_IMPLEMENTED with type parameter / class conflictKT-49133
FIR: protected java.lang.Throwable constructor is not availableKT-49407
JVM / IR: "java.lang.VerifyError: Bad local variable type" with "Int.mod" inside "Long.mod" and non-trivial argumentKT-44975
SUBCLASS_CANT_CALL_COMPANION_PROTECTED_NON_STATIC: confusing error messageKT-38698
MANY_INTERFACES_MEMBER_NOT_IMPLEMENTED error message: interface is called a "class"KT-45001
Confusing warning message "This class can only be used with the compiler argument" for@OptIn
annotationKT-49411
JVM / IR: NullPointerException during IR lowering with@JvmField
property in loop rangeKT-49260
FIR: make FirBasedSymbol hierarchy to correspond FirDeclaration hierarchyKT-49289
FIR: false positive "return required" for if/else with inlined return in branchKT-49316
JVM / IR: "AssertionError: SyntheticAccessorLowering should not attempt to modify other files!" caused by unreachable code which try to modifyval
from the other packageKT-45915
NoDescriptorForDeclarationException: Descriptor wasn't found for declaration FUN with circular module dependencies in JPSKT-49288
FIR2IR: consider generating all fake override calls properlyKT-42784
FIR2IR: first create fake overrides, then bind overridden to themKT-48816
Kotlin/Native Symbol for public platform.darwin/NSObject|null[100] is unboundKT-49372
JVM / IR: Incorrect work of the loop optimization for mutable variableKT-49356
Native: UnsupportedOperationException: RETURNABLE_BLOCK caused by nested return with boxing and inlineKT-49659
JVM IR: Missing value class mangling in SAM wrappers for fun interfaces from different modulesKT-47101
Incorrect scope for supertypes in companion objectsKT-49360
Invalid LLVM module: "inlinable function call in a function with debug info must have a !dbg location"KT-48430
JVM: ClassCastException with inline class as generic argument for type parameter used in a function typeKT-49575
IllegalArgumentException: Unhandled intrinsic in ExpressionCodegen with circular module dependencies in JPSKT-47669
IR inliner doesn't handle inner class functions referring outer thisKT-48668
JVM IR: "ISE: Value at CLASS must not be null for CLASS" for modules with a dependency cycleKT-49370
JVM / IR: "java.lang.VerifyError: Bad local variable type" with "fun Long.mod" and non-trivial argumentKT-46744
Memory Leaks in Kotlin daemonKT-48806
False-negative USED_AS_EXPRESSION for unreachable catch clausesKT-45972
FIR: type is incorrectly resolved to privateKT-46968
Remove FirCompositeScope from type resolveKT-49072
FIR: accidental resolve to private-in-file typeKT-34822
FIR scopes: deal with nested / inner classes and type parameter priorityKT-49702
Exception from RENDER_WHEN_MISSING_CASES diagnostic on malformed sealed class inheritorKT-49860
[FIR] Add smartcast expression to syntheticsubj
accessKT-49836
Inference fails on lambda and adjacent function expressions with receiverKT-49832
Inference fails on lambda for function types with extension parameterKT-44022
Excessive diagnostics range for DECLARATION_CANT_BE_INLINEDKT-48690
VERSION_REQUIREMENT_DEPRECATION_ERROR message: use current compiler version instead of language versionKT-49609
Incorrect grammar in DATA_CLASS_NOT_PROPERTY_PARAMETER error messageKT-49600
Misspelled error message for non-constructor properties with backing fields in @JvmRecord classKT-49339
Warn about synchronizing on value classesKT-49950
Compilation failed: An operation is not implemented: IrBasedTypeParameterDescriptorKT-43604
Problem with initialization orderKT-23890
Default arguments are not transferred from expect generic member functionsKT-48811
Expect/actual class with default constructor argument values can not be instantiated from a shared source set without passing arguments (with HMPP enabled)KT-48106
FIR: incorrect type inference in provideDelegate receiverKT-48325
Safe call operator prevents object from being garbage collected before leaving functionKT-50004
Linking kotlinx.serialization crashes on Native and JS IR backendsKT-49311
Missing FIR checker for unresolved references in import statementKT-48104
FIR does not see NotNull/Nullable annotations on type argumentsKT-46812
[FIR] Make FIR diagnostics not related to Diagnostics from FE 1.0KT-37374
[FIR] AddCheckInfixModifier
resolution stageKT-38351
FIR: SupportCheckOperatorModifier
resolution stageKT-39614
[FIR] Fix building CFG for different candidates of plus assign callKT-40197
[FIR] Strange Behaviour of Type ArgumentsKT-40362
[FIR] Match type arguments with type parameters of corresponding qualifierKT-40375
FIR: No transformation implicit type -> error type for function value parametersKT-40585
[FIR] Incorrect type for 1/1.0KT-42525
[FIR] Incorrect IR produced for java.lang.Byte.MAX_VALUEKT-43359
FIR: Check applicability type for callable reference with unbound receiverKT-43378
FIR: Support or prohibit via call checker callable references to member extensionsKT-43289
FIR: Correctly load irrelevant override for special built-insKT-44558
Annotation arguments const expr support is missing in FIRKT-45223
[FIR] Ambiguity between explicit and syntheticremoveAt
KT-42215
FIR: callable reference resolution with type constraints at call-sitesKT-45520
FIR: NONE_APPLICABLE for unsafe call to function with overloads instead of UNSAFE_CALLKT-46410
[FIR] Transform of FirAugmentedArraySetCall leaves erroneous nodes in control flow graphKT-46421
FIR: Investigate builder-inference casesKT-43948
FIR: hidden unresolved callable referenceKT-46558
FIR DFA: run once contract is not considered when analyzing lambdaKT-47125
FIR: Do not avoid trivial constraints if they aren't from upper boundsKT-43691
FIR: false positive VARIABLE_INITIALIZER_IS_REDUNDANT with usage in try...finallyKT-37311
[FIR] Support inference of callable references with type variable as expected typeKT-31972
Error type encountered: org.jetbrains.kotlin.types.ErrorUtils$UninferredParameterTypeConstructor@1f5b38c2
(ErrorType).KT-48761
Report NO_TAIL_CALLS_FOUND on 'tailrec' modifier, not on the whole function headerKT-47647
NI: Function reference to Java static method can't compile if passed directly as KFunction1 parameterKT-46995
Fix setters implicit types only resolved on full body resolveKT-46359
Kotlin 1.5 lambda is not Java-serializable by defaultKT-49282
FIR: suspend conversion does not work inside suspend lambdaKT-48953
FIR: implement diagnostic DELEGATE_USES_EXTENSION_PROPERTY_TYPE_PARAMETERKT-38813
FIR: Report INSTANCE_ACCESS_BEFORE_SUPER_CALL diagnostic on receiver usages in secondary constructors headersKT-49657
FIR: accidental override with get:JvmNameKT-49655
FIR: smart cast is not performed after update of var to not-null value in branchDocs & Examples
KT-50866
[Docs] [Kotlin/Native] Support non-NativeActivity Android executablesKT-50220
[Docs] [Kotlin/JVM] New @JvmDefaultWithCompatibility annotation and changes in -Xjvm-default arguments behaviorKT-50844
[Docs][K/JS] KJS / IR: Installation of NPM dependencies should be with ignore-scriptsKT-50831
[Docs][K/JS] Gradle, JS: Ability to persist / reuse yarn.lockKT-51086
[Docs] [Build Tools] Allow to configure additional jvm arguments for 'KaptWithoutKotlincTask`KT-50563
[Docs] [Build Tools] Deprecate kotlin.experimental.coroutines Gradle DSL option and kotlin.coroutines propertyKT-50580
[Docs] [Kotlin/Native] Support instantiation of annotation classes on NativeKT-50874
[Docs] [Language] Add ability to specify generic type parameters as not-nullKT-50564
[Docs] [K/JS] Ensure that @AfterTest is invoked after the@Test
function completes for asynchronous testsIDE
New Features
KTIJ-20169
Link to What's new in a notification about new Kotlin versionPerformance Improvements
KTIJ-20568
Optimize SubpackagesIndexService#hasSubpackagesFixes
KTIJ-13020
New compiler settings are applied only after the project is reloadedKTIJ-21154
StackOverflowError on Companion.extractPotentiallyFixableTypesForExpectedType that causes "Syntax highlighting has been temporarily turned off"KTIJ-20129
Load "@NotNull
T" types from libraries as definitely non-nullable if any module in project loads such types as definitely non-nullableKTIJ-9793
UAST: KotlinAbstractUElement.equals fails for psi-less elementsKTIJ-16203
UAST: Annotating assignment expression sometimes leads to UnknownKotlinExpressionKTIJ-18720
UAST:@Deprecated(level=DeprecationLevel.HIDDEN)
makes method visibility be droppedKTIJ-18039
@Deprecated(level=HIDDEN)
elements return false for isDeprecated()KTIJ-18716
KotlinUMethodWithFakeLightDelegate.hasAnnotation() doesn't find annotationsKTIJ-20220
Kotlin plugin crashes very oftenKTIJ-20308
Syntax highlighting is temporary suspended for file ... due to internal errorKTIJ-6085
ExceptionIncorrect CachedValue...
with KtUltraLightMethodForSourceDeclarationKTIJ-18977
Do not show warningOutdated bundled kotlin compiler
if there are no compatible plugin with newer compilerKTIJ-20253
Consider supporting special highlighting for definitely non-null typesKT-42194
OOME: Java heap space from incremental compilationKTIJ-13019
"Add '-Xopt-in=kotlin.io.path.ExperimentalPathApi' to module untitled1 compiler arguments" only works until the project is reloadedIDE. Completion
KTIJ-20095
Optimize FilterOutKotlinSourceFilesScope#containsKTIJ-16250
Completion of override with return type annotated with TYPE_USE-targeted annotation suggests two duplicate entriesIDE. Debugger
KTIJ-20716
JVM Debugger in common code can't get JVM-specific view on common code and failsKTIJ-18562
JVM debugger: coroutineContext.job causes "Failed to generate expression: KtNameReferenceExpression"KTIJ-20019
MPP Debugger: NSFE “Field not found” on accessing property with explicit getter from common code in Evaluate expression/WatcherKTIJ-19990
MPP Debugger: Evaluate expression for some stdlib in common source set fails with Method threw 'java.lang.ClassNotFoundException' exception.KTIJ-20929
MPP Debugger: in a project with single JVM target evaluation of expect function fails with 'NoSuchMethodError' exception in common contextKTIJ-20956
Debugger: coroutine debugger fails to load sometimesKTIJ-20775
MPP Debugger: Evaluate expression for actual typealiases in jvm source set fails with Method threw 'java.lang.ClassNotFoundException' exception.KTIJ-20712
MPP Debugger: evaluator fails when evaluating expect functionKTIJ-19344
K/N debugger shows all types as ObjHeader in variable view.IDE. Gradle Integration
KTIJ-20097
HMPP+Android Project that depends on pure Android Lib fails to import in IDEAKTIJ-20756
MPP targeting Android and JVM reports 'The feature "multi platform projects" is experimental and should be enabled explicitly'KTIJ-20745
Gradle: NSEE “Key main is missing in the map.” on project import in AS 212 + Kotlin 1.6.20KT-47570
MPP, IDE: kotlin-test-common leaks into dependencies of platform-specific source setsKTIJ-19541
IDE: Kotlin Facets aren't created for Gradle projects added viaincludeBuild
KT-48882
MPP IDE import: Failing cinterop Gradle tasks shall not fail importKTIJ-18135
MPP, IDE: False positive "No value passed for parameter" in CommonTest when expect declaration has default value and actual does notIDE. Inspections and Intentions
New Features
KTIJ-12437
Add inspection to detect redundant (obsolete, unused)@OptIn
annotationsKTIJ-15780
Add quickfix for migration of Experimental -> RequiresOptInKTIJ-18865
Provide quick fixes for OptIn markers on forbidden targetsKTIJ-18439
Make suggestions for applying opt-in quickfixes more distinctKTIJ-19985
Provide quickfix for SAFE_CALL_WILL_CHANGE_NULLABILITY diagnosticFixes
KTIJ-20550
False positives in "Unnecessary@OptIn
annotation" inspectionKTIJ-20993
Quick-fix for NULLABILITY_MISMATCH_BASED_ON_JAVA_ANNOTATIONS leads to unreachable codeKTIJ-20557
Quick fix to addAny
as an upper bound for type parameter to make it non-nullableKTIJ-20827
Process type mismatch compiler warnings to provide a corresponding quick fixKTIJ-12578
"Make abstract" quick fix for missing abstract members implementations could warn of potentially broken inheritanceKTIJ-20425
Quick fix to replace@NotNull
parameter typeT
with a definitely non-nullable typeT & Any
KTIJ-19997
Inspection "Possibly blocking call in non-blocking context could lead to thread starvation" suggests "Wrap call in 'withContext'" resulting in red codeKTIJ-18291
Quickfix "Add@OptIn()
annotation" adds the annotation to primary constructor when invoked on primary constructor parameterKTIJ-19512
Implement IDE support for new rules of deprecation inheritanceKTIJ-20156
Exception when applying 'Convert to with'KTIJ-20290
Forbid "move to constructor" intention if class contains secondary constructorKTIJ-20288
Forbid "move to constructor" intention for actual classes with actual constructorKT-49736
Introduce import alias fails when qualifier is unresolvedKTIJ-18743
"Redundant nullable return type" applied onactual
method doesn't change the signature ofexpect
KTIJ-12343
Inspection "Sealed sub-class has no state and no overridden equals" is applied incorrectly to expect/actual declarations of sealed classes with nested subclassesKTIJ-19406
The "Add@OptIn(...)
" quick fix does not shorten the annotation when adding an argument to the existing annotationKTIJ-12351
generate equals & hashCode() by identity
intention generates incompilable code for multiplatform project modulesKTIJ-13227
Forbid "move property to constructor" for actual classes with actual constructor having at least one parameter alreadyKTIJ-11328
No quick fixes are suggested for annotation from experimental API used with file targetKTIJ-14427
Meta-annotation value isn't updated for all the corresponding parts of a multiplatform annotationKTIJ-19735
NSME org.jetbrains.kotlin.idea.quickfix.KotlinSingleIntentionActionFactory org.jetbrains.kotlin.idea.quickfix.RemoveModifierFix on IJ212 + Kotlin masterIDE. Navigation
KTIJ-18145
IDE freeze on 'Show Usage'IDE. Refactorings. Extract Function
KTIJ-10026
Refactor / Extract function: Adds unnecessary nullability annotations for parameters coming fromNotNull
orNullable
Java methodsKTIJ-15823
Refactor / Extract Function: resulted declaration gets no@OptIn
from original function when necessaryIDE. Refactorings. Move
KTIJ-5661
[Tests] MoveRefactoring: Fix ignored incorrect tests of crossmodule declaration movingIDE. Wizards
KTIJ-19232
New project wizard: delete MPP Mobile-Library and Application templatesKTIJ-20878
Unable to create project with Kotlin Project Wizard when JDK 17 is used.KTIJ-20244
Compose MPP project from wizard requires minCompileSdk=31KTIJ-20781
Update kotlin-wrappers version in wizardJS. Tools
KT-47387
KJS: Support Apple Silicon for node distrib downloadJavaScript
New Features
KT-44494
KJS / IR: Allow enum classes to be exportedKT-43224
KJS: Allow using inline classes in external typesKT-35100
Make Char inline class in K/JSKT-42936
KJS IR: Support js-code test directives similar to legacyKT-47525
KJS / IR: Support protected members in d.ts generationKT-50110
KJS / IR: Enable properties lazy initialization by defaultPerformance Improvements
KT-46443
KJS / IR: ImproveCharArray
andChar
performanceKT-45665
KJS / IR:equals
on inline value classes is boxedKT-43644
KJS / IR: Avoid creating lambda classesFixes
KT-51685
KJS / IR: TypeError: collection.iterator_jk1svi_k$ regression in Kotlin 1.6.20-RC2KT-51523
KJS IR: "Uncaught TypeError: a._get_length__2347802853_w7ahp7_k$ is not a function"KT-51700
KJS / IR: Compiler uses wrong function with ListKT-51222
KJS / IR: "RangeError: Maximum call stack size exceeded": Default function overloads marked with @JsExport are brokenKT-45054
KJS: Export secondary constructors as class static methodsKT-37916
KJS: .d.ts generation not working for enum classesKT-48199
KJS / IR: Improve error message for linkage problemsKT-51030
KJS / IR: internal class that implements public interface is missing gettersKT-45434
KJS: "WRONG_EXPORTED_DECLARATION" when usingJsExport
on interfacesKT-50934
KJS / IR: Re-export all JS-exports from the main module for the multi-module modeKT-45620
KJS / IR: Remainder of division ofInt.MIN_VALUE
by -1 is negative zero (-0)KT-44981
KJS / IR crashes onkotlin.js.js
calls with complex constexprKT-41964
KJS IR: Reference to local variable and parameter from js fun could be broken unexpectedlyKT-50682
Kotlin/JS: IR + IC: TypeError "Cannot read properties of undefined" when properties from different sources refer one another in initializersKT-50175
Kotlin/JS, IR: with incremental compilation top level properties initialization is not lazyKT-40236
KJS: IR. Invalid override for external field with@JsName
KT-46525
KJS / IR: Generate context-dependent names for lambdas and object expressionsKT-49779
KJS / IR: Exported abstract class implementing interface not export interfaces member in d.tsKT-49773
KJS / IR: Exported enum implementing interfaceKT-41912
KJS / IR: generates invalid defineProperty methods for class hierarchiesKT-46225
KJS IR: tailrec function with capturing lambda in default parameter value leads to UninitializedPropertyAccessException at compile timeKT-50528
Kotlin/JS: IR + IC: TypeError: "combined.get_icpjjy_k$ is not a function" for code callingGlobalScope.launch {}
KT-50512
KJS / IR: IC failed with const val in inline funKT-49738
Ensure that @AfterTest is invoked after the@Test
function completes for asynchronous testsKT-45542
KJS / IR: "IllegalStateException" for method with default argument in expect classKT-50464
KJS IR: Functions with optional parameters and stable names are exported without@JsExport
KT-43374
KJS / IR: "class org.jetbrains.kotlin.js.backend.ast.JsIf cannot be cast to class org.jetbrains.kotlin.js.backend.ast.JsExpressionStatement" caused byif-else
expression insidewhen
KT-20791
ushr Behavior differs in Javascript and Java targetsKT-49844
KJS / IR: "IllegalStateException: IrSimpleFunctionSymbolImpl is already bound" with callable referenceKT-46961
KJS / IR: "IllegalStateException: Can't find name for declaration" when external object contains enum classKT-43191
KJS / IR: static companion field is not static in d.tsKT-39891
[KJS / IR] String interpolation and byte shift round Long valueKT-50040
JS IR: "Function must be an accessor of corresponding property" exception on private properties with getter in an exported classKT-49878
Kotlin/JS, IR: incremental compilation fails with CCE: "class StageController cannot be cast to class WholeWorldStageController"KT-46202
KJS / IR: "IllegalStateException" on exported value classKT-42039
KJS / IR: JsQualifier annotation can cause conflicts with built-in functionsKT-39364
KJS: Can't export sealed class/object with subclasses inside the body to typescript definitionKT-47360
KJS / IR:js()
function with string valKT-47376
KJS / IR: Incorrectd.ts
generation for sealed classesKT-47767
KJS / IR: "IllegalStateException" with inline function with several lambda invocation declared through typealiasKT-47342
KJS / IR: "StackOverflowError" onInlinerTypeRemapper.remapTypeArguments
KT-46218
KJS / IR: Incorrect result for localtailrec
function called from capturing inline lambdaKT-45056
KJS / IR: Inconsistentordinal
property value for enum classesKT-47096
KJS / IR:Console.log
introduces spaces between each characterKT-47516
KJS / IR: Wrong behavior when trying to access property in enum entryKT-47806
KJS / IR: "IllegalStateException" with invocation of extension function with generic and lambda parameter onString.Companion
KT-49225
KJS: Default value for value class parameter is not consideredKT-49326
KJS / IR: Overridden properties should not be exportedKT-49363
KJS / IR: Nested declarations inside exported object are not exportedKT-49300
KJS: Source map generator leaks source files descriptors when source embedding is enabledKT-40525
KJS IR: investigate issues with using kotlin-wrappersKT-50197
KJS IR: using APIs in different packages but with same method name generates clashesKT-45958
KJS: Line breaks are missing injs
files after If-expressionKT-40213
KJS: fix and "unmute" cases from .../nonReifiedTypeParameters/ "muted" while fixing KT-38771KT-50152
Kotlin/JS: with incremental compilation browserRun / nodeRun produce no outputKT-50315
Kotlin/JS: building project with some dependencies fails: IAE: "Duplicate definition"KT-50203
JS IR BE: new IC for loweringsKT-43250
KJS / IR: "Can't find name for declaration FUN" with Json#encodeToString as function referenceKT-46992
KJS / IR: Incorrect boxing of inline classes returned by crossinline suspend lambdasKT-49776
KJS / IR: inliner doesn't handle inner class functions referring outer thisKT-49849
KJS / IR: Access of exported member properties should be by its stable nameKT-49850
KJS / IR: Member properties in exported class should be getter/setter in d.tsLanguage Design
KT-19423
Script: reference from class to script top-level member is incompilableKT-21197
Support cross platform common implementationsKT-42435
Prototype multiple receiversKT-48385
Deprecate confusing grammar in when-with-subjectKT-49542
FIR: Smart cast may lead to inconsistent inference resultKT-23727
Internal declarations from other module in star imports should have lower priority than public declarations from default importsKT-50251
Support language version 1.3 in Kotlin 1.6.20KT-17765
Ambiguity between SAM adapters when one SAM interface is sub type of anotherKT-10926
False overload resolution ambiguity when both vararg and collection matchKT-41214
JDK 17: Emit PermittedSubclasses attribute when compiling sealed classesLibraries
KT-44089
Java version checking doesn't work on AndroidKT-50033
Some packages of kotlin-stdlib with public API are not exported in module-infoKT-48367
Usingsynchronized
on captured object leads to slow JVM executionKT-49721
KJS: Regex("\b").findAll yields infinite sequence when a zero length match is found before a surrogate pair (e.g. emoji)Native
New Features
KT-49463
--dry-run flag for llvm_builder/package.pyFixes
KT-51359
Native: the compiler doesn't work on macOS 12.3 BetaKT-49144
Kotlin/Native executable early segmentation faultKT-49348
KONAN_NO_64BIT_ATOMIC does not guard Kotlin_AtomicLong_addAndGetKT-42500
KLIB: K/N compiler cannot link with a library with incorrect symbol in the name or the pathKT-49395
K/N: After 1.5.20, compiling code includingKSuspendFunction3
to framework leads to "Assertion failed at parametersAssociated"KT-49967
Kotlin iOS regex issueKT-49873
Native does not sort Strings correctlyKT-49347
androidNativeArm32 binaries crash when using atomic operationsKT-49597
Kotlin/Native: Exporting the Arrow library into the framework causes StackOverflowError in the Devirtualization phaseKT-49790
"Undefined symbols" error when linking project with kotest 5.0.0.RC and Kotlin 1.6Native. Build Infrastructure
KT-48625
Native: distribution doesn't contain sources for kotlin.testNative. C Export
KT-47828
Kotlin/Native: Kotlin exception is not filtered out on interop border when producing a dynamic library with compiler caches enabledNative. C and ObjC Import
KT-35059
Better "could not build module" cinterop reportKT-49768
Kotlin/Native: Add -Xoverride-konan-properties to cinterop.Native. ObjC Export
KT-47399
Kotlin Native - Objective-C with Swift 5.5 Async Function Needs Returning KotlinUnitKT-48282
Kotlin sealed class roots and abstract classes within sealed hierarchies have their constructors exposed to Objective-C/SwiftKT-46866
Memory consumption / performance of Kotlin classes with String property in KMP project on iOS SwiftNative. Platform Libraries
KT-50045
Kotlin/Native: Re-enable disabled Hypervisor frameworkKT-47331
Kotlin/Native: support Xcode 13 SDKsNative. Platforms
KT-48078
Native: Support non-NativeActivity Android executablesNative. Runtime
KT-48424
Support resolving source locations using libbacktraceKT-51586
SIGSEGV on worker7 testKT-50491
Kotlin/Native: Deadlock in the Ktor server tests with the new memory managerNative. Runtime. Memory
KT-50879
Kotlin/Native: Stabilize Concurrent Sweep GCKT-50948
Kotlin/Native: Concurrent Sweep GC hangs on Windows in GCStateHolder::waitEpochFinished/waitScheduledKT-49497
iOS Swift "runtime assert: Must be positive" and "runtime assert: cycle collector shall only work with single object containers"KT-50026
Kotlin/Native: Make AtomicReference behave like FreezableAtomicReference with the new MMKT-49013
Kotlin/Native: Correctly switch thread state to native for spin locksNative. Testing
KT-48561
Test sideEffectInTopLevelInitializerMultiModule fails with new MMReflection
KT-50198
Reflection: NPE fromkotlin.jvm.internal.Intrinsics.areEqual
with SpockTools. Android Extensions
KT-50784
kotlin-android-extensions produces unbound symbol under_$_findViewCache
KT-50627
NullPointerException when using kotlin-android-extensions synthetic after updating Kotlin to 1.6.10KT-50887
kotlin-android-extensions plugin breaks whenpackage
attribute missing from AndroidManifest.xmlTools. CLI
KT-51309
Add JVM target bytecode version 18KT-48027
"Module ... cannot be found in the module graph" with module-info in META-INF/versionsKT-50695
Compiling into IR backends with language version 1.3 is not rejectedKT-46329
Deprecated-Xjvm-default
values are not reportedKT-51025
JVM CLI compiler takes class file from classpath instead of input java source fileKT-50889
AnalysisHandlerExtension multiple round execution is broken on Kotlin/MultiPlatform withexpectActualLinker=true
flagKT-48417
CLI: boolean -X arguments accept a value after '=' which is ignoredKT-11164
Allow running class files with '.class' extension in 'kotlin' scriptKT-46171
NoClassDefFoundError produced when running kotlin scriptTools. Commonizer
KT-48568
[Commonizer] timespec properties are not commonized in kotlinx.coroutinesKT-46257
MPP: Stdlib included more than once for an enabled hierarchical commonizationKT-49735
[Commonizer] :commonizeNativeDistribution fails for projects with two or more same native targetsKT-48856
MPP: Unable to resolve c-interop dependency for test compilation in an intermediate source set with the only platformKT-48288
[Commonizer] platform.posix.timespec.tv_sec not commonized in OKIOKT-47574
[Commonizer] TypeAliasTypeCommonization: Properly substitute underlying type argumentsKT-48221
MPP: Too few targets specified if platform test source set depends on mainKT-47100
[Commonizer] Commonize underlying type-alias typesTools. Compiler Plugins
KT-50718
Unable to serialize an object with a generic fieldKT-50764
Kotlin 1.6.10 custom serializers for a generic type receive the unit serializer on jvmKT-46444
JVM IR, serialization: "AssertionError: No such value argument slot in IrConstructorCallImpl: 0" with KSerializer of ClosedRangeTools. Daemon
KT-47522
Provide reasonable resolution strategy for OutOfMemoryError during compilationKT-51116
OOM user-friendly message isn't displayed if there is main exception caused by out of memoryTools. Gradle
New Features
KT-48620
Add build information into Gradle build scanKT-41689
Support statistics for Configuration CacheKT-49299
Add more flexible way for defining Kotlin compiler execution strategyKT-21056
Kotlin Gradle Plugin tasks execution should be parallelized by defaultPerformance Improvements
KT-50664
Compile speed regression going from Kotlin 1.5.31 to 1.6.10 for incremental changes when Java class in a dependent child module w/ kapt is modified w/o a method/class signature changeKT-48884
Configuration performance regression in Kotlin Gradle plugin 1.5.30KT-49782
Improve compilation task outputs snapshot performanceFixes
KT-51501
Gradle: 'java.lang.NoClassDefFoundError: com/gradle/scan/plugin/BuildScanExtension' on 1.6.0-RC when applying Enterprise Plugin from initscriptKT-51588
Restoring from build cache breaks Kotlin incremental compilationKT-50620
Gradle Kotlin Plugin crashes in CI due to hostname resolving issueKT-49921
Setup basic release performance regression testsKT-51177
After updating from KGP 1.5.30 to 1.6.10, KotlinCompile is non-incremental given an Android resource changeKT-48134
Debug log level causes build cache missKT-50719
Kotlin Gradle Plugin may hang on writing statisticsKT-48849
Cache miss due to empty directories inKotlinCompile
inputsKT-49014
Disable Explicit API is not possibleKT-48408
Build may fail with strict JVM target validation mode when project has no Kotlin sourcesKT-49107
Configuration cache: undeclared kotlin.caching.enabled system property readKT-50369
Deprecate kotlin.experimental.coroutines Gradle DSL option and kotlin.coroutines propertyKT-48046
Gradle Throws Exception From Kotlin Plugin:destinationDir must not be null
KT-50037
Kotlin compile task registers more than one task action and their order of execution is counter-intuitiveKT-49772
Kotlin in-process compilation does not release file handlesKT-47215
KJS: "UninitializedPropertyAccessException: lateinit property fileHasher has not been initialized" when runningkotlinNpmInstall
orrootPackageJson
locallyKT-46406
Remove 'kotlin.parallel.tasks.in.project' build propertyTools. Gradle. JS
Performance Improvements
KT-49037
KJS / Gradle: Configuration cache usage on large projects lead to high memory consumption by Gradle daemonFixes
KT-51060
KJS / IR: Incorrect order of libraries with ICKT-49061
KJS / Gradle: Custom package.json handlers break configuration cacheKT-35640
Kotlin/JS: Gradle: DCEdevMode = true
setting has no effect on incremental buildKT-49095
KJS / Gradle: KotlinJsTest tasks increase configuration cache state size depending on number of modules in projectKT-49253
KJS / Gradle: Error while evaluating property 'filteredArgumentsMap' of task ':compileProductionExecutableKotlinJs'KT-49902
Kotlin/JS: Gradle: with --debug it still runs yarn without --ignore-scriptsKT-49808
KJS / Gradle: NPE when running node.js Mocha tests with configuration cache reuseKT-49530
KJS: Update Node.JS and YarnKT-50930
KJS / IR: Incremental compilation cache building not consider multiple artifactsKT-50485
KJS / IR: Enable per-module by defaultKT-49445
KJS / IR: "AssertionError: Built-in class kotlin.Unit is not found" 1.5.31 fails on consuming artifacts built with 1.6.0KT-38040
Make Chrome Headless use "--no-sandbox" (configurable) - for DockerTools. Gradle. Multiplatform
KT-46198
[Commonizer] c-interop commonization: Support publishing libraries compiled with commonized c-interop librariesKT-41641
MPP: NoSuchElementException: "Collection is empty" when android library is added butandroid()
source set isn'tKT-50567
commonizeNativeDistribution fails when enableGranularSourceSetsMetadata is set to trueKT-50592
[Gradle][MPP] Mitigate isolated KGP classpath issuesKT-51176
CInteropCommonization: Warn users about disabled cinterop commonization when cinterops are present in hmppKT-49089
An annotation class annotated with @OptionalExpectation can not be used in another module with HMPP enabledKT-48818
False positive warning about usedenableDependencyPropagation
flag with enabled hierarchical mpp by defaultKT-49596
Composite Metadata Jar: Read location of cinterops from KotlinProjectStructureMetadata fileKT-41823
Default arguments not work in iosMain metadata with enableGranularSourceSetsMetadataKT-50574
Only enable cinterop metadata transformation when 'kotlin.mpp.enableCInteropCommonization' is setTools. Gradle. Native
New Features
KT-47633
Accept version when configuring cocoapods for kotlin/nativeKT-42630
CocoaPods Gradle plugin: Allow customization of podspec propertiesKT-48553
Kotlin/Native: use Gradle Shared Build Service to read konan.propertiesKT-47529
Read list of opt-in cacheable native targets from konan.propertiesFixes
KT-49330
commonizeNativeDistribution: "ClassCastException: KotlinJvmProjectExtension_Decorated cannot be cast to class org.jetbrains.kotlin.gradle.dsl.KotlinProjectExtension"KT-49484
Kotlin/Native: XCFramework should include dSYM files for release artifactsKT-47768
Gradle MPP plugin: K/N targets break task configuration avoidance for assemble taskKT-49971
Make 'embedAndSignAppleFrameworkForXcode' task visible for usersKT-43815
[CocoaPods Plugin] Pod name cannot be changedKT-50105
Usage of XCFramework and cocoapods plugin leads to error in prepareKotlinBuildScriptModel taskKT-42105
Multiplatform Cocoapod kotlin plugin doesn't support repo distributionKT-48808
XCFramework task fails when using static debug frameworksKT-42755
Cocoapods plugin using backslashes on WindowsTools. JPS
KT-51434
Language version 1.7 is absent in Kotlin Compiler settingsKT-48399
Internal Error: Unknown version of LookupSymbolKeyDescriptor=-6KT-49177
JPS: Kotlin compiler doesn't recompile file that references Java constant in class bodyKT-46506
JPS: Kotlin compiler doesn't recompile file that references Java constantKT-47909
UtilsKt.recordPackageLookup is slowKT-47857
Class loaders clash when building kotlin project with FIR with JPS without daemonKT-45773
Improve quality of JPS incremental compilationTools. Kapt
KT-41456
Kotlin compilation failure after successful kapt causes invalid incremental buildsKT-48402
Kapt throws "Fatal Error: Unable to find package java.lang in classpath or bootclasspath" with JDK 16 and Kotlin 1.5.30KT-48617
Cache miss due to empty directories in KaptGenerateStubsTask inputsKT-48450
Allow to configure additional jvm arguments for 'KaptWithoutKotlincTask`KT-32596
kapt replaces class generated by annotation processor with error.NonExistentClass when the class is used as an annotationKT-48826
Deprecate 'kapt.use.worker.api' propertyKT-47002
Kapt: warning mentions non-effective propertykapt.includeCompileClasspath
Tools. Maven
KT-50306
Configured plugin dependencies should be available in kotlin-maven-plugin scriptsTools. Parcelize
KT-19853
Parcelize: CREATOR field should be available from codeTools. REPL
KT-20488
REPL: java.lang.InternalError: "Enclosing constructor not found" for class reference on an anonymous object literalTools. Scripts
KT-48758
Kotlin scripting: introduce a link from evaluation configuration to the compilation oneKT-48414
Script: get location of the script.main.kts fileKT-40497
“Cannot inline bytecode built with JVM target 1.8 into bytecode that is being built with JVM target 1.6.” for running script without specified jvm-targetKT-49329
Kotlin scripts are compiled with jvmTarget 1.8 by default and in many scenarios there is no way to redefine it, which lead to inlining errors e.g. with JDK 17Tools. Wasm
KT-49893
Don't publish wasm targets withorg.jetbrains.kotlin.js.compiler
attributev1.6.10
: Kotlin 1.6.10Changelog
Android
KT-49798
[MPP] [Android] AGP 7.1.0+ android target publications leak 'AgpVersionAttr' attributeCompiler
Performance Improvements
KT-49821
Optimize LazyClassMemberScope#getContributedDescriptors: use nameFilterFixes
KT-49833
java.lang.NullPointerException caused by accidental newline in package directiveKT-49838
Type inference fails on 1.6.0: Cannot use 'CapturedType(*)' as reified type parameterKT-49752
Regression in method return type inference: "IllegalStateException: Expected some types"KT-49876
Kotlin/Native: cross-compilation of Linux static library is broken in Windows in 1.6.0KT-49792
Atomicfu: "standalone invocation of kotlinx.atomicfu.AtomicInt::compareAndSet that was not traced to previous field load" with suspend functionKT-49834
Coroutine method transformer generates invalid locals table.KT-49441
Support friend modules in Kotlin NativeKT-49248
K/N: Symbol withIrSimpleFunctionSymbolImpl
is unbound after 1.5.30KT-49651
Inconsistent compiler APIs for repeatable annotationsKT-49168
JVM IR: IndexOutOfBoundsException with fun interface + suspend function as SAM methodKT-49573
No annotated types, compiler emits "Annotated types are not supported in typeOf"KT-47192
Build Fake Overrides for internal members of classes from friend moduleKT-48673
IR: IllegalStateException for usage of internal member declared in a superclass in another moduleJavaScript
KT-47811
KJS / IR: "ClassCastException" when using suspend function inconsole.log
Language Design
KT-49868
Support language version 1.3 in Kotlin 1.6.10Libraries
KT-50173
Different behavior of Regex escapeReplacement function in JVM and JSTools. Android Extensions
KT-49799
NullPointerException when using kotlin-android-extensions synthetic after update to Kotlin 1.6.0Tools. Compiler Plugins
KT-50005
jvm-abi-gen plugin: do not change the declaration order in generated jarsKT-49726
JVM/IR: "IllegalArgumentException: Null argument in ExpressionCodegen for parameter VALUE_PARAMETER": Serialization with sealed class as type parameterTools. Gradle
KT-49835
Android consumers can't resolve Android debug variants of published MPP libraries published with Kotlin 1.6.0 & Gradle 7.0+KT-49910
Incremental compilation speed regression in 1.6.0 for Android projectsTools. Gradle. JS
KT-49109
KJS / Gradle: Configuration failed: Could not find node-14.17.0-darwin-arm64.tar.gz (org.nodejs:node:14.17.0)KT-50135
KJS: Problem with Yarn install with scripts on WindowsKT-34014
Gradle, JS: Ability to persist / reuse yarn.lockKT-49505
KJS / IR: Installation of NPM dependencies should be with ignore-scriptsTools. Gradle. Native
KT-49931
Kotlin Multiplatform Fails in Windows after 1.6.0 upgrade - Cannot run program "pod"KT-49771
podInstall task is not executed after adding a pod dependency to the shared moduleTools. Incremental Compile
KT-49822
Incremental compilation state is modified when the build fails in Kotlin 1.6KT-49340
"IllegalStateException:@NotNull
method org/jetbrains/kotlin/com/intellij/openapi/application/AsyncExecutionService.getService must not return null" with Anvil plugin and incremental compilationChecksums
v1.6.0
: Kotlin 1.6.0Changelog
Android
KT-48019
Bundle Kotlin Tooling Metadata into apk artifactsKT-47733
JVM / IR: Android Synthetic don't generate _findCachedViewById functionCompiler
New Features
KT-47984
In-place arguments inlining for @InlineOnly functionsKT-12794
Allow runtime retention repeatable annotations when compiling under Java 8KT-43714
Support annotations on class type parameters (AnnotationTarget.TYPE_PARAMETER)KT-45949
Kotlin/Native: Improve bound check eliminationKT-43919
Support loading Java annotations on base classes and implementing interfaces' type argumentsKT-48194
Try to resolve calls where we don't have enough type information, using the builder inference despite the presence of the annotationKT-47736
Support conversion from regular functional types to suspending ones in JVM IRKT-39055
Support property delegate created via synthetic method instead of fieldPerformance Improvements
KT-45185
FIR2IR: get rid of IrBuiltIns usagesKT-47918
JVM / IR: Performance degradation with const-bound for-cyclesKT-33835
Bytecode including unnecessary null checks for safe calls where left-hand side is non-nullableKT-41510
Compilation of kotlin html DSL is still too slowKT-48211
We spend a lot of time in ExpectActual declaration checker when there is very small amount of actual/expect declarationKT-39054
Optimize delegated properties which call get/set on the given KProperty instance on JVMKT-46615
Don't generate nullability assertions in methods for directly invoked lambdasFixes
KT-49613
JVM / IR: "Exception during IR lowering" with java fun interface and it's non-trivial usageKT-49548
"ClassCastException: java.util.ArrayList$Itr cannot be cast to kotlin.collections.IntIterator" with Iterable insidelet
KT-22562
Deprecate calls to "suspend" named functions with single dangling lambda argumentKT-47120
JVM IR: NoClassDefFoundError when there are an extension and a regular function with the same nameKT-49477
Has ran into recursion problem with two interdependant delegatesKT-49442
ClassCastException on reporting [EXPOSED_FROM_PRIVATE_IN_FILE] Deprecation: private-in-file class should not expose 'private-in-class'KT-49371
JVM / IR: "NoSuchMethodError" with multiple inheritanceKT-44843
PSI2IR: "org.jetbrains.kotlin.psi2ir.generators.ErrorExpressionException: null: KtCallExpression" with delegate who has name or parameter with the same name as a propertyKT-49294
Turning FlowCollector into 'fun interface' leads to AbstractMethodErrorKT-18282
Companion object referencing it's own method during construction compiles successfully but fails at runtime with VerifyErrorKT-25289
Prohibit access to class members in the super constructor call of its companion and nested objectKT-32753
Prohibit @JvmField on property in primary constructor that overrides interface propertyKT-43433
Suspend conversion is disabled
message in cases where it is not supported and quickfix to update language version is suggestedKT-49399
Building repeatable annotation with Container nested class fails with ISE: "Repeatable annotation class should have a container generated"KT-49209
Default upper bound for type variables should be non-nullKT-49335
NPE inRepeatedAnnotationLowering.wrapAnnotationEntriesInContainer
when using@Repeatable
annotation from different fileKT-48876
java.lang.UnsupportedOperationException: org.jetbrains.kotlin.ir.expressions.impl.IrReturnableBlockImpl@4a729df
KT-48131
IAE "Repeatable annotation container value must be a class reference" on using Kotlin-repeatable annotation from dependencyKT-49322
Postpone promoting warnings to errors forProperTypeInferenceConstraintsProcessing
featureKT-49285
Exception on nested builder inference callsKT-49101
IllegalArgumentException: ClassicTypeSystemContext couldn't handle: Captured(out Number)KT-41378
Compilation failed: Deserializer for declaration public kotlinx.coroutines/SingleThreadDispatcher|null[0] is not foundKT-47285
IR deserialization exception when dependency KLIB has class instead of typealiasKT-46697
IllegalStateException: IrTypeAliasSymbol expected: Unbound public symbol for public kotlinx.coroutines/CancellationException|null[0] compiling KMM module for Kotlin/Native with Kotlin 1.5KT-36399
Gradually support TYPE_USE nullability annotations read from class-filesKT-11454
Load annotations on TYPE_USE/TYPE_PARAMETER positions from Java class-filesKT-18768
@Notnull
annotation from Java does not work with varargsKT-24392
Nullability of Java arrays is read incorrectly if@Nullable
annotation has both targets TYPE_USE and VALUE_PARAMETERKT-48157
FIR: incorrect resolve with built-in names in useKT-46409
FIR: erroneous resolve to qualifier instead of extensionKT-44566
FirConflictsChecker
do not check for conflicting overloads across multiple filesKT-37318
FIR: Discuss treating flexible bounded constraints in inferenceKT-45989
FIR: wrong callable reference type inferredKT-46058
[FIR] Remove state from some checkersKT-45973
FIR: wrong projection type inferredKT-43083
[FIR] False positive 'HIDDEN' on internalKT-48794
Breaking change in 1.5.30: Builder inference lambda contains inapplicable calls so {1} cant be inferredKT-46727
Report warning on contravariant usages of star projected argument from JavaKT-40668
FIR: Ambiguity on qualifier when having multiple different same-named objects in near scopesKT-37081
[FIR] errors NO_ELSE_IN_WHEN and INCOMPATIBLE_TYPES absenceKT-48162
NON_VARARG_SPREAD isn't reported on *toTypedArray() callKT-45118
ClassCastException caused by parent and child class in if-elseKT-47605
Kotlin/Native: switch to LLD linker for MinGW targetsKT-48912
K/NSymbol with IrSimpleFunctionSymbolImpl is unbound
andJS Validation failed in file shaders.kt
KT-44436
Support default not null annotations to enhance T into T!!KT-49190
Increase stub versionsKT-48261
"overload resolution ambiguity" for JSpecify+jsr305-annotated Java List implementationKT-48778
-Xtype-enhancement-improvements-strict-mode not respecting@NonNull
annotation for property accesses?KT-48606
[1.6] Instantiated annotations do not implement hashCode correctly/consistentlyKT-49157
Tail-call optimization miss with cast to type parameterKT-46437
NI: "Throwable: Resolution error of this type shouldn't occur for resolve if as a call" caused by reflectively accessing private property inside "if/else" or "when" expressionKT-48590
IllegalArgumentException: ClassicTypeSystemContext couldn't handle: Captured(*) reified type class referenceKT-48633
Can't infer builder inference's type argument across local classKT-49136
JVM IR: NPE with safe call chain and property set to null by reflectionKT-48570
OptIn marker should not spread from class to its membersKT-48928
Prohibit using old JVM backend with language version >= 1.6KT-41978
NI: Kotlin fails to infer type of function argumentKT-48101
Smart cast on base class property is impossible if base class is from another moduleKT-48732
JVM / IR: MalformedParameterizedTypeException is thrown when a Spring Bean of suspending function type is registeredKT-47841
Turning LV to 1.6 breaks some diagnostics based on jspecify annotationsKT-48498
JVM IR: IllegalAccessError with inline function call and property delegation from different moduleKT-48319
JVM / IR: AssertionError: FUN caused by suspend lambda inside anonymous functionKT-48835
Psi2ir: vararg parameter value is lost when translating adapted function reference to base class memberKT-46908
JVM / IR: do not wrap fun interface implementation into another SAM adapter if it inherits from a functional typeKT-48927
JVM IR: "VerifyError: Bad invokespecial instruction: current class isn't assignable to reference class" when up-casting and read a base class's private property that has a custom getter in the base class's public functionKT-48992
Postpone migration to new operator resolution scheme for integer literalsKT-48290
Type bounds warning based on Java annotations not issues with language level 1.6KT-47920
There is no warning on violated nullability of type parameter in accordance with java nullability annotationKT-41664
Remove the "runtime JAR files in the classpath should have the same version" warningKT-48851
Keep using warn mode for jspecify in 1.6KT-46829
IR: NullPointerException caused by setting scoped generic extension varKT-42972
Forbid protected constructor calls from public inline functionsKT-45378
Prohibit super calls in public-api inline functionsKT-48515
JSpecify: If a class has a@Nullable
type-parameter bound, Kotlin should still treat unbounded wildcards like platform typesKT-48825
JVM IR: NPE with delegated property "by this" to base classKT-48535
Make EXPERIMENTAL_ANNOTATION_ON_OVERRIDE warningKT-47928
Prohibit declarations of repeatable annotation classes whose container annotation violates JLSKT-47971
Report error on declaration of a repeatable annotation class with nested class named ContainerKT-48478
JVM IR: Coroutines 1.5.1 + Kotlin 1.5.30 - ClassCastException: CompletedContinuation cannot be cast to DispatchedContinuationKT-48523
Kotlin/Native: cross-compilation from Linux to MinGW not working whenplatform.posix
is usedKT-48671
JVM / IR: "AssertionError: Primitive array expected: CLASS IR_EXTERNAL_DECLARATION_STUB CLASS"KT-46181
JVM IR: private @JvmStatic function is generated in the outer class instead of companion object, which breaks existing calls via JNI or reflection (e.g. JUnit @MethodSource)KT-48736
JVM IR: assert in SyntheticAccessorLowering when inline function attempts to access package-private field from JavaKT-48653
Warnings on non-exhaustive when statements missing in some cases with 1.6KT-48394
JVM: Invalid locals caused by unboxing bytecode optimizationKT-20542
IllegalAccessError on calling private function with default parameters from internal inline function used in another packageKT-48331
JVM / IR: "VerifyError: Bad access to protected data in invokevirtual" when a sealed class uses another sealed class in its same hierarchy level as a constructor parameterKT-48380
kotlin.RuntimeException: Unexpected receiver typeKT-47855
Kotlin/Native: compilation fails due to Escape AnalysisKT-48291
False positive [ACTUAL_MISSING] Declaration must be marked with 'actual' when implementing actual interfaceKT-48445
"IAE: Top level call context should not be null to analyze coroutine-lambda" when compiling Kotlin with language version 1.6KT-48618
Enable by default "suspend conversion" feature in 1.6KT-47638
Drop EXPERIMENTAL_IS_NOT_ENABLED diagnosticKT-48589
KotlinTypeRefiner is lost, leading to TYPE_MISMATCH and OVERLOAD_RESOLUTION_AMBIGUITY issues with MPP projectsKT-48615
Inconsistent behavior with integer literals overflow (Implementation)KT-47937
Implement deprecation of computing constant values of complex boolean expressions in when condition branches and conditions of loopsKT-48391
JVM / IR: "AssertionError: SyntheticAccessorLowering should not attempt to modify other files!" caused by class which inherits interface which has default function with default argument from companion const valKT-48552
Kotlin/Native: iosArm64 debug build fails in 1.6.0-M1-139KT-46182
Native: prohibit using dots in identifiersKT-46230
JVM IR: "IllegalArgumentException: Null argument in ExpressionCodegen for parameter VALUE_PARAMETER MOVED_DISPATCH_RECEIVER" with value class overriding function with default parameterKT-48302
FIR: Investigate not-null assertion on generic Java methodKT-48350
JVM IR: NPE from LocalDeclarationsLowering on property reference with field from outer class used as receiver (1.6.0-M1 regression)KT-48500
AE: "Last parameter type of suspend function must be Continuation, but it is kotlin.coroutines.experimental.Continuation" forkotlin-stdlib-common
libraryKT-48469
Problem with properties lazy initialization while using kotlinx.serialization pluginKT-48432
Regression in IntRange.contains (and probably other ranges too) when used in-placeKT-44855
"AssertionError: SyntheticAccessorLowering should not attempt to modify other files" on smart cast of protected field ownerKT-47542
Incorrect ABSTRACT_CLASS_MEMBER_NOT_IMPLEMENTED after migration to 1.6 on class indirectly extending RuntimeExceptionKT-48166
FIR: incorrect common supertype for PSI elements hierarchyKT-47499
JVM / IR: java.lang.VerifyError: Bad access to protected data in invokevirtual when trying to clone the result of lambda invocation that is "this" in an extension functionKT-46451
JVM Debugging: stepping on finally block end brace line before stepping into finally codeKT-48329
It's impossible to infer a type variables based on several builder inference lambdasKT-48193
Don't use the builder inference for calls which can be resolved without itKT-46450
JVM Debugging: some break statements in catch blocks have no line numbers and you cannot set breakpoints on themKT-48298
FIR: incorrect deserialized annotations in back-endKT-48234
FIR: false positive NON_INTERNAL_PUBLISHED_API for primary constructor propertyKT-48174
IR interpreter: unsupported compile-time callKT-48158
FIR: false positive ASSIGNMENT_TYPE_MISMATCH as a result of wrong type inference around callable referencesKT-48109
FIR: incorrect type inference for generic argument of intersection typeKT-48161
FIR: false positive ARGUMENT_TYPE_MISMATCH for bounded type parameter VS Java not-nullKT-48159
FIR: erroneous scope order during type resolve of constructor return typeKT-48165
FIR: false positive "initializer should be a constant value" on String.lengthKT-48175
FIR: exception for JvmField on local class propertyKT-48164
FIR: false positive OVERRIDING_FINAL_MEMBER in enum entryKT-48116
FIR: false positive NOT_A_LOOP_LABELKT-48102
FIR: false positive ABSTRACT_MEMBER_NOT_IMPLEMENTED with mapped stdlib functionsKT-47911
Native compiler on ios_arm64 target generates movi.2d instructions, which are mishandled by Apple hardwareKT-48105
FIR: generic/specific callable reference ambiguityKT-14392
Repeated annotation with use site target is not detected for getter and setterKT-47493
Missed frontend diagnostic in try/catchKT-48058
"No type for expression" compiler exception on calls with unused lambdaKT-47597
JVM IR: if statement doesn't eval correctly on 1.5.20 possible nullable type differences.KT-47922
False negative type mismatch on empty when as last statement of lambdaKT-34594
Do not generate fake debugger variables initialization for @InlineOnly functionsKT-47749
Incorrect scope of a local variable inside the coroutineKT-47527
JVM / IR ClassCastException: "kotlin.Unit cannot be cast to java.lang.String"KT-47840
JVM / IR: "IllegalStateException: No mapping for symbol: VALUE_PARAMETER name: x" in nested local functions with recursive callsKT-46448
JVM Debugging: Locals in finally blocks not always duplicated when the finally block isKT-47716
JVM / IR: NoSuchMethodError when trying to get MAX_VALUE from ULong in non-trivial try/finally contextKT-47762
JVM / IR: Properties with the same signatures in inline class and its companion object crashes the compiler with NullPointerExceptionKT-47741
JVM / IR: VerifyError: Bad type on operand stack with iterator and invoking method reference to IntIteratorKT-43696
ClassFormatError on @JvmStatic external fun in interface companion objectKT-47715
JVM / IR, R8: External getter cannot be represented in dex formatKT-47684
Add warning onis
checks which are always falseKT-47685
False positive CAST_NEVER_SUCCEEDS on variable of intersection typeKT-32188
NI: False positive "This cast can never succeed"KT-35687
NI: Poor cast can never succeed [CAST_NEVER_SUCCEEDS]KT-41331
False negative USELESS_IS_CHECK with nullKT-47609
JVM IR: "AssertionError: Unexpected number of type arguments" when compiling an extension property with annotation and it extends a value class with a generic parameterKT-47413
FIR: Rework FirDelegatedScopeKT-47492
Illegal use of DUPDocs & Examples
KT-48534
Wrong compiler argument for RequiresOptInIDE
KT-48604
MISSING_DEPENDENCY_CLASS in test source sets with kotlin.mpp.enableGranularSourceSetsMetadata=trueIDE. Debugger
KT-47970
AE: "Either library or explicit name have to be provided " in IR debugger testsIDE. Gradle Integration
KT-46273
MPP: Don't fail import for case of missed platform in source set structureKT-48823
Improve error reporting on import when configuration phase in Gradle failedKT-48504
MPP: UninitializedPropertyAccessException on import if new hierarchical mpp flag conflicts with other flagsKT-47463
MPP: Import fails withTask 'runCommonizer' not found in root project
if Kotlin configured only in moduleIDE. Multiplatform
KT-47604
kotlin-stdlib-common leaks into dependencies of Android-specific source setsJavaScript
KT-43783
KJS / IR: companion object and nested objects are not exportedKT-47524
KJS / IR: Treat protected members as part of exported APIKT-48132
KJS / IR: "IllegalStateException" when interface methods don't have default implementationKT-47700
Support instantiation of annotation classes on JSKT-48317
KJS / IR: "TypeError: ... is not a function" on running code with suspend function inheritorsKT-48344
KJS / IR: incorrect call with vararg argument from suspend functionKT-47751
Kotlin/JS: IR + IC: "argument has no effect without source map" warnings on buildLibraries
New Features
KT-46423
infix extension fun Comparable.compareToKT-47421
Stabilize collection buildersKT-48584
Introduce JVM readln() and readlnOrNull() top-level functionsPerformance Improvements
KT-45438
Remove brittle ‘contains’ optimization in minus/removeAll/retainAllFixes
KT-28378
Different behavior of Regex replace function in JVM and JS when replacement string contains group referenceKT-46785
Get rid of !! after readLine() in the standard libraryKT-46784
Stabilize Duration API in the standard libraryKT-46229
Bring back Duration factory extension propertiesKT-27738
Make JS Regex.replace not inlineKT-48607
Stabilize experimental API for 1.6KT-47304
Random#nextLong generates value outside provided rangeKT-47706
System property that controls the brittlecontains
optimizationKT-48999
Align behavior of some JS functions with their JVM counterpartKT-46243
Typography.leftGuillemete and Typography.rightGuillemete are named inconsistent with standardKT-46101
Review deprecations in stdlib for 1.6KT-48456
Introduce Common (multi-platform) readln() and readlnOrNull() top-level functionsKT-48587
Deprecate some of JS-only stdlib APIKT-39328
Make builder collection implementations serializableKT-47676
K/JS: MatchResult.next() returns no expected next match if called aftermatchEntire
KT-39166
Nothing is silently mapped to Void in arguments of the type passed to typeOfKT-39330
Migrate declarations from kotlin.dom and kotlin.browser packages to kotlinx.*KT-28753
Comparing floating point values in array/list operations 'contains', 'indexOf', 'lastIndexOf': IEEE 754 or total orderKT-38854
Gradually change the return type of collection min/max functions to non-nullableKT-38754
Deprecate appendln in favor of appendLineNative
KT-48807
Cinterop: cannot create bindings for a framework when Xcode 13 RC is installedKT-49384
Kotlin/Native: Unexpected variance in super type argument: out@0
KT-47424
StackOverflowError in IR hashCode() methods compiling KMM module for Kotlin/Native with Kotlin 1.5.0+KT-49234
SIGSEGV using the new memory manager in release in Kotlin 1.6.0-RC in MacosX64KT-48566
ExceptionInInitializerError when configuring Gradle project with kotlin-multiplatform plugin on a host unsupported by Kotlin/NativeKT-48039
Native: support shaded (aka embeddable) compiler jar in Gradle pluginKT-42693
Remove dependency on ncurses5 libraryNative. C Export
KT-47209
kotlin-native fails to generate valid C header if a setter takes anonymous parameter (_)Native. C and ObjC Import
KT-48074
Native: cinterop: __flexarr supportNative. ObjC Export
KT-47809
Kotlin/Native: ObjC-export module name usage in klib compilationNative. Platforms
KT-43024
Kotlin/Native: Windows as cross-compilation targetNative. Runtime
KT-48452
Kotlin/Native: Support thread state switching in termination handlers for the new MMNative. Runtime. Memory
KT-48143
Kotlin/Native: test fails with assert with new MM and state checkerKT-48364
Uninitialized top-level properties in new MMKT-44283
staticCFunction with CValue parameter crashes when invoked off the main threadNative. Stdlib
KT-47662
[Native, All platforms] Incorrect parsing of long strings to Float and DoubleReflection
KT-45066
Support flexible types (nullability, mutability, raw) in typeOfKT-35877
typeOf<MutableList<>> cannot be distinguished from typeOf<List<>> in Kotlin/JVMTools. CLI
KT-49007
Support three previous API versionsKT-48622
Introduce compiler X-flag to use the builder inference for all calls by defaultKT-32376
“no main manifest attribute” on running the jar for cli-compiled Kotlin objects with main functionKT-48026
Add the compiler X-flag to enable self upper bound type inferenceKT-47640
CLI: support -option=value format as for -Xoption=valueKT-47099
Add a stable compiler argument for opt-in requirements as soon as they are stableTools. Commonizer
New Features
KT-48455
[Commonizer] Optimistic number commonizationKT-48459
[Commonizer] Add opt-in annotation to optimistically commonized numbersFixes
KT-47430
[Commonizer] 'platform.posix.DIR' not implementing 'CPointed' when commonized for "unixMain"KT-48567
[Commonizer] pthread_self function is not commonized in atomicfuKT-48287
[Commonizer] platform.posix.mkdir not commonized in OKIOKT-48286
[Commonizer] platform.posix.ftruncate not commonized in OKIOKT-47523
MPP: Unable to resolve c-interop dependency if platform is included in an intermediate source set with the only targetKT-48278
[Commonizer] platform.posix.usleep not commonized in sqliterKT-46691
MPP: Type mismatch for hierarchically commonized typealiasesKT-47221
C-interop commonization fails if few targets reuse same source setKT-47775
Commonizer don't run for shared native code if test source set depends on mainKT-47053
MPP: Unable to resolve c-interop commonized code from shared test source setKT-48118
Commonized c-interop lib is not attached to common main source setKT-47641
Enabled cInterop commonization triggers native compilation during Gradle sync in IDEKT-47056
MPP: Change naming for folder with commonized c-interop librariesTools. Compiler Plugins
KT-48842
Compiler crash: Symbol with IrFieldSymbolImpl is unboundKT-48117
Kotlin AllOpen Plugin should open private methodsKT-40340
jvm-abi-gen plugin: failure with Android D8 (Dexer) toolKT-40133
jvm-abi-gen plugin: fails for inline function containing apply block with anonymous objectKT-28704
jvm-abi-gen plugin: avoid calling codegen twice per moduleKT-48111
JVM / IR: "IllegalAccessError: tried to access method" with NoArg plugin and sealed classTools. Gradle
Performance Improvements
KT-49159
KotlinGradleBuildServices leaks Gradle instance when configuration cache is enabledFixes
KT-45504
Deprecate Gradle option KotlinJvmOptions.useIR since 1.5KT-49189
In Gradle, dependencies on an MPP with Android+JVM fail to resolve in pure-Java projectsKT-48830
Change deprecation level to 'ERROR' for 'KotlinGradleSubplugin'KT-48264
Cannot write Kotlin build report unless directory existsKT-48745
JVM target compatibility check should be disabled when Java sources are emptyKT-49066
Setting kotlinOptions.modulePath in an android project breaks incremental compilationKT-48847
Remove deprecated kotlin options marked for removal after 1.5KT-48245
KGP makes compileOnly configuration resolvableKT-38010
Invalid warning "Runtime JAR files in the classpath should have the same version." withjava-gradle-plugin
KT-48768
Misleading 'jdkHome' deprecation messageKT-46719
Remove 'kotlin.useFallbackCompilerSearch' build optionKT-47792
KGP should ignore ProjectDependency when customize kotlin DependenciesKT-47867
Replace usages of IncrementalTaskInputs with InputChangesKT-46972
Migrate Kotlin repo to use Gradle toolchain featureTools. Gradle. JS
KT-49124
KJS / Gradle: Unable to load '@webpack-cli/serve' commandKT-49201
KJS / Gradle: NPM dependencies resolution may fail on parallel buildsKT-48241
KJS / Gradle: NPM test dependency may break Gradle configuration cacheKT-32071
Possibility to disable downloading of Node.js and YarnKT-48332
Make NodeJsSetupTask and YarnSetupTask not cacheableKT-37895
KJS: NPM Post-install Scripts sometimes print "node: not found"KT-34985
kotlin-gradle-plugin: Should align ways NodeJs and Yarn are downloadedTools. Gradle. Multiplatform
KT-48709
MPP: Task compileKotlinMacosX64 fails on matching native variants if ktlint presentedKT-48919
Gradle multiplatform plugin 1.6.0-M1 does not accept apiVersion = "1.7"KT-46343
[Commonizer] Use lockfile for NativeDistributionCommonizationCacheKT-48427
Execution failed for task ':commonizeNativeDistribution'. > java.io.FileNotFoundException lock (No such file or directory)KT-48513
Commonized platform libraries are unresolved in modules for new hierarchical MPP flagKT-48138
CInteropCommonizer: Missing commonization request if test source set has different targets than associated mainKT-35832
Gradle: MPP plugin operates with -Xuse-experimental and not with -Xopt-inTools. Gradle. Native
KT-48729
Test-source sets receive extra unnecessary granular dependencies to more common source sets when depending on MPP-libraryKT-37511
CocoaPods Gradle plugin: Support incremental task execution when switching between Xcode and terminalKT-47362
Cocoapods plugin: add error reporting for case when pod is not installed on user machineKT-37513
CocoaPods Gradle plugin: Support building tests from terminal for projects depending on podsTools. Kapt
KT-45545
Kapt is not compatible with JDK 16+KT-47853
KaptWithoutKotlincTask
eagerly resolves dependencies during construction/configuration and can cause deadlocksKT-47934
KaptJavaLog is unable to map stub back to the kotlin sourceKT-48195
Kapt causes dead lock in DefaultFileLockManagerTools. Scripts
KT-49400
Script resolver options can't take values with special symbols (/, , $, :, .) in themKT-49012
Compiling .kts script with inner class declaration fails with Backend Internal Error caused by AE: "Local class constructor can't have dispatch receiver"KT-47927
Script: memory leak with new enginesKT-48025
JVM / IR / Script: IllegalStateException: No mapping for symbol: VALUE_PARAMETER INSTANCE_RECEIVER caused by method tnat returns outer functionKT-48303
main.kts script fails to detect vanished dependencies if run from the cacheKT-48177
Scripts: OutOfMemoryException with circular@file:Import
KT-46645
Scripts: "IllegalStateException: No mapping for symbol: VALUE_PARAMETER INSTANCE_RECEIVER" caused by get accessorChecksums
v1.5.32
: Kotlin 1.5.32Changelog
Tools. Gradle. Multiplatform
KT-49798
[MPP] [Android] AGP 7.1.0+ android target publications leak 'AgpVersionAttr' attributeChecksums
v1.5.31
: Kotlin 1.5.31Changelog
Compiler
Fixes
KT-48659
JVM / IR: Referential equality returns true for different instancesKT-48613
Kotlin/Native fails to compile debug binaries for watchosArm64 targetKT-48316
"No value passed for parameter" regression with Java annotation default values with JSR-305KT-48343
Mistake in an error message for uninferred type variable without unrestricted builder inferenceKT-48543
Native compiler crashes because of bridges for $default stubsKT-48349
OptIn markers are forbidden on local variable / value parameter / property getter only in presence of explicit Target annotationKT-48295
JVM / IR: VerifyError: Bad access to protected data in getfieldKT-48551
JVM / IR: "IllegalStateException: Inline class has no primary constructor" caused by inline class from one module andfun interface
from anotherKT-47917
JVM: "UTF8 string too large" caused by a big stringKT-48440
JVM IR: Missing checkcast in generated bytecode causes VerifyError in Kotlin 1.5.30KT-48361
INTEGER_OPERATOR_RESOLVE_WILL_CHANGE is not reported in some positionsKT-48267
JVM IR: CCE on callable reference to Array constructor passed to inline functionIDE
KTIJ-15744
Reopening build.gradle.kts-based project reports MISSING_SCRIPT_BASE_CLASS KotlinBuildScript until re-importKTIJ-19005
JDK 17: "PermittedSubclasses requires ASM9" exception multiple times per second during analysisKTIJ-19504
IDE highlighting: Kotlin plugin 1.5.30 started showing some valid classes from multiplatform libraries as not existingNative
KT-48591
Kotlin/Native: Char.isHighSurrogate and Char.isLowSurrogate return wrong result for macosArm64 and iosArm64 with compiler cache enabledKT-48491
CInterop broke in Kotlin 1.5.30Checksums
v1.5.30
: Kotlin 1.5.30Changelog
Backend. Native. Debug
KT-47405
Incorrect path from inlined method in stacktrace on iOS-simulator ARM64KT-47408
Incorrect line number of inlined method on iOS-simulator ARM64Compiler
New Features
KT-44261
Support RxJava 3 nullability annotationsKT-32443
Experimental declarations should be contagious even when they are not explicitly usedKT-45844
Forbid using experimental markers on override declarationsKT-45845
Forbid using experimental markers on getterKT-46644
Resolve overrides for IrProperty on deserializationKT-46967
Support class type parameters annotations in FIRKT-47402
Native: optimize access to object declarations that have only const vals and no init blocksKT-47709
Make when statements with enum, sealed, and Boolean subjects exhaustive by defaultKT-47699
Support programmatic creation of class annotations and corresponding feature flag on JVMPerformance Improvements
KT-45103
Direct invoke optimizationKT-47785
Compilation time increased when trying to compile AssertJ DB expression in 1.5.21Fixes
KT-48361
INTEGER_OPERATOR_RESOLVE_WILL_CHANGE is not reported in some positionsKT-48180
JVM / IR: AssertionError: "Lambda with offset already exists" caused by calling inline function with default lambda parameterKT-47328
JVM / IR: NoSuchFieldError with missing CHECKCASTKT-48172
"IllegalStateException: Cannot serialize error type: [ERROR : ]" in 1.5.21 with java kotlin interopKT-48230
JVM IR: CCE for multiple receivers caseKT-48262
"Inconsistent type" with JSpecify @NullMarkedKT-48167
JVM / IR: If Map#entrySet is implemented in an interface, Kotlin compiler generates incorrect code for its implementationKT-47988
JVM / IR: "VerifyError: Bad type on operand stack" when invoking apply with a local method referenceKT-48163
JVM / IR: "VerifyError: Bad type on operand stack" when throwing result of smartcastKT-47833
False positive "Type argument is not within its bounds " with upcasting in 1.5.30-M1KT-47830
Some code doesn't compile with unrestricted builder inferenceKT-39883
Deprecate computing constant values if complex boolean expressions in when condition branches and conditions of loopsKT-47037
Eliminate builder inference restrictionsKT-46726
IR + BuilderInference: AssertionError: Unbound private symbol on usage of this in a BuilderInference lambdaKT-43855
Support gradual introduction of new nullability annotationsKT-43142
FIR: Check UPPER_BOUND_VIOLATED for type alias constructors properlyKT-45228
Leaking builder inference type variables though callable referencesKT-42270
NI: NEW_INFERENCE_NO_INFORMATION_FOR_PARAMETER for BuilderInference with extension functionsKT-46029
JVM / IR: "Unbound private symbol: " when trying to save SequenceScope in propertyKT-45258
Wrong CST between types which contain stub typeKT-45224
Type safety problem through leaking of the builder inference scopeKT-22852
Report diagnostics on implicit usages of experimental APIKT-22941
Experimental marker annotation with SOURCE retention is compiled without errorKT-24993
Inference for buildSequence/yield doesn't work for labeled lambdasKT-31728
Incorrect EXPERIMENTAL_OVERRIDE_ERROR for override of experimental function in anonymous objectKT-33364
Kotlin/Native debugger: execution stops only at next line for breakpoint at when expression without parameterKT-42139
NI: NEW_INFERENCE_NO_INFORMATION_FOR_PARAMETER for emptyList / listOf (with no arguments) / emptyMap / mapOf (with no arguments) inside if block insidesequence
blockKT-44241
NI: BuilderInference regressionKT-44372
FIR: KClass::java cannot be resolved as callable referenceKT-44547
Native: wrong RTTI when overriding functions with equal signatures but different type argumentsKT-44571
Segfault on unnecessary int unboxingKT-45083
Problem with property reference in builder inferenceKT-45315
Deprecate (V)::a reference resolution to companion in FE 1.0KT-46393
AE: "1 trailing arguments were found in Any type" for private function with implicit anonymous return type inside generic classKT-46661
FIR: Investigate inference issue with self-types and star projectionKT-46775
[Native] [IR] Support multiple suspend lambdas as class supertypesKT-46836
Error: Invalid LLVM module on inlineClasses external testsKT-46838
NullPointerException: Parameter specified as non-null is null in CollectionsKt.joinToString()KT-46896
Native IR: NPE when using irBuiltIns.suspendFunctionKT-46996
FIR: INFERENCE_NO_INFORMATION_FOR_PARAMETER on type aliases with non-trivial expansionsKT-47034
KtValueArgument.getArgumentExpression could lead to StubBasedPsiElementBase.notBoundInExistingAstKT-47052
BuilderInference case with flatMapTo doesn't work properlyKT-47082
Stub type variable is leaked (reproduces with K/N during deserialization)KT-47143
ClassicTypeSystemContext couldn't handle: Captured(*) in Kotlin 1.5.0KT-47148
Type mismatch: inferred type is Any? but T? was expectedKT-47180
Forbid using OptIn markers on local variable, value parameter or fieldKT-47181
Forbid using OptIn markers on types or type parametersKT-47183
Segfault on int unboxingKT-47208
Backend Internal error: Exception during IR lowering: assert at IrOverridingUtilKt.buildFakeOverrideMemberKT-47276
Nullability annotations without target are ignored if type enhancement improvements are enabledKT-47450
StackOverflowException in psi2ir with many chained binary expressionsKT-47462
K/N: AssertionError: Unbound private symbol org.jetbrains.kotlin.ir.symbols.impl.IrClassSymbolImpl@6cb748d
(NON-PUBLIC API): deserialized class CompanionKT-47941
"IllegalStateException: Expected some types" on a call with several excepted type constraintsKT-47854
"IllegalArgumentException: Type is inconsistent" with Android's @Nullable annotation starting in Kotlin 1.5.20KT-47899
"AssertionError: Intersection type should not be marked nullable" with 1.5.21KT-47846
Stack overflow when handling enhanced recursive type parameterKT-47747
Introduce specific error for calls which could be resolved only with unrestricted builder inferenceKT-47739
JVM / IR: NoSuchFieldError with generic sealed classesKT-47422
-Xjspecify-annotations: If a class has a @Nullable type-parameter bound, Kotlin should still treat some users' type arguments as platform typesKT-47437
Type inference failure with raw types under -Xjspecify-annotations=strictKT-47396
<?> in @NullMarked code should permit nullable typesKT-47729
False positive INTEGER_OPERATOR_RESOLVE_WILL_CHANGE warning: "expression will be resolved to Int in future releases"KT-47333
Xcode 13: Compilation for iOS simulator failsKT-47772
False negative WRONG_ANNOTATION_TARGET on type argument to function callKT-47467
JVM / IR: "AssertionError: Annotation class expected: deserialized class Array" caused by java annotation as a parameter of another annotationKT-47744
UninitializedPropertyAccessException compiler exception on nested builder inference callsKT-47724
Type inference: False positive "Returning type parameter has been inferred to Nothing implicitly"KT-47660
JVM / IR: Mockito verification fails when named parameters are ordered differentlyKT-47589
Using RequiresOptIn annotation on constructor property results in error even if the annotation has no VALUE_PARAMETER targetDocs & Examples
KT-47649
Important note about KJS IR compiler and stdlib compatibility in 1.5.30IDE
KT-44643
ISE: Could not generate LightClass for some declared in on initialisation bylazy
in a JVM module of a multiplatform projectKT-47947
Add language version 1.6 to the compiler configuration preferencesIDE. Gradle Integration
KT-47163
KJS / Gradle:Could not resolve <artifact>
despite being resolvable & project buildableIDE. JS
KT-46548
KJS: Create an IDE plugin to help with migration to and keeping compatibility with JS IR BEKT-47557
KJS: With NPM dependency IDEA import fails when performed before Gradle buildJavaScript
KT-46204
KJS / IR: SupportSuspendFunctionN
as super typeKT-38363
JS IR BE: support IC for loweringsKT-41651
JS IR BE: DCE removesrender
method from react components passed to the kotlinx.reactKT-46520
KJS / IR: ISE "Can't find name for declaration FUN name:CharArray_init_$Create$" on callable reference to Array constructorKT-45738
KJS / IR: Wrong generated code forwhen
statementKT-46551
KJS / IR: Add a basic sourcemap generationLibraries
KT-47477
Could not resolve kotlin-test during project import in case of multiplatform with only JVM target platformKT-47675
Converting Double to Duration may expose inexactnessKT-47419
Remove method of the MapBuilder iterator throws IOOBE instead of IllegalStateExceptionKT-47211
Kotlin Native - AbstractMutableList.addAll (with index) does not throw IndexOutOfBoundsException if elements is emptyKT-23351
Regex.splitToSequence, CharSequence.splitToSequence(Regex)KT-42851
kotlin.time.Duration toString() shows wrong result for secondsKT-45325
Parsing Duration from StringKT-34021
Regex.matchAt / matchesAtNative
KT-35001
warning: linking module flags 'SDK Version': IDs have conflicting values ('[2 x i32] [i32 13, i32 2]'KT-43475
Kotlin/Native compiler: Including a static C library increased cross-compilation time from 3.5minutes to 1 hour 40 minutesKT-44148
Escape analysis failure: Heap space out of memoryNative. C and ObjC Import
KT-46711
platform.windows._LARGE_INTEGER cannot be passed by valueNative. ObjC Export
KT-43780
Improve Swift/Obj-C ergonomics for object and companion objectKT-46431
KMP accessing a property of an anonymous inner class that inherits from an abstract class causes a 'NSGenericException', reason: '[Shared_kobjcc0 ] is abstract' exception.KT-47042
Kotlin/Native: Concurrency Interoperability with Objective-C (Swift 5.5)Native. Stdlib
KT-47915
Kotlin/Native: Provide access to test cases generated by the compilerNative. Platforms
KT-44321
Support Apple Silicon without Rosetta 2Reflection
KT-18277
InvalidProtocolBufferException: Stream closed on multithreaded access to built-ins data in reflectionKT-44977
Reflection: ClassCastException caused by annotations with "AnnotationTarget.TYPE" usage on array attributes accessKT-47650
KClass::nestedClasses throws ClassCastException for script classes with type aliasesTools. CLI
KT-47623
Deprecate -Xuse-experimentalKT-30778
kotlin-compiler.jar contains shaded but not relocated kotlinx.coroutinesKT-40979
CLI: Executing "kotlinc.bat" at a root path, errors are not reported with a correct filepathKT-40994
CLI: Add documentation for -J argument inkotlinc -help
KT-46764
CLI: Java record defined in a single file root is not resolvedTools. Commonizer
KT-47433
[Commonizer] Commonize functions/properties with TA/Class types in signatureKT-47691
[Commonizer] Commonizevar
andval
propertiesKT-47434
[Commonizer] Commonize parameterized (type-alias + class) typesKT-47432
[Commonizer] Commonize (type-alias + class) types used in functionsKT-45992
[Commonizer] Allow commonization of TypeAlias and Class with same nameKT-46716
[Commonizer] Analyze leaf source sets with original platform librariesKT-46957
[Commonizer] Unresolved classifier: platform/posix/ptrdiff_t for linuxMips32KT-47133
Forbid cinterop commonization with hierarchical commonization turned offKT-47301
[Commonizer] Associative commonizationTools. Compiler Plugins
KT-46723
Kotlin Lombok: JPS: config file is searched in directory relative to compiler daemonKT-46739
@SerialInfo NPE with default parameterTools. Daemon
KT-47152
Incremental Compilation with Kotlin compile daemon and JDK 17 fails with IllegalAccessExceptionTools. Gradle
New Features
KT-45757
Add an easier way to explicitly set Kotlin daemon jvm argumentsFixes
KT-47940
Kotlin JVM toolchain breaks configuration cacheKT-46626
kotlin-android plugin with kotlin-dsl: Extension with name 'android' does not exist. Currently registered extension names: [ext, kotlin, kotlinTestRegistry]KT-47754
“'compileDebugUnitTestJavaWithJavac' task (current target is 1.8)” during build android project without specified target and with jvmToolchain = JDK 11KT-47520
Kotlin and Java target compatibility check produces false positive on using Gradle toolchainsKT-46978
Duplicate resource errors on gradle 7 with multi-module multiplatform project with withJavaKT-27687
Empty directories in source set causes gradle cache miss for KotlinCompile taskKT-47635
Kotlin version conflict on using 'noarg' Gradle pluginKT-47636
Kotlin version conflict on using 'sam-with-receiver' Gradle pluginKT-47354
Kotlin version conflict on using 'allopen' Gradle pluginKT-45202
Kapt crashes with java.io.UTFDataFormatExceptionKT-13258
Kotlin compiler doesn't respect Gradle's "sourceCompatibility" and "targetCompatibility"KT-43095
Add support for Java Toolchain to the Gradle pluginKT-45611
KGP should declare JDK version as inputKT-47185
Migrate Gradle Integration tests to use cache redirectorKT-48226
Kotlin toolchain does not set 'jvmTarget' for Kotlin tasks on configuration cache reuseKT-44279
Kotlin-Android Gradle Plugin (KGP) should react to application of AGP rather than assume it was applied firstKT-44041
PersistentEnumeratorBase$CorruptedException: PersistentEnumerator storage corruptedTools. Gradle. JS
KT-47436
KJS / IR: Compiler plugins not provided to link taskKT-46693
KJS: Update node.js version used inside gradle to latest 14.xKT-47559
KJS / Gradle: Run task created using eager API and breaks task configuration avoidanceKT-47176
KJS: Actualize NPM dependenciesKT-47154
KJS / Gradle: Compile task reads dependencies metadata from filesystem too long on large projectsKT-47114
KJS / IR: Could not resolvecoroutines-core-js
KT-43379
KJS / Gradle: On windows, an invalid regex is generated for Webpack ProgressPluginTools. Gradle. Multiplatform
KT-47210
[Commonizer] Avoid commonization of test source set hierarchy if possibleKT-46279
[Commonizer] Gradle 7.0 will emit warning for metadata compilation in multimodule buildsKT-47126
ios() target shortcuts should not include Apple Silicon by defaultKT-38111
Gradle DSL: rename useExperimentalAnnotation functionKT-47126
ios() target shortcuts should not include Apple Silicon by defaultKT-47612
Task :buildKotlinToolingMetadata is incompatible with Gradle configuration cacheKT-47611
Task :generateMetadataFileForKotlinMultiplatformPublication is incompatible with Gradle configuration cacheTools. Gradle. Native
KT-42023
Kotlin Native Cocoapods plugin fails when Xcode project has custom CONFIGURATION namesKT-47653
Support multi arch build via embedAndSign taskKT-47078
Support Apple Silicon in cocoapods gradle pluginKT-47077
Support Apple Silicon in embedAndSign taskTools. Incremental Compile
KT-27660
JS Incremental compilation fails with java.io.IOException: java.lang.ArrayIndexOutOfBoundsException: Array index out of range: 0KT-36865
IC: "ArrayIndexOutOfBoundsException: Array index out of range: 0"KT-35532
Incremental compilation often fails on @JVMMultifileClassKT-19806
IncrementalPackagePartProvider cache corruption causes frontend exceptionTools. JPS
KT-47753
JPS: "IndexOutOfBoundsException: Index 0 out of bounds for length 0": Rebuild triggered due to IOOBE inkotlin.incremental.LookupStorage.<init>
KT-46804
Slow Kotlin incremental build: LookupStorage operationsKT-45763
Failing tests in KotlinIDETools. Maven
KT-45689
JDK-16: kotlin-maven-plugin fails withIllegalAccessError: class com.intellij.util.io.FileChannelUtil
when using incremental compilationTools. Scripts
KT-43917
Gradle dependency conflict with resolutionStrategy failOnVersionConflict and kotlin 1.4KT-46646
Scripts: ArrayIndexOutOfBoundsException on an empty script runningTools. REPL
KT-47783
REPL: Keywords completion appears after numeric and string literalsTools. kapt
KT-47583
KaptJavaLog fails on Java 17 due to removed constructor in com.sun.tools.javac.util.LogKT-47347
KAPT: Stub generation in Gradle cache is not consistently relocatableKT-46651
KAPT: "Source file or directory not found" - kaptGenerateStubsDebugKotlin task does not track source files properly with configuration cache enabledChecksums
v1.5.21
: Kotlin 1.5.21Changelog
Compiler
KT-47320
"StringConcatException: Mismatched number of concat arguments" String concatenation fails when template contains special characterKT-47445
"definitely not null type parameters is only available since language version 1.6" error in cast expressionKT-47446
Improve warning message INTEGER_OPERATOR_RESOLVE_WILL_CHANGEKT-47447
False positive INTEGER_OPERATOR_RESOLVE_WILL_CHANGE warning: "expression will be resolved to Int in future releases"KT-47449
JVM / IR: ClassCastException IrStarProjectionImpl cannot be cast to IrTypeProjectionKT-47459
"IndexOutOfBoundsException: Index 0 out of bounds for length 0" caused by MarkertManager dependencyKT-47480
StackOverflowError: Recursion on erasion of raw type with interdependent type parametersTools. Compiler Plugins
KT-47161
Serializable class can't be inherited from serializable class in other module with: e: org.jetbrains.kotlin.codegen.CompilationException: Back-end (JVM) Internal error: Couldn't transform method node: write$SelfKT-47455
Kotlin lombok plugin NullPointerExceptionKT-47513
Lombok compiler plugin failed with 'Recursion detected in a lazy value under LockBasedStorageManager@1c21db6
(TopDownAnalyzer for JVM)'Tools. Gradle
KT-47444
Gradle Plugin: Publishing project with "maven-publish" fails when dependency versions are omitted (NPE in MppDependencyRewritingUtilsKt.associateDependenciesWithActualModuleDependencies)Tools. kapt
KT-47416
Kapt Gradle DSL ignores javaCompilerOptions in 1.5.20Checksums
v1.5.20
: Kotlin 1.5.20How to update to a new release
Changelog
Compiler
New Features
KT-43262
No error for Java generic class @NotNull type parameter used in Kotlin with nullable type argumentKT-44373
FIR: support error / warning suppressionKT-45189
Support nullability annotations at module levelKT-45284
Emit warnings based on jspecify annotationsKT-45525
Allow to omit JvmInline annotation for expect value classesKT-46545
Emit annotations on function type parameters into bytecode for -jvm-target 1.8 and abovePerformance Improvements
KT-36646
Don't box primitive values in equality comparison with objects in JVM_IRFixes
KT-8325
Unresolved annotation should be an errorKT-19455
Type annotation unresolved on a type parameter of a supertype in anonymous object expressionKT-24643
Prohibit using a type parameter declared for an extension property inside delegateKT-25876
Annotations on return types and supertypes are not analyzedKT-28449
Annotation target is not analyzed in several cases for type annotationsKT-36770
Prohibit unsafe calls with expected @NotNull T and given Kotlin generic parameter with nullable boundKT-36880
K/N IR: Reference to expect property in actual declaration is not remappedKT-38325
IllegalStateException: No parameter with index 0-0 when iterating Scala 2.12.11 ListKT-38342
FIR: Consider renaming diagnostic from AMBIGUITY to OVERLOAD_RESOLUTION_AMBIGUITYKT-38476
[FIR] Forgotten type approximationKT-38540
Kotlin/Native Set.contains fails with specific enum setupKT-40425
IrGenerationExtension. Support simple reporting to compiler output (for development/debug)KT-41620
ClassCastException: Class cannot be cast to java.lang.VoidKT-41679
NI: TYPE_MISMATCH wrong type inference of collection with type Any and integer literalKT-41818
NI: False positive IMPLICIT_NOTHING_TYPE_ARGUMENT_IN_RETURN_POSITION leads to NothingValueException on delegated propertiesKT-42239
IR: Report compilation error instead of throwing an exception (effectively crash compiler) when some declaration wasn't found while deserializationKT-42631
ArrayIndexOutOfBoundsException was thrown during IR loweringKT-43258
NI: False positive "Suspend function 'invoke' should be called only from a coroutine or another suspend function" when calling suspend operator fun on object property from last expression of a crossinlined suspend lambdaKT-44036
Enum initialization orderKT-44511
FIR DFA: smartcast afterif (nullable ?: boolean)
KT-44554
RAW FIR: NPE in RawFirBuilderKT-44682
raw FIR: incorrect source for qualified accessKT-44695
*_TYPE_MISMATCH_ON_OVERRIDE checkers do not work for anonymous objectsKT-44699
FIR: incorrect lambda return type (led to a false alarm: PROPERTY_TYPE_MISMATCH_ON_OVERRIDE)KT-44802
FIR bootstrap: trying to access package private classKT-44813
FIR bootstrap: various errors in collection-like classesKT-44814
FIR bootstrap: incorrect cast in when branchKT-44942
[FIR] ClassCastException in boostrap testsKT-44995
FIR: false positive for ANNOTATION_ARGUMENT_MUST_BE_CONSTKT-45010
FIR: lambda arguments of inapplicable call is not resolvedKT-45048
FIR bootstrap: VerifyError on KtUltraLightClassKT-45052
FIR bootstrap: inapplicable candidate in GenerateSpecTests.ktKT-45121
FIR IDE: redundant vararg parameter type transformationKT-45136
Native: dividing Int.MIN_VALUE by -1 crashes or hangsKT-45236
JVM / IR: "IllegalStateException: Symbol with IrTypeParameterSymbolImpl is unbound" caused by contracts and sealed classKT-45308
Psi2ir: "AssertionError: TypeAliasDescriptor expected" caused by using typealias from one module as a type in another module without a transitive dependencyKT-45316
[FIR] Ambiguity between two implicit invokes with receiverKT-45344
FIR: Wrong inferred type for nullable type parameterKT-45385
FIR: false positive MUST_BE_INITIALIZED_OR_BE_ABSTRACT after rethrowKT-45475
[FIR] No smartcast after throw in if inside try blockKT-45508
False negative ABSTRACT_CLASS_MEMBER_NOT_IMPLEMENTED on a fake override with an abstract super class memberKT-45578
REPL: Unresolved imports are cached for the subsequent compilationsKT-45685
JVM IR: capturing a variable into crossinline suspend lambda makes the function inside inline function no longer unbox ResultKT-45584
[FIR] Fix overriding property and java function in java classKT-45697
JVM IR: ISE "Function has no body" on getter of private field in a class present both in sources and dependenciesKT-45842
Compiler doesn't allow a shared class to inherit a platform-specific sealed classKT-45848
False negative [SEALED_INHERITOR_IN_DIFFERENT_MODULE] error in compiler for a platform-specific inheritor of a shared sealed classKT-45931
There is no warning based on nullability java annotationKT-45998
JVM IR: AE when an accessor to a protected companion object member is being generated in child classKT-46048
Enum entries init order in companion objectKT-46074
FIR: private-in-file fun interface is considered invisible in this fileKT-46173
No error reporting on annotations on target type ofas
expression in returnKT-46235
JVM IR: Stack overflow error on large expressionsKT-46270
[FIR] Support@PublishedAPI
in inline checkerKT-46539
Generate annotations on type parameters bounds in bytecodeKT-46578
JVM IR: IllegalAccessError accessing property delegated to java super class protected field referenceKT-46597
JVM IR: AssertionError: SyntheticAccessorLowering should not attempt to modify other files - crossinline accessorKT-46601
JVM / IR: IllegalStateException: "Can't find method 'invokeinvoke`" when default lambda takes inline class parametersKT-46670
StackOverflowError on inheritance from raw type where class has protobuf-like recursive genericsKT-46715
JVM / IR: "AssertionError: Unbound symbols not allowed IrConstructorSymbolImpl" with enum classes with the same name in test and src foldersKT-46759
JVM IR: CCE in LateinitUsageLowering on @JvmStatic lateinit property in objectKT-46777
[Native] [IR] Support suspend function as super typeKT-46802
JVM / IR: "UnsupportedOperationException: Unknown structure of ADAPTER_FOR_CALLABLE_REFERENCE" caused by function reference on @JvmStatic function with unused default parametersKT-46813
JVM / IR: "ClassCastException: Integer cannot be cast to class Result" with Flow andfold
methodKT-46822
JVM IR: StackOverflowError on compiling a large data classKT-46837
Backend Internal error: Exception during IR lowering: assert at IrOverridingUtilKt.buildFakeOverrideMemberKT-46921
JVM / IR: "IndexOutOfBoundsException: Cannot pop operand off an empty stack" caused by crossinline parameter and label returnKT-46984
Type parameter bounds aren't used to report corresponding mismatch warningsKT-46985
There aren't warnings by java nullability annotationsKT-46986
There aren't warnings by java nullability annotationsKT-46989
There aren't warnings by java nullability annotationsKT-46990
There aren't warnings by java nullability annotations on method's violated type argumentsKT-47019
K/N: IrProperty.overriddenSymbols can't be used in common IR backend modules yet because it doesn't fully work in NativeDocs & Examples
KT-33783
Document when a range created with rangeTo is emptyIDE
KT-44638
clone()
call is unresolved in JVM module of a multiplatform projectKT-45629
[ULC] KtUltraLightFieldForSourceDeclaration.nameIdentifier returns nullKT-44825
Can't open Kotlin compiler settings in newly created projectKT-45908
Reproduciable 'org.jetbrains.kotlin.idea.caches.resolve.KotlinIdeaResolutionException: Kotlin resolution encountered a problem while analyzing KtNameReferenceExpression'IDE. FIR
KT-45175
FIR IDE: Exception with local property ininit
blockKT-45199
FIR IDE: Error while collecting diagnostic on stale element after replacing element in quickfixKT-45312
FIR IDE: FIR plugin throws exception on synthetic functionIDE. Gradle Integration
KT-34401
KotlinGradleModelBuilder builds models for non-kotlin modules and always trigger full task configuration.KT-45277
Wrong jvm target in gradle module in IDEAKT-46488
Import of a multiplatform project with MPP module depending on Kotlin/JVM one failsIDE. Inspections and Intentions
KT-45075
Inspection: Redundant creation of Json formatKT-45347
Sealed interfaces: quickfix to move to package/module of sealed class/interface should not be shown in case of read-only declarationKT-45348
Sealed interfaces: show error for usage of sealed class/interface from a library in Java source codeKT-46063
In multiplatform code, suggest to generate remainingwhen
branches at least for shared sealed classesIDE. Refactorings
KT-44431
Quickfix to move class/interface to proper location: it is allowed to choose test source in JPS project while compiler does not allow itIDE. Native
KT-39320
[Commonizer] Reduce memory consumptionJavaScript
KT-40235
KJS: IR. Broken support for external interface companionKT-40689
KJS / IR: strange and slow code for kotlin.math.max and kotlin.math.min for DoubleKT-44138
KJS / IR: Constant folding works incorrectly with unsigned arithmeticKT-44394
KJS / IR:null
companion object for existed stdlib interfacesNodeFilter
andSVGUnitTypes
KT-44950
KJS / IR: "IllegalStateException: Can't find name for declaration" in case of extending export declared class without @JsExport annotationKT-45057
KJS / IR: "ClassCastException" when usingjs
function in init blockKT-45361
KJS / IR:IrConstructorCall
representing annotation always returnsUnit
KT-46608
KJS: "Could not load content..." for source mapsKT-45655
KJS: "REINTERPRET_CAST" is not copyableKT-45866
Default parameter with generic in expect-actual declarationsKT-46859
Exception during IR lowering: NullPointerException was thrown at: optimizations.FoldConstantLowering.tryFoldingUnaryOpsKMM Plugin
KT-43899
KMM: Fix "stale framework" usage by XCode & AppCode in default build scriptLibraries
KT-43701
Stdlib: Expand KDoc of inc() and dec() for operatorsKT-46002
Support all Unicode digit chars in digitToInt (JS and Native)KT-46183
Add default value for ignoreCase in K/N String.replace/replaceFirstKT-46184
Equivalize isLowerCase and isUpperCase behavior in all platformsNative
KT-33175
IR: String constants with incorrect surrogate pairs aren't preserved during serialization/deserializationKT-44799
Different behavior with functional interfaces in Kotlin/Native on iOSNative. C Export
KT-42796
[Reverse C Interop] Package with no public methods generate empty struct in the header, leading to an errorNative. ObjC Export
KT-38600
Kotlin MP iOS Target doesn't contain kdoc commentsKT-45127
KMM: hard to pass an error to Kotlin code from implementation of Kotlin method in Swift codeNative. Runtime. Memory
KT-45063
Profiling indicates that a lot of time is spent on updateHeapRef on Apple platforms when running KMP codeReflection
KT-10838
Provide sensible toString() for property accessors in reflectionKT-13490
Equality doesn't work for KProperty.Accessor implementationsTools. CLI
KT-14772
ISE (FNFE "Not a directory") on compilation with destination argument clashing with an existing file which is not a directoryKT-18184
CompileEnvironmentException: Invalid jar path on "-d" with .jar in non-existing directoryKT-40977
Report a readable diagnostic on empty -J argument in CLITools. Commonizer
KT-45497
[Commonizer] c-interop commonization: Dependency commonizationKT-46077
[Commonizer] Addcommonizer_target
to commonized klib's manifestKT-46107
[Commonizer] CInteropCommonizerTask receives faulty dependencies in multi module projects containing multiple c-interopsKT-46248
MPP: Compile KotlinMetadata fails with Unresolved reference if only one native platform from shared source set is availableKT-46856
[Commonizer] Many targets can fail with 'filename too long'Tools. Compiler Plugins
KT-7112
Support calling Lombok-generated methods within same moduleKT-45538
Serialization, JVM IR: "AssertionError: No such type argument slot in IrConstructorCallImpl" with inner classesKT-45541
JVM / IR / Serialization: NullPointerException caused by "Serializable" annotation and local data classKT-46469
Kotlin Lombok: accessors withAccessLevel.MODULE
fail to resolveKT-46529
Kotlin Lombok: with@Accessors
without explicitprefix
the prefix from lombok.config is not taken into accountKT-46531
Kotlin Lombok:lombok.getter.noIsPrefix
is processed depending on character caseKT-46920
NullPointerException in CodeGeneratorVisitor when packing for xcodeTools. Gradle
KT-24533
Kapt should not run when annotation processors are not configuredKT-43988
Enable plugin validation during buildKT-45301
Gradle: Emptybuild/kotlin
dir with custom build directoryKT-45519
loadAndroidPluginVersion() impacts performance negatively and noticeably in multimodule Android buildKT-45744
Create Kotlin Gradle Plugin JUnit5 basic test setupKT-45834
Gradle Plugin read system property related to kotlinCompilerClasspath breaks use of configuration cacheKT-46401
Deprecate 'kotlin.parallel.tasks.in.project' build propertyKT-46820
Gradle: kotlinc (1.5.0) race condition causes a NullPointerExceptionKT-47317
Restore 'kotlinPluginVersion' property in 'KotlinBasePluginWrapper'Tools. Gradle. JS
KT-42911
Support Gradle configuration cache for K/JS tasksKT-45294
KJS / Gradle: Number of modules in project affects JS tasks configuration cache state sizeKT-45754
KJS / IR: Remove adding option of source maps in Gradle pluginKT-46178
KJS / Dukat: Added as a dependency always without conditionKT-46976
KJS: Broken support for dynamically createdwebpack.config.d
KT-47045
[Gradle, JS] Task requirements are added to all compilations with same nameTools. Gradle. Multiplatform
KT-36679
MPP Gradle plugin: Improve messaging for the commonizerKT-45832
CInteropCommonization: Filter out illegal dependenciesKT-46394
Multiplatform: Gradle 7 supportKT-46517
Add kotlin-project-model as api dependency to kotlin-gradle-plugin-apiTools. Gradle. Native
KT-27240
MPP Gradle plugin: Provide a framework packing task for Kotlin/NativeKT-39016
Missing stdlib when the downloading process was abortedKT-40907
Xcode error after switching between device and simulator: Building for iOS, but the linked and embedded framework was built for iOS Simulator.KT-44059
iosSimTest tasks are never up-to-dateKT-45801
compileIosMainKotlinMetadata compilation property of gradle task is not initialized and fails withExecution failed for task ':shared:generateProjectStructureMetadata'
KT-46680
Register concrete "embedAndSign" tasks instead umbrellaKT-46892
Kotlin Multiplatform Gradle Plugin: EmbedAndSign task always contains a default framework nameTools. Incremental Compile
KT-44741
Incremental compilation: inspectClassesForKotlinIC doesn't determine changes with imported constantTools. JPS
KT-34351
KotlinTargetsIndex creation takes too long even if project doesn't have any kotlinKT-45191
[JPS] Marking method as "default" in Java SAM interface doesn't affect dependenciesKT-46242
Support Lombok kotlin plugin in JPS and mavenTools. kapt
Performance Improvements
KT-28901
Consider caching annotation processors classloadersFixes
KT-27123
kapt: missing space in error log makes location non-clickableKT-29929
[Kapt] Stub generator uses constant value in method annotation instead of constant name 2.KT-31146
kapt: executableElement.getAnnotation(JvmOverloads::class.java) returns nullKT-32202
Gradle task kaptKotlin fails: "module not found" in Java 11 modular applicationKT-34838
Kapt: 'cannot find symbol' for a top-level property with anonymous delegateKT-35104
Support @JvmStatic in KAPT stubsKT-35167
Kapt Gradle plugin doesn't handle --module-path javac argumentKT-37586
KAPT: When delegated property use an unknown type (to-be-generated class),correctTypeError
will mess up the$delegate
field typeKT-39060
Kapt: correctErrorTypes don't retain return type of getter in Java stubKT-39715
KaptGenerateStubsTask resolves annotation processor options too early (before execution time)KT-41581
Kapt doesn't have line breaks between warningsKT-43804
Kapt fails to preserve parameter names in open suspend functionsKT-43686
KaptWithoutKotlincTask should use@CompileClasspath
forkotlinStdlibClasspath
for cache relocateability.KT-45032
Kapt: NullPointerException: insnList.first must not be nullKT-46176
Kapt: "java.lang.IndexOutOfBoundsException: Index -1 out of bounds for length 3" with delegation and property referenceChecksums
v1.5.10
: Kotlin 1.5.10How to update to a new release
Changelog
Compiler
Fixes
KT-41078
Incorrect type substitution in contracts with type parametersKT-44770
JVM / IR: "IllegalArgumentException: Unrecognized Type: [null]" Jackson doesn't recognize typeKT-45084
JVM IR: "NoSuchElementException: Sequence contains no element matching the predicate" when inline class is passed to lambda with >22 parametersKT-45779
JVM / IR: java.lang.NoSuchMethodError: 'int java.lang.Integer.plus(int)' caused by function referenceKT-45941
JVM IR: local functions use generic type parameters of the outer class in the bytecode, which breaks Bytebuddy and MockKKT-46149
Generate synthetic classes for SAM adapters with erased instead of generic supertypeKT-46189
JVM IR: tailrec function with capturing lambda in default parameter value leads to NoSuchMethodError at runtimeKT-46214
JVM / IR: "IllegalStateException: No mapping for symbol: VALUE_PARAMETER INSTANCE_RECEIVER" on a suspend function in an inner classKT-46238
JVM IR: BootstrapMethodError in JDK 11+ on intersection type passed in arguments of SAM adapter where SAM interface's type parameter has a non-trivial upper boundKT-46259
JVM IR: local function for adapted function reference is not declared as ACC_SYNTHETICKT-46284
JVM IR: "Unbound private symbol IrClassSymbol" on class reference to script classKT-46402
IllegalAccessError: "CapturedLambdaInterpreter (in unnamed module @0x71b06418) cannot access class jdk.internal.org.objectweb.asm.Type" caused by inline function with a suspend parameter in Maven projectKT-46408
JVM IR: BootstrapMethodError due to missing bridge for subclass of generic Java interfaceKT-46426
JVM IR: Corrupted .class file when passing Array constructor reference as (inline) lambdaKT-46455
OOM on parsing invalid code with string interpolationKT-46503
JVM IR: "AssertionError: Unexpected variance in super type argument: out @1"KT-46505
JVM IR: NullPointerException caused by a callable reference with nullable inline value class parameterKT-46512
JVM / IR: NoSuchMethodError on SAM conversion of a function referenceKT-46515
IndexOutOfBoundsException: "Empty list doesn't contain element at index 0." on bad variable name in 1.5.0KT-46516
JVM IR: "AnalyzerException: Expected I, but found R" on subclassing AbstractMutableListKT-46524
Cannot use unsigned literals with api-version < 1.5 even with opt-inKT-46537
JVM / IR: "IllegalStateException: No noarg super constructor for CLASS" caused by "No-arg" plugin with annotation on child classKT-46540
JVM / IR: AnalyzerException: Expected an object reference, but found J caused by java.function.SupplierKT-46554
JVM IR: "IllegalStateException: No mapping for symbol: VAR IR_TEMPORARY_VARIABLE" with value class constructor delegation callKT-46555
JVM IR: IllegalAccessError when using Java method referenceKT-46562
Kotlin 1.5.0 generates non-serializable lambdas when they should be serializableKT-46568
JVM IR: "AssertionError: IrCall expected inside JvmStatic wrapper" on compiling protected static function with return type Nothing inside companion object of abstract classKT-46574
JVM / IR: ClassCastException caused by runBlocking awaiting call while returning Kotlin.Result type.KT-46579
JVM IR: "IllegalArgumentException: Sequence contains more than one matching element" for Java enum with overloaded values() static methodKT-46584
JVM IR: Intrinsics.needClassReification (UnsupportedOperationException thrown). Property delegate provider crossinline lambda inlining/reification issueKT-46751
JVM / IR:"ClassCastException: java.lang.String cannot be cast to java.lang.Void" in extension function in Kotlin 1.5IDE
KT-45981
failed to analyze: java.lang.AssertionError: diagnostic callback has been already registered: Code analysis get stuck in AS 2020.3.1.14 & Kotlin v1.5.0-M2KT-46622
60+ second freezes with Kotlin plugin 1.5.0: GetModuleInfoKt.findJvmStdlibAcrossDependenciesIDE. Gradle Integration
KT-46417
[UNRESOLVED_REFERENCE] For project to project dependencies of native platform test source setsLibraries
KT-46280
JvmRecord annotation missing constructor in commonMiddle-end. IR
KT-44013
NPE: When calling constructor of a function type while inheriting from it, despite it's an interfaceTools. Android Extensions
KT-46590
Kotlin Android Extensions 1.5.0 generates bad writeToParcel() method for nullable Array typesTools. Gradle
KT-41142
Kotlin version conflict when using Kotlin Gradle plugins in pre-compiled script pluginKT-46353
Optimizations disabled in Gradle 7 for KAPT when generating sourcesKT-46368
Memory leak with 1.5.0-RC when building with GradleKT-46689
Track -Xuse-old-backend flag usageTools. Gradle. JS
KT-46006
KJS \ Gradle: Task without declaring an explicit or implicit dependency onjsGenerateExternalsIntegrated
in Gradle 7KT-46162
KJS: Exported items unavailable on dev serverKT-46331
KJS: Withkotlin.js.webpack.major.version=4
browserXRun tasks failTools. Parcelize
KT-46567
Kotlin 1.5.0 parcelize compilation fails in new backend when using TypeParceller with nested genericsTools. kapt
KT-45532
Do not create Kapt stubs directory during configuration timeChecksums
v1.5.0
: Kotlin 1.5.0Changelog
Backend. Native
KT-42053
Support compiler caches for linux_x64KT-43690
Support compiler caches for ios_arm64Backend. IR
KT-42684
StackOverflowError on recursive inline arguments in inline funCompiler
New Features
KT-28791
Kotlin serialization with inline classesKT-30222
Support JVM target version selection in Kotlin bytecode tool windowKT-41884
Support 'file' target for JvmSynthetic annotationKT-43677
Support for Java recordsKT-43920
Support loading binary Java annotations on fieldsKT-44278
Generate SAM-converted lambdas and function references using 'invokedynamic' on JDK 1.8+KT-44650
Deprecate JVM target version 1.6KT-44787
Suspend functions in fun interfacesKT-44865
Allow to declare protected constructors in sealed classesKT-44869
Compiling sealed interface with version less than 1.5: error message from future could be providedPerformance Improvements
KT-6336
Optimize generation of local functionsKT-7307
Optimize infix call of String.plusKT-18692
Optimize '<optimizable_range> step x' for-in loopKT-19978
Inefficient bytecode generated for function references undergoing Java SAM conversionKT-23565
OperationsMapGenerated.kt generates unreasonable amount of bytecodeKT-23825
Tail suspend call utilizing elvis operator does not take advantage of suspend tail call optimizationKT-23826
A suspend function on the right side of a returned || condition is not tail call optimizedKT-25348
No compile time unsigned integer conversion when using hex literalKT-26060
Support a compiler mode to compile lambda expressions usinginvokedynamic
instructionKT-26590
Do not generate create method for suspend lambdas if its arity >= 2KT-27427
Optimize nullable check introduced with 'as' castKT-28246
Redundant boxing/unboxing isn't eliminated by the compiler in case of inline classes and javaClass intrinsicKT-30605
Constant folding doesn't evaluate inv() functionKT-36845
Generate enum-based TABLESWITCH/LOOKUPSWITCH on a value with smart cast to enum in JVM_IRKT-39585
JVM BE generates redundant accessor calls when accessing static final field lifted from companionKT-40886
Old JVM BE unspills ACONST_NULL from continuationKT-42621
Kotlin binary size considerably larger for code extensively using stream APIKT-44153
NI: Low Memory and IntelliJ hangs when quotes in split() are missedKT-45410
JVM / IR: Extreme performance regression on arithmetic operations inside a loopFixes
KT-6007
Support changed return type of inlined generic function when lambda returns anonymous objectKT-6055
Failed invoke plus assign on array element accessed via several args through local get/set convention extensionsKT-6879
CompilationException when local classes hierarchy is placed within other local or inner declarationKT-8120
NoSuchMethodError on local class constructor call inside a local classKT-8199
"Cannot pop operand off an empty stack" for local class using a captured variable as default value for constructor parameterKT-10835
"AssertionError: Non-outer parameter incorrectly mapped to outer" when inlining object literal extending inner classKT-12790
Don't generate synthetic accessors for private inline function/propertiesKT-13213
IllegalArgumentException in ByteVector.putUTF8 on attempt to compile file with moderately long string literalKT-14628
"UnsupportedOperationException: Don't know how to generate outer expression" for nested class inheriting from inner class with a companion objectKT-14833
JVM internal error: Augment assignment and increment are not supported for local delegated properties and inline propertiesKT-15403
Suspend operator get wrong code generated by BE (NoSuchMethodError)KT-15404
Suspend operator set wrong code generatedKT-16084
Proguard can't find enclosing class of let closure inside apply closureKT-16151
Internal compiler error when using plusAssign operator with mutable mapKT-16221
Support in/!in suspend operatorsKT-16282
"Cannot pop operand off an empty stack" for plusAssign with default parameters in setter operatorKT-16445
java.lang.VerifyError: Bad type on operand stack
when delegating an interface through a private reified function inside an objectKT-16520
Invalid bytecode semantics for set call by convention with default parametersKT-16567
Inliner creates redundant objects on source inliningKT-16752
Delegating function interface to function reference does not workKT-17554
Incorrect cast to Unit generated on annotated when-expression with a single-branch if insideKT-17738
Java cannot extend class implementing kotlin.collections.MapKT-17753
Strange behavior of if and return statementsKT-18583
"ISE: Recursive call in a lazy value" for generic sealed class with nested subclass in awhen(this)
with inferred return typeKT-19861
"IllegalStateException: Label wasn't found during iterating through instructions" forplusAssign
with safe callKT-20306
Make 'when' over an 'expect' enum class non-exhaustiveKT-20869
kotlin.jvm.internal.DefaultConstructorMarker should be publicKT-20996
IllegalStateException: Cannot get FQ name of local class: class in metadata serialization for common codeKT-21014
Incorrect bytecode generated for 'PrimitiveArray::size'KT-21092
ReferencejavaClass
for generic property: "couldn't transform method node: get()"KT-21778
"IllegalStateException: Couldn't build context" for inline function inside an anonymous objectKT-21900
VerifyError on equals on generic primitive typeKT-22098
"UnsupportedOperationException: Don't know how to generate outer expression" on extension function call inside lambda in anonymous object super constructor callKT-22488
Bad line numbers generated for '&&' expressionKT-22972
A compiler bug(?) in Number class descendantsKT-23619
Transform stateless singleton lambda during inlineKT-23881
Declaration of lambda in inlined apply block holds reference to superfluous references causing leakKT-24135
Calling invoke on crossinline suspend lambda leads to no state-machineKT-24193
NoClassDefFoundError: java/lang/Cloneable$DefaultImpls on inheritance from Cloneable through an interfaceKT-24305
ClassNotFoundException when using Java reflection on local class in an inlined lambdaKT-24564
Custom operator fun set on ByteArray resolves properly but is miscompiledKT-25400
"NoClassDefFoundError: kotlin/KotlinPackage" with Turkish system locale on macOSKT-26130
Incorrect method signature for a generic function with inline class as a type parameter upper boundKT-26360
"Method from super interface has a different signature" for Interface that extends both interfaces with and without @JvmDefaultKT-26473
Error on compiling inline class with calls of super methods equals(), hashCode(), toString()KT-26474
VE “Bad type on operand stack” at runtime on calling toString() method of inline class with calls of super methods (toString(), equals(), hashCode()) insideKT-26592
Do not generate private suspend functions as synthetic package-privateKT-27449
NoSuchMethodError for local suspend function with suspend lambda parameter with default valueKT-27469
"Cannot pop operand off an empty stack" for compound assignment (plusAssign) with avararg
operator getKT-27825
Gradually prohibit non-abstract classes containing abstract members invisible from that classes (internal/package-private)KT-27830
"Incompatible stack heights" with suspend inline function in do while loop that executes suspend lambdaKT-28042
"Cannot pop operand off an empty stack" for a bound callable reference of lambda inside inline functionKT-28166
"Argument 1: expected I, but found R" for generic method with generic parameter or receiver with inline class upper boundKT-28331
Consider generating accessors for lateinit properties to avoid assertion on each callKT-28573
Inliner does not update references to transformed objectKT-29331
"AnalyzerException: Argument 1: expected R, but found I" with local generic extension property called onInt
receiverKT-29595
NoClassDefFoundError with inline reified function with lambda argument returning anonymous objectKT-29802
Incorrect reification when the same type parameter name is used for different reified typesKT-30041
"AnalyzerException: Expected an object reference, but found ." on nested suspend function calls outer suspend functionKT-30066
Consider adding annotations to ConeKotlinTypeKT-30280
Inline class class literal gets unwrapped in annotation argumentsKT-30402
Constant folding works incorrectly with unsigned arithmeticsKT-30548
"java.lang.IndexOutOfBoundsException: Cannot pop operand off an empty stack" while compiling access to a private lateinit companion fieldKT-30629
java.lang.VerifyError: Bad type on operand stack
when using a function reference to a generic propertyKT-30933
Inline function produces IllegalAccessError on property reference from different packageKT-31136
"AnalyzerException: Argument 1: expected R, but found I" on x::javaClass when x is inline class object built around primitive typeKT-31227
Prohibit using array based on non-reified type parameters as reified type arguments on JVMKT-31592
NoSuchMethodException when inlining public function accessing a protected static Java class memberKT-31727
Object expression captures all variables used in constructorKT-32023
"AnalyzerException: Expected I, but found R" with inline suspend function used with callable referenceKT-32115
NPE during initialization of enum class with delegated propertyKT-32153
"AnalyzerException: Expected an object reference, but found ." with recursive suspend local functionKT-32351
ClassNotFoundException for anonymous object implementing interface inside a lambda with data class and inline methodsKT-32384
Safe cast to generic type argument with inline class upper-bound throws NPE instead of ClassCastExceptionKT-32579
java.lang.VerifyError: Bad type on operand stack on calling inner class of inherited class in super class when casting to inherited classKT-32749
"VerifyError: Call to wrong method" with inline function and accessing class field from anonymous objectKT-32793
Generated code crashes by ClassCastException with local suspend function and inline classKT-32812
"AnalyzerException: Argument 1: expected R, but found I" invoking function with default parameter inherited by inline classKT-32821
Missing unboxing of inline class for complex hierarchy of suspend callsKT-33155
ClassNotFoundException for qualified this in anonymous object and as a result of inline function callKT-33173
Internal error: "AnalyzerException: Expected I, but found R" for supercall inside inline lambda from HashSet.remove implementationKT-33577
NoSuchFieldError with nested anonymous objects accessing outer instance propertyKT-33836
Wrong code generated for a local tailrec suspend function.KT-33873
ClassCastException invoking UByte setter function via reflectionKT-34018
"Cannot pop operand off an empty stack" with inline lambda with callable referenceKT-34186
JDK11: class file contains malformed variable arity method for vararg sealed class constructorKT-34202
IllegalAccessError on callable reference of function from multifile facade from standard libraryKT-34255
@JvmStatic tailrec function: "Cannot pop operand off an empty stack"KT-34507
Incorrect generated code for mutable collection stub methods in case of presence of functions with similar signatureKT-34665
Possible index overflow in optimized "for" loop over withIndex()KT-34754
Flow builder: "AnalyzerException: Expected an object reference, but found ." with recursive suspend local functionKT-34816
"AnalyzerException: Expected an object reference, but found I" on "this" in inline class member extension suspend functionKT-34841
ClassNotFoundException when invoke param function inside anonymous object methodKT-35008
"AnalyzerException: Expected an object reference, but found I" in inline class companion calling private constructorKT-35166
NoSuchMethodError
at runtime with local property delegate on anonymous object referencing another anonymous objectKT-35224
It's possible to pass non-spread arrays after arguments with SAM-conversionKT-35301
MethodInliner fails with "AssertionError: call doesn't correspond to object transformation info" for qualified this in SAM constructor used as parameter of anonymous object inside inline lambdaKT-35419
Failed to generate expression: KtNamedFunction
for local suspend tailrec function with receiverKT-35511
VerifyError: "Bad type on operand stack" after reificationKT-35553
Kotlin compiler generates methods that always have line number 1 for Inline ClassesKT-35725
"AssertionError: Couldn't find a context for a super-call" forsuper
member call in property initializer of companion objectKT-36420
ClassCastException with inline class Foo extending generic ComparableKT-36713
AnalyzerException: "Incompatible stack heights" with suspend and inline suspend functionsKT-36794
Move $assertionsDisabled field to the top-level classKT-36853
IR: UninitializedPropertyAccessException on tailrec with object expression in default argumentKT-36875
"RuntimeException: Trying to access skipped parameter" on synthetic local variable access from inline functionKT-36916
AnalyzerException: Argument 1: expected I, but found R when using inline class with rxjavaKT-36957
Exception during codegen: cannot pop operand off an empty stack (Nothing variable in string interpolation)KT-36984
SAM adapter classes should be generated as anonymous inner classes in JVM_IRKT-37704
Incorrect SMAP syntaxKT-37716
"AssertionError: call doesn't correspond to object transformation info" with inline reified type parameter, anonymous object and lambda in constructor callKT-37972
IllegalAccessError on initializing property reference for a property declared in JvmMultifileClass with -Xmultifile-parts-inheritKT-38100
Support local delegated properties (not inlined) in new JVM default modesKT-38833
JVM: java.lang.ClassCastException when loop variable is nullable in for loop over unsigned progressionKT-38849
Read-only variable initialized in non-inline lambda using contract callsInPlace EXACTLY_ONCE is not captured correctly in nested lambdasKT-38869
JVM BE produces invalid bytecode when inheriting from AbstractList and declaring methods that look like MutableList implementors (but they aren't)KT-38965
"UnsupportedOperationException: Don't know how to generate outer expression: Closure" with reference to local variable in block argument of anonymous objectby
delegationKT-39289
CCE in if-else inside annotated 'if' statementKT-39425
AbstractMethodError: "Receiver class does not define or inherit an implementation of the resolved method" using classes with complex Java and Kotlin inheritance hierarchies.KT-39434
IllegalAccessError with local delegated property in lambda in inlined functionKT-39687
"Couldn't find captured this" when more than 3 inline functions are nestedKT-39784
"IndexOutOfBoundsException: Cannot pop operand off an empty stack" caused by JvmOverloads annotation inside an inline classKT-40165
ClassCastException caused by SAM conversion used on a functional interface with suspended functionKT-40179
"VerifyError: Bad type on operand stack" with parent classget
extension function and child classset
extension function which used inside child classplusAssign
extension functionKT-40277
Fix generic types in special bridge methodsKT-40308
NoSuchFieldError for multiple delegated extension properties with the same name in a companion objectKT-40338
NoSuchFieldError on property without backing field that is called as function referenceKT-40392
Deprecate JvmDefault annotation and old -Xjvm-default modesKT-40396
NI: Exceptions when ambiguous type argument and generic invokeKT-40510
"AssertionError: DELEGATION slice must override something" for ByteBuffer delegationKT-40601
VerifyError: "interface method reference is in an indirect superinterface" when calling @JvmDefault suspend methodKT-40809
"Couldn't find captured field" compiler error with local function with recursive call through method referenceKT-41056
Increase stub version due to new "contract" keywordKT-41105
IllegalStateException: 'Couldn't find declaration file ' with inline delegate declared in another fileKT-41165
"IllegalStateException: Concrete fake override public final fun" when an enum class inherits an interface with a variable 'name' or 'ordinal'KT-41222
"IllegalStateException: Concrete fake override public final fun" when a class property is inherited as merged 'var' from 'val' and 'var' from parent abstract class and interface propertiesKT-41255
JDK 11: "VerifyError: Bad type on operand stack" with long function body with annotatedwhen
expressionKT-41427
NoSuchMethodError caused by implementation by delegation to function referenceKT-41508
ClassNotFoundException caused by object with overridden function inside a lambda with safe cast receiverKT-41750
Inline classes: ClassCastExceptionError when calling .withIndex() on Iterator over ArrayKT-41758
Deprecate kotlin.Metadata.bytecodeVersion and avoid using it in the compilerKT-41770
AssertionError: "Asm parameter types should be the same length as Kotlin parameter types" cause by fun interfaceKT-41874
"IllegalStateException: Couldn't obtain compiled function body" on extension delegated property with inline operator getValue in a different fileKT-41917
[FIR] Incorrect calculating property type for override from intersection scopeKT-42012
IllegalAccess to protected field instead of getterKT-42017
"AssertionError: Unsigned type expected: UInt?" during codegen when a variable of nullable unsigned type is checking for presence in the rangeKT-42032
"AnalyzerException: Expected I, but found R" while using Flow.reduce() with suspend function referenceKT-42034
ArrayIndexOutOfBoundsException in PopBackwardPropagationTransformer on external override of function in inline classKT-42064
"Parameter specified as non-null is null" with default value of the parameter in operator funKT-42069
JVM IR: -Xreport-output-files doesn't report any source files for META-INF/*.kotlin_module filesKT-42083
AbstractMethodError when 'remove' with irrelevant generic parameter but matching JVM signature is present in Kotlin collection classKT-42092
JVM / IR: "AnalyzerException: Argument 1: expected R, but found J" when trying to add to ArrayList the result of a function applied to intKT-42175
Psi2ir: "AssertionError: Undefined parameter referenced: " on augmented assignment on this in a BuilderInference lambdaKT-42179
Platform declaration clash when extending abstract Java class implementing 'java.util.Collection' by abstract Kotlin class implementing Kotlin Set or ListKT-42321
JVM IR: do not cast integer value based on the type of a literal receiver of an operator callKT-42337
NoSuchMethodError in JVM backend with inheritance of private functions in the interfaceKT-42404
"Supertypes of the following classes cannot be resolved" in Rider projectKT-42472
No TYPE_INFERENCE_UPPER_BOUND_VIOLATED for Delegated Properties do not check types (in Kotlin 1.4.10)KT-42487
"IndexOutOfBoundsException: Cannot pop operand off an empty stack" caused by USELESS_IS_CHECK of Double typeKT-42533
(N until MIN_VALUE).reversed()
should be an empty progression in for loopsKT-42588
"IllegalStateException: Concrete fake override public open fun" caused byval
override withvar
with delegation.KT-42634
Different bridges and abstract stubs behavior in abstract class implementing Map<K, String> in JVM and JVM_IRKT-42635
ClassCastException with inline class in for loopKT-42662
AbstractMethodError when using partially specialized generic Map classKT-42694
@get:Synchronized causes the JVM getter method not to be generatedKT-42753
"VerifyError: Bad invokespecial instruction: interface method reference is in an indirect superinterface" withjvm-default=all
KT-42879
JVM: Declaration clash in fun interface implementation returning an inline classKT-42900
"VerifyError: Bad return type" incorrect bytecode when a property and an extension property in inline class have the same namesKT-42946
FIR2IR: Fix super-calls to Java overrides of special built-inKT-42971
JVM: "AssertionError: Unsigned type expected: T" with UInt loop rangeKT-42990
"AssertionError: Next value after NEW should be one generated by DUP" caused by extension properties with accessors annotataed as @JvmStaticKT-43034
AssertionError: Compiler fails with complicated tailrec + inline caseKT-43048
JVM_IR: Implement coroutines state clearingKT-43050
JVM IR: incorrect mangling for method with type parameter with inline class bound in the signatureKT-43059
Different bridges behavior in class implementing Map<String, String> in JVM and JVM_IRKT-43063
Redundant DefaultImpls delegate is generated in old JVM backend on explicit "duplicate" inheritance from interfaceKT-43069
JVM: incorrect generic signature for method with implicit return type Nothing overriding a method from CollectionKT-43099
Tailrec call in not tail-call position leads to internal compiler errorKT-43106
JVM: customremove
in Iterator subclass results in a synthetic bridgeKT-43120
JVM: "Expected an object reference, but found ." caused by function which is passed as reference to suspend parameterKT-43167
JVM IR, serialization: "No mapping for symbol: VALUE_PARAMETER INSTANCE_RECEIVER" with data class containing property defined in bodyKT-43255
Verify error when inheriting from an abstract class implementing Collection with stub-like method in superclassKT-43303
NI: False negative TYPE_INFERENCE_UPPER_BOUND_VIOLATED when inferred type argument is not a subtype of type parameter upper boundKT-43333
AbstractMethodError when calling 'toArray' from Java on a Kotlin Collection with custom internal 'toArray'KT-43334
AbstractMethodError when calling 'remove' from Java on a Kotlin Collection with custom internal 'remove'KT-43342
[FIR2IR] No getter or backing field found for delegated member callKT-43347
[FIR] Synthetic setter with unmatched parameter type isn't foundKT-43401
JVM_IR. Additionalsynchronized
flag on JvmOverloads-generated adapter for Synchronized functionKT-43405
Turkish locale, Linux Mint: "NoSuchMethodError: 'int[] kotlin.jvm.internal.Intrinsics$Kotlin.intArrayOf(int[])'" withintArrayOf
function callKT-43460
JVM: redundant private setter is generated in case of multifile facadeKT-43473
"VerifyError: Bad type on operand stack" caused by operatorget
with optional argument in superclass when called via square brackets on subclassKT-43518
JVM_IR. Additionalstrictfp
flag on JvmOverloads-generated adapter for Strictfp functionKT-43569
FIR: inapplicable candidate(s): kotlin/collections/setKT-43616
[FIR] Nullable type parameter-based type after merge in ifKT-43669
FIR: No real overrides for FUN IR_EXTERNAL_DECLARATION_STUBKT-43682
Inline extension method of a multifile library inline class not foundKT-43687
FIR: UnusedChecker does not take annotation arguments into accountKT-43688
FIR: unused checker doesn't handle invokes properlyKT-43749
"UnsupportedOperationException: Don't know how to generate outer expression: Closure" caused by Flow and collect method with function reference as a parameterKT-43812
JVM IR: SAM wrapper class with generic supertype mentions missing type parameter in the signatureKT-43832
JVM IR: missing bridges for inheritance of class from interface in a complex generic diamond hierarchyKT-43851
JVM IR: function call returning object instance is removed during constant propagationKT-43864
JVM: "Assertion error after mandatory stack transformations: incorrect bytecode" with lateinit property of type T, which has a primitive type upperboundKT-43887
Problem with FunctionReferenceLowering$FunctionReferenceBuilder in kotlin nativeKT-43912
JVM internal error: Augment assignment and increment are not supported for local delegated properties and inline propertiesKT-43915
Back-end (JVM) Internal error: wrong bytecode generated for default methodKT-43938
NSME when calling 'kotlin.Number' methods on instance of Java class extending Kolin abstract class extending 'kotlin.Number'KT-43942
org.jetbrains.kotlin.codegen.CompilationException: Back-end (JVM) Internal error: Failed to generate functionKT-43949
FIR: unresolved callable reference as lambda returnKT-43983
IllegalStateException: "Couldn't obtain compiled function body for public final suspend inline fun" after moving inline extension function to libraryKT-43984
FIR: recursion in overridden symbolsKT-43984
FIR: recursion in overridden symbolsKT-44010
FIR: Inapplicable constructor due to an unresolved referenceKT-44030
FIR2IR: uncached type parameters in delegated propertyKT-44032
FIR2IR: uncached type parameters in Java fieldKT-44050
FIR: anonymous object as IR parentKT-44054
FIR2IR: incorrect IR origin for substituted override functionKT-44058
CompilationException: open suspend fun with @JvmStatic in open class companionKT-44069
please remove deprecated usagesKT-44066
FIR Java: override ambiguity with vararg value typeKT-44114
CompilationException when inlining a extension suspend function declared in interface companion with 'this' reference to extension receiverKT-44131
"UnsupportedOperationException: Don't know how to generate outer expression: Closure" when using suspend lambda and a function referenceKT-44140
JVM IR: compilation of kotlin.Result crashes with IOOBE while generating toString-implKT-44141
JVM IR: "ISE: There should be underlying type for inline class type" on usage of type parameter with Result upper bound inside a lambdaKT-44192
Allow a greater number of constants in an enum classKT-44202
"ClassCastException" when getting delegated property with inline class and Any/Any? typeKT-44210
KJS / IR: "AssertionError: Undefined parameter referenced: defined" caused by plus assign operators in build blocksKT-44233
[IR] Collection Stub generation not correctly considering java.util Collection iteratorsKT-44234
Private companion property with explicit setter generates invalid bytecodeKT-44269
"[TAILREC_ON_VIRTUAL_MEMBER_ERROR] Tailrec is not allowed on open members" with Spring annotation and private tailrec functionKT-44284
Make Kotlin binaries publicly unavailable (set KotlinCompilerVersion.IS_PRE_RELEASE = true)KT-44316
ReenteringLazyValueComputationException when analyzing complex lazy delegateKT-44347
Back-end (JVM) Internal error: Couldn't transform method node for suspend function with wrong local for ContinuationKT-44368
"IllegalStateException: Error type encountered" when inlining 'invoke' operator without enough information on type variableKT-44412
JVM IR backend fails to compile break in condition of do whileKT-44420
False NULLABILITY_MISMATCH_BASED_ON_JAVA_ANNOTATION with 1.4.30-RCKT-44429
JVM IR: unnecessary integer unboxing leads to NPE when using mockito-kotlinKT-44439
Type inference of generic types failing java interopKT-44440
Too many Nothings in inferred typeKT-44471
Fix failing script tests after switching to 1.5KT-44474
Compiler expects sealed type inheritors from platform specific source-sets in when expression in common source-setKT-44483
JVM IR: CCE on calling generic vararg function reference with Array expected typeKT-44527
Suspend function with kotlin.Result: ClassCastException class kotlin.Result cannot be cast to class ...KT-44529
Inline class calls wrong iterator method in for loopKT-44533
JVM IR: ClassFormatError on synthetic $suspendImpl method generated in interface for a @JvmDefault functionKT-44540
Regression in 1.4.30 in intellij-community: type mismatch for generic function call with generic Java classKT-44546
NI: changed variable fixation order (that can lead to changed resolution)KT-44550
KotlinBinaryClassCache leaks Kotlin plugin classloader on plugin unloadKT-44563
Type Inference loosing type annotations in lambda type expectation for function calls with block parametersKT-44583
"Supertypes of the following classes cannot be resolved" error message gives no contextKT-44627
JVM IR: ACCIDENTAL_OVERRIDE when overriding a generic field where the type parameter has a primitive boundKT-44631
"IndexOutOfBoundsException: Cannot pop operand off an empty stack" caused by a default param in inner class constructor which uses method or field from receiverKT-44647
"IllegalAccessError: class TestKt tried to access private method" with String Builderget
andinc
operatorKT-44651
JVM / IR: "IllegalStateException: Illegal type substitutor" with if-else inside class constructor argument inside another if-elseKT-44660
Internal inline functions in companion object with inline class return type fails compilationKT-44671
JVM_IR: ClassCastException: Result$Failure cannot be cast to Result with multithreaded coroutinesKT-44703
JVM / IR: "IllegalStateException: Unhandled special name in mangledNameFor" caused by a reference to inline class inside interface's companion with lazy initializationKT-44712
JVM / IR: Behavior change after enabling with MockitoKT-44714
Debugger / Coroutines: Local variables are trimmed out too aggressivelyKT-44722
JVM IR: ClassCastException with inline class, let and bound function referenceKT-44726
JVM IR: Incorrect KType nullability for platform type reified as non-nullKT-44781
JVM IR: java.lang.NoSuchFieldError: $noName_0 when calling a crossinline lambda within a suspending lambdaKT-44798
JVM IR: Inherited platform declarations clash for class implementing both List and SetKT-44801
1.4.30 JVM IR: Unbound symbols not allowed with anonymous objectKT-44803
FIR bootstrap: incorrect nullability is set for type alias-based typeKT-44827
Non-existing outer class is written in anonymous class for SAM wrapper in inline lambda with captureKT-44837
JVM / IR: ClassCastException with Result object when it is used by a generic method in a suspend callKT-44875
JVM_IR.hashCode
call is generated on interface target in fun interface equalityKT-44878
JVM_IR: "IllegalStateException: Unexpected types" when checking non-nullable variable isin
range between nullable ones with smart-castKT-44926
MPP: Actual typealias to compiled inline class incompatible with expect inline classKT-44947
Sealed interfaces: Sealed fun interface leads to "NoWhenBranchMatchedException"KT-44993
JVM IR: VerifyError on getfield with Kotlin generic field and elvis operatorKT-45008
JVM IR: hashCode is generated as invokeinterface if smart cast to interface is presentKT-45011
JVM / IR: "AssertionError: Unbound symbols not allowed"KT-45022
IR: "AssertionError: Undefined variable referenced" from psi2ir caused by plusAssign operator of objectKT-45064
JVM IR: "java.lang.AssertionError: SyntheticAccessorLowering should not attempt to modify other files!" with member reference to property in another file with private setterKT-45067
"IllegalArgumentException: Wildcard mast have a bound for annotation of WILDCARD_BOUND position" with BEAM SDK 2.27KT-45069
JVM / IR: New SAM conversions mode fails when converting from Unit to AnyKT-45131
JVM / IR: "RuntimeException: Lambda, SAM or anonymous object should have only one constructor" caused by inline class that type cast to reified type parameter inside lambda in inline functionKT-45139
Inline class: AssertionError: Expected top level inline classKT-45166
JVM / IR: "AbstractMethodError: Receiver class does not define or inherit an implementation of the resolved method of interface" caused by interface with suspend functionKT-45187
JVM / IR: ClassCastException caused by substituting generic type of vararg parameter with java.lang.VoidKT-45195
JVM IR: annotation methods are generated as default interface methods ifallopen
is usedKT-45243
"IllegalStateException: Lambdas shouldn't be visited by ESExpressionVisitor" caused by lambda insidekotlin.test.assertNotNull
KT-45259
JVM: ClassCastException caused by Result as lambda parameter typeKT-45292
AssertionError with recursive inline extension propertyKT-45300
Deprecate super calls in public-api inline functionsKT-45409
Rename jspecify annotations’ package and default not null annotationKT-45446
JVM / IR: NullPointerException caused by unreachable code and comparisonKT-45721
JVM / IR: "Unbound symbols not allowed" caused by class reference in sequence lambdaKT-45853
JVM / IR: "Accidental override" caused by inheriting Throwable.getCause from Java interfaceKT-45861
Turning warnings into errors for calls with type parameters annotated by @OnlyInputTypesKT-45865
JVM IR: "VerifyError: Bad type on operand stack" withenumValueOf
on a value from a list of stringsKT-45868
JVM IR: ClassCastException with SAM function in init block when SAM is generated via invokedynamicKT-45920
JVM IR: "Accidental override" on redefiningget()
in custom Map classKT-45934
JVM IR: "java.lang.IllegalStateException: Function has no body" for class implementing interface by delegationKT-45945
JVM / IR: "AssertionError: Unexpected variance in super type argument" with contravariance and intersection typesKT-45963
JVM / IR: "AbstractMethodError: Receiver class does not define or inherit an implementation of the resolved method" in Dokka testsKT-45967
JVM IR: "IllegalAccessError" with invokedynamic to Java SAM over callable reference to private functionKT-45982
Wrong subtyping result on captured types with postponed type variablesKT-46007
JVM / IR: "ClassCastException: kotlin.Unit cannot be cast to java.lang.String" caused by default suspend function in interfaceKT-46060
JVM IR: NullPointerException from RangeContainsLowering whencontains
is a @JvmStatic function in objectKT-46069
JVM IR: unbound type parameter on generic bound adapted function referenceKT-46092
JVM IR: AssertionError "Array type expected: @[FlexibleNullability] kotlin.CharArray?" on super call to Java constructor with primitive varargKT-46104
The message on inline -> value class migration should not say that inline classes are deprecatedKT-46131
Kotlin 1.5.0-RC errors when reading class fileKT-46160
JVM IR: IllegalAccessException at runtime for member reference to JvmMultifileClass member from stdlibKT-46186
Type inference regression in Kotlin 1.5 with constrained generic return typesDocs & Examples
KT-45884
Incorrect description for JVMtoUpperCase
methodIDE
KT-33233
Use dependency of library to build built-ins in IDE, instead of loading them from the current classloaderKT-34023
kotlin.KotlinNullPointerException at org.jetbrains.kotlin.backend.common.FunctionsFromAnyGenerator.getPrimaryConstructorProperties(FunctionsFromAnyGenerator.kt:66)KT-35947
KFunctionN.call is unresolved in IDE in Kotlin/JVM projectKT-37702
Code analysis speed: on-the-fly analysis diagnostics reportingKT-41048
[FIR-IDE] Properly implement methods in KtFirPackageScopeKT-41671
Missing nullability information in properties using type inference from get()KT-43824
KtLightClassForSourceDeclaration#isInheritor works in a different way than java implementationKT-44128
IDE: Kotlin JVM record has incorrect property accessors as seen from JavaKT-44487
MPP, IDE: No error in IDE when sealed class inheritor from common source-set is not used in exhaustive when expression in platform source-setKT-45254
Highlighting for files with certain errors appears only on second openingKT-46097
Light classes: Incomplete nullability information for a getter method of a kotlin property defined in private constructorIDE. Decompiler, Indexing, Stubs
KT-43699
IDE: Unresolved extension method from Java code for simple class with typealias and generics (IllegalStateException: Unknown type parameter)KT-44756
Infinite "UpToDateStubIndexMismatch: PSI and index do not match." with IDEA 2021.1 EAP upon attempt to open "org.gradle.configurationcache" even they seem to be the sameIDE. Gradle Integration
KT-37127
Implement precise importing of platforms of root source sets (commonMain/commonTest) when hierarchical multiplatform support is enabledKT-42048
KJS / Gradle integration: Could not determine the dependencies of task ':webApp:testPackageJson' in Android Studio 4.2 Canary 11IDE. Gradle. Script
KT-46215
Dead lock on closing project during the import in IJ211 through ScriptDefinitionsManagerIDE. Inspections and Intentions
KT-23824
Return lifted out of if condition causes suspend tail call optimization to no longer applyKT-38155
Lift assignment out of 'if' produces type mismatch without manually adding a semicolonKT-44821
IDE: False positive NO_ELSE_IN_WHEN caused by sealed class and when in another moduleKT-46088
[IDEA] Incorrect behavior of replace inline class with value class intentionIDE. Misc
KT-44675
Incorrect reference to resource into 202 pluginIDE. Refactorings
KT-44079
Sealed Interfaces: Move refactoring should warn about violation of hierarchy restrictionsKT-44839
Sealed interfaces: move refactoring warnings works with "more freedom for sealed classes" rules for language level < 1.5IDE. Script
KT-43288
Allow push notifications about script configuration /dependencies changes via theScriptDefinitionsProvider
EPJavaScript
KT-39272
KJS / IR: Can't use javascript keywords as JsNameKT-41650
JS IR BE:default
should be a reserved identifierKT-42176
KJS / IR: Interface default method in sub-interface not resolved correctly from extension on super-interfaceKT-44103
[JSIR] TypeError when bumping from 1.4.20 to 1.4.30-M1KT-44180
KJS / IR: NPE in ConstTransformer of compileDevelopmentExecutableKotlinJs/compileProductionExecutableKotlinJs tasksKT-44415
Kotlin/JS with IR and kotlin-react: "too much recursion" error in runtime in browserKT-44433
KJS IR: support function interfaces with suspend memberKT-44469
KJS / IR: Incorrect export functions with bridgesKT-44718
MPP/ KJS: "IllegalStateException: Unsupported operation" with serialization plugin and incremental compilationKT-44796
KJS / IR: default parameter of function with @JsName leads to "RangeError: Maximum call stack size exceeded"KT-45059
KJS / IR: Add possibility for runtime diagnostics of DCE resultLibraries
KT-12109
Add stdlib method that combines mapNotNull() and first/firstOrNull()KT-25571
Make random implementations serializableKT-26234
Floored division and remainder function for numeric typesKT-32996
kotlin.test: add assertContentEquals for comparing content of arrays, iterables, sequencesKT-39177
Make CharCategory available in common multiplatform codeKT-40225
Support adding kotlin-test as a single dependency, as it should be with a multiplatform libraryKT-42071
Strict version of String.toBoolean()KT-42720
Kotlin ArrayDeque on JVM: provide optimized toArray methodKT-42840
Commonize and generalize String.contentEquals that is currently JVM-onlyKT-43772
Kotlin/Native unfinished workers detected.KT-44168
Prevent storing NaN and negative zero in kotlin.time.DurationKT-44369
Commonize Char.titlecaseChar() and Char.titlecase() that are currently JVM-onlyKT-44783
Add IS_VALUE flag for value classes to kotlinx-metadata-jvmKT-44815
Remove kotlin-annotations-android and JVM compiler support for @ParameterName/@DefaultValue/@DefaultNullKT-45213
Update Unicode version used in K/N for Char and String case conversion functionsMiddle-end. IR
KT-43831
Compilation failed, IrSimpleFunctionPublicSymbolImpl is already boundKT-44100
KJS / IR: Top level declarations added in IR plugin are not referenceable from other modulesKT-45170
IR: "AssertionError: Single expression value for GET_OBJECT" caused by inc operator of field inside scope function inside objectNative
KT-42446
Native: SIGSEGV in Kotlin_Array_get on linuxArm64KT-43502
[K/N] relocation R_X86_64_PC32 cannot be used against symbol __environ; recompile with -fPICKT-44295
1.4.21 Kotlin native ndk compiler crashKT-44774
ld fails with CALL16 reloc at 0x48f00 not against global symbol (Linux MIPS)KT-44746
Different hashCode() results for Kotlin/Native stdlibNative. C and ObjC Import
KT-44824
cinterop tool no longer appends .klib to produced klibsNative. C Export
KT-36639
MPP: Build ios "staticLib" or "sharedLib" binary failed if interface contains member extension functionKT-41725
Dynamic library doesn't load on raspberrypiNative. ObjC Export
KT-44549
In the Xcode debug session, call stack is missing a frame when the iOS app failsNative. Platforms
KT-45094
Fail to compile Kotlin Native sources under Oracle Linux 7Reflection
KT-44594
Avoid using unnecessary array types reflection in kotlin-reflectKT-44782
Add KClass.isValue to kotlin-reflectTools. Ant
KT-16227
Ant task: do not include runtime by default if destination is a jarKT-44293
Support fork mode in kotlinc Ant taskTools. CLI
KT-17344
Include kotlin-reflect to resulting jar if "-include-runtime" is specifiedKT-43220
-include-runtime should add .kotlin_builtins to the outputKT-43704
Illegal reflective access by com.intellij.util.ReflectionUtil to method java.util.ResourceBundle.setParent(java.util.ResourceBundle)KT-44078
Do not include module-info.class of kotlin-stdlib.jar to the resulting jar with -include-runtimeKT-44232
CLI: do not pass -noverify to java process starting from JDK 13KT-45566
JDK 16 - e: java.lang.NoClassDefFoundError: Could not initialize class org.jetbrains.kotlin.com.intellij.pom.java.LanguageLevelTools. CLI. Native
KT-43874
Native / CLI: provide a way to show difference between Jvm and Native compilersTools. Compiler Plugins
KT-45783
Serialization: "AnalyzerException: Expected an object reference, but found I" caused byJvmInline
andSerializable
annotationsTools. Gradle
KT-31027
java.lang.NoSuchMethodError: No static method hashCode(Z)I in class Ljava/lang/Boolean; or its super classes (declaration of 'java.lang.Boolean' appears in /system/framework/core-libart.jar)KT-43605
Kotlin Gradle Plugin 1.4.20 undeclared system property reads cause problems with Gradle configuration cache enabledKT-44204
Kotlin Gradle Plugin 1.4.21 makes impossible to use ANTLR in other pluginsKT-44361
Gradle: deprecate options includeRuntime, noStdlib, noReflectKT-44462
Kotlin Gradle plugin createscompile
configuration with Gradle 7.0KT-44834
Gradle Kotlin DSL: AddlanguageSettings
configuration lambda withoutapply
callKT-44949
Compatibility with Gradle 7.0KT-44957
gradle - target.compilations seems to be deprecatedKT-45340
Update minimal supported version of Kotlin Gradle Plugin to 6.1Tools. Gradle. JS
KT-43237
KJS:-jsLegacy
Naming Convention is incompatible with NPMKT-43869
Error in webpack configuration not displayedKT-44614
Update Node.JS and Yarn versionsKT-44616
Kotlin/JS: IR backend with React: "Uncaught TypeError: _this__0 is undefined" runtime error in browserKT-45574
Sync Kotlin/JS compile tasks into one folder (build/js/packages//kotlin)Tools. Gradle. Multiplatform
KT-42098
Commonizer is re-launched for every included Gradle buildKT-43116
Merge together MultiplatformHighlightingTest and MultiplatformAnalysisTestKT-44322
KotlinTargetComponent maintenance for -sources.jarKT-44900
Support gradle configuration cache with kotlin.multiplatform pluginTools. Gradle. Native
KT-46122
kotlinx-serialization and kotlinx-datetime can't be built with 1.5.0-RCTools. JPS
KT-13631
Compilation fails on Turkish locale because of locale-sensitive uppercasingKT-44644
Mark all@JvmMultifileClass
parts compiled in the previous round as dirty in the JPS plugin, similarly to how it’s done in the Gradle pluginTools. Scripts
KT-45194
KT: Generate Kotlin Entities script: it doesn't workKT-44580
Scripts: Unable to set new file annotation hooks after first snippet compilationTools. kapt
KT-43686
KaptWithoutKotlincTask should use@CompileClasspath
forkotlinStdlibClasspath
for cache relocateability.KT-44130
KAPT changes field order in 1.4.30-M1KT-44909
Kapt: ReenteringLazyValueComputationException without stacktrace caused bywhen
expression with sealed class function without explicit return typeKT-45168
KAPT: Java stubs generated for Kotlin files generated by annotation processorsChecksums
v1.4.32
: Kotlin 1.4.32Changelog
IDE
KT-43824
KtLightClassForSourceDeclaration#isInheritor works in a different way than java implementationKT-45287
LightClasses:KtLightSimpleModifierList
is no more a parent ofKtLightAnnotationForSourceEntry
KT-45291
LightClasses: can't get annotations for constructor val-parameterKT-45417
ULC leakage of primitive type annotationsTools. CLI
KT-44758
kotlin-compiler-embeddable dependency includes unshadedfastutil
packageKT-45007
Concurrent Kotlin script compilation/execution results in NullPointerException in KeyedExtensionCollector.getPoint()Checksums
v1.4.31
: Kotlin 1.4.311.4.31
Compiler
KT-39776
2020.3+: Unresolved reference to Kotlin stdlib functionIDE. Gradle Integration
KT-44845
After update to Kotlin 1.4.30 all external dependencies is unresolved in IDE with kotlin.mpp.enableGranularSourceSetsMetadata=trueIDE. Gradle. Script
KTIJ-11137
build.gradle.kts: Fatal error during save/load standalone scripts settingsKTIJ-898
Unable to import with Kotlin DSL buildscript - NullPointerException in KotlinDslScriptModelProcessorKt.toListOfScriptModelsIDE. Multiplatform
KTIJ-1200
KotlinIconProviderKt.addExpectActualMarker takes up to 180+ secondsIDE
Fixes
KT-44697
New JVM IR backend notification - narrow its triggering to Kotlin projectsKT-44523
IDE notification for trying new JVM backendKTIJ-696
Freeze during startup of IDEA with intellij project with Kotlin (211-1.4.10-release-IJ1440)Checksums
*
Sorry, Sha256 sum was initially published incorrectly. Now it is fixed.v1.4.30
: Kotlin 1.4.30CHANGELOG
Android
KT-42383
HMPP: Bad IDEA dependencies: Missing dependency from p1:jvmAndAndroid to p2:jvmAndAndroidBackend. Native
KT-38772
Native: support non-reified type parameters in typeOfKT-42234
Move LLVM optimization parameters into konan.propertiesKT-42649
IndexOutOfBoundsException during InlineClassTransformer loweringKT-42942
Native: optimize peak backend memory by clearing BindingContext after psi2irKT-43198
Native: supportinit
blocks inside inline classesCompiler
New Features
KT-28055
Supportinit
blocks inside inline classesKT-28056
Consider supporting non-public primary constructors for inline classesKT-41265
Support noarg compiler plugin for JVM IRKT-42094
Allow open callable members in expect interfacesKT-43129
FIR: Support OverloadResolutionByLambdaReturnTypeKT-43592
Promote JVM IR compiler backend to BetaKT-43919
Support loading Java annotations on base classes and implementing interfaces' type argumentsKT-44021
Enable JVM IR backend by default in 1.5Performance Improvements
KT-41352
JVM IR: reduce bytecode size in for loops and range checks with 'until' by not using inclusive endKT-41644
NI: Infinite compilationKT-42791
OutOfMemoryError on compilation using kotlin 1.4 on a class with a lot of type inferenceKT-42920
NI: Improve performance around adding constraintsFixes
KT-11454
Load annotations on TYPE_USE/TYPE_PARAMETER positions from Java class-filesKT-11732
Verify error for generic interface method invocation with default parametersKT-14612
"ISE: Recursive call in a lazy value" during processing of a (weakly) recursive type aliasKT-18344
Upper bound of a typealias type parameter is not reported correctly if it contains the typealias itselfKT-18768
@Notnull annotation from Java does not work with varargsKT-20548
java.lang.IllegalStateException: Illegal class container on simple Java code parsingKT-22465
Excessive synthetic method for private setter from superclassKT-23816
Inline classes: constants and annotationsKT-24158
AE: No receiver found on incomplete code with $-signsKT-24392
Nullability of Java arrays is read incorrectly if @Nullable annotation has both targets TYPE_USE and VALUE_PARAMETERKT-26229
Lambda/anonymous function argument in parentheses is not supported for callsInPlace effectKT-29735
KNPE atKtEnumEntrySuperclassReferenceExpression.getReferencedElement
with explicit type argument inside enum member constructorKT-31389
ClassFormatError with companion object in annotation with @JvmStaticKT-31907
ISE: UNIT_EXPECTED_TYPE on parsing array literal inside lambda with Unit return typeKT-32228
Inconsistent boxing/unboxing for inline classes when interface is specialized by object expressionKT-32450
Inline class incorrectly gets re-wrapped when provided to a functionKT-35849
Missing nullability assertion on lambda return value if expected type has generic return value typeKT-35902
Kotlin generates a private parameterless constructor for constructors taking inline class arguments with default valuesKT-36399
Gradually support TYPE_USE nullability annotations read from class-filesKT-36769
JVM IR: Missing LVT entries for inline function (default) parameters at call siteKT-36982
JVM IR: SAM adapter classes are generated as syntheticKT-37007
JVM IR: extraneous property accessors are generated in multifile facade for InlineOnly propertyKT-37317
[FIR] Add support of extension functions in postponed lambda completionKT-38400
FIR: interface abstract is preferred to Any method in super resolveKT-38536
JVM IR: bound adapted function references are not inlinedKT-38656
FIR: determine overridden member visibility properlyKT-38901
FIR: Make behavior of integer literals overflow consistent with FE 1.0KT-39709
[FIR] False positive UNINITIALIZED_VARIABLE in presence of complex graph with jumpsKT-39923
Result.Failure will get wrapped with Success when using with RxJavaKT-40198
'$default' methods in 'kotlin/test/AssertionsKt' generated as non-synthetic by JVM_IRKT-40200
IDE: Multiple top-level main functions in different files: broken highlighting, "No descriptor resolved for FUN"KT-40262
ACC_DEPRECATED flag not generated for property getter delegate in multifile class facade in JVM_IRKT-40282
Inline class wrapping Any gets double boxedKT-40464
JVM_IR does not generate LINENUMBER at closing brace of (suspend) lambdaKT-40500
Warnings reporting by Java nullability annotations doesn't work for not top-level typesKT-40926
IDE import actions do not add required import for conventioninvoke()
extension callKT-40948
IllegalAccessError while initializing val property in EXACTLY_ONCE lambda that is passed to another functionKT-40991
NI: UNRESOLVED_REFERENCE_WRONG_RECEIVER instead of FUNCTION_EXPECTED with conventioninvoke
callKT-41163
Double wrapped value in Result class after map operationKT-41284
Spring CGLIB proxies break auto-generated data class componentN and copy methods when using JVM IRKT-41468
JVM IR: IllegalAccessError on access to abstract base member from another package, from anonymous object inside abstract classKT-41491
UNRESOLVED_REFERENCE_WRONG_RECEIVER instead of FUNCTION_EXPECTED when invoking non-functional value as a functionKT-41493
JVM IR: names of classes for local delegated variables contain the variable name twiceKT-41792
[FIR] Introduce & use ConeAttribute.UnsafeVarianceKT-41793
[FIR] Make captured types accessible at the end of resolveKT-41809
JVM IR: name for internal $default method doesn't include module nameKT-41810
JVM IR: Deprecated(HIDDEN) class is incorrectly generated as syntheticKT-41841
JVM IR: delegates for private functions with default arguments are generated in multifile classesKT-41857
Flaky 'ConcurrentModificationException' throughkotlin.serialization.DescriptorSerializer
KT-41903
JVM IR: do not generate LineNumberTable in auto-generated members of data classesKT-41911
JVM IR: nested big-arity function calls are not loweredKT-41957
JVM IR: step into suspend function goes to the first line of the fileKT-41960
JVM IR: smart step into members implemented with delegation to interface doesn't workKT-41961
JVM IR: line numbers are not generated in JvmMultifileClass facade declarationsKT-41962
JVM IR: intermittent -1 line numbers in the state machine cause double stepping in the debuggerKT-42001
Cannot resolve symbol: AssertionError: Module <sdk 1.8> is not contained in his own dependenciesKT-42002
JVM / IR: IllegalStateException: "No mapping for symbol: VAR IR_TEMPORARY_VARIABLE" caused by named argumentsKT-42021
JVM / IR: "IndexOutOfBoundsException: Index 0 out of bounds for length 0" during IR lowering with suspend conversionKT-42033
JVM IR: accidental override in Map subclass with custom implementations of some membersKT-42036
IR: "AssertionError: TypeAliasDescriptor expected: deserialized class Nothing" when referencing typealias with @UnsafeVarianceKT-42043
JVM IR: Don't generate collection stubs when implementing methods with more specific return typesKT-42044
Compiler error when lambda with contract surrounded with parenthesesKT-42114
JVM_IR generates stub for 'removeIf' in abstract classes implementing 'List' and 'Set'KT-42115
JVM_IR doesn't generate 'next' and 'hasNext' method in an abstract class implementing 'ListIterator'KT-42116
FIR: Java accessor function should not exist in scope together with relevant propertyKT-42117
IR-based evaluator cannot handle Java static final fieldsKT-42118
FIR2IR: field-targeted annotation is placed on a property, not on a fieldKT-42130
FIR: type variable is observed after when condition analysisKT-42132
FIR2IR: companion function reference has no dispatch receiverKT-42137
JVM IR: AbstractMethodError on complex hierarchy where implementation comes from another supertype and has a more specific typeKT-42186
JVM / IR: Infinite cycle in for expression when unsigned bytes are used in decreasing loop rangeKT-42251
JVM / IR: "IllegalStateException: Descriptor can be left only if it is last" when comparing the i-th element of the container of Int? andi
with changeKT-42253
JVM IR: NoSuchFieldError on local delegated property in inline function whose call site happens before declaration in the sourceKT-42281
JVM / IR: AnalyzerException when comparing Int and array that cast to Any in if conditionKT-42340
FIR2IR: duplicating fake overridesKT-42344
IR-based evaluator doesn't support "annotation in annotation"KT-42346
FIR: double-vararg in IR while resolving collection literal as Java annotation argumentKT-42348
FIR: false UNINITIALIZED_VARIABLE in local classKT-42350
FIR: false UNINITIALIZED_VARIABLE after initialization in try blockKT-42351
FIR: false HIDDEN in enum entry member callKT-42354
JVM / IR: "AssertionError: Unexpected IR element found during code generation" with KPropertyget
invocationKT-42359
FIR2IR: cannot mangle type parameterKT-42373
FIR2IR: local object nested class has no parent if forward-referenced by nested class supertypeKT-42384
FIR (BE): top-level field has no parent class in BEKT-42496
FIR resolve: synthetic property is written but has no setterKT-42517
FIR: exception in BE for recursive inline callKT-42530
"AssertionError: No type for resolved lambda argument" on attempting to assign a Pair to a couple of values in a scratch fileKT-42601
[FIR] Inherited declaration clash for stdlib inheritorsKT-42622
NI: IllegalStateException for if expression with method reference inside flowKT-42642
ISE: NogetProgressionLastElement
for progression type IntProgressionTypeKT-42650
JVM IR: extraneous nullability annotation on a generic function of a flexible typeKT-42656
FIR2IR: unsupported callable reference for Java fieldKT-42725
Debugger steps into core library inline functions in chained callsKT-42758
JVM / IR: Deserialized object that overrides readResolve() is not reference equal to the singleton instanceKT-42770
FIR: duplicating signatures in mangler (typealias for functional type)KT-42771
FIR: duplicating signature in mangler (data class with delegate)KT-42814
FIR: false UNINITIALIZED_VARIABLE in local function after if...elseKT-42844
FIR: Property write in init block resolved to parameter writeKT-42846
JVM_IR: NPE on function reference to @JvmStatic method in a different fileKT-42933
JVM / IR: "AnalyzerException: Expected an object reference, but found I" with local delegate in inline classKT-43006
JVM/JVM_IR: do not generate no-arg constructor for constructor with default arguments if there are inline class types in the signatureKT-43017
JVM / IR: AssertionError when callable reference passed into a function requiring a suspendable functionKT-43051
JVM IR: extraneous methods overridding default (Java 8) collection methods in inline class that extends MutableListKT-43067
Inner class declaration inside inline class should be prohibitedKT-43068
JVM IR: no generic signatures for explicitly written methods in a List subclass, whose signature coincides with MutableList methodsKT-43132
JVM / IR: Method name '<get-...>' in class '...$screenTexts$1$1' cannot be represented in dex format.KT-43145
JVM IR: $default methods in multi-file facades are generated as non-synthetic finalKT-43156
FIR: false UNINITIALIZED_VARIABLE after initialization insynchronized
blockKT-43196
JVM: extra non-static member is generated for extension property in inline classKT-43199
JVM IR: synthetic flag for deprecated-hidden is not generated for DeprecatedSinceKotlin and deprecation from overrideKT-43207
JVM IR: no collection stub foriterator
is generated on extending AbstractCollectionKT-43217
JVM_IR: Multiple FAKE_OVERRIDES for java methods using @NonNull Double and java doubleKT-43225
Confusing message of warning NULLABLE_TYPE_PARAMETER_AGAINST_NOT_NULL_TYPE_PARAMETERKT-43226
"Incompatible stack heights" with non-local return to outer lambda inside suspend lambdaKT-43242
JVM / IR: "AnalyzerException: Expected I, but found R" caused bywhen
inside object with @Nullable Integer subjectKT-43249
Wrong code generated for suspend lambdas with inline class parametersKT-43286
JVM IR: IAE "Inline class types should have the same representation: Lkotlin/UInt; != I" on smart cast of unsigned type value with JVM target 1.8KT-43326
JVM_IR: No deprecated flag for getter of deprecated interface property copied to DefaultImplsKT-43327
JVM_IR: No deprecated or synthetic flag for accessors of deprecated-hidden property of unsigned typeKT-43332
FIR: Smart casts lead to false-positive ambiguityKT-43370
JVM IR: No deprecated flag for getter of deprecated property copied via delegation by interfaceKT-43459
JVM_IR. Wrong signature for synthetic $annotations method for extension property on nullable primitiveKT-43478
NI: "IndexOutOfBoundsException: Index: 3, Size: 3" caused byis
check with raw type insideif
condition withwhen
insideKT-43519
JVM_IR. External functions generated differently in multi file facadesKT-43524
JVM_IR. Missed deprecation flag on companion @JvmStatic property accessorKT-43525
Prohibit JvmOverloads on declarations with inline class types in parametersKT-43536
JVM IR: IllegalStateException is not caught by runCatching under Deferred.await() with kotlinx.coroutinesKT-43562
JVM IR: incorrect mangling for Collection.size in unsigned arraysKT-43584
[FIR] Java annotations with named arguments aren't loaded correctlyKT-43587
Invalid default parameter value in expect actual declaration on jvmKT-43630
"AssertionError: Number of arguments should not be less than number of parameters" during capturing intersection raw type with star projectionKT-43698
NoSuchMethodError for inline class implementing interface with @JvmDefault methods, -Xjvm-default=enableKT-43741
Report error on inline class implementing 'kotlin.Cloneable'KT-43845
org.jetbrains.kotlin.codegen.CompilationException: Back-end (JVM) Internal error: Failed to generate expression: KtBlockExpressionKT-43956
NI: "Error type encountered – UninferredParameterTypeConstructor" on "try" and other constructs with code block as a valueKT-44055
Left uninferred type parameter for callable references inside special callsKT-44113
Compiler frontend exception: Number of arguments should not be less than number of parameters, but: parameters=2, args=1KT-44145
No highlighting for not initialized base constructor and NoSuchMethodError in Android pluginKT-44540
Regression in 1.4.30 in intellij-community: type mismatch for generic function call with generic Java classKT-44563
Type Inference loosing type annotations in lambda type expectation for function calls with block parametersIDE
New Features
KT-44075
Sealed interfaces: New Kotlin Class/File menu updateFixes
KT-29454
Light class with unexpected name when using obfuscated libraryKT-31553
Complete Statement: Wrong auto-insertion of closing curly brace for a code blockKT-33466
IDE generates incorrectexternal override
with body for overridingopen external
methodKT-39458
Add CLI support for UL classesKT-40403
UAST: PsiMethod for invoked extension function/property misses@receiver:
annotationsKT-41406
Kotlin doesn't report annotations for type arguments (no way to add@Nls
,@NonNls
annotations to String collections in Kotlin)KT-41420
UAST does not return information about type annotationsKT-42194
OOME: Java heap space from incremental compilationKT-42754
MPP: no smart cast for Common nullable property used in platform moduleKT-42821
MPP, IDE: Platform-specific errors are reported even when build doesn't target that platformKT-44116
Add language version 1.5 to the compiler configuration preferencesKT-44523
IDE notification for trying new JVM backendKT-44543
Kotlin's LowMemoryWatcher leaks on Kotlin plugin unloadIDE. Android
KT-42381
MPP: Bad IDEA dependencies: JVM module depending on built artifact instead of sources of module with Android Plugin appliedIDE. Completion
KT-44016
Code completion: support for "sealed interface"KT-44250
Code completion does not work in when expression with sealed type argumentIDE. Gradle. Script
KT-39105
AE “JvmBuiltins has not been initialized properly” after creating new Gradle/Kotlin-based project via old Project WizardIDE. Inspections and Intentions
New Features
KT-22666
"Create enum constant" quick fix could be providedKT-24556
Add Remove quick fix for "Expression under 'when' is never equal to null"KT-34121
Report unused result of data classcopy
methodKT-34533
INLINE_CLASS_CONSTRUCTOR_NOT_FINAL_READ_ONLY_PARAMETER: Add quickfix "Add val to parameter"KT-35215
Quickfix for CONST_VAL_NOT_TOP_LEVEL_OR_OBJECT to removeconst
modifierKT-40251
Intention action to evaluate compile time expressionKT-44017
Sealed interfaces: Java side Inspection "implementation of Kotlin sealed interface is forbidden"KT-43941
Sealed interfaces: intention to extend class/interfaceKT-44043
Sealed interfaces: quickfix to move class/interface to proper locationFixes
KT-20420
Intention "Put arguments/parameters on separate lines" doesn't respect the "Place ')' on new line" Kotlin code style settingKT-21799
Quickfix "Change function signature" for receiver type doesn't change itKT-22665
"Create object" quick fix produce wrong code for enumKT-23934
IntelliJ suggest "merge map to joinToString" even when such action is impossible due to suspending actions in mapKT-30894
Wrong results of intention "Add names to call arguments" when backticked argument starts from digitKT-31523
ReplaceWith introduces additional argument name for lambda when named argument is used on call-siteKT-31833
JavaMapForEachInspection should report for expression with implicit receiverKT-33096
Turn 'MapGetWithNotNullAssertionOperator' into an intentionKT-33212
False positive "map.put() should be converted to assignment" inspection when class inherited from MutableMap has "set" methodKT-34270
False negative "Join declaration and assignment" with constructor callKT-34859
False positive "Should be replaced with Kotlin function" inspection for Character.toString(int) functionKT-34959
False positive "Redundant overriding method" with different implemented/overridden signaturesKT-35051
False positive "Remove redundant backticks" if variable inside the string and isn't followed by spaceKT-35097
False positive "Call replaceable with binary operator" on explicit 'equals' call on a platform type valueKT-35165
"Replace 'if' with elvis operator": don't suggest if val initializer is a complex expressionKT-35346
False positive 'Make internal' suggestion for function inside interfaceKT-35357
"Move lambda argument out of parentheses" does not preserve block commentsKT-38349
Invalid suggestion to fold to elvis when having a var-variableKT-40704
False negative "Redundant semicolon" at start of lineKT-40861
"Convert to secondary constructor" intention expected on class nameKT-40879
False positive "Redundant 'inner' modifier" when calling another inner class with empty constructorKT-40985
"Remove explicit type arguments" is suggested when type has an annotationKT-41223
False positive "Redundant inner modifier" inspection ignores constructor arguments of object expressionsKT-41246
False positive "Receiver parameter is never used" with anonymous function expressionKT-41298
"Remove redundant 'with' call" intention works incorrectly with non-local returns and single-expression functionsKT-41311
False positive "Redundant inner modifier" when deriving from a nested Java classKT-41499
"Convert receiver to parameter" produces code with incorrect order of generic type and function invocation in case of generic function with lambda as a parameterKT-41680
False positive "Redundant inner modifier" when deriving from class with non-empty constructor and value passed to it from enclosing classKT-42201
Add Opt-In action doesn't work if there is already OptIn annotationKT-42255
"Replace elvis expression with 'if' expression" intention shouldn't introduce unnecessary variable if 'error' expression is usedIDE. JS
KT-43760
KJS: Debugging Kotlin code for Node.js runtime doesn't workIDE. Misc
KT-44018
Sealed interfaces: IDE side implementation for hierarchy providerIDE. Multiplatform
KT-40814
MISSING_DEPENDENCY_CLASS when consuming native-shared library in a source-set with fewer targets than library hasIDE. Run Configurations
KT-34535
Unable to run common tests on Android via gutter icon in a multiplatform projectIDE. Scratch
KT-25038
Scratch: Destructuring declaration produces an unresolved referenceKT-43415
Kotlin scratch file could not be run and could lead to dead lockIDE. Script
KT-44117
IDE / Scripts: custom kotlin script definitions aren't loadedJavaScript
Fixes
KT-31072
Don't use non-reified arguments to specialize type operations in IR inlinerKT-39964
Throwable incorrectly implements constructor for (null, cause) args in K/JS-IRKT-40090
KJS: IR. Invalid behaviour for optional parameters (redundant tail undefined parameters)KT-40686
KJS: Uncaught ReferenceError caused by external class as type inside eventListener in init blockKT-40771
KJS / IR: "ReferenceError: Metadata is not defined" caused by default parameter value in inner class constructorKT-41032
KJS / IR: "AssertionError: Assertion failed" caused by class that is delegated to inherited interfaceKT-41076
KJS / IR: "AssertionError: Assertion failed" caused by overridden extensiion function in child classKT-41771
KJS / IR: IndexOutOfBoundsException "Index 0 out of bounds for length 0" caused by inline class with List in primary constructor and vararg in secondaryKT-42025
KJS / IR: IrConstructorCallImpl: No such type argument slot: 0KT-42112
KJS: StackOverflowError on @JsExport in case of name clash with function with Enum parameter with star-projectionKT-42262
KJS:break
-statements without label are ignored in awhen
KT-42357
KotlinJS - external class constructor with vararg does not correctly handle spread operator.KT-42364
KJS: Properties of interface delegate are non-configurableKT-43212
JS IR: supportinit
blocks inside inline classesKT-43222
KJS IR: prototype lazy initialization for top-level properties like in JVMKT-43313
KJS / IR: "Can't find name for declaration FUN" for secondary constructorKT-43901
Call to enum values() method from enum companion object leads to non-initialized enum instancesKMM Plugin
KT-41677
Could not launch iOS project with custom display nameKT-42463
Launch common tests for Android on local JVM via run gutterKT-43188
NoSuchMethodError in New Module Wizard of KMM ProjectLibraries
KT-41112
Docs: add more details about bit shift operationsKT-41278
map.entries.contains can return false if the argument is not MutableEntryKT-41356
Incorrect documentation forrangeTo
functionKT-44456
Introduce locale-agnostic API for case conversionsKT-44458
Introduce new Char-to-code and Char-to-digit conversionsMiddle-end. IR
KT-41765
[Native/IR] Could not resolveFakeOverride()KT-42054
Psi2ir: "RuntimeException: IrSimpleFunctionSymbolImpl is already bound" when using result of function with overload resolution by lambda return typeNative
KT-44219
1.4.30-M1: Non-reified type parameters with recursive bounds are not supported yetKT-44271
[Kotlin/Native] Incorrect linking when targeting linux_x64 from mingw_x64 hostNative. C and ObjC Import
KT-42412
[C-interop] Modality of generated property accessors is always FINALNative. ObjC Export
KT-38530
Native: values() method of enum classes is not exposed to Objective-C/SwiftKT-43599
K/N: Unbound symbols not allowedNative. Platform libraries
KT-43597
Support for Xcode 12.2 SDKNative. Platforms
KT-43276
Support watchos_x64 targetNative. Runtime
KT-42822
Kotlin/Native Worker leaks ObjC/Swift autorelease references (and indirectly bridged K/N references) on Darwin targetsNative. Stdlib
KT-42172
Kotlin/Native: StableRef.dispose race condition on Kotlin deinitRuntimeKT-42428
Inconsistent behavior of map.entries on Kotlin.NativeReflection
KT-34024
"KotlinReflectionInternalError: Inconsistent number of parameters" withjavaMethod
on suspending functions with inline class in function signature or inside the functionTools. CLI
KT-43294
Support-no-stdlib
option for thekotlin
runnerKT-43406
JVM: produce deterministic jar files if -d option value is a .jar fileTools. CLI. Native
KT-40670
Allow to override konan.properties via CLITools. Compiler Plugins
KT-41764
KJS /IR IllegalStateException: "Symbol for public kotlin/arrayOf is unbound" with serialization pluginKT-42976
kotlinx.serialization + JVM IR: NPE on annotation with @SerialInfoKT-43725
Prohibit inner and local classes in kotlin-noargTools. Gradle
KT-38692
KaptGenerateStubs Gradle task will not clean up outputs when sources are empty and not an incremental buildKT-40140
kotlin-android plugin eagerly creates several Gradle tasksKT-41295
Kotlin Gradle Plugin 1.4.20 Configuration Caching bug due to friendPath providerKT-42058
Support moduleName option in Kotlin Gradle plugin for JVMKT-43054
Implementation ofAbstractKotlinTarget#buildAdhocComponentsFromKotlinVariants
breaks configuration cachingKT-43489
Incremental compilation - unable to find history files causing full recompilationKT-43740
Gradle out-of-process runner fails with unclear diagnostics if build directory does not existKT-43895
Fix cacheability warnings for the Kotlin pluginsTools. Gradle. JS
KT-42400
Kotlin/JS: Gradle DSL: customField() is rejected in Groovy build.gradleKT-42462
NPM dependency declaration with Groovy interpolated stringKT-42954
Kotlin/JS: IDE import after changingkotlin.js.externals.output.format
does not re-generate externalsKT-43535
Common webpack configuration breaks on lambda serialization in some casesKT-43668
PackageJson task use file dependencies as is (files and directories), but only files necessaryKT-43793
nodeArgs in NodeJsExec taskKT-43842
KJS: Invalidoutput.library
support fornull
valueKT-44104
KJS / Gradle: An ability to pass jvm args to K2JSDce processTools. Gradle. Multiplatform
KT-42269
Setup default dependsOn edges for Android source setsKT-42413
[MPP/gradle]withJava
breaks build on 1.4.20-M1KT-43141
Gradle / Configuration cache: NPE from org.jetbrains.kotlin.gradle.tasks.KotlinCompileCommon.getKotlinOptions() on reusing configuration cache for task compileCommonMainKotlinMetadataKT-43329
Gradle / Configuration cache: IAE “Parameter specified as non-null is null: method KotlinMetadataTargetConfiguratorKt.isCompatibilityMetadataVariantEnabled, parameter $this$isCompatibilityMetadataVariantEnabled” on reusing configuration cache for task compileKotlinMetadataKT-44298
Kotlin 1.4.20+ MPP "root" module publication does not include the source JAR that used to be published in the -metadata modulesTools. Gradle. Native
KT-39564
Make kotlin-native Gradle tasks CacheableKT-42485
Fail on cinterop: clang_indexTranslationUnit returned 1KT-42550
Adding subspec dependency with git location failedKT-42849
Gradle / Configuration cache: tasks nativeMetadataJar, runReleaseExecutableNative, runDebugExecutableNative are unsupported and fails on reusing configuration cacheKT-42938
CocoaPods Gradle plugin: podBuildDependencies doesn't properly report xcodebuild failuresKT-43151
Gradle / Configuration cache: UPAE “lateinit property binary has not been initialized” on reusing configuration cache for linkDebugExecutableNative, linkDebugTestNative, linkReleaseExecutableNative tasksKT-43516
Failed to resolve Kotin library [Multiple Multiplatform modules]Tools. Incremental Compile
KT-42937
another compilation fail (problem with compilation caches?)Tools. JPS
KT-39536
JPS compilation fails with IOException "storage is already closed"Tools. Parcelize
KT-41553
JVM IR, Parcelize: IrStarProjectionImpl cannot be cast to class IrTypeProjectionTools. Scripts
KT-43534
Allow running "main.kts" script that does not end in a "main.kts" filename (would allow kotlin scripting on GitHub Actions)KT-43176
NoSuchMethodError: 'int Script.access$getAValue$p(Script) for not-inlined functionsKT-43294
Support-no-stdlib
option for thekotlin
runnerTools. kapt
KT-34340
Incremental annotation processor recompile all files (only if KAPT enabled).KT-36667
Kapt: Add a flag to strip kotlin.Metadata() annotations from stubsKT-40493
KAPT does not support aggregating annotations processors in incremental modeKT-40882
Kapt stub generation is non-deterministic for incremental compilationKT-41788
NullPointerException: Random crashes of build using gradle and kapt because of not calling Processor.init()KT-42182
KAPT: Does not consider generated sources for incremental compilation.Checksums
v1.4.21-2
: Kotlin 1.4.21-2This release contains the fix for the kotlinx.serialization plugin working together with Jetpack Compose plugin.
Please use the 1.4.21 version for your usual production work and use this version only if you want to experiment on kotlinx.serialization and Jetpack Compose together.
v1.4.21
: Kotlin 1.4.21CHANGELOG
IDE. Gradle Integration
KT-42561
"Could not get unknown property 'sourceSets' for project" when running JVM module with included MPP moduleKT-43511
Task 'MainKt.main()' not found in root projectLibraries
KT-43586
Source documentation: ExperimentalPathAPI misspeltKT-43745
replace
for strings ignores case of locale charactersNative. C and ObjC Import
KT-43265
Kotlin/Native fails to generate alias for C enum entryKT-43530
Kotlin/Native compilation fails with "Symbol for public kotlin/Array.size.|-8255337774232345969[0] is unbound"Native
KT-43517
On Kotlin 1.4.20 we got kotlin.NotImplementedError when try compile iOS frameworkTools. Gradle. JS
KT-43668
PackageJson task use file dependencies as is (files and directories), but only files necessaryChecksums
v1.4.20
: Kotlin 1.4.20CHANGELOG
Android
KT-42121
Deprecate Kotlin Android Extensions compiler pluginKT-42267
Platform declaration clash
error in IDE when usingkotlinx.android.parcel.Parcelize
KT-42406
Long or infinite code analysis on simple files modificationBackend. Native
KT-27534
Bridges to Nothing-returning methods have incorrect signatureKT-30284
Native: Nothing? type for expression override and crashKT-36430
Optimize when with in range casesKT-38787
Missing optimization for "in range" checkKT-39100
Make Native behaviour of property initialization consistent with JVMKT-39798
Override equals/hashCode in functional interface wrappers on NativeKT-39800
equals/hashCode on adapted function references on NativeKT-41394
Compilation failed: Backend Internal error: Exception during IR loweringKT-41907
Framework test segfaults on GC on watchos_x86 compiled with -optCompiler
New Features
KT-21147
JEP 280: Indify String Concatenation (StringConcatFactory)KT-34178
Scripts should be able to access imports objectsKT-35549
Support kotlin-android-extensions in JVM IR backend (for use with Jetpack Compose projects)KT-31567
Support special semantics for underscore-named catch block parametersPerformance Improvements
KT-20571
Coroutines: Reduce number of local variables stored at suspension pointKT-28016
Coroutine state-machines spill/unspill shall be optimized using data-flow analysisKT-33394
UI freezes triggered by QualifiedExpressionResolver.resolveToPackageOrClassPrefixKT-36814
Support optimized delegated properties in JVM_IRKT-36829
Optimize 'in' expressions (operator fun contains) in JVM_IRKT-41741
NI: "AssertionError: Empty intersection for types" with generic Java collectionKT-42195
NI: prohibitively long compilation time for values of nested data structures with type inferenceKT-42221
Native compiler never finishes frontend phase after migrating to Kotlin 1.4.10Fixes
KT-11713
Refine visibility check for synthetic property with protected setterKT-16222
Coroutine should be clearing any internal state as soon as possible to avoid memory leaksKT-25519
Extra inline marks inside suspending function callable reference bytecodeKT-33226
Object INSTANCE field not annotated with NotNull in generated bytecodeKT-35495
FIR: forbid non-Java synthetic propertiesKT-35651
Kotlin stdlib has greater resolution priority than jars added via @file:DependsOn annotationKT-35716
Using @JvmOverloads in @JvmStatic functions in interface companion objects causes a ClassFormatErrorKT-35730
FIR: consider creating fake overrides for objectsKT-36951
IllegalStateException: Expected some types: Throwing exception when there is a type parameter upper bound for itselfKT-37321
[FIR] Support java array in type argumentKT-37431
[FIR] Support Builder InferenceKT-38272
FIR2IR: use lazy IR symbols for externals & fake overridesKT-38333
FIR: CCE on red code with assignment used as expressionKT-38334
FIR: CCE when resolving try-as-expressionKT-38336
FIR: NPE with corrupted numeric constant literalKT-38397
FIR: Exception while resolving contract definitionKT-38444
[FIR] Invoke extension lambda with safe callKT-38470
FIR: ConeDefinitelyNotNullType in signatureKT-38471
FIR: ConeIntersectionType in signatureKT-38925
Internal error: wrong bytecode generated. (AssertionError: int type expected, but null was found in basic frames)KT-38989
FIR: Refine sealed classes exhaustiveness in case of sealed subclassKT-38992
FIR: Refine type resolution for inner classesKT-39000
FIR: Support smartcast after reference equality checkKT-39005
FIR: Resolve plusAssign in a dependent contextKT-39008
FIR: Investigate strange effect of type alias and not-nullable bound on inferenceKT-39012
FIR: Inference doesn't get through elvis to lambda parameterKT-39028
FIR: Strange resolution to synthetic property with implicit extension receiver while there's an explicit receiverKT-39032
FIR: Ambiguity in member scope of a type parameter with multiple boundsKT-39033
FIR: Ambiguity when calling generic overridden propertyKT-39034
FIR: Support nested extension function typesKT-39040
FIR: Deserialize annotations from compiled Kotlin binariesKT-39043
FIR: Bare types incorrectly work with type aliasesKT-39044
FIR: Add fillInStackTrace to member scope of kotlin.ThrowableKT-39046
FIR: Implicit types in lambdas left when call argument is a type castKT-39048
FIR: Inference fails with integer literal used as ComparableKT-39050
FIR: Type resolver doesn't see nested classes from super class of a local classKT-39070
FIR: Ambiguity on super calls to hashCode/equals when having super interface and classKT-39072
FIR: Subtyping check doesn't affect nullability of safe-call receiverKT-39076
FIR: Synthetic property is not a var because of @Nullable annotation on parameterKT-39080
FIR: Smart casts remain incorrect if lambda is present in when branchKT-39374
Wrong bytecode generated for suspend function call with EXACTLY_ONCE lambda capturing a variable initialized in when-subjectKT-39621
[FIR] Support when exhaustiveness checker for java enumsKT-40135
JVM IR does not generate restricted suspend lambdasKT-40382
Missing proper jvmSignature for synthesized equals/hashCode/toString in inline classesKT-40605
JVM IR: IndexOutOfBoundsException caused by inner class passed to generic outer class method with Nothing type argumentKT-40664
JVM: No bounds check in optimization ofULong in UInt..UInt
KT-40665
JVM: No resolved function check when optimizingin/contains
with mismatched bound typesKT-41014
FIR2IR: when/where/how to determine the presence of a backing field for a propertyKT-41018
FIR2IR: sort members during de/serializationKT-41144
False positive "Redundant spread operator" in when statement and generic vararg argumentKT-41218
HMPP: arrayList declarations are visible both from stdlib-common and stdlib-jvm and lead to false-positive resolution ambiguity in IDEKT-41374
JVM / IR: NoSuchMethodError in Android project compiler caused by combination of inline classes and coroutinesKT-41388
NI: Backend Internal error: Exception during IR loweringKT-41429
Inline class returned from suspend function should be boxed on resume pathKT-41465
JVM / IR: "AssertionError: inconsistent parent function for CLASS LAMBDA_IMPL CLASS name" caused by inline method call into multiple constructorsKT-41484
JVM IR: support -Xemit-jvm-type-annotationsKT-41668
JVM IR: incorrect enclosing constructor for lambdas in initializers of inner classesKT-41669
JVM IR: incorrect hashCode intrinsic is used in JVM target 1.8 for generic type substituted with primitiveKT-41693
NI: Type inference in nested expression incorrectly assumes non-nullable return type of Java function, causing NullPointerExceptionKT-41729
NI: UnsupportedOperationException with invalid callable referenceKT-41761
JVM IR: CCE from backend on generating typeOf for non-reified type parameter with star projection in upper boundKT-41789
Missing DebugMetadata in inlined suspend lambdaKT-41913
NI: Kotlin 1.4 type inference breaks valid codeKT-41934
NI: a type variable for lambda parameter has been inferred to nullable type instead of not null oneKT-42005
JVM / IR: "NullPointerException: Parameter specified as non-null is null" when toString is called on inline class with not primitive propertyKT-42450
NI: "IllegalStateException: Error type encountered: NonFixed:" with coroutinesKT-42523
Missed DefaultImpls for interface in-jvm-default=all
mode on inheriting it from interface compiled in old schemeKT-42524
Wrong specialization diagnostic is reported on inheriting from java interface with default with -Xjvm-default=all-compatibilityKT-42546
HMPP: incorrect subtyping of nullable types & overload resolution ambiguity on using and expect-function declaration with nullable expect in a signatureKT-17691
Wrong argument order in resolved call with varargsKT-25114
Prohibit @JvmStatic on functions in private companionsKT-33917
Prohibit to expose anonymous types from private inline functionsKT-35870
Forbid secondary enum class constructors which do not delegate to the primary constructorKT-39098
NI: parameter of anonymous function can be inferred to Any? if another parameter's type is specifiedKT-41176
NI with Gson: "ClassCastException: java.util.ArrayList cannot be cast to java.lang.Void"KT-41194
ClassCastException on returning Result.failure from lambda within suspend functionKT-42438
NI: ClassCastException: cannot be cast to java.lang.Void caused by when statement inrun
functionKT-42699
False positive NON_JVM_DEFAULT_OVERRIDES_JAVA_DEFAULT diagnostic in new jvm-default modesKT-42706
Kotlin 1.4 infers generic is Nothing instead of actual Foo class (Android project)Docs & Examples
KT-42318
No documentation forkotlin.js.js
IDE
New Features
KT-20775
More kotlin kinds in new kotlin file/class menuKT-31331
Improve: Optimize Import should remove unused unresolved importsKT-31500
Smart enter: support get() clauseKT-39231
Injection: Add receiver of kotlin.text.toPattern to standard Kotlin injectionsKT-39844
Add specific highlight for Enum classPerformance Improvements
KT-39353
Implement EnterBetweenBracesNoCommitDelegateKT-39720
A lot of freezes in Kotlin projectKT-41634
Deadlock in org.jetbrains.kotlin.idea.framework.LibraryEffectiveKindProviderImpl.getEffectiveKindKT-41936
Impossible to work with Kotlin 1.4 in 202 idea, idea eats all cpuFixes
KT-10790
"Move statement up" for @file-targeted annotation moves package declaration to bottom of fileKT-15262
"Generate toString()" is ignoring property if it has a getterKT-24352
Method separators: displayed between properties, not displayed between companion object and functionKT-29364
"Extend selection" can't select lambda body with parametersKT-32403
Clickable links in annotation parameters (like in TODOs)KT-32409
Organizing imports should not remove imports while there are unresolved symbolsKT-34566
Too small indent after line break for multi line stringsKT-34587
"Move statement down" doesn't work for statement in constructor with end-of-line commentKT-34705
"Move statement down" for penultimate statement with end-of-line comment in constructor leads to moving comma to the end of commentKT-34707
"Move statement up" for last statement with end-of-line comment in constructor leads to moving comma to the end of commentKT-35424
FIR IDE: Kotlin project does not see stdlibKT-35732
URLs in String literals are not clickableKT-35859
Language injection doesn't work with named arguments in different positionKT-37210
UAST: KtLightClassForSourceDeclaration.isInheritor sometimes returns the wrong resultKT-37219
File level OptIn annotation is not recognized by the IDEKT-38959
IDE: False negative EXPLICIT_DELEGATION_CALL_REQUIRED, "IllegalArgumentException: Range must be inside element being annotated"KT-39398
Wrong import of unrelated object member is suggested for receiverKT-39457
Separate decompiled declarations Light implementation from LightClasses infrastructureKT-39899
KotlinOptimizeImportsRefactoringHelper: ISE: Attempt to modify PSI for non-committed DocumentKT-40578
UAST: write accesses to Kotlin properties should resolve to setterKT-41290
KotlinClassViaConstructorUSimpleReferenceExpression resolves to PsiMethod instead of PsiClassKT-42029
HMPP, IDE: NPE fromFacetSerializationKt.getFacetPlatformByConfigurationElement
on project openingKT-43202
On 1.4.20-RC version AS ask for xml compatibility update for EAP version of pluginKT-42883
No highlighting for elements marked as @Deprecated in stdlibIDE. Android
KT-42406
Long or infinite code analysis on simple files modificationKT-42061
Highlighting is broken in Android activityKT-41930
Android Studio 4.2 cannot start after updating to 1.4.20 plugin with error: Missing essential plugin: org.jetbrains.androidIDE. Completion
KT-26235
Kotlin methods/fields don't have icons in Java completionIDE. Debugger
KT-37486
Kotlin plugin keeps reference to stream debugger support classes after stream debugger plugin is disabledKT-38659
Evaluate Expression:toString()
on variable returns error when breakpoint is incommonTest
sourcesetKT-39309
Debugger: Prolonged "Collecting data" for variables when breakpoint is insiderespondHtml
KT-39435
"Collecting data..." in debugger variables view never finishesKT-39717
Debugger shows "Collecting data..." forever for instances of some classKT-40386
Memory leak detected: 'org.jetbrains.kotlin.idea.debugger.coroutine.view.XCoroutineView'KT-40635
Coroutines Debugger: make IDE plugin accept coroutines 1.3.8-rc* versions as wellKT-41505
Coroutines Debugger: “Access is allowed from event dispatch thread with IW lock only.”IDE. Decompiler, Indexing, Stubs
KT-28732
Stub file element types should be registered early enoughKT-41346
IDE: "AssertionError: Stub type mismatch: USER_TYPE!=REFERENCE_EXPRESSION" withCollapsedDumpParser
class from IDEA SDKKT-41859
File analysis never ending with kotlinx.cli (AssertionError: Stub type mismatch: TYPEALIAS!=CLASS)KT-41640
"Project roots have changed" happened during indexing because of org.jetbrains.kotlin.idea.core.script.ucache.ScriptClassRootsUpdater$notifyRootsChanged increases overall indexing time.KT-41646
"AssertionError: ContentElementType: FILE"; Code analysis never finishes on some files from my projectIDE. Gradle Integration
KT-34271
SupportpureKotlinSourceFolders
for MPP projectsKT-37106
Gradle + IDE integration: on creating source roots from Project tree IDEA creates incorrect settingsKT-38830
addTransitiveDependenciesOnImplementedModules performance is slowing down Android Studio Gradle SyncKT-41703
Kotlin plugin not functional: PluginException: While loading class org.jetbrains.kotlin.idea.core.script.KotlinScriptDependenciesClassFinderIDE. Gradle. Script
KT-35092
“Unable to get Gradle home directory” popup and no build.gradle.kts highlighting right after creating a new projectKT-37590
Wrong notification for precompiled build scriptKT-39523
Go to Declaration navigates to decompiled classfile instead of sources in case of jumping to Gradle plugin sources in buildSrcKT-39542
EA-218043: java.util.NoSuchElementException: No element of given type found (GradleBuildRootsManager)KT-39790
List of standalone script should be saved between IDE restartsKT-39910
build.gradle.kts isn't highlighted after importKT-39916
init.gradle.kts isn't highlightedKT-40243
gradle.kts: standalone script under build root isn't highlighted as standaloneKT-41141
Gradle Kotlin DSL: "cannot access 'java.lang.Comparable'. Check your module classpath" with empty JDK in Project structureKT-41281
Multiple Script Definitions warning shown in git project having multiple Gradle projectsIDE. Hints
KT-32368
Rework Inline hints settings so that they look appropriate with the new UI in 2019.3KT-38027
Support Code Vision feature in KotlinKT-42014
ClassNotFoundException in Android Studio 4.2 after installing 1.4.20 pluginIDE. Hints. Parameter Info
KT-24172
Parameter info marks signature as inapplicable when using argument labelsKT-41617
Parameter Info shows nothing inside already present type arguments of supertypeKT-41645
Add support for mixed named arguments to parameter info popupIDE. Inspections and Intentions
New Features
KT-14578
Suggest "Convert lambda to reference" intention for generic extension functionKT-19321
Warn if method with nullable return type always returns non-nullKT-20718
Add a quick fix for "this class has no constructor" error on 'expect' annotation classesKT-21223
Add inspection for incomplete destructuringKT-22420
Intention to replace a = b with b.also { a = it }KT-39930
Add inspection for nullable Boolean inif
conditionKT-40016
Replace 'a.toLowerCase() == b.toLowerCase()' with 'a.equals(b, ignoreCase = true)' inspectionKT-40283
Inspection which replacesalso
/apply
with nestedforEach
toonEach
KT-40769
Add intention to replace isBlank/isNotBlank method negationFixes
KT-12222
Intention 'Convert to block body' should take nullability of overriden method into account when expression is of platform typeKT-14395
Lambda to Reference doesn't work for generic typesKT-15846
'Change lambda expression return type' quick fix does nothingKT-15944
IDEA doesn't suggest to replace deprecated get set operator functions when it used as operatorKT-17222
"Convert reference to lambda" creates red code for method with default argument valuesKT-18125
"Wrap with let {...}" intention not available in all casesKT-20438
Naming convention inspections: factory functions that are named like classes are flaggedKT-24138
Incorrect behavior in "convert reference to lambda" with new inference enabled, on function reference with default argumentsKT-29844
"Create class from usage" should mark constructor of created class as internal if its parameters have internal visibilityKT-30928
"Show hints for suspend calls" is too easy to enable and hard to disableKT-31749
"Surround with null check" produces incorrect check for 'in' expressionKT-32963
Don't suggestjava
directory of a JVM source set in multiplatform project as a target forCreate actual
quick fixKT-33211
Quickfix "add parameter" for method references should infer functional type instead of KFunctionKT-33258
"Merge 'if's" intention drops comment before nested ifKT-34572
Convert to block body action improperly works with suppress annotationsKT-35128
IntentionConvert member to extension
hides property delegate text with single line commentKT-35214
IntentionPut parameters on one line
: don't suggest if parameters has end-of-line commentsKT-35320
False positive "Replace explicit parameter 'x' with 'it'" in 'when' expression which returns lambdaKT-35525
False positive intention for 'run': "Convert to 'let'" when invoked without receiverKT-35526
Intention "Eliminate argument of 'when'" is broken for 'when' expression without 'else' branchKT-35805
FoldInitializerAndIfToElvis: should not add new line for multiline initializerKT-36051
IfThenToSafeAccessInspection: do not report if condition is SENSELESS_COMPARISONKT-37748
"Convert anonymous function to lambda expression" intention does not add necessary lambda type parameterKT-37841
IllegalStateException after "add non-null asserted call" on nullable function referenceKT-38139
False negative "Add suspend modifier" quickfix when suspend function is called in inline lambdaKT-38267
False positive "Call on collection type may be reduced" with Java platform types: suggested to reduce 'mapNotNull' call to 'map'KT-38282
False positive "Remove redundant spread operator" inspection with array as class property or fun argumentKT-38915
"Remove explicit type specification" intention should be disabled in explicit API modeKT-38981
"Specify return type explicitly" inspection is not reported for declaration annotated with @PublishedApi in Explicit Api modeKT-39026
'Specify return type explicitly' intention duplicates compiler warning in Explicit api modeKT-39200
False positive "Redundant qualifier name" with same-named member object and companion propertyKT-39263
False positive "Variable should be inlined" for override value in initialized objectKT-39311
Batch quick fix name for "Change file's package" is truncatedKT-39393
"Convert anonymous function to lambda expression" intention does not add necessary lambda type parameter for outer functionKT-39454
False positive "Unused symbol" with private anonymous object propertyKT-39467
False negative "Move variable declaration into when" if a variable declaration is placed on a new lineKT-39490
'Wrap with ?.let' quickfix put the receiver inlet
lambdaKT-39552
Merge 'if's intention drops comment after nested ifKT-39604
"Package directive doesn't match file location" quick fix does not insert a space between keywordpackage
and the package nameKT-39772
"Redundant 'Unit'" should support lambdasKT-40215
"Create abstract function" quick fix suggested even though surrounding class is non-abstractKT-40448
"Convert call chain into sequence": support functions added in Kotlin 1.4KT-40558
False positive "Move to class body" intention on data class constructor propertyKT-41338
False positive "Redundant 'asSequence' call" when Map.Entry properties are used.KT-41615
"Unused equals expression" inspection: highlight whole expression with yellow backgroundKT-43037
Disable "Incomplete destructuring declaration" in 1.4.20IDE. J2K
KT-20421
J2K: SUPERTYPE_NOT_INITIALIZED for object extending base classKT-37298
J2K: implicit widening conversion for whole argument expression is transformed to cast on subexpressionKT-38879
J2K loses class annotations when converting class to objectKT-39149
J2K fails with augmented assignment operators when multiplying int by a non-intKT-40359
J2K: Conversion of invalid octal numbers throws NumberFormatExceptionKT-40363
J2K: Converting HEX integer literal in for-loop throws NumberFormatExceptionIDE. JS
KT-39319
KJS: Support debugging through new Intellij 202 APIKT-41328
KJS / Gradle: explicitApi mode doesn't workIDE. KDoc
KT-17926
IDE should show documentation for a class if the constructor has no docs.KT-19069
KDoc: show default argument valuesKT-37132
Redundant @NotNull annotation in a Quick Documentation pop-upIDE. Misc
KT-39327
Get rid of usages of internal classes ModuleOrderEntryImpl and LibraryImplKT-40455
Improve support for EditorConfigIDE. Navigation
KT-24616
Find usages fails to find setter usageKT-38762
"Cannot access 'java.io.Serializable' which is a supertype of 'kotlin.Int'" brokes navigation to constructor parameter declarationKT-39558
Call Hierarchy shows references from KDocKT-40788
"Find usages" on Java getter overridden in Kotlin doesn't find synthetic property usage when it is called without base declarationKT-40960
Unable to find usages in java of Kotlin constructor in library when sources is attached.IDE. Project View
KT-37528
'Add Kotlin File/Class' suggests file before classIDE. Refactorings
KT-19744
"Change Signature" is not available onconstructor
keyword in primary constructorKT-22170
"Change Signature" ignores Java usages of methods marked with @JvmStaticKT-37517
Invalid qualified name on copy-paste in build.gradle.ktsIDE. Run Configurations
KT-24463
MPP, Intellij runner: Run does not add resource directory to classpathKT-36370
Hide run gutter icons for not yet implemented targets in multiplatform projectsKT-39788
MPP, Gradle runner: Run does not add resource directory to classpath on project reopen without Gradle syncIDE. Scratch
KT-40557
IDE / Scratch: .kt files are treated as Kotlin scratches, opening failsIDE. Script
KT-35825
Custom kotlin scripts have no project import suggestions in sub modules.KT-39796
Performance of KotlinScriptDependenciesClassFinderKT-41622
IDE: Kotlin scripting support can't find context class from same projectKT-41905
IDE / Script: FilePathPattern parameter in @KotlinScript annotation is not reflected correctly in Pattern / ExtensionKT-42206
Cannot load script definitions using org.jetbrains.kotlin.jsr223.ScriptDefinitionForExtensionAndIdeConsoleRootsSourceIDE. Tests Support
KT-28854
Run/Debug configurations: "Redirect input from" option is not available for Kotlin appsKT-36909
IDE attempts to run non-JVM tests launched from context menu as JVM onesKT-37799
Don't show a target choice in context menu for a test launched on specific platformIDE. Wizards
KT-37965
New Project wizard 1.4+: adding JUnit5 test library add dependency to runnerKT-40527
Node.JS application template in New Project WizardKT-40874
Open new project wizard help page in browser when clicking help button in new project wizardKT-41417
Add react template to new project wizardKT-41418
Wizard: Support KJS compiler choiceKT-41958
New project wizard: Backend/Console applications template with Groovy DSL missing compileTestKotlin blockKT-42372
Rrename test classes in wizard template to avoid name clashingJavaScript
KT-38136
JS IR BE: add an ability to generate separate js files for each module and maybe each libraryKT-38868
[MPP / JS / IR] IllegalStateException: "Serializable class must have single primary constructor" for expect class without primary constructor with @Serializable annotationKT-39088
[ KJS / IR ] IllegalStateException: Concrete fake override IrBasedFunctionHandleKT-39367
KJS: .d.ts generation not working for objectsKT-39378
KJS / IR: "IllegalStateException: Operation is unsupported" with binaries.executable() and external function insidefor
loop with Iterator as return typeKT-41275
KJS / IR: "IllegalStateException: Can't find name for declaration FUN" caused by default value in constructor parameterKT-41627
KJS / IR / Serialization: IllegalStateException: Serializable class must have single primary constructorKT-37829
Kotlin JS IR: "Properties without fields are not supported" for companion objectsKT-39740
KJS / IR: Can't use Serializable and JsExport annotations at the same timeKMM Plugin
KT-41522
KMM: exceptions for Mobile Multiplatform plugin are suggested to report to Google, not JetBrainsKT-42065
[KMM plugin] iOS apps fail to launch on iOS simulator with Xcode 12Libraries
KT-41799
String.replace performance improvementsKT-43306
Deprecate createTempFile and createTempDir functions in kotlin.ioKT-19192
Provide file system extensions/APIs based on java.nio.file.PathKT-41837
Remove @ExperimentalStdlibApi from CancellationExceptionMiddle-end. IR
KT-40193
IR: pluginContext.referenceClass() is not resolving typealiasKT-41181
Kotlin/Native 1.4.0 compiler fails on data class with >120 fieldsNative. C and ObjC Import
KT-41250
[C-interop] Stubs for C functions without parameter names should have non-stable namesKT-41639
Use LazyIR for enums and structs from cached librariesKT-41655
Native: "type cnames.structs.S of return value is not supported here: doesn't correspond to any C type" when accessing forward-declared-struct-typed C global variableNative. ObjC Export
KT-38641
Kotlin-Multiplatform: Objective-Cdescription
method name collision in SwiftKT-39206
New line characters in @Deprecated annotation cause syntax error in Kotlin/native exported headerNative. Platform libraries
KT-42191
Support for Xcode 12Native. Runtime. Memory
KT-42275
"Memory.cpp:1605: runtime assert: Recursive GC is disallowed" sometimes when using Kotlin from Swift deinitNative. Stdlib
KT-39145
MutableData append methodTools. Android Extensions
KT-42342
Build fails withjava.lang.RuntimeException: Duplicate class found in modules
oncheckDebug(Release)DuplicateClasses
task when bothkotlin-parcelize
andkotlin-android-extensions
plugins are appliedTools. CLI
KT-35111
Extend CLI compilers help with link to online docsKT-41916
Add JVM target bytecode version 15Tools. Commonizer
KT-41220
[Commonizer] Short-circuit type aliasesKT-41247
[Commonizer] Missed supertypes in commonized classKT-41643
Commonizer exception for targets [ios_x64], [macos_x64]KT-42574
HMPP: unresolved platform.* imports in nativeMain source setTools. Compiler Plugins
KT-36329
Provide diagnostic in kotlinx.serialization when custom serializer mismatches property typeKT-40030
Move the Parcelize functionality out of the Android Extensions pluginTools. Gradle
KT-33908
Make Kotlin Gradle plugin compatible with the Gradle configuration cacheKT-35341
KotlinCompile: Symlinked friend paths are no longer supportedTools. Gradle. JS
New Features
KT-35330
Allow to customise generated package.jsonKT-39825
Provide single point of Webpack configuration in Gradle scriptKT-41054
Support Yarn resolutionsKT-41340
Add flag to suppress kotlin2js deprecation messageKT-41566
Kotlin/JS: Support JavaScript Library distributionKT-42222
KJS / Gradle: "Cannot find package@version in yarn.lock" when npm dependencies of one package but with different version are used in projectKT-42339
Support dukat binaries generationFixes
KT-39515
package.json is regenerated without a visible reasonKT-39838
Kotlin/JS Gradle tooling: NPM dependencies of different kinds with different versions of the same package fail with "Cannot find package@version in yarn.lock"KT-39995
Collect statistic about generateExternals featureKT-40087
Kotlin/JS, IR backend: browserRun: update in continuous mode fails: "ENOENT: no such file or directory" referring output .jsKT-40159
Implement workaround / fix for webpack's "window is not defined"KT-40178
Browser run task prints output in TeamCity formatKT-40201
Kotlin/JS: Gradle: public package.json has emptydevDependencies {}
KT-40202
Kotlin/JS: Gradle: NPM version range operators are written into package.json as escape sequencesKT-40342
[Gradle, JS, Maven] "Cannot find module" generating fake NPM module from Maven dependendencyKT-40462
Collect statistic about usages of kotlin.js.generate.executable.default optionKT-40753
Type script definition file is not referenced as types in the package.jsonKT-40812
Node.JS run working directoryKT-40865
KJS / Gradle: Registering a task with a type that directly extends AbstractTask has been deprecatedKT-40986
KJS / Gradle: BuildOperationQueueFailure when two different versions of js library are used as dependenciesKT-41125
Bump NPM versions in 1.4.20KT-41286
KJS / Gradle: args order in runTask is changed in 1.4.0KT-41475
KJS / Gradle: debug mode doesn't support custom launchers in karma configKT-41662
Kotlin/JS: with CSS support mode == "extract" browser test fails even without CSS usage: "Error in config file!"KT-42494
KJS / Gradle: "Configuration cache state could not be cached" caused by Gradle configuration cacheTools. Gradle. Native
KT-39764
Assertions are disabled when running K/N compiler in Gradle processKT-39999
Cocoapods plugin's dummy header cannot be compiledKT-40999
CocoaPods Gradle plugin: Support custom cinterop options when declaring a pod dependency.KT-41367
CocoaPods Gradle plugin: support git repository dependencyKT-41844
Kotlin 1.4.10 gradle configuration error with cocoapods using multiple multiplatform modulesKT-42531
Gradle task "podGenIos" fails if a Pod with a static library is added.Tools. Incremental Compile
KT-37446
Incremental analysis for Java sources fails when run on JDK 11Tools. Parcelize
KT-39981
Android parcel 'java.lang.VerifyError: Bad return type'KT-42267
Platform declaration clash
error in IDE when usingkotlinx.android.parcel.Parcelize
KT-42958
False positive IDE error on classes with kotlinx.parcelize.Parcelize on project initial importKT-43290
Typo in error message forErrorsParcelize.DEPRECATED_ANNOTATION
- kotlin.parcelize instead of kotlinx.parcelizeKT-43291
Diagnostic deprecation messages should not be shown in casekotlin-android-extensions
plugin is appliedTools. Scripts
KT-37987
Kotlin script: hyphen arguments not forwarded to scriptKT-38404
Scripting API: Provide Location of Annotation UsageKT-39502
Scripting: reverse order of Severity enum so that ERROR > INFOKT-42335
No "caused by" info about an exception that thrown in Kotlin ScriptTools. kapt
KT-25960
Interfaces annotated with JvmDefault has wrong modifiers during annotation processingKT-37732
Kapt task is broken after update to 1.3.70/1.3.71KT-42915
Kapt generates invalid stubs for static methods in interfaces in Kotlin 1.4.20-M2Checksums
v1.4.10
: Kotlin 1.4.10Contents
The release contents the JVM version of the Kotlin compiler, and also the Kotlin/Native compiler for the supported platforms: Linux, macOS and Windows.
Changelog
Compiler
Performance Improvements
KT-41149
NI: Upgraded project from 1.3.72 to 1.4.0 hangs during buildKT-41335
Kotlin Out of Memory When evaluating expressionKT-41400
NI: Huge performance regression for kotlin compiler from 1.3.72 to 1.4.0 due to using list of dozen lambdas in a callFixes
KT-41005
Coercion to Unit doesn't take into account nullability of a return type for lambdaKT-41043
NI: StackOverflowError throughPostponedArgumentInputTypesResolver.getAllDeeplyRelatedTypeVariables
KT-41135
Type Inference Regression For Property Delegate With Receiver TypeKT-41140
Unresolved reference to parameter of a catch block from lambda expression on 1.4.0KT-41150
IllegalStateException: Couldn't obtain compiled function body for public final inline funKT-41164
NI: "IllegalStateException: Error type encountered" with callbackFlow builder inside conditionKT-41202
Type inference fails in 1.4.0KT-41218
HMPP: arrayList declarations are visible both from stdlib-common and stdlib-jvm and lead to false-positive resolution ambiguity in IDEKT-41308
1.4.0 Type inference regression in suspend blocks with elvis operator expressionsKT-41357
ClassCastException for unstable smart cast on a property call receiverKT-41386
NI: Type mismatch with generic type parametersKT-41426
Operator compareTo is not called with nullable typeKT-41430
Broken choosing overload by lambda return type inside builder inferenceKT-41470
Wrong nullability assertion is generated when using the BuilderInference annotationKT-41482
Add a fallback compiler flag to disable the unified null checks behaviorIDE
KT-41325
SOE in IDEKotlinAsJavaSupportKT-41390
Typo: equals & hashCode are written with the first uppercase letterIDE. Code Style, Formatting
KT-41314
Formatter: Frequent freezes when reformatting code (TrailingCommaPostFormatProcessor)IDE. Debugger
KT-40417
Coroutines Debugger: “No coroutine information found” in case of main() entry-point without explicit debug-artifactIDE. Gradle. Script
KT-39542
EA-218043: java.util.NoSuchElementException: No element of given type found (GradleBuildRootsManager)KT-41283
Gradle scripts unable to support 1.4 language level features yetIDE. Inspections and Intentions
KT-41264
Disable “Redundant inner modifier” in 1.4.10KT-41395
Inspection description misses a space (needs to be lowercase)IDE. REPL
KT-40898
REPL: "IllegalAccessError: tried to access field" caused by log4jIDE. Wizards
KT-38921
New project wizard: Backend/Console applications template with Groovy DSL generates build.gradle with KotlinCompile instead of compileKotlinJavaScript
KT-38059
Support arrays passed as named arguments to varargsKT-40964
KJS / IR: don't generate "import" (short names) for external interfacesKT-41081
KJS IR: nativeGetter, nativeSetter, nativeInvoke are not supportedLibraries
KT-41320
Actual kotlin.test annotation typealiases are inaccessible in modular environmentMiddle-end. IR
KT-41324
IR: "Compilation failed: null" caused by StackOverflowError in compiler in multi-module projectNative. C and ObjC Import
KT-39762
cinterop on 1.4-M2 doesn't include @Deprecated Kotlin declaration for C declaration it fails to importNative. ObjC Export
KT-39206
New line characters in @Deprecated annotation cause syntax error in Kotlin/native exported headerKT-40976
"Unrecognized selector sent to instance" exception invoking suspending lambda from Swift in Native iOS projectReflection
KT-40842
"AssertionError: Built-in class kotlin.Any is not found" on java modular runTools. Compiler Plugins
KT-41321
Upgrading to 1.4.0 fails compiling native with is not bound errorTools. Gradle. Multiplatform
KT-41083
Transitive dependency on an MPP with host-specific source sets fails to resolve: "Couldn't resolve metadata artifact..."Tools. Gradle. Native
KT-40834
Cannot build Kotlin Multiplatform project on Windows 10 64-bit when the Cocoapods plugin is appliedTools. Scripts
KT-35925
REPL: Springboot autoconfiguration problem (META-INF/spring.factories not found ?)Tools. kapt
KT-41313
kapt 1.4.0 throws "ZipException: zip END header not found", when Graal SVM jar in classpathChecksums
v1.4.0
: Kotlin 1.4.0Contents
The release contents the JVM version of the Kotlin compiler, and also the Kotlin/Native compiler for the supported platforms: Linux, macOS and Windows.
Changelog
1.4.0
Compiler
New Features
KT-23729
Provide a way to generate JVM default method bodies in interfaces delegating to DefaultImplsKT-30330
Introduce KotlinNothingValueException and throw it instead of NPE on expressions of type NothingKT-38435
Support suspend conversion on callable references in JVM backendFixes
KT-35483
NI: compatibility modeKT-39728
Declarations fromkotlin.reflect
resolved to expect-classes even in JVM modules in IDEKT-40153
REPL IDE services completion fails on imports completionKT-40404
Mixed named/positional arguments: argument can be passed twiceKT-40544
NI: "TYPE_MISMATCH: Required: MutableList<out T!> Found: List" caused by Java interface functionKT-40555
NI: Spread operator allows inferred nullable typesKT-40646
NI: TYPE_MISMATCH: "inferred type is Unit but Observer was expected" caused by LieData.observe inferenceKT-40691
False positive CAPTURED_VAL_INITIALIZATION with EXACTLY_ONCE contractKT-40693
UnsupportedOperationException: no descriptor for type constructor of (CapturedType(out TResult)..CapturedType(out TResult)?)KT-40824
Usages of a typealias lose nullability and annotations in deserializationKT-40843
Unhandled exception for suspending methods that return Result typeKT-40869
Recursion computation inside compiler resolve on a correct codeKT-40893
Error "Captured values initialization is forbidden due to possible reassignment" when attempting to use the plusAssign operator with a java list inside an inline functionKT-40919
kotlin.collections.ArrayDeque requires an explicit import when compiling with kotlinc 1.4-RC and -language-version 1.3KT-40920
Regression in JvmDefault: incorrect access to missing DefaultImpls on default methods in Java interface overriding Kotlin interfaceKT-40978
Prohibit using suspend functions as SAM in fun interfacesKotlin/Native
KT-36766
)Docs & Examples
KT-35218
Fix misleading in JavaDoc forcreateTempDir
/createTempFile
KT-36981
Provide a visual illustration of source sets structure generated byios()
,watchos()
,tvos()
presetsKT-38050
Language Guide: MPP reference: add sample of language settings for all roots instead of common root onlyIDE
KT-30265
IDE, MPP: False negative TYPE_PARAMETER_AS_REIFIED in common codeKT-40494
UAST: "NoSuchElementException: No element of given type found" with use-site target annotationKT-40639
Shift IDE plugins updater numbers for Kotlin pluginIDE. Code Style, Formatting
KT-40636
Hard freeze on formatter: infinite recursionIDE. Gradle Integration
KT-30116
IDE: Unresolved reference in MPP module (androidMain source set) for annotation from common module (defined in commonMain and with JVM target)IDE. Gradle. Script
KT-34552
Deadlock in ScriptDefinitionsManagerKT-40675
Gradle build file is not highlighted until navigating to symbolIDE. JS
KT-40461
Create new projects with kotlin.js.generate.executable.default=falseIDE. Script
KT-39547
Kotlin script support freezes IDEAKT-40242
gradle.kts: Deadlock in ScriptClassRootsUpdaterIDE. Wizards
KT-36153
New Project Wizard: provide more referential info on project structure editor screenKT-39904
New Project wizard 1.4: update Frontend Application to make it run with JS IRKT-40149
Gradle project wizard: templates for Kotlin/JS are not properly formattedJavaScript
KT-25859
JS: support function references to functions with vararg if expected type ends with repeated vararg element typeKT-40083
K/JS-IR: java.lang.IllegalStateException: has not acquired a symbol yetKT-40892
KJS, IR: Unresolved references on importing classes from kotlinx-nodejsLibraries
KT-39051
Libraries native artifacts are published without sourcesTools. Gradle
KT-27816
Provide a possibility to specify intermediate source sets between platform-agnostic and platform-specific test source setsKT-37720
Replace ArtifactTransform with TransformActionKT-40559
Adding the stdlib by default triggers warning in the Android Gradle PluginTools. Gradle. JS
KT-40093
Incorrect updating version of Kotlin/JS dependencies in package.jsonTools. Gradle. Multiplatform
KT-27320
Provide a way to reuse same sources for similar Native targetKT-40058
NPE from mpp gradle plugin on kotlinx.benchmarksTools. Gradle. Native
KT-40801
Gradle CocoaPods integration: Cannot change a framework name1.4-RC
Backend. Native
KT-40209
java.lang.UnsupportedOperationException: org.jetbrains.kotlin.ir.declarations.impl.IrValueParameterImpl@7648417
KT-40367
Kotlin/Native-Swift interop (iOS): Array member initialization failing in release buildsCompiler
Fixes
KT-31025
Type mismatch when callable reference is resolved with a functional expected type and SAM conversionKT-37388
Consider relaxing rules about inferring Nothing inside special constructions (if, try, when)KT-37717
NI: "IllegalStateException: Error type encountered" with @BuilderInferenceKT-38427
New inference in branched conditions (if, when) results in odd behavior with inconsistent compiler warnings and runtime errorsKT-38899
NI: False positive IMPLICIT_NOTHING_TYPE_ARGUMENT_IN_RETURN_POSITION leads to NPEKT-39468
NI: overload resolution ambiguity between functions passingT
andFoo<T>
with a contravariant receiverKT-39618
NEW_INFERENCE_NO_INFORMATION_FOR_PARAMETER: unable to infer generic type on @BuilderInference annotated lambda parameter with receiver typeKT-39633
NI: Incorrect type parameter instantiation based on contravariant type argumentKT-39691
NI: Missing SAM conversion for nullable lambdaKT-39860
Make Kotlin binaries publicly available (set KotlinCompilerVersion.IS_PRE_RELEASE = false)KT-39900
NI: Incorrect type inference in a lambda returning UnitKT-39925
New JVM default compilation mode doesn't check that JVM target is 1.8KT-39943
Write information about all-compatibility mode in metadataKT-39953
NI: ClassCastException "cannot be cast to java.lang.Void" with if-else in return statement in ANdroid projectKT-40045
NI: lambda’s receiver type isn't inferred properlyKT-40057
NI: provideDelegate org.jetbrains.kotlin.codegen.CompilationException: Back-end (JVM) Internal error: wrong bytecode generated for static initializerKT-40060
NI: postponed variable from the builder inference flows to back-end and leads to throw an exceptionKT-40112
Kotlin Gradle DSL: COMPATIBILITY_WARNING onkotlin.sourceSets
blockKT-40113
Kotlin Gradle DSL: "Expression 'main' cannot be invoked as a function" fordistributions.main
DSL blockKT-40128
Introduce compiler key to disable compatibility resolution mechanism for new inference featuresKT-40151
NI: postponed variable isn't substituted for top-level CR inside builder inferenceKT-40214
AbstractMethodError in gradle subplugin which is used in Android appKT-40234
Deprecation level "hidden" has no effect on callable reference argumentKT-40247
NI: false positive "function should be called from coroutine or another suspend function" for suspend invoke operator in try-catchKT-40254
Rewrite at slice with two callable reference argumentsKT-40269
NI: "disabled Unit conversions" error has appeared on green codeKT-40337
NI: false positive "function should be called from coroutine or another suspend function" for suspend invoke operator inwhen
blockKT-40406
Prohibit reflection on adapted callable referencesIDE
KT-39968
Paths in KotlinJavaRuntime library aren't updated after you run IDE from a different directoryKT-39989
NullPointerException when opening Kotlin facets in Project Structure dialog in IDEA 192KT-40311
Create change_notes for 1.4 in IDE plugin descriptionIDE. Debugger
KT-39808
(CoroutineDebugger) Doesn't start with kotlinx-coroutines-core >= 1.3.6KT-40073
(CoroutineDebugger) Change minimum supported kotlinx.coroutines version to 1.3.8*KT-40172
Restored frame variables isn't shown for suspended coroutinesKT-40635
Coroutines Debugger: make IDE plugin accept coroutines 1.3.8-rc* versions as wellIDE. Gradle Integration
KT-38744
No dependency between Androidtest
and commonTest source sets with kotlin.mpp.enableGranularSourceSetsMetadata=trueKT-39037
'None of the consumable configurations have attributes' in MPP IDE import with transitive project dependency on selfIDE. Gradle. Script
KT-31137
IntelliJ would get very slow when editing gradle buildSrc(using the kotlin dsl)KT-36078
Gradle Kotlin script context is not reloaded when gradle/wrapper/gradle-wrapper.properties file is changedKT-39317
ISE “Calling invokeAndWait from read-action leads to possible deadlock.” on importing simple Gradle-based project in nightly IJIDE. Inspections and Intentions
KT-28662
Inspection to flag usage of the wrong Transient annotation on Kotlin Serializable classKT-34209
Switch default behaviour in 1.4 for insertion (to build script) via quick fix of the compiler option enabling inline classesKT-36131
Suggest to add a missing module dependency on an unresolved reference in Kotlin codeKT-37462
Add "Add dependency to module" quickfix in multimodule Maven projectKT-39869
Add whole project migration usages of kotlin.browser.* & kotlin.dom.* to kotlinx.browser.* & kotlinx.dom.* respectivelyIDE. Wizards
KT-40004
New Project wizard 1.4+: nohttps://dl.bintray.com/kotlin/kotlinx
repository is added for kotlinx-htmlKT-40037
New Project wizard: update Ktor versionKT-40092
Wizard: the templates panel on mac OS is too wideKT-40232
New Wizard: Android Sdk path doesn't have backslash escaping on WindowsKT-40371
New Project Wizard: Frontend Application / Library results in broken run configurationKT-40377
New Project Wizard: Frontend Application defines NPM dependencies that are unnecessary with Kotlin 1.4-RC+KT-40378
New Project Wizard: Frontend Application, Disabling JavaScript test framework has no effectKT-40407
Wizard: do not add stdlib by default for Gradle projects in wizardJS. Tools
KT-39984
Update dukat version in toolchain near to release of 1.4-RCJavaScript
KT-32186
Make sure K/JS Reflection API documentation is correct and fix it.KT-37563
K/JS: stacktrace is not captured for exceptions without primary constructor inherited from Exception/ErrorKT-37752
Generated typescript incorrect for constructors of derived classesKT-37883
KJS: Generated TypeScript uses 'declare' rather than 'export'KT-38771
JS: support non-reified type parameters in typeOfKT-39873
Update Kotlin JavaScript wrappers due to NON_EXPORTABLE_TYPE diagnostic introductionKT-40126
[JS / IR] NPE while compiling interfaces with invoke which is passed as a delegateKT-40216
KJS / IR: AssertionError caused by an anonymous object in the dependency projectLibraries
KT-33069
StringBuilder common functionsKT-35972
Add contract to builder functionsKT-37101
Mark following api with DeprecatedSinceKotlin("1.4")KT-38360
Make sure that JB libraries correctly define their npm deps and republish them (after KT-30619)KT-38817
'capitalize' should convert digraphs to title caseKT-40168
Remove StringBuilder.capacity from common and JS partsMiddle-end. IR
KT-40520
Assert during fake-override generationTools. Commonizer
KT-40199
Commonizer loses nullability of abbreviated typesTools. Compiler Plugins
KT-40036
Add diagnostic that shows is serialization plugin compatible with serialization-runtimeTools. Gradle
KT-39755
[KJS / Gradle / Legacy mode] Directory with whitespace is not processedKT-39809
Kotlin Gradle plugin: ServiceConfigurationError: org.jetbrains.kotlin.gradle.plugin.KotlinGradleSubplugin: Provider org.jetbrains.kotlin.gradle.internal.AndroidSubplugin not a subtypeKT-39977
Collect statistics of used -Xjvm-default optionsKT-40300
Fail the build if in MPP plugin no targets configuredTools. Gradle. JS
KT-38170
Investigate how to improve migration experience from pre 1.4.0 DSL to the new oneKT-39654
Default CSS settings in webpack has priority over user's settingsKT-39842
Kotlin/JS Gradle DSL: peerNpm dependency failsKT-40048
[Gradle, JS] Deprecate kotlin-frontend pluginKT-40067
[Gradle, JS] Public package.json for mixed JS/TS projectKT-40210
Fail the build when Kotlin/JS target is not (properly) configuredKT-40320
Gradle JS: make migration to the new Gradle DSL smootherTools. Gradle. Multiplatform
KT-32239
Custom configurations inside Kotlin JVM Gradle projects can't properly resolve multiplatform dependenciesKT-39897
[Commonizer] Fast-pass for library fragments absent for some targetsTools. J2K
KT-39739
J2K: Access is allowed from event dispatch thread with IW lock onlyTools. kapt
KT-34604
KAPT: Flaky NPE throughorg.jetbrains.kotlin.kapt3.base.ProcessorLoader.doLoadProcessors
KT-36302
TypeTreeVisitor.visitMemberSelect IllegalStateException: node.sym must not be null on JDK 11KT-39876
KAPT: Serialization of classpath structure is incorrect if there are dependencies between types in jar/dir1.4-M3
Compiler
New Features
KT-23575
Deprecate with replacement and SinceKotlinKT-38652
Do not generate optional annotations to class files on JVMKT-38777
Hide Throwable.addSuppressed member and prefer extension insteadPerformance Improvements
KT-38489
Compilation of kotlin html DSL increasingly slowKT-28650
Type inference for argument type is very slow if several interfaces with a type parameter is used as an upper bound of a type parameterFixes
KT-15971
Incorrect bytecode generated when inheriting default arguments not from the first supertypeKT-25290
NI: "AssertionError: If original type is SAM type, then candidate should have same type constructor" on out projection of Java classKT-28672
Contracts on calls with implicit receiversKT-30279
Support non-reified type parameters in typeOfKT-31908
NI: CCE on passing lambda to function which accepts vararg SAM interfaceKT-32156
New inference issue with genericsKT-32229
New inference algorithm not taking into account the upper bound classKT-33455
Override equals/hashCode in functional interface wrappersKT-34902
AnalyzerException: Argument 1: expected I, but found R for unsigned types in generic data classKT-35075
AssertionError: "No resolved call for ..." with conditional function referencesKT-35468
Overcome ambiguity between typealias kotlin.Throws and the aliased type kotlin.jvm.ThrowsKT-35494
NI: Multiple duplicate error diagnostics (in IDE popup) with NULL_FOR_NONNULL_TYPEKT-35681
Wrong common supertype between raw and integer literal type leads to unsound codeKT-35937
Error "Declaration has several compatible actuals" on incremental buildKT-36013
Functional interface conversion not happens on a value of functional type with smart cast to a relevant functional typeKT-36045
Do not depend on the order of lambda arguments to coerce result toUnit
KT-36448
NI: fix tests after enabling NI in the compilerKT-36706
Prohibit functional interface constructor referencesKT-36969
Generate @NotNull on instance parameters of Interface$DefaultImpls methodsKT-37058
Incorrect overload resolution ambiguity on callable reference in a conditional expression with new inferenceKT-37120
[FIR] False UNRESOLVED_REFERENCE for public and protected member functions and properties which are declared in object inner classKT-37149
Conversion when generic specified by type argument of SAM typeKT-37249
false TYPE_MISMATCH when When-expression branches have try-catch blocksKT-37341
NI: Type mismatch with combination of lambda and function referenceKT-37436
AME: "Receiver class does not define or inherit an implementation of the resolved method" in runtime on usage of non-abstract method of fun interfaceKT-37510
NI infersjava.lang.Void
from the expression in a lazy property delegate and throws ClassCastException at runtimeKT-37541
SAM conversion with fun interface without a function fails on compiling and IDE analysis in SamAdapterFunctionsScope.getSamConstructor()KT-37574
NI: Type mismatch with Kotlin object extending functional type passed as @FunctionalInterface to JavaKT-37630
NI: ILT suitability in a call is broken if there are CST calculation and calling function's type parametersKT-37665
NI: applicability error due to implicitly inferred Nothing for returning T with expected typeKT-37712
No extension receiver in functional interface created with lambdaKT-37715
NI: VerifyError: Bad type on operand stack with varargs generic value when type is inferredKT-37721
NI: Function reference with vararg parameter treated as array and missing default parameter is rejectedKT-37887
NI: Smart casting for Map doesn't work if the variable is already "smart casted"KT-37914
NI: broken inference for a casting to subtype function within the common constraint system with this subtypeKT-37952
NI: improve lambdas completion through separation the lambdas analysis into several stepsKT-38069
Callable reference adaptation should have dependency on API version 1.4KT-38143
New type inference fails when calling extension function defined on generic type with type arguments nested too deepKT-38156
FIR Metadata generationKT-38197
java.lang.OutOfMemoryError: Java heap space: failed reallocation of scalar replaced objectsKT-38259
NEW_INFERENCE_NO_INFORMATION_FOR_PARAMETER for provideDelegateKT-38337
Map delegation fails for inline classesKT-38401
FIR: protected effective visibility is handled unpreciselyKT-38416
FIR: infinite loop in BB coroutine test 'overrideDefaultArgument.kt'KT-38432
FIR: incorrect effective visibility in anonymous objectKT-38434
Implement resolution of suspend-conversion on FE only, but give error if suspend conversion is calledKT-38437
[FIR] String(CharArray) is resolved to java.lang.String constructor instead of kotlin.text.String pseudo-constructorKT-38439
NI: anonymous functions without receiver is allowed if there is an expected type with receiverKT-38473
FIR: ConeIntegerLiteralType in signatureKT-38537
IllegalArgumentException: "marginPrefix must be non-blank string" with raw strings and space as margin prefix in trimMargin() callKT-38604
Implicit suspend conversion on call arguments doesn't work on vararg elementsKT-38680
NSME when calling generic interface method with default parameters overriden with inline class type argumentKT-38681
Wrong bytecode generated when calling generic interface method with default parameters overriden with primitive type argumentKT-38691
NI: overload resolution ambiguity if takeR
and() -> R
, and pass literal lambda, which returnsR
KT-38799
False positive USELESS_CAST for lambda parameterKT-38802
Generated code crashes by ClassCastException when delegating with inline classKT-38853
Backend Internal error: Error type encountered: Unresolved type for nested class used in an annotation argument on an interface methodKT-38890
NI: false negative Type mismatch for values with fun keywordKT-39010
NI: Regression with false-positive smartcast on var of generic typeKT-39013
202, ASM 8: "AnalyzerException: Execution can fall off the end of the code"KT-39260
"AssertionError: Unsigned type expected: Int" in rangeKT-39305
NEW_INFERENCE_NO_INFORMATION_FOR_PARAMETER: unable to infer deeply nested type bound when class implements generic interfaceKT-39408
Using unsigned arrays as generics fails in 1.4-M2 with class cast exceptionKT-39533
NI: Wrong overload resolution for methods with SAM converted function reference argumentsKT-39535
NI: Inference fails for the parameters of SAM converted lambdas with type parametersKT-39603
Require explicit override in JVM default compatibility mode on implicit generic specialization of inherited methods in classesKT-39671
Couldn't inline method call 'expectBody'KT-39816
NI:ClassCastException and no IDE error with provideDelegate when DELEGATE_SPECIAL_FUNCTION_MISSING in OIKT-32779
Rewrite at slice
in array access resolution in coroutine inferenceKT-39387
Can't build Kotlin project due to overload resolution ambiguity on flatMap callsKT-39229
NI: resolution to wrong candidate (SAM-type against similar functional type)Docs & Examples
KT-36245
Document that @kotlin.native.ThreadLocal annotation doesn't work anywhere except in Kotlin/NativeKT-37943
Conflicting overloads in the factory functions sample code in Coding Conventions PageIDE
New Features
KT-10974
Add Code Style: Import Layout Configuration TableKT-39065
"Join lines" should remove trailing comma on call siteFixes
KT-9065
Wrong result when move statement through if block with call with lambdaKT-14757
Move statement up breaks code in function parameter listKT-14946
Move statement up/down (with Ctrl+Shift+Up/Down) messes with empty linesKT-15143
Kotlin: Colors&Fonts -> "Enum entry" should use Language Default -> Classes - Static fieldKT-17887
Moving statement (Ctrl/Cmd+Shift+Down) messes with use blockKT-34187
UAST cannot get type of array accessKT-34524
"PSI and index do not match" and IDE freeze with library import fromsquare/workflow
KT-35574
UAST: UBreakExpression in when expression should be UYieldExpressionKT-36801
IDE: Unsupported language version value is represented with "latest stable" in GUIKT-37378
Remove IDE option "Enable new type inference algorithm..." in 1.4KT-38003
"Analyze Data Flow from Here" should work on parameter of abstract methodKT-38173
Reified types do no have extends informationKT-38217
Make Kotlin plugin settings searchableKT-38247
"IncorrectOperationException: Incorrect expression" through UltraLightUtils.kt: inlined string is not escaped before parsingKT-38293
Throwable: "'codestyle.name.kotlin' is not found in java.util.PropertyResourceBundle" at KotlinLanguageCodeStyleSettingsProvider.getConfigurableDisplayName()KT-38407
Drop components from plugin.xmlKT-38443
No error on change in property initializerKT-38521
ISE: Loop in parent structure when converting a DOT_QUALIFIED_EXPRESSION with parent ANNOTATED_EXPRESSIONKT-38571
Rework deprecated EPsKT-38632
Change the code style to official in testsIDE. Code Style, Formatting
Fixes
KT-24750
Formatter: Minimum blank lines after class header does nothingKT-31169
IDEA settings search fails to find "Tabs and Indents" tab in Kotlin code style settingsKT-35359
Incorrect indent for multiline expression in string templateKT-37420
Add setting to disable inserting empty line between declaration and declaration with commentKT-37891
Formatter inserts empty lines between annotated propertiesKT-38036
Use trailing comma setting does not apply to code example in Settings dialogKT-38568
False positive: weak warning "Missing line break" on -> in when expressionKT-39024
Add option for blank lines before declaration with comment or annotation on separate lineKT-39079
Trailing comma: add base support for call siteKT-39123
OptionAlign 'when' branches in columns
does nothingKT-39180
Move trailing comma settings in Other tabIDE. Completion
KT-18538
Completion of static members of grand-super java class inserts unnecessary qualifierKT-38445
Fully qualified class name is used instead after insertion ofdelay
methodIDE. Debugger
Fixes
KT-14057
Debugger couldn't step into Reader.readKT-14828
Bad step into/over behavior for functions with default parametersKT-36403
Method breakpoints don't work for librariesKT-36404
Evaluate: "AssertionError: Argument expression is not saved for a SAM constructor"KT-37486
Kotlin plugin keeps reference to stream debugger support classes after stream debugger plugin is disabledKT-38484
Coroutines Debugger: IAE “Requested element count -1 is less than zero.” is thrown by calling dumpCoroutinesKT-38606
Coroutine Debugger: OCE from org.jetbrains.kotlin.idea.debugger.coroutine.proxy.mirror.BaseMirror.isCompatibleKT-39143
NPE on setCurrentStackFrame to Kotlin inner compiled class contentKT-39412
Failed to find Premain-Class manifest attribute when debugging main method with ktorKT-39634
(CoroutineDebugger) Agent doesn't start if using kotlinx-coroutines-core only dependencyKT-39648
Coroutines debugger doesn't see stacktraces in case of the project has kotlinx-coroutines-debug dependencyIDE. Gradle Integration
Performance Improvements
KT-39059
Poor performance ofmodifyDependenciesOnMppModules
Fixes
KT-35921
Gradle Import fails with "Unsupported major.minor version 52.0" on pure Java project in case "Gradle JDK" is lower 1.8 and Kotlin plugin is enabledKT-36673
Gradle Project importing: move ModelBuilders and ModelProviders to kotlin-gradle-tooling jarKT-36792
IDEA 2020.1: Some module->module dependencies in HMPP project are missed after import from GradleKT-37125
Imported modules structure for MPP project is displayed messy in UI in IDEA 2020.1KT-37428
NPE at KotlinFacetSettings.setLanguageLevel() on the first project importKT-38706
IDE Gradle import creates 4 JavaScript modules for MPP source sets with BOTH compiler typeKT-38767
Published hierarchical multiplatform library symbols are unresolved in IDE (master)KT-38842
False positive [INVISIBLE_MEMBER] forinternal
declaration of commonMain called from commonTestKT-39213
IDE: references from MPP project to JavaScript library are unresolved, when project and library are compiled with "both" modeKT-39657
Language settings for intermediate source-sets are lost during importIDE. Gradle. Script
New Features
KT-34481
*.gradle.kts
: use Intellij IDEA Gradle project sync mechanics for updating script configurationPerformance Improvements
KT-34138
Deadlock inScriptTemplatesFromDependenciesProvider
KT-38875
Deadlock in ScriptClassRootsUpdater.checkInvalidSdksFixes
KT-34265
Bogus "build configuration failed, run 'gradle tasks' for more information" message and other issues related to "script dependencies"KT-34444
*.gradle.kts: special storage of all scripts configuration on one fileKT-35153
build.gradle.kts: scripts in removed subproject remain imported, but shouldn'tKT-35573
Request for gradle build script configuration only after explicit click on notificationKT-36675
move .gradle.kts ModelBuilders and ModelProviders to kotlin-gradle-tooling jarKT-37178
build.gradle.kts: Rework the notification for scripts out of projectKT-37631
Unnecessary loading dependencies after opening build.gradle.kts after project import with Gradle 6KT-37863
Scanning dependencies for script definitions takes too long or indefinitely during Gradle importKT-38296
MISSING_DEPENDENCY_SUPERCLASS in the build.gradle.kts editor while Gradle runs OkKT-38541
"Invalid file" exception in ScriptChangeListener.getAnalyzableKtFileForScript()KT-39104
“Gradle Kotlin DSL script configuration is missing” after importing project in IJ201, Gradle 6.3KT-39469
Gradle version is not updated in script dependencies if the version of gradle was changed in gradle-wrapper.propertiesKT-39771
Freeze 30s from org.jetbrains.kotlin.scripting.resolve.ApiChangeDependencyResolverWrapper.resolve on loading script configuration with Gradle 5.6.4IDE. Inspections and Intentions
New Features
KT-14884
Intention to add missing "class" keyword for enum and annotation top-level declarationsKT-17209
Provide intention to fix platform declaration clash (CONFLICTING_JVM_DECLARATIONS)KT-24522
Suggest to move typealias outside the classKT-30263
Detect redundant conversions of unsigned typesKT-35893
Support Inspection for unnecessary asSequence() callKT-38559
"Change JVM name" (@JvmName) quickfix: improve name suggester for generic functionsKT-38597
Expand Boolean intentionKT-38982
Add "Logger initialized with foreign class" inspectionKT-39131
TrailingCommaInspection: should suggest fixes for call-site without warningsFixes
KT-5271
Missing QuickFix for Multiple supertypes availableKT-11865
"Create secondary constructor" quick fix always inserts parameter-less call tothis()
KT-14021
Quickfix to add parameter to function gives strange name to parameterKT-17121
"Implement members" quick fix is not suggestedKT-17368
Don't highlight members annotated with @JsName as unusedKT-20795
"replace explicit parameter with it" creates invalid code in case of overload ambiguitiesKT-22014
Intention "convert lambda to reference" should be available for implicit 'this'KT-22015
Intention "Convert lambda to reference" should be available in spite of the lambda in or out of parenthesesKT-22142
Intentions: "Convert to primary constructor" changes semantics for property with custom setterKT-22878
Empty argument list at the call site of custom function named "suspend" shouldn't be reported as unnecessaryKT-24281
Importing of invoke() from the same file is reported as unused even if it isn'tKT-25050
False-positive inspection "Call replaceable with binary operator" for 'equals'KT-26361
@Deprecated "ReplaceWith" quickfix inserts 'this' incorrectly when using function importsKT-27651
'Condition is always true' inspection should not be triggered when the condition has references to a named constantKT-29934
False negativeChange type
quickfix on primary constructor override val parameter when it has wrong typeKT-31682
'Convert lambda to reference' intention inside class with function which return object produces uncompilable codeKT-31760
Implement Abstract Function/Property intentions position generated member improperlyKT-32511
Create class quick fix is not suggested in super type list in case of missing primary constructorKT-32565
False positive "Variable is the same as 'credentials' and should be inlined" with object declared and returned from lambdaKT-32801
False positive "Call on collection type may be reduced" with mapNotNull, generic lambda block and new inferenceKT-33951
ReplaceWith quickfix with unqualified object member call doesn't substitute argument for parameterKT-34378
"Convert lambda to reference" refactoring does not work for suspend functionsKT-34677
False positive "Collection count can be converted to size" withIterable
KT-34696
Wrong 'Redundant qualifier name' for 'MyEnum.values' usageKT-34713
"Condition is always 'false'": quickfix "Delete expression" doesn't removeelse
keyword (may break control flow)KT-35015
ReplaceWith doesn't substitute parameters with argument expressionsKT-35329
Replace 'when' with 'if' intention: do not suggest if 'when' is used as expression and it has no 'else' branchKT-36194
"Add braces to 'for' statement" inserts extra line break and moves the following single-line commentKT-36406
"To ordinary string literal" intention adds unnecessary escapes to characters in template expressionKT-36461
"Create enum constant" quick fix adds after semicolon, if the last entry has a commaKT-36462
"Create enum constant" quick fix doesn't add trailing commaKT-36508
False positive "Replace 'to' with infix form" when 'to' lambda generic type argument is specified explicitlyKT-36930
Intention "Specify type explicitly" adds NotNull annotation when calling java method with the annotationKT-37148
"Remove redundant.let
call doesn't remove extra callsKT-37156
"Unused unary operator" inspection highlighting is hard to seeKT-37173
"Replace with string templates" intention for String.format produces uncompilable string templateKT-37181
Don't show "Remove redundant qualifier name" inspection on qualified Companion imported with star importKT-37214
"Convert lambda to reference" with a labeled "this" receiver failsKT-37256
False positivePlatformExtensionReceiverOfInline
inspection if a platform type value is passed to a nullable receiverKT-37744
"Convert lambda to reference" inspection quick fix create incompilable code when type is inferred from lambda parameterKT-37746
"Redundant suspend modifier" should not be reported for functions with actual keywordKT-37842
"Convert to anonymous function" creates broken code with suspend functionsKT-37908
"Convert to anonymous object" quickfix: false negative when interface has concrete functionsKT-37967
Replace 'invoke' with direct call intention adds unnecessary parenthesisKT-37977
"Replace 'invoke' with direct call" intention: false positive when function is not operatorKT-38062
Reactor Quickfix throwsNotImplementedError
for KotlinKT-38240
False positive redundant semicolon withas
cast andnot
unary operator on next lineKT-38261
Redundant 'let' call removal leaves ?. operator and makes code uncompilableKT-38310
Remove explicit type annotation intention drops 'suspend'KT-38492
False positive "Add import" intention for already imported classKT-38520
SetterBackingFieldAssignmentInspection throws exceptionKT-38649
False positive quickfix "Assignment should be lifted out of when" in presence of smartcastsKT-38677
Invalid psi tree afterLift assigment out of...
KT-38790
"Convert sealed subclass to object" for data classes doesn't remove 'data' keywordKT-38829
'Remove redundant backticks' can be broken with @ in nameKT-38831
'Replace with assignment' can be broken with fast code changeKT-38832
"Remove curly braces" intention may produce CCEKT-38948
False positive quickfix "Make containing function suspend" for anonymous functionKT-38961
"Useless call on collection type" for filterNotNull on non-null array where list return type is expectedKT-39069
Improve TrailingCommaInspectionKT-39151
False positive inspection to replace Java forEach with Kotlin forEach when using ConcurrentHashMapIDE. JS
KT-39275
Kotlin JS Browser template for kotlin dsl doesn't include index.htmlIDE. KDoc
KT-32163
Open Quick Documentation when cursor inside function / constructor bracketsIDE. Navigation
KT-32245
Method in Kotlin class is not listed among implementing methodsKT-33510
There is no gutter icon to navigate fromactual
toexpect
ifexpect
and the correspondingactual
declarations are in the same fileKT-38260
Navigation bar doesn't show directories of files with a single top level Kotlin classKT-38466
Top level functions/properties aren't shown in navigation panelIDE. Project View
KT-36444
Structure view: add ability to sort by visibilityKT-38276
Structure view: support visibility filter for class propertiesIDE. REPL
KT-38454
Kotlin REPL in IntelliJ doesn't take module's JVM target setting into accountIDE. Refactorings
KT-12878
"Change signature" forces line breaks after every parameter declarationKT-30128
Change Signature should move lambda outside of parentheses if the arguments are reordered so that the lambda goes lastKT-35338
Move/rename refactorings mess up code formatting by wrapping linesKT-38449
Extract variable refactoring is broken by NPEKT-38543
Copy can't work to package with escaped packageKT-38627
Rename package refactorings mess up code formatting by wrapping linesIDE. Run Configurations
KT-34516
Don't suggest incompatible targets in a drop-down list for run test gutter icon in multiplatform projectsKT-38102
DeprecatedMethodException ConfigurationFactory.getIdIDE. Scratch
KT-38455
Kotlin scratch files don't take module's JVM target setting into accountIDE. Script
KT-39791
Kotlin plugin loads VFS in the output directoriesIDE. Structural Search
KT-39721
Optimize Kotlin SSR by using the indexKT-39733
Augmented assignment matchingKT-39769
"When expressions" predefined template doesn't match all when expressionsIDE. Wizards
KT-38673
New Project Wizard: multiplatform templates are generated having unsupported Gradle version in a wrapperKT-38810
Incorrect order of build phases in Xcode project from new wizardKT-38952
Remove old new_project_wizardsKT-39503
New Project wizard 1.4+: release kotlinx.html version is added to dependencies with milestone IDE pluginKT-39700
Wizard: group project templates on the first step by the project typeKT-39770
CSS Support in Kotlin wizardsKT-39826
Fix Android app in New Template WizardKT-39843
Change imports in JS/browser wizardJS. Tools
KT-32273
Kotlin/JS console error on hot reloadKT-39498
Update dukat version in toolchain near to release of 1.4-M3JavaScript
KT-29916
ImplementtypeOf
on JSKT-35857
Kotlin/JS CLI bundled to IDEA plugin can't compile using IR back-end out of the boxKT-36798
KJS: prohibit using @JsExport on a non-top-level declarationKT-37771
KJS: Generated TypeScript does not recursively export base classes (can fail with generics)KT-38113
Review public API of JS stdlib for IR BEKT-38765
[JS / IR] AssertionError: class EventEmitter: Super class should be any: with nested class extending parent classKT-38768
KJS IR: generate ES2015 (aka ES6) classesLibraries
New Features
KT-11253
Function to sum long or other numeric property of items in a collectionKT-28933
capitalize() with Locale argument in the JDK stdlibKT-34142
Create SortedMap with Comparator and itemsKT-34506
Add Sequence.flatMap overload that works on IterableKT-36894
Support flatMapIndexed in the Collections APIKT-38480
Introduce experimental annotation for enabling overload resolution by lambda resultKT-38708
minOf/maxOf functions to return min/max value provided by selectorKT-39707
Make some interfaces in stdlib functionalPerformance Improvements
KT-23142
toHashSet is suboptimal for inputs with a lot of duplicatesFixes
KT-21266
Add module-info for standard library artifactsKT-23322
Document 'reduce' operation behavior on empty collectionsKT-28753
Comparing floating point values in array/list operations 'contains', 'indexOf', 'lastIndexOf': IEEE 754 or total orderKT-30083
Annotate KTypeProjection.STAR with JvmField in a compatible wayKT-30084
Annotate functions in KTypeProjection.Companion with JvmStaticKT-31343
Deprecate old String <-> CharArray, ByteArray conversion apiKT-34596
Add some validation to KTypeProjection constructorKT-35978
Review and remove experimental stdlib API status for 1.4KT-38388
DocumentfromIndex
andtoIndex
parametersKT-38854
Gradually change the return type of collection min/max functions to non-nullableKT-39023
Document split(Pattern) extension differences from Pattern.splitKT-39064
Introduce minOrNull and maxOrNull extension functions on collectionsKT-39235
Lift experimental annotation from bit operationsKT-39237
Lift experimental annotation from common StringBuilderKT-39238
Appendable.appendRange - remove nullabilityKT-39239
Lift experimental annotation from String <-> utf8 conversion apiKT-39244
KJS: update polyfills, all or most of them must not be enumerableKT-39330
Migrate declarations from kotlin.dom and kotlin.browser packages to kotlinx.*Middle-end. IR
KT-31088
need a way to compute fake overrides for pure IRKT-33207
Kotlin/Native: KNPE during deserialization of an inner classKT-33267
Kotlin/Native: Deserialization error for an "inner" extension property imported from a classKT-37255
Make psi2ir aware of declarations provided by compiler pluginsReflection
KT-22936
Not all things can be changed tocreateType
yet, and nowdefaultType
methods are starting to failKT-32241
Move KType.javaType into stdlib from reflectKT-34344
KType.javaType implementation throws when invoked with a typeOf()KT-38491
IllegalArgumentException when using callBy on function with inline class parameters and default argumentsKT-38881
Add KClass.isFun modifier of functional interfaces to reflectionTools. Android Extensions
KT-25807
Kotlin extension annotation @Parcelize in AIDL returns Object instead of original TTools. CLI
KT-30211
Support a way to pass arguments to the underlying JVM in kotlinc batch scripts on WindowsKT-30778
kotlin-compiler.jar contains shaded but not relocated kotlinx.coroutinesKT-38070
Compiler option to bypass prerelease metadata incompatibility errorKT-38413
Add JVM target bytecode version 14Tools. Compiler Plugins
KT-39274
[KJS / IR] Custom serializer for class without zero argument constructor doesn't compileTools. Gradle
KT-25428
Kotlin Gradle Plugin: Use new Gradle API for Lazy tasksKT-34487
Gradle build fails with "Cannot run program "java": error=7, Argument list too longKT-35957
MPP IC fails with "X has several compatible actual declarations" errorKT-38250
Drop support for Gradle versions older than 5.3 in the Kotlin Gradle pluginTools. Gradle. JS
New Features
KT-30619
Support NPM transitive dependencies in multi-platform JS targetKT-38286
[Gradle, JS] Error handling on Webpack problemsFixes
KT-31669
Gradle/JS: rise error when plugin loaded more than onceKT-32531
[Gradle/JS] Add scoped NPM dependenciesKT-34832
[Kotlin/JS] Failed build after webpack run (Karma not found)KT-35194
Kotlin/JS: browserRun fails with "address already in use" when trying to connect to local serverKT-35611
Kotlin Gradle plugin should reportkotlin2js
plugin ID as deprecatedKT-35641
Kotlin Gradle plugin should reportkotlin-dce-js
plugin ID as deprecatedKT-36410
JS: Collect stats about IR backend usageKT-36451
KJS Adding npm dependency breaks Webpack devserver reloadingKT-37258
Kotlin/JS + Gradle: in continuous mode kotlinNpmInstall time to time outputs "ENOENT: no such file or directory" errorKT-38109
[Gradle, JS] Error handling on Karma launcher problemsKT-38331
Add an ability to control generating externals for npm deps individuallyKT-38485
[Gradle, JS] Unable to configure JS compiler with stringKT-38683
Remove possibility to set NPM dependency without versionKT-38990
Support multiple range versions for NPM dependenciesKT-38994
Remove possibility to set NPM dependency with npm(org, name, version)KT-39109
ArithmeticException: "/ by zero" caused by kotlinNodeJsSetup task with enabled gradle caching on WindowsKT-39210
Kotlin/JS: with both JS and MPP modules in the same project Gradle configuration fails onnodejs {}
andbrowser {}
KT-39377
Use standard source-map-loader instead of custom oneTools. Gradle. Multiplatform
KT-39184
Support publication of Kotlin-distributed libraries with Gradle MetadataKT-39304
Gradle import errorjava.util.NoSuchElementException: Key source set foo is missing in the map
on unused source setTools. Gradle. Native
KT-37514
CocoaPods Gradle plugin: Support building from terminal projects for several platformsKT-38440
Make error message about missing Podfile path for cocoapods integration actionable for a userKT-38991
Gradle MPP plugin: Enable parallel in-process execution for K/N compilerKT-39935
Support overriding theKotlinNativeCompile
task sourcesKT-37512
Cocoapods Gradle plugin: Improve error logging for external toolsTools. J2K
KT-35169
Do not show "Inline local variable" popup during "Cleaning up code" phase of J2KKT-38004
J2K breaks java getter call in java codeKT-38450
J2K should convert Java SAM interfaces to Kotlin fun interfacesTools. JPS
KT-27458
The Kotlin standard library is not found in the module graph ... in a non-Kotlin project.KT-29552
Project is completely rebuilt after each gradle sync.Tools. Scripts
KT-37766
Impossible to apply compiler plugins onto scripts with the new scripting APITools. kapt
KT-29355
Provide access to default values for primary constructor properties1.4-M2
Compiler
New Features
KT-37432
Do not include annotations fields into 'visibility must be explicitly specified' check in api modePerformance Improvements
KT-27362
Anonymous classes representing function/property references contain rarely used methodsKT-35626
NI: Performance problem with many type parametersKT-36047
Compiler produces if-chain instead of switch when when subject captured as variableKT-36638
Use 'java/lang/StringBuilder.append (C)Ljava/lang/StringBuilder;' when appending single character in JVM_IRKT-37389
Avoid type approximation during generation constraints with EQUALITY kindKT-37392
Avoid substitution and type approximation for simple callsKT-37546
NI: high memory and CPU consumption due to creating useless captured types (storing in approximated types cache, unneeded computations)Fixes
KT-11265
Factory pattern and overload resolution ambiguityKT-27524
Inline class is boxed when used with suspend modifierKT-27586
ClassCastException occurs if the Result (or any other inline class) is returned from a lambdaKT-30419
Use boxed version of an inline class in return type position for covariant and generic-specialized overridesKT-31163
FIR: consider replacing comparisons with compareTo calls and some additional intrinsicsKT-31585
ClassCastException with derived class delegated to generic class with inline class type argumentKT-31823
NI: Type mismatch with a star projection andUnsafeVariance
KT-33119
Pre-increment for inline class wrapping Int compiles to direct increment instead of inc-implKT-33715
Kotlin/Native: metadata compilerKT-34048
IllegalAccessError when initializing val property in EXACTLY_ONCE lambdaKT-34433
NI: Type mismatch with a star projection andUnsafeVariance
KT-35133
FIR Java: don't set 'isOperator' for methods with non-operator namesKT-35234
ClassCastException with creating an inline class from a function reference of covariant or generic-specialized overrideKT-35406
Generic type implicitly inferred as Nothing with no warningKT-35587
Plain namespace strings in JvmNameResolver.PREDEFINED_STRINGS are prone to namespace changes during jar relocation.KT-36044
NI: premature fixation a type variable if there were nested lambdas (constraint source was the deepest lambda)KT-36057
[FIR] Incorrect smartcastKT-36069
NI: TYPE_MISMATCH caused by incorrect inference to NothingKT-36125
Callable reference resolution ambiguity error is not displayed properly in the IDEKT-36191
IDE locks loading packages and editing file containingtry
keyword inside string templateKT-36222
NI: Improve error message about nullability mismatch for a generic callKT-36249
NI doesn't use upper bound for T of called function during infer return type and as a result infer it toAny?
if the resulting type was intersection typeKT-36345
FIR: record argument mapping for use in back-endKT-36446
NI: "UnsupportedOperationException no descriptor for type constructor of IntegerLiteralType[Int,Long,Byte,Short]" with BuilderInference and delegateKT-36758
[FIR] Unresolved callable reference to member of local classKT-36759
[FIR] Unsupported callable reference resolution for methods with default parametersKT-36762
[FIR] Unresolvedarray.clone()
KT-36764
[FIR] Bug in inference with DefinitelyNotNull typesKT-36816
NI: definitely not-null (T!!) types in invariant positions don't approximate to T inside inference processKT-36819
NI: premature completion of lambdas, which are passed somewhereKT-36850
Incorrect private visibility of sealed class constructorsKT-36856
Throwing exception when there is inheritance in Kotlin from Java class, which contains methods with the same JVM descriptorsKT-36879
Introduce FIR_IDENTICAL in diagnostic testsKT-36881
FIR: completion don't runs for return expressionsKT-36887
[FIR] Unresolved member in nested lambda in initializerKT-36905
[FIR] Unresolved in lambda in default argument positionKT-36953
AssertionError: "Unsigned type expected: null" when there is a range with an unsigned typeKT-37009
FIR: Bound smart-cast lostKT-37027
FIR: Wrong projection on spread + varargs on non-final typesKT-37038
NI: redundant lambda's arrow breaks CST calculation for extension lambdasKT-37043
NI: inference T to Any? if there was elvis between Java out-type and reifiedmaterialize
for this type without out projectionKT-37066
[FIR] Wrong type inference for lambdasKT-37070
[FIR] Unresolved parameters of outer lambda in scope of inner lambdaKT-37087
"IllegalStateException: Can't find method 'invoke()'" for mutable property reference in default value of an inline function parameterKT-37091
[FIR] Wrong inferred type of when-expression if when-argument is not-null-asserted and type is not specifies explicitlyKT-37176
[FIR] Incorrect resolution mode for statements of blockKT-37302
Unexpected conversion:Int
constant inferred toLong
in when expressionKT-37327
FIR: Smartcast problemKT-37343
NI: definitely not null types pre-approximation is inconsistent with OIKT-37380
NI: broken some code with def not null types due to skip needed constraintsKT-37419
NI: UNRESOLVED_REFERENCE_WRONG_RECEIVER is reported in case lambda with receiver is returned fromwhen
expressionKT-37434
Kotlin/JS, Kotlin/Native: fun interfaces: SAM conversion to Kotlin interface is not compiled with RESOLUTION_TO_CLASSIFIERKT-37447
Expression from annotation entry in value parameter inside value parameter should be marked as USED_AS_EXPRESSIONKT-37453
Type arguments not checked to be empty for candidates with no declared parametersKT-37488
[FIR] Incorrect exhaustiveness checking for branches with equals to object that implements sealed classKT-37497
NI: 'super' is not an expression, it can not be used as a receiver for extension functionsKT-37530
NI: instantiation of abstract class via callable reference argument causes run time InstantiationErrorKT-37531
NI: callable reference argument with left hand side type parameter causes frontend exceptionKT-37554
NI: Nothing is inferred incorrectly with elvis returnKT-37579
NI: inconsistent behaviour with OI around implicit invoke convention after safe call with additional implicit receiverKT-37604
"VerifyError: Call to wrong method" in 'invoke' for adapted callable reference to constructor with coercion to UnitKT-37621
NI: type variable is inferred to Nothing if the second branch was Nothing and there was upper bound for a type parameterKT-37626
NI: builder inference with expected type breaks class references resolution for a class with parametersKT-37627
NI: wrong order of the type variable fixation (Nothing? against a call with lambda)KT-37628
NI: wrong approximation of type argument to star projection during common super type calculationKT-37644
NI: appeared exception during incorporation of a captured type into a type variable for elvis resolveKT-37650
NI: it's impossible to infer a type variable with the participation of a wrapped covariant typeKT-37718
False positive unused parameter for @JvmStatic main function in objectKT-37779
ClassCastException: Named argument without spread operator for vararg parameter causes code to crash on runtimeKT-37832
In MPP, subtypes of types defined in legacy libraries, like stdlib, cannot properly resolve on the consumer side receviing bothKT-37861
Capturing an outer class instance in a default parameter of inner class constructor causes VerifyErrorKT-37986
Return value of function reference returning inline class mapped to 'java.lang.Object' is not boxed properlyKT-37998
'!!' operator on safe call of function returning inline class value causes CCE at runtimeKT-38042
Allow kotlin.Result as a return type only if one enabled inline classes explicitlyKT-38134
NI: Type mismatch with a star projection andUnsafeVariance
KT-38298
Inconsistent choice of candidate when both expect/actual are available (affects onlyenableGranularSourceSetMetadata
)KT-38661
NI: "Cannot infer type variable TypeVariable" with lambda with receiverKT-38668
Project with module dependency in KN, build fails with Kotlin 1.3.71 and associated libs but passes with 1.3.61.KT-38857
Class versions V1_5 or less must use F_NEW frames.KT-39113
"AssertionError: Uninitialized value on stack" with EXACTLY_ONCE contract in non-inline function and lambda destructuringDocs & Examples
KT-35231
toMutableList documentation is vagueIDE
Performance Improvements
KT-30541
EDT Freeze after new Kotlin Script creationKT-35050
Significant freezes due to findSdkAcrossDependencies()KT-37301
Freeze when "Optimize Imports" in KotlinImportOptimizerKT-37466
Invalidate partialBodyResolveCache on OCBKT-37467
PerFileAnalysisCache.fetchAnalysisResultsKT-37993
Do not resolve references if paste code is located in the same originKT-38318
Freezes in IDEAFixes
KT-27935
Functional typealias with typealias in type parameters causes UnsupportedOperationException in TypeSignatureMappingKt (IDEA analysis)KT-31668
Complete statement for class declaration: add '()' to supertypeKT-33473
UAST: References to local variable are resolved to UastKotlinPsiVariableKT-34564
Kotlin USimpleNameReferenceExpression for annotation parameter resolves to null for compiled Kotlin classesKT-34973
Light class incorrectly claiming ambiguous method call from Java when one overload is syntheticKT-35801
UAST: UnknownKotlinExpression for valid Kotlin annotated expressionKT-35804
UAST: Annotations missing from catch clause parametersKT-35848
UAST: ClassCastException when trying to invoke UElement for some wrapped PsiElementsKT-36156
Kotlin annotation attributes have blue color whereas white in JavaKT-36275
UAST: UCallExpression::resolve returns null for local function callsKT-36717
Fix failing light class tests after switching plugin to language version 1.4KT-36877
Message bundles for copy paste are missed in 201KT-36907
IDE:-Xuse-ir
setting on facet level does not affect highlightingKT-37133
UAST: Annotating assignment expression sometimes leads to UnknownKotlinExpressionKT-37312
"Implement members" intention put function in the primary constructor if there are unused brackets in classKT-37613
Uast: no parameters in reified methodKT-37933
Rare NPE in ProjectRootsUtilKt.isKotlinBinary [easy fix]KT-38081
Configure kotlin in project produces IDE error "heavy operation and should not be call on AWT thread"KT-38354
HMPP. IDE. Dependency leakage from leaf native to shared native moduleKT-38634
IDE: Error on opening MPP project in 1.3.72 after opening it in 1.4-M2IDE. Code Style, Formatting
KT-37870
"Remove trailing comma" action stops working after applying and cancelling itIDE. Completion
KT-36808
Delete Flow.collect from autocompletion list or make it least prioritizedKT-36860
Provide convenient completion of extension functions from objectsKT-37395
Invalid callable reference completion of member extensionIDE. Debugger
KT-34906
Implement Coroutine DebuggerKT-35392
Debugger omits meaningful part of the stacktrace even with disabled filterKT-36215
Coroutines debugger tab is empty in Android StudioKT-37238
Coroutines Debugger: dump creation fails every timeKT-38047
Coroutines Debugger: Assertion failed: “Should be invoked in manager thread, use DebuggerManagerThreadImpl” on moving to source code from suspended coroutine in project without debugger jar in classpathKT-38049
Coroutines Debugger: NPE “null cannot be cast to non-null type com.sun.jdi.ObjectReference” is thrown by calling dumpCoroutinesKT-38487
Any Field Watch interaction causes a MissingResourceExceptionIDE. Decompiler, Indexing, Stubs
KT-37896
IAE: "Argument for @NotNull parameter 'file' of IndexTodoCacheManagerImpl.getTodoCount must not be null" through KotlinTodoSearcher.processQuery()IDE. Gradle Integration
KT-33809
Withkotlin.mpp.enableGranularSourceSetsMetadata=true
, IDE misses dependsOn-relation between kotlin and android sourceSets, leading to issues with expect/actual matchingKT-36354
IDE: Gradle import from non-JVM projects: dependency to output artifact is created instead of module dependencyKT-38037
UnsupportedOperationException on sync gradle Kotlin project with at least two multiplatform modulesIDE. Gradle. Script
KT-36763
Drop modification stamp for scripts after project importKT-37237
Script configurations should be loaded during project import in case of errorsKT-38041
Do not request for script configuration after VCS updateIDE. Inspections and Intentions
New Features
KT-3262
Inspection "Inner class could be nested"KT-15723
Add 'Convert to value' quickfix for property containing only getterKT-34026
Add "Remove argument" quick fix for redundant argument in constructor callKT-34332
Add "Remove argument" quick fix for redundant argument in function callKT-34450
Convert function to property
intention should be also displayed onfun
keywordKT-34593
Invert 'if' condition: InvertString.isNotEmpty
should beString.isEmpty
KT-34819
Inspection: report useless elvis "?: return null"KT-37849
SupportReplaceWith
for supertypes callPerformance Improvements
KT-37515
DeadlockFixes
KT-12329
"invert if" inserts unnecessary 'continue' for statement inside a loop with 'continue'KT-17615
"Convert parameter to receiver" changesthis
tothis@ < no name provided >
KT-20868
IntelliJ says method from anonymous inner class with inferred interface type is not used even though it isKT-20907
Secondary constructor is marked as unused by IDE when called by typealiasKT-22368
"Convert to block body" intention incorrectly formats closing braceKT-23510
"Remove parameter" quick fix keeps lambda argument when it's out of parenthesesKT-27601
False positive "Unused import directive" for extension function used in KDocKT-28085
"Convert receiver to parameter" introduces incorrect this@class in lambdaKT-30028
"Convert parameter to receiver" introduces wrong 'this' qualifier for extension lambda receiverKT-31601
"Remove redundant let call" changes semantics by introducing multiple safe callsKT-31800
False positive "never used" with function in private val object expressionKT-31912
QF “Convert to anonymous object” do nothing on SAM-interfacesKT-32561
"Property can be declared in constructor" causes another warningKT-32809
Convert parameter to receiver inserts wrong qualifiers for this (when nothing needs to be changed)KT-34371
"Surround with lambda" quickfix is not available for suspend lambda parameters.KT-34640
Replace 'if' with 'when' leads to copy comment line above when from another ifKT-36225
KNPE: CodeInliner.processTypeParameterUsages withReplaceWith
for inline reified generic functionKT-36266
NPE when invoking Lift return out of if/when after intention becomes inapplicable but still beeing shownKT-36296
False negative "Redundant SAM-constructor" with multiple SAM argumentsKT-36367
False negative "Redundant SAM-constructor" for kotlin functionsKT-36368
False negative "Redundant SAM-constructor" for fun interfaces in kotlinKT-36395
False positive "Redundant SAM-constructor" with two java interfaces extending one anotherKT-36411
"Put parameters on separate lines" and "Put parameters on one line" actions do not respect trailing commaKT-36482
"Add JvmOverloads annotation" intention is still suggested for annotation's parametersKT-36686
Implement members quickfix puts the implementation before the data class if it already has a bodyKT-36685
"Convert to a range check" transform hex range to int if it is compared with "Less" or "Greater"KT-36707
False positive redundant companion object on calling companion object membersKT-36735
Inspection 'Replace 'toString' with string template' miss curly braces and generates wrong code for constructor callsKT-36834
Convert use-site targets and usages with convert property to fun intentionKT-37213
"MoveConfiguration
📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 Automerge: Enabled.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about these updates again.
This PR has been generated by Renovate Bot.
Update kotlin_version to v1.7.20to Update kotlin_version to v1.7.21f3878be1c1
to62a490b7b5
Update kotlin_version to v1.7.21to Update kotlin_version to v1.7.2262a490b7b5
to3bee048ff8
Update kotlin_version to v1.7.22to Update kotlin_version to v1.8.03bee048ff8
toed5af2873f
ed5af2873f
to5b3d16626c
Update kotlin_version to v1.8.0to Update kotlin_version to v1.8.105b3d16626c
tob924e4d917
Update kotlin_version to v1.8.10to Update dependency org.jetbrains.kotlin:kotlin-gradle-plugin to v1.8.10Update dependency org.jetbrains.kotlin:kotlin-gradle-plugin to v1.8.10to Update kotlin_version to v1.8.10b924e4d917
to6e14329fa2
Update kotlin_version to v1.8.10to Update kotlin_version to v1.8.206e14329fa2
to872f0bf1d8
Update kotlin_version to v1.8.20to Update kotlin_version to v1.8.21872f0bf1d8
to2d69f2a409
Update kotlin_version to v1.8.21to Update kotlin_version to v1.8.222d69f2a409
toa99b065285
a99b065285
to5ae671fc66
Update kotlin_version to v1.8.22to Update kotlin_version to v1.9.0Update kotlin_version to v1.9.0to Update dependency org.jetbrains.kotlin:kotlin-gradle-plugin to v1.9.0Update dependency org.jetbrains.kotlin:kotlin-gradle-plugin to v1.9.0to Update kotlin_version to v1.9.05ae671fc66
to7faf07bbb8
Update kotlin_version to v1.9.0to Update kotlin_version to v1.9.107faf07bbb8
toa9971c01c9
a9971c01c9
to850c28535e
850c28535e
to18f5634c47
18f5634c47
toe0e7000778
Update kotlin_version to v1.9.10to Update kotlin_version to v1.9.20e0e7000778
to9484450d7c
Update kotlin_version to v1.9.20to Update kotlin_version to v1.9.219484450d7c
to678f033c3c
Update kotlin_version to v1.9.21to Update kotlin_version to v1.9.22678f033c3c
to385766df0e
Update kotlin_version to v1.9.22to Update kotlin_version to v1.9.23385766df0e
to1ceae6093b
Update kotlin_version to v1.9.23to Update kotlin_version to v1.9.241ceae6093b
todf6c7ea693
Update kotlin_version to v1.9.24to Update kotlin_version to v1.9.25