JetBrains/kotlin
JetBrains/kotlin
Activity
Last release
Open issues
Open PRs
License
release notes
release notes
The Kotlin Programming Language.
release notes
Published 4/22/2026
Pre-ReleasePre-releaseKT-65683 Analysis API: Dangling file session creation causes a computeIfAbsent contract violationKT-70896 AA: False positive deprecation warning with override of built-in method in JDK mapped classKT-84625 Analysis API: collectDesignationPath fails for nested classes inside plugin-generated top-level classesKT-84913 Extract compiler classes used by the PSI & Analysis API to a separate moduleKT-64986 Analysis API: Implement Analysis API tests for different KMP PlatformsKT-80379 Extract per-module test generators for AA testsKT-84715 removeModifier doesn't delete whitespaces around the removed modifierKT-84564 KtEnumEntry.delete deletes semicolonKT-84781 Use computed properties in KotlinElementTypeProviderImplKT-85371 StackOverflowError from LLKotlinStubBasedLibrarySymbolProvider and StubBasedClassDeserializationKT-83935 Support KDoc loading in decompiled stubsKT-82519 Automatically recognize the appropriate analysis mode for in-memory file copies based on their contentKT-85239 Streaming version of collectDiagnostics()KT-83921 Extend KaKDocProvider to read Kdoc from KLIB metadataKT-77426 KaFirCompilerFacility uses an arbitrary JVM counterpart for common sourcesKT-84737 KaCallableSymbol#directlyOverriddenSymbols doesn't work for java overrides of kotlin propertiesKT-84621 Migrate symbol tests to ManagedTest properlyKT-80575 KaFirJavaInteroperabilityComponent#getJavaGetterName should not throw exception on incomplete codeKT-76205 K/Wasm: stabilize and turn on incremental compilation by defaultKT-83728 [Wasm] Invalid Ir type while suspend call with blocked if null comprehansionKT-81637 K/JS/Wasm interop: Inconsistent behavior of is/as operations for JsReference<C> and CKT-84484 Companion Extensions Analysis & ResolutionKT-84298 K2: Generate IR for Companion Blocks & ExtensionsKT-84292 Enforce Companion Blocks & Extensions Language Feature during ResolutionKT-84291 Companion Blocks & Extensions CheckersKT-84290 Callable References to Companion Block Declarations & ExtensionsKT-84287 Build Raw FIR for Companion Blocks & ExtensionsKT-73256 Implement all meta-target for annotationsKT-84319 Add JVM target bytecode version 26KT-84297 Serialize & Deserialize Companion Block Declarations & Extensions to/from MetadataKT-84199 Implement DontMakeExplicitNullableJavaTypeArgumentsFlexible featureKT-80489 Collection literals: experimental version (Frontend)KT-84566 Prevent launching Default dispatcher threads from IJ SDK in kotlin compilerKT-85358 Native: roll back the workaround for KT-84678 once MapLibre has been properly fixedKT-84931 Incorrect type nullability in SAM super type in anonymous class-based SAM conversionKT-83920 False positive "modifier 'value' is not applicable to 'local variable'" with soft keyword in positional destructuring (square bracket) declarationKT-85626 [@JvmRecord](https://github.com/JvmRecord) in commonMain breaks compileCommonMainKotlinMetadata with "Cannot access 'java.lang.Record'"KT-52673 Don't report deprecation warning/error on importsKT-84991 Improve Argument type mismatch diagnosticsKT-82216 Sanitize '.kotlin_module' filenameKT-84678 K/N: Undefined symbol from SPM-added ObjC frameworks when linking iOS targetKT-77726 Move FirUnusedExpressionChecker to the default checkers listKT-85354 checkPsiTypeConsistency: add psi text attachmentsKT-85479 Improve diagnostic messages for upper bound violationsKT-84585 Upper bound violated warning for expansion of type alias in LHSKT-84924 Native: stdlib-cache.lock used by mulitple processesKT-85244 False positive DUPLICATE_BRANCH_CONDITION_IN_WHEN with guard conditionKT-78432 No-arg constructor should be generated for regular classes with a value class parameter in case of JvmExposeBoxedKT-85487 Investigate why WrapContinuationForTailCallFunctions does not work in Android TestKT-59633 K2: Implement running AndroidRunner tests with FIRKT-85392 Native: concurrency issues in per-file cachesKT-76237 Store File-level annotations in KLIB metadata separatelyKT-85162 Introduce diagnostics to refine numeric types castingKT-80060 False positive REDUNDANT_CALL_OF_CONVERSION_METHOD in case of overloadsKT-85289 False-positive smartcast from == with type parameter based variableKT-83890 return-value-checker: false positive "Unused return value of 'context'" on kotlin.context() functionsKT-84106 False negative "NON_EXHAUSTIVE_WHEN": "NoWhenBranchMatchedException" at runtime with sealed and platform typeKT-85005 Consider all: target in the checker of repeatable annotationsKT-85210 Enabling -XXLanguage:+IntrinsicConstEvaluation breaks highlighting on some broken codeKT-85217 Rework implementation supporting simple-to-suspend function conversionKT-85036 Introduce a proper handling of optional expectation annotations in platform checkers during metadata compilationKT-85086 False-negative JVM_EXPOSE_BOXED_CANNOT_BE_THE_SAMEKT-84082 [OPT_IN_USAGE_ERROR] duplicates for destructuring declarationKT-84732 Collection literals: "Expected FirCollectionLiteralImpl to be resolved" in RHS of equality operatorKT-84841 Collection literals: Drop special treatment of when with expected typeKT-85007 Properly implement special rules for kotlin.Result in [@JvmExposeBoxed](https://github.com/JvmExposeBoxed) supportKT-74383 Support new callable reference nodes in JVM backendKT-84828 Cleanup JVM backend from the old callable references-related codeKT-85006 Refine error messages for INAPPLICABLE_ALL_TARGET diagnosticKT-84296 Support Companion Blocks in CFGKT-85058 Remove final field modification in DescriptorRendererOptionsImpl to prevent warnings on JDK 26+KT-85021 False positive SUBCLASS_CANT_CALL_COMPANION_PROTECTED_NON_STATIC error in multi-module projectKT-84727 [K/N] Segfault when returning null as generic Int type from dynamic frameworkKT-85062 Deprecate language version 2.1KT-83460 Deprecation from [@all](https://github.com/all):Deprecated is not propagated to property accessors/backing fieldsKT-84859 Skip deprecation phase for generic arguments in qualifier receiver of static call for companion block members and extensionsKT-85050 [Swift Export] usage of inline classes with ref types crashes at runtimeKT-84983 Type parameter annotations are lost for local functionsKT-78800 Investigate FirMissingDependencySupertypeInQualifiedAccessExpressionsCheckerKT-73945 K2 IDE: Duplicated inspections for redundant 'open' in interface memberKT-84294 Ensure Context Sensitive Resolution works with Companion Blocks & ExtensionsKT-81675 Improve message for CONTEXTUAL_OVERLOAD_SHADOWEDKT-84994 Rework optimization for companion extension resolutionKT-81598 incorrect type mismatch error messages for generic calls with explicit type argumentsKT-83587 K2: Missing null-check when using == on Short! and Byte! platform typesKT-261 Can't specify function return type in a subclassc1bbb47 Started inferring the stability of all interfaces to be
Stability.Unknown, expect for those explicitly marked as known
stable.b/504284805 Fix indentation for generated proguard mappingsb/422193018 Fix applier inference for nested composables of different types.b/497751457 Prevent a $stable property from being added to any object.b/427530633 Do not infer a getter call as static across when it is defined in another file.b/427530633 Started using Stability.Runtime more broadly. Now, when an
element depends on the stability of an internal or public class
defined in another file, the element will no longer infer the
stability of that class and will depend on the runtime stability of
that class instead.KT-84293 Expect Actual Matching for Companion Block Declarations & ExtensionsKT-85605 "Local delegated property has not delegate" exception when calling inline function containing delegated property in a lambda from within an inline lambdaKT-80804 Enable constant evaluation for more standard libraryKT-83514 Get rid of EvaluatedConstTrackerKT-79663 KLIB-based compilers: Promote partial linkage to "always on"KT-76934 Drop old IR parameter APIKT-74763 Build: refactor ':compiler:backend.common' and ':compiler:ir.backend.common' modulesKT-85550 Reflection: KParameter.type.classifier returns boxed KClass for non-nullable primitive typesKT-85285 Reflection: InvocationTargetException (UInt cannot be cast to Integer) when reading UInt annotation property via getterKT-85322 Reflection: KotlinReflectionInternalError when loading ProGuard-obfuscated code compiled before 2.3.20KT-84679 Reflection: confusing "Kotlin reflection is not yet supported for synthetic Java properties" for reference to Java enum's entries propertyKT-85025 KTypeParameter instances not equal to each other for the same type parameter in member specialization KFunctionKT-85091 Reflection: "KotlinReflectionInternalError: Unsupported parameter owner: null" on attempt to get annotations of annotation constructor parameterKT-84382 Reflection: raw list in Java type is transformed to List instead of MutableListKT-82395 Support top-level declarations from compiler plugins in JS incremental compilationKT-81787 KJS: Value class type lost when using JsExport on interfaceKT-85411 Fix conversionCombinations.kt tests for the JS targetKT-72198 KJS: ES2015 interop with ValueClassKT-15101 js: Same callable references are not equalKT-84810 [K/JS] Callable references operator produces duplicatesKT-85323 JsClass optimization doesn't work well for primitivesKT-60651 KJS / ES6: init block and constructor are not calledKT-84601 K/JS: KClass<> reference doesn't work in JS counterside as a new target in ES6 modeKT-85099 KotlinJS: JsPlainObject from the js-plain-objects plugin does not respect overridesKT-84615 KJS: Forbid [@JsStatic](https://github.com/JsStatic) on extension functions/propertiesKT-84633 Kotlin/JS: "Serializer for class not found" error when IR output granularity is whole-programKT-85038 Kotlin/JS: [@JsExport](https://github.com/JsExport) on sealed external interface with companion object causes NPEKT-85047 Kotlin/JS: [@JsStatic](https://github.com/JsStatic) on suspend fun of class companion generates incorrect d.tsKT-84517 K/JS: bad mappings data in outputted Kotlin stdlib source mapKT-84415 Ineffective hashMap usage in IrSymbolDeserializerKT-84511 [Native][Tests] Improve descriptor-related logic in NativeCliBasedFacades.ktKT-85017 [PL] Add test for added internal abstract funKT-84488 Export in previous version: Prohibit using on 2nd stageKT-85149 Klib Dump parser: fix parsing of qualified names adjacent to vararg symbolKT-85129 Klib Dump parser: fix enum names parsingKT-84684 Remove UserVisibleIrModulesSupport from IR linkerKT-84820 [K/N] Load libcallbacks and libllvmstubs from configured pathKT-73821 Decide the future of the ForbidUsingSupertypesWithInaccessibleContentInTypeArguments language featureKT-80852 Version overloading: generate overloads corresponding to different versions of a function whose parameters are annotated with [@IntroducedAt](https://github.com/IntroducedAt)()KT-85120 [@IntroducedAt](https://github.com/IntroducedAt) on expect parameter cannot be properly actualizedKT-85122 Deprecate kotlin.io.readLine with WARNINGKT-84970 Deprecate AbstractCoroutineContextKey and associated APIKT-84818 [Regex] Native and Wasm: Decomposed Unicode character are incorrectly process with CANON_EQ flagKT-80772 K/N: Regex: improve look behind matching performance for "fixed-length" patternsKT-81395 Stabilize kotlin.uuid.Uuid APIKT-85127 Remove kotlin.test.assert*NoInline hidden functionsKT-84264 Add appropiate [@SinceKotlin](https://github.com/SinceKotlin) to new contractsKT-84921 Add 'returnsResultOf' contract to appropriate declarations in the stdlibKT-84697 Update the list of JDKs the stdlib is tested withKT-83914 Native: when loading JNI libraries, java.library.path can contain system directories with libraries with same namesKT-84826 Bump the minimum deployment version of Apple targetsKT-83133 Native: don't use sun.misc.Unsafe in the compiler and cinterop when running on JDK 25+KT-84686 Removing x64 in gradle file breaks builds on certain platformsKT-83648 Native: don't use sun.misc.Unsafe in NativeMemoryAllocator when running on JDK 25+KT-83647 Native: don't use sun.misc.Unsafe in nativeMemUtils when running on JDK 25+KT-85191 K/N: Dependency cycle in libclangInteropKT-84937 Kotlin/Native: non-reproducible .bc for mingw_x64KT-61748 KMM- warnings when compiling native targets (Kotlin 1.9.0)KT-85705 Swift-generated headers with external_source_symbol produce duplicate enum declarationsKT-85399 Kotlin/Native: TypeCastException when casting ObjC Protocol MetaClass with genericSafeCasts enabledKT-85508 K/N: TypeCastException when using nw_parameters_create_secure_tcp block parameter on 2.3.20KT-84023 Modular import fails with an obscure error when the failing module is not the last oneKT-85171 Red Swift code in Native UI Multiplatform App project from Template GalleryKT-84331 Kotlin/Native: RunLoopFinalizerProcessor needs initialized runtime before it has any jobsKT-83670 K/N: gc concurrent mark phase assert Failed to terminate mark in STW in a single iterationKT-82705 Support convenient export of Flow types in Swift exportKT-85130 [Swift Export] Preserve TypeInfo on SharedFlowKT-84361 [Swift Export] Preserve TypeInfo on StateFlowKT-84317 Swift Export: "protocol members can only be marked unavailable in an '[@objc](https://github.com/objc)' protocol" in generated code for kotlinx-coroutinesKT-85380 [Swift Export] Attempt to bridge unbridgeable type: SirUnsupportedTypeKT-85704 [Swift Export] cannot infer generic type of function returning a generic typeKT-85711 [Swift Export] suspend function returning non-null generic fails to compileKT-85715 [Swift Export] generic interface in typealias fails to compileKT-85714 [Swift Export] unsupported input type param in functional receiverKT-85458 [Swift Export] value of a closure returning a closure generates invalid swift codeKT-85521 [Swift Export] conflicting overloads for generated Kotlin bridgesKT-85293 SwiftExportCoroutinesWithResultValidationTest.testCoroutines fails after cross-pushKT-84515 [Swift Export] suspend functional parameter generates invalid Swift codeKT-82282 Swift Export: suspend function returning Array leads to incompilable codeKT-81540 Swift Export: using interface in Set generates incompilable codeKT-80305 Support coroutines in Swift ExportKT-66873 Swift Export: suspendable contravariant functional typeKT-85272 [Swift Export] conflicting imports for kotlinx-coroutinesKT-85163 [Swift Export] Flow of Unit values crashesKT-85159 [Swift Export] Flow is not properly being cancelledKT-84226 [Swift Export] Flow in contrvariant position is not allowedKT-84485 [Swift Export] Flow with nullable elementsKT-83730 Generated Swift switch on bridged Kotlin enum crashes with fatalErrorKT-85016 [Swift Export] it's not OK to expose Flow as AsyncSequenceKT-84979 Swift Export Nullability: UnitKT-83821 Swift Export: suspend function returning Nothing leads to incompilable codeKT-83476 Use Maven publications as dump input [ABI Validation]KT-82791 BTA: introduce an option for ExecutionPolicy.WithDaemon to control the daemon log files pathKT-80963 BTA: Add structured information about reported messages to KotlinLoggerKT-73037 Add input (like compiler arguments) changes trackingKT-84228 BTA: Improving KDoc generation for Enums and Custom TypesKT-85738 BTA forward compatibility: NoSuchFieldError on X_IGNORED_ANNOTATIONS_FOR_BRIDGES when API 2.3.0 is used with impl 2.4.0KT-85082 Make Xignored-annotations-for-bridges type safeKT-82390 [BTA] Remove deprecated non-builder factory functions and classesKT-85072 AbstractMethodError when calling discoverScriptExtensionsOperationBuilder with pre-2.4.0 compilerKT-85447 BTA: deprecate JvmCompilerArguments.contains (warning)KT-85092 [BTA] Update BTA Backward Compatibility Testing: 2.3.20-RC → 2.3.20KT-85439 BTA: Warn or error when incompatible compiler arguments are passed via applyArgumentStringsKT-75540 Build Tools API Should Reject -Xbuild-file ArgumentKT-85391 [BTA] Hide boilerplate required to load isolated BTA implementationKT-80679 Add support for the Build Tools API [ABI Validation]KT-85035 Don't expose X_COMPILER_PLUGIN_ORDER in CommonCompilerArgumentsKT-84738 Make Xscript-resolver-environment type safeKT-85204 Make Xdump-directory type safeKT-85205 Make Xdump-perf type safeKT-85069 Make Xnullability-annotations type safeKT-85167 Make Xjsr305 type safeKT-85094 Make Xwarning-level type safeKT-85294 BTA: Replace hardcoded [@since](https://github.com/since) in KDoc with dynamic versioningKT-85333 Add BTA tests for BACKUP_CLASSES and KEEP_IC_CACHES_IN_MEMORY behavior after compilation errorKT-84770 BTA: default options cannot be retrieved from many option objectsKT-85224 Add [@ExperimentalArgumentApi](https://github.com/ExperimentalArgumentApi) to compiler argument DSL typesKT-84322 Make X_PROFILE BTA compiler argument type safeKT-84953 Fail TC build if generated files changeKT-85189 Refactor path argument types: flatten hierarchy and improve namingKT-84984 Runtime NPEs caused by null return in CompilerMessageRenderer implementationKT-84015 Introduce detection of custom script names to new BTA APIKT-85414 Argument DSL: delimiter = KotlinCompilerArgument.Delimiter.PathSeparator generates invalid Kotlin codeKT-85001 Convert ImplicitJvmExposeBoxed language feature to analysis flagKT-84999 Don't poison binaries with ImplicitJvmExposeBoxed language featureKT-85004 Set proper since version for language feature about property annotation targetingKT-56850 Separate K/Wasm CLI entry point from K/JS CLIKT-85133 Drop deprecated K1 specific methods from IrPluginContextKT-75656 PowerAssert: Create runtime libraryKT-75873 PowerAssert: display callable reference value under '::'KT-85151 PowerAssert: Surround string and character values with quotesKT-85184 PowerAssert: Annotation may only be used on expect and non-override functionsKT-69036 Power-Assert indent multiline valuesKT-85089 PowerAssert: Wasm CompileError when using PowerAssert.explanationKT-76197 Write Kotlin compiler warnings and errors to Problems APIKT-85412 Module name is not sanitized with older Kotlin compiler versionsKT-65566 Use the new ConfigurationContainer consumable method to create consumable configurationsKT-85509 Remove deprecated API in the 2.4.0 releaseKT-83858 Compatibility with Gradle 9.4.0 releaseKT-69830 Support Gradle com.gradle.develocity plugin in KGPKT-85433 Gradle: deprecate non-BTA JVM compiler execution modeKT-80448 Remove internal & deprecated API from ExtrasProperty.ktKT-69701 Gradle: module name is passed inconsistently to different types of compilationsKT-83860 Run tests against Gradle 9.4.0KT-83859 Compile against Gradle API 9.4.0KT-84729 Update Gradle plugin-publish version to enable configuration cache badge on Gradle plugins portalKT-83999 ABI validation: Groovy DSL doesn’t deprecate included/excluded filters, allowing four filter configs instead of twoKT-84461 Remove the use of abi-tools-api from KGP [ABI Validation]KT-84100 Add Deprecated annotation to legacyDump block and property [ABI Validation]KT-85343 Update Compose Gradle plugin deprecations before 2.4KT-84753 Deprecate KotlinJsCompilerType and KotlinProjectExtension methods using itKT-81033 K/JS, Wasm: Remove deprecated wasm declarations in "js" packageKT-81034 K/JS, Wasm: Remove deprecated public constructors of JS declarationsKT-81030 K/JS, Wasm: remove deprecated NodeJsExec.createKT-81037 K/JS, Wasm: Remove deprecated internal JS functionsKT-84767 K/N: associateWith triggers warning about friend-modules libs not included in -library argumentKT-69571 compileNativeMainKotlinMetadata not handling project/prebuilt substitutionsKT-84533 KMP: compileCommonMainKotlinMetadata: "Unresolved reference" for androidx.savedstate from Maven (works with project() dependency)KT-84669 SPM import: If iosApp dir located outside of the project, checkSyntheticImportProjectIsCorrectlyIntegrated will failKT-84085 Remove deprecated gradle property kotlin.kmp.isolated-projects.supportKT-84597 Remove trailing comma for dependencies blocks settings in Package.swiftKT-82895 kotlin-stdlib import is flaky in commonTest in 2.1.21KT-83873 Redo how dynamic library linkage and promotion are handledKT-69896 Native: output to stderr ends up in the Gradle logKT-85708 [KGP] dSYM copy task ignores isStatic due to eager read before framework configurationKT-84262 integrateEmbedAndSign produces an incorrect Gradle call for the root projectKT-84730 Add Kdocs to SwiftPM import APIsKT-85502 Swift PM Import: "Library not loaded": KotlinMultiplatformLinkedPackage.framework is not copied next to the executableKT-85510 Cleanup native tasks APIKT-82824 Make linker hack path relativeKT-85128 Refactor SwiftPM import lock tests and test utilsKT-83874 Linker hack doesn't work when clang uses response filesKT-83681 Parallelize parts of SwiftPM import pipeline that are called during importKT-85046 K/Wasm: Wasm per-module Gradle integration tests on WindowsKT-85387 BTA: switch the default value of MONOTONOUS_INCREMENTAL_COMPILE_SET_EXPANSION to trueKT-85386 BTA JVM IC: 'moduleName' is null!KT-84450 Star imports are not reported via FirImportTrackerComponentKT-81579 JPS: -Xwarning-level=DEPRECATION:warning not supportedKT-32743 Kapt, Maven: Do not include compile classpath entries in the annotation processing classpathKT-41217 Running kapt with Maven does not seem to include the compilation classpathKT-84386 Support Maven Toolchains in kotlin-maven-pluginKT-76062 Maven: remove Kotlin script execution supportKT-85317 Auto‑align jvmTarget with the project’s Java levelKT-84101 Maven: compile and test-compile handle sourceDirs inconsistentlyKT-84653 Add integration test for KAPT with smart defaults in mixed Kotlin+Java projectsKT-85121 Maven: enable configuration inputs tracking in BTAKT-84778 Add integration test for auto-bind execution order in mixed Kotlin+Java projectsKT-85146 Maven: Adding stdlib as smart-default may break maven dependency resolution for other pluginsKT-83109 Remove beanshell and groovy verification in kotlin-maven-plugin-testKT-77816 REPL: Support for const propertiesKT-84483 [K2 Repl] NullPointerException in Analysis when using custom classesKT-84803 [REPL] FirReplSnippet: provide the eval function symbol instead of the name (evalFunctionName)KT-85105 Scripts: JVM backend internal error (IR lowering) when scratch file contains anonymous objectKT-85103 Exception while generating code when explain destructuring declsKT-85029 Kotlin Scripting: ScriptDiagnostic reports "at null" instead of error locationKT-85628 KGP: composite build FUS metrics fail on access of 'configurationTimeMetrics'KT-75086 Wasm: Deprecate and remove D8 in js packagesrelease notes
Published 4/22/2026
Pre-ReleasePre-releaseKT-65683 Analysis API: Dangling file session creation causes a computeIfAbsent contract violationKT-70896 AA: False positive deprecation warning with override of built-in method in JDK mapped classKT-84625 Analysis API: collectDesignationPath fails for nested classes inside plugin-generated top-level classesKT-84913 Extract compiler classes used by the PSI & Analysis API to a separate moduleKT-64986 Analysis API: Implement Analysis API tests for different KMP PlatformsKT-80379 Extract per-module test generators for AA testsKT-84715 removeModifier doesn't delete whitespaces around the removed modifierKT-84564 KtEnumEntry.delete deletes semicolonKT-84781 Use computed properties in KotlinElementTypeProviderImplKT-85371 StackOverflowError from LLKotlinStubBasedLibrarySymbolProvider and StubBasedClassDeserializationKT-83935 Support KDoc loading in decompiled stubsKT-82519 Automatically recognize the appropriate analysis mode for in-memory file copies based on their contentKT-85239 Streaming version of collectDiagnostics()KT-83921 Extend KaKDocProvider to read Kdoc from KLIB metadataKT-77426 KaFirCompilerFacility uses an arbitrary JVM counterpart for common sourcesKT-84737 KaCallableSymbol#directlyOverriddenSymbols doesn't work for java overrides of kotlin propertiesKT-84621 Migrate symbol tests to ManagedTest properlyKT-80575 KaFirJavaInteroperabilityComponent#getJavaGetterName should not throw exception on incomplete codeKT-76205 K/Wasm: stabilize and turn on incremental compilation by defaultKT-83728 [Wasm] Invalid Ir type while suspend call with blocked if null comprehansionKT-81637 K/JS/Wasm interop: Inconsistent behavior of is/as operations for JsReference<C> and CKT-84484 Companion Extensions Analysis & ResolutionKT-84298 K2: Generate IR for Companion Blocks & ExtensionsKT-84292 Enforce Companion Blocks & Extensions Language Feature during ResolutionKT-84291 Companion Blocks & Extensions CheckersKT-84290 Callable References to Companion Block Declarations & ExtensionsKT-84287 Build Raw FIR for Companion Blocks & ExtensionsKT-73256 Implement all meta-target for annotationsKT-84319 Add JVM target bytecode version 26KT-84297 Serialize & Deserialize Companion Block Declarations & Extensions to/from MetadataKT-84199 Implement DontMakeExplicitNullableJavaTypeArgumentsFlexible featureKT-80489 Collection literals: experimental version (Frontend)KT-84566 Prevent launching Default dispatcher threads from IJ SDK in kotlin compilerKT-85358 Native: roll back the workaround for KT-84678 once MapLibre has been properly fixedKT-84931 Incorrect type nullability in SAM super type in anonymous class-based SAM conversionKT-83920 False positive "modifier 'value' is not applicable to 'local variable'" with soft keyword in positional destructuring (square bracket) declarationKT-85626 [@JvmRecord](https://github.com/JvmRecord) in commonMain breaks compileCommonMainKotlinMetadata with "Cannot access 'java.lang.Record'"KT-52673 Don't report deprecation warning/error on importsKT-84991 Improve Argument type mismatch diagnosticsKT-82216 Sanitize '.kotlin_module' filenameKT-84678 K/N: Undefined symbol from SPM-added ObjC frameworks when linking iOS targetKT-77726 Move FirUnusedExpressionChecker to the default checkers listKT-85354 checkPsiTypeConsistency: add psi text attachmentsKT-85479 Improve diagnostic messages for upper bound violationsKT-84585 Upper bound violated warning for expansion of type alias in LHSKT-84924 Native: stdlib-cache.lock used by mulitple processesKT-85244 False positive DUPLICATE_BRANCH_CONDITION_IN_WHEN with guard conditionKT-78432 No-arg constructor should be generated for regular classes with a value class parameter in case of JvmExposeBoxedKT-85487 Investigate why WrapContinuationForTailCallFunctions does not work in Android TestKT-59633 K2: Implement running AndroidRunner tests with FIRKT-85392 Native: concurrency issues in per-file cachesKT-76237 Store File-level annotations in KLIB metadata separatelyKT-85162 Introduce diagnostics to refine numeric types castingKT-80060 False positive REDUNDANT_CALL_OF_CONVERSION_METHOD in case of overloadsKT-85289 False-positive smartcast from == with type parameter based variableKT-83890 return-value-checker: false positive "Unused return value of 'context'" on kotlin.context() functionsKT-84106 False negative "NON_EXHAUSTIVE_WHEN": "NoWhenBranchMatchedException" at runtime with sealed and platform typeKT-85005 Consider all: target in the checker of repeatable annotationsKT-85210 Enabling -XXLanguage:+IntrinsicConstEvaluation breaks highlighting on some broken codeKT-85217 Rework implementation supporting simple-to-suspend function conversionKT-85036 Introduce a proper handling of optional expectation annotations in platform checkers during metadata compilationKT-85086 False-negative JVM_EXPOSE_BOXED_CANNOT_BE_THE_SAMEKT-84082 [OPT_IN_USAGE_ERROR] duplicates for destructuring declarationKT-84732 Collection literals: "Expected FirCollectionLiteralImpl to be resolved" in RHS of equality operatorKT-84841 Collection literals: Drop special treatment of when with expected typeKT-85007 Properly implement special rules for kotlin.Result in [@JvmExposeBoxed](https://github.com/JvmExposeBoxed) supportKT-74383 Support new callable reference nodes in JVM backendKT-84828 Cleanup JVM backend from the old callable references-related codeKT-85006 Refine error messages for INAPPLICABLE_ALL_TARGET diagnosticKT-84296 Support Companion Blocks in CFGKT-85058 Remove final field modification in DescriptorRendererOptionsImpl to prevent warnings on JDK 26+KT-85021 False positive SUBCLASS_CANT_CALL_COMPANION_PROTECTED_NON_STATIC error in multi-module projectKT-84727 [K/N] Segfault when returning null as generic Int type from dynamic frameworkKT-85062 Deprecate language version 2.1KT-83460 Deprecation from [@all](https://github.com/all):Deprecated is not propagated to property accessors/backing fieldsKT-84859 Skip deprecation phase for generic arguments in qualifier receiver of static call for companion block members and extensionsKT-85050 [Swift Export] usage of inline classes with ref types crashes at runtimeKT-84983 Type parameter annotations are lost for local functionsKT-78800 Investigate FirMissingDependencySupertypeInQualifiedAccessExpressionsCheckerKT-73945 K2 IDE: Duplicated inspections for redundant 'open' in interface memberKT-84294 Ensure Context Sensitive Resolution works with Companion Blocks & ExtensionsKT-81675 Improve message for CONTEXTUAL_OVERLOAD_SHADOWEDKT-84994 Rework optimization for companion extension resolutionKT-81598 incorrect type mismatch error messages for generic calls with explicit type argumentsKT-83587 K2: Missing null-check when using == on Short! and Byte! platform typesKT-261 Can't specify function return type in a subclassc1bbb47 Started inferring the stability of all interfaces to be
Stability.Unknown, expect for those explicitly marked as known
stable.b/504284805 Fix indentation for generated proguard mappingsb/422193018 Fix applier inference for nested composables of different types.b/497751457 Prevent a $stable property from being added to any object.b/427530633 Do not infer a getter call as static across when it is defined in another file.b/427530633 Started using Stability.Runtime more broadly. Now, when an
element depends on the stability of an internal or public class
defined in another file, the element will no longer infer the
stability of that class and will depend on the runtime stability of
that class instead.KT-84293 Expect Actual Matching for Companion Block Declarations & ExtensionsKT-85605 "Local delegated property has not delegate" exception when calling inline function containing delegated property in a lambda from within an inline lambdaKT-80804 Enable constant evaluation for more standard libraryKT-83514 Get rid of EvaluatedConstTrackerKT-79663 KLIB-based compilers: Promote partial linkage to "always on"KT-76934 Drop old IR parameter APIKT-74763 Build: refactor ':compiler:backend.common' and ':compiler:ir.backend.common' modulesKT-85550 Reflection: KParameter.type.classifier returns boxed KClass for non-nullable primitive typesKT-85285 Reflection: InvocationTargetException (UInt cannot be cast to Integer) when reading UInt annotation property via getterKT-85322 Reflection: KotlinReflectionInternalError when loading ProGuard-obfuscated code compiled before 2.3.20KT-84679 Reflection: confusing "Kotlin reflection is not yet supported for synthetic Java properties" for reference to Java enum's entries propertyKT-85025 KTypeParameter instances not equal to each other for the same type parameter in member specialization KFunctionKT-85091 Reflection: "KotlinReflectionInternalError: Unsupported parameter owner: null" on attempt to get annotations of annotation constructor parameterKT-84382 Reflection: raw list in Java type is transformed to List instead of MutableListKT-82395 Support top-level declarations from compiler plugins in JS incremental compilationKT-81787 KJS: Value class type lost when using JsExport on interfaceKT-85411 Fix conversionCombinations.kt tests for the JS targetKT-72198 KJS: ES2015 interop with ValueClassKT-15101 js: Same callable references are not equalKT-84810 [K/JS] Callable references operator produces duplicatesKT-85323 JsClass optimization doesn't work well for primitivesKT-60651 KJS / ES6: init block and constructor are not calledKT-84601 K/JS: KClass<> reference doesn't work in JS counterside as a new target in ES6 modeKT-85099 KotlinJS: JsPlainObject from the js-plain-objects plugin does not respect overridesKT-84615 KJS: Forbid [@JsStatic](https://github.com/JsStatic) on extension functions/propertiesKT-84633 Kotlin/JS: "Serializer for class not found" error when IR output granularity is whole-programKT-85038 Kotlin/JS: [@JsExport](https://github.com/JsExport) on sealed external interface with companion object causes NPEKT-85047 Kotlin/JS: [@JsStatic](https://github.com/JsStatic) on suspend fun of class companion generates incorrect d.tsKT-84517 K/JS: bad mappings data in outputted Kotlin stdlib source mapKT-84415 Ineffective hashMap usage in IrSymbolDeserializerKT-84511 [Native][Tests] Improve descriptor-related logic in NativeCliBasedFacades.ktKT-85017 [PL] Add test for added internal abstract funKT-84488 Export in previous version: Prohibit using on 2nd stageKT-85149 Klib Dump parser: fix parsing of qualified names adjacent to vararg symbolKT-85129 Klib Dump parser: fix enum names parsingKT-84684 Remove UserVisibleIrModulesSupport from IR linkerKT-84820 [K/N] Load libcallbacks and libllvmstubs from configured pathKT-73821 Decide the future of the ForbidUsingSupertypesWithInaccessibleContentInTypeArguments language featureKT-80852 Version overloading: generate overloads corresponding to different versions of a function whose parameters are annotated with [@IntroducedAt](https://github.com/IntroducedAt)()KT-85120 [@IntroducedAt](https://github.com/IntroducedAt) on expect parameter cannot be properly actualizedKT-85122 Deprecate kotlin.io.readLine with WARNINGKT-84970 Deprecate AbstractCoroutineContextKey and associated APIKT-84818 [Regex] Native and Wasm: Decomposed Unicode character are incorrectly process with CANON_EQ flagKT-80772 K/N: Regex: improve look behind matching performance for "fixed-length" patternsKT-81395 Stabilize kotlin.uuid.Uuid APIKT-85127 Remove kotlin.test.assert*NoInline hidden functionsKT-84264 Add appropiate [@SinceKotlin](https://github.com/SinceKotlin) to new contractsKT-84921 Add 'returnsResultOf' contract to appropriate declarations in the stdlibKT-84697 Update the list of JDKs the stdlib is tested withKT-83914 Native: when loading JNI libraries, java.library.path can contain system directories with libraries with same namesKT-84826 Bump the minimum deployment version of Apple targetsKT-83133 Native: don't use sun.misc.Unsafe in the compiler and cinterop when running on JDK 25+KT-84686 Removing x64 in gradle file breaks builds on certain platformsKT-83648 Native: don't use sun.misc.Unsafe in NativeMemoryAllocator when running on JDK 25+KT-83647 Native: don't use sun.misc.Unsafe in nativeMemUtils when running on JDK 25+KT-85191 K/N: Dependency cycle in libclangInteropKT-84937 Kotlin/Native: non-reproducible .bc for mingw_x64KT-61748 KMM- warnings when compiling native targets (Kotlin 1.9.0)KT-85705 Swift-generated headers with external_source_symbol produce duplicate enum declarationsKT-85399 Kotlin/Native: TypeCastException when casting ObjC Protocol MetaClass with genericSafeCasts enabledKT-85508 K/N: TypeCastException when using nw_parameters_create_secure_tcp block parameter on 2.3.20KT-84023 Modular import fails with an obscure error when the failing module is not the last oneKT-85171 Red Swift code in Native UI Multiplatform App project from Template GalleryKT-84331 Kotlin/Native: RunLoopFinalizerProcessor needs initialized runtime before it has any jobsKT-83670 K/N: gc concurrent mark phase assert Failed to terminate mark in STW in a single iterationKT-82705 Support convenient export of Flow types in Swift exportKT-85130 [Swift Export] Preserve TypeInfo on SharedFlowKT-84361 [Swift Export] Preserve TypeInfo on StateFlowKT-84317 Swift Export: "protocol members can only be marked unavailable in an '[@objc](https://github.com/objc)' protocol" in generated code for kotlinx-coroutinesKT-85380 [Swift Export] Attempt to bridge unbridgeable type: SirUnsupportedTypeKT-85704 [Swift Export] cannot infer generic type of function returning a generic typeKT-85711 [Swift Export] suspend function returning non-null generic fails to compileKT-85715 [Swift Export] generic interface in typealias fails to compileKT-85714 [Swift Export] unsupported input type param in functional receiverKT-85458 [Swift Export] value of a closure returning a closure generates invalid swift codeKT-85521 [Swift Export] conflicting overloads for generated Kotlin bridgesKT-85293 SwiftExportCoroutinesWithResultValidationTest.testCoroutines fails after cross-pushKT-84515 [Swift Export] suspend functional parameter generates invalid Swift codeKT-82282 Swift Export: suspend function returning Array leads to incompilable codeKT-81540 Swift Export: using interface in Set generates incompilable codeKT-80305 Support coroutines in Swift ExportKT-66873 Swift Export: suspendable contravariant functional typeKT-85272 [Swift Export] conflicting imports for kotlinx-coroutinesKT-85163 [Swift Export] Flow of Unit values crashesKT-85159 [Swift Export] Flow is not properly being cancelledKT-84226 [Swift Export] Flow in contrvariant position is not allowedKT-84485 [Swift Export] Flow with nullable elementsKT-83730 Generated Swift switch on bridged Kotlin enum crashes with fatalErrorKT-85016 [Swift Export] it's not OK to expose Flow as AsyncSequenceKT-84979 Swift Export Nullability: UnitKT-83821 Swift Export: suspend function returning Nothing leads to incompilable codeKT-83476 Use Maven publications as dump input [ABI Validation]KT-82791 BTA: introduce an option for ExecutionPolicy.WithDaemon to control the daemon log files pathKT-80963 BTA: Add structured information about reported messages to KotlinLoggerKT-73037 Add input (like compiler arguments) changes trackingKT-84228 BTA: Improving KDoc generation for Enums and Custom TypesKT-85738 BTA forward compatibility: NoSuchFieldError on X_IGNORED_ANNOTATIONS_FOR_BRIDGES when API 2.3.0 is used with impl 2.4.0KT-85082 Make Xignored-annotations-for-bridges type safeKT-82390 [BTA] Remove deprecated non-builder factory functions and classesKT-85072 AbstractMethodError when calling discoverScriptExtensionsOperationBuilder with pre-2.4.0 compilerKT-85447 BTA: deprecate JvmCompilerArguments.contains (warning)KT-85092 [BTA] Update BTA Backward Compatibility Testing: 2.3.20-RC → 2.3.20KT-85439 BTA: Warn or error when incompatible compiler arguments are passed via applyArgumentStringsKT-75540 Build Tools API Should Reject -Xbuild-file ArgumentKT-85391 [BTA] Hide boilerplate required to load isolated BTA implementationKT-80679 Add support for the Build Tools API [ABI Validation]KT-85035 Don't expose X_COMPILER_PLUGIN_ORDER in CommonCompilerArgumentsKT-84738 Make Xscript-resolver-environment type safeKT-85204 Make Xdump-directory type safeKT-85205 Make Xdump-perf type safeKT-85069 Make Xnullability-annotations type safeKT-85167 Make Xjsr305 type safeKT-85094 Make Xwarning-level type safeKT-85294 BTA: Replace hardcoded [@since](https://github.com/since) in KDoc with dynamic versioningKT-85333 Add BTA tests for BACKUP_CLASSES and KEEP_IC_CACHES_IN_MEMORY behavior after compilation errorKT-84770 BTA: default options cannot be retrieved from many option objectsKT-85224 Add [@ExperimentalArgumentApi](https://github.com/ExperimentalArgumentApi) to compiler argument DSL typesKT-84322 Make X_PROFILE BTA compiler argument type safeKT-84953 Fail TC build if generated files changeKT-85189 Refactor path argument types: flatten hierarchy and improve namingKT-84984 Runtime NPEs caused by null return in CompilerMessageRenderer implementationKT-84015 Introduce detection of custom script names to new BTA APIKT-85414 Argument DSL: delimiter = KotlinCompilerArgument.Delimiter.PathSeparator generates invalid Kotlin codeKT-85001 Convert ImplicitJvmExposeBoxed language feature to analysis flagKT-84999 Don't poison binaries with ImplicitJvmExposeBoxed language featureKT-85004 Set proper since version for language feature about property annotation targetingKT-56850 Separate K/Wasm CLI entry point from K/JS CLIKT-85133 Drop deprecated K1 specific methods from IrPluginContextKT-75656 PowerAssert: Create runtime libraryKT-75873 PowerAssert: display callable reference value under '::'KT-85151 PowerAssert: Surround string and character values with quotesKT-85184 PowerAssert: Annotation may only be used on expect and non-override functionsKT-69036 Power-Assert indent multiline valuesKT-85089 PowerAssert: Wasm CompileError when using PowerAssert.explanationKT-76197 Write Kotlin compiler warnings and errors to Problems APIKT-85412 Module name is not sanitized with older Kotlin compiler versionsKT-65566 Use the new ConfigurationContainer consumable method to create consumable configurationsKT-85509 Remove deprecated API in the 2.4.0 releaseKT-83858 Compatibility with Gradle 9.4.0 releaseKT-69830 Support Gradle com.gradle.develocity plugin in KGPKT-85433 Gradle: deprecate non-BTA JVM compiler execution modeKT-80448 Remove internal & deprecated API from ExtrasProperty.ktKT-69701 Gradle: module name is passed inconsistently to different types of compilationsKT-83860 Run tests against Gradle 9.4.0KT-83859 Compile against Gradle API 9.4.0KT-84729 Update Gradle plugin-publish version to enable configuration cache badge on Gradle plugins portalKT-83999 ABI validation: Groovy DSL doesn’t deprecate included/excluded filters, allowing four filter configs instead of twoKT-84461 Remove the use of abi-tools-api from KGP [ABI Validation]KT-84100 Add Deprecated annotation to legacyDump block and property [ABI Validation]KT-85343 Update Compose Gradle plugin deprecations before 2.4KT-84753 Deprecate KotlinJsCompilerType and KotlinProjectExtension methods using itKT-81033 K/JS, Wasm: Remove deprecated wasm declarations in "js" packageKT-81034 K/JS, Wasm: Remove deprecated public constructors of JS declarationsKT-81030 K/JS, Wasm: remove deprecated NodeJsExec.createKT-81037 K/JS, Wasm: Remove deprecated internal JS functionsKT-84767 K/N: associateWith triggers warning about friend-modules libs not included in -library argumentKT-69571 compileNativeMainKotlinMetadata not handling project/prebuilt substitutionsKT-84533 KMP: compileCommonMainKotlinMetadata: "Unresolved reference" for androidx.savedstate from Maven (works with project() dependency)KT-84669 SPM import: If iosApp dir located outside of the project, checkSyntheticImportProjectIsCorrectlyIntegrated will failKT-84085 Remove deprecated gradle property kotlin.kmp.isolated-projects.supportKT-84597 Remove trailing comma for dependencies blocks settings in Package.swiftKT-82895 kotlin-stdlib import is flaky in commonTest in 2.1.21KT-83873 Redo how dynamic library linkage and promotion are handledKT-69896 Native: output to stderr ends up in the Gradle logKT-85708 [KGP] dSYM copy task ignores isStatic due to eager read before framework configurationKT-84262 integrateEmbedAndSign produces an incorrect Gradle call for the root projectKT-84730 Add Kdocs to SwiftPM import APIsKT-85502 Swift PM Import: "Library not loaded": KotlinMultiplatformLinkedPackage.framework is not copied next to the executableKT-85510 Cleanup native tasks APIKT-82824 Make linker hack path relativeKT-85128 Refactor SwiftPM import lock tests and test utilsKT-83874 Linker hack doesn't work when clang uses response filesKT-83681 Parallelize parts of SwiftPM import pipeline that are called during importKT-85046 K/Wasm: Wasm per-module Gradle integration tests on WindowsKT-85387 BTA: switch the default value of MONOTONOUS_INCREMENTAL_COMPILE_SET_EXPANSION to trueKT-85386 BTA JVM IC: 'moduleName' is null!KT-84450 Star imports are not reported via FirImportTrackerComponentKT-81579 JPS: -Xwarning-level=DEPRECATION:warning not supportedKT-32743 Kapt, Maven: Do not include compile classpath entries in the annotation processing classpathKT-41217 Running kapt with Maven does not seem to include the compilation classpathKT-84386 Support Maven Toolchains in kotlin-maven-pluginKT-76062 Maven: remove Kotlin script execution supportKT-85317 Auto‑align jvmTarget with the project’s Java levelKT-84101 Maven: compile and test-compile handle sourceDirs inconsistentlyKT-84653 Add integration test for KAPT with smart defaults in mixed Kotlin+Java projectsKT-85121 Maven: enable configuration inputs tracking in BTAKT-84778 Add integration test for auto-bind execution order in mixed Kotlin+Java projectsKT-85146 Maven: Adding stdlib as smart-default may break maven dependency resolution for other pluginsKT-83109 Remove beanshell and groovy verification in kotlin-maven-plugin-testKT-77816 REPL: Support for const propertiesKT-84483 [K2 Repl] NullPointerException in Analysis when using custom classesKT-84803 [REPL] FirReplSnippet: provide the eval function symbol instead of the name (evalFunctionName)KT-85105 Scripts: JVM backend internal error (IR lowering) when scratch file contains anonymous objectKT-85103 Exception while generating code when explain destructuring declsKT-85029 Kotlin Scripting: ScriptDiagnostic reports "at null" instead of error locationKT-85628 KGP: composite build FUS metrics fail on access of 'configurationTimeMetrics'KT-75086 Wasm: Deprecate and remove D8 in js packages