Releases: JetBrains/kotlin
Releases Β· JetBrains/kotlin
Kotlin 2.4.0-Beta2
Changelog
Analysis API
KT-65683Analysis API: Dangling file session creation causes acomputeIfAbsentcontract violation
Analysis API. FIR
KT-70896AA: False positive deprecation warning with override of built-in method in JDK mapped classKT-84625Analysis API: collectDesignationPath fails for nested classes inside plugin-generated top-level classes
Analysis API. Infrastructure
KT-84913Extract compiler classes used by the PSI & Analysis API to a separate moduleKT-64986Analysis API: Implement Analysis API tests for different KMP PlatformsKT-80379Extract per-module test generators for AA tests
Analysis API. PSI
KT-84715removeModifier doesn't delete whitespaces around the removed modifierKT-84564KtEnumEntry.delete deletes semicolonKT-84781Use computed properties in KotlinElementTypeProviderImpl
Analysis API. Stubs and Decompilation
KT-85371StackOverflowError from LLKotlinStubBasedLibrarySymbolProvider and StubBasedClassDeserializationKT-83935Support KDoc loading in decompiled stubs
Analysis API. Surface
KT-82519Automatically recognize the appropriate analysis mode for in-memory file copies based on their contentKT-85239Streaming version of collectDiagnostics()KT-83921Extend KaKDocProvider to read Kdoc from KLIB metadataKT-77426KaFirCompilerFacility uses an arbitrary JVM counterpart for common sourcesKT-84737KaCallableSymbol#directlyOverriddenSymbols doesn't work for java overrides of kotlin propertiesKT-84621Migrate symbol tests to ManagedTest properlyKT-80575KaFirJavaInteroperabilityComponent#getJavaGetterName should not throw exception on incomplete code
Backend. Wasm
KT-76205K/Wasm: stabilize and turn on incremental compilation by defaultKT-83728[Wasm] Invalid Ir type while suspend call with blocked if null comprehansionKT-81637K/JS/Wasm interop: Inconsistent behavior ofis/asoperations forJsReference<C>andC
Compiler
New Features
KT-84484Companion Extensions Analysis & ResolutionKT-84298K2: Generate IR for Companion Blocks & ExtensionsKT-84292Enforce Companion Blocks & Extensions Language Feature during ResolutionKT-84291Companion Blocks & Extensions CheckersKT-84290Callable References to Companion Block Declarations & ExtensionsKT-84287Build Raw FIR for Companion Blocks & ExtensionsKT-73256Implementallmeta-target for annotationsKT-84319Add JVM target bytecode version 26KT-84297Serialize & Deserialize Companion Block Declarations & Extensions to/from MetadataKT-84199Implement DontMakeExplicitNullableJavaTypeArgumentsFlexible feature
Fixes
KT-80489Collection literals: experimental version (Frontend)KT-84566Prevent launching Default dispatcher threads from IJ SDK in kotlin compilerKT-85358Native: roll back the workaround for KT-84678 once MapLibre has been properly fixedKT-84931Incorrect type nullability in SAM super type in anonymous class-based SAM conversionKT-83920False positive "modifier 'value' is not applicable to 'local variable'" with soft keyword in positional destructuring (square bracket) declarationKT-85626@JvmRecordin commonMain breaks compileCommonMainKotlinMetadata with "Cannot access 'java.lang.Record'"KT-52673Don't report deprecation warning/error on importsKT-84991ImproveArgument type mismatchdiagnosticsKT-82216Sanitize '.kotlin_module' filenameKT-84678K/N: Undefined symbol from SPM-added ObjC frameworks when linking iOS targetKT-77726Move FirUnusedExpressionChecker to the default checkers listKT-85354checkPsiTypeConsistency: add psi text attachmentsKT-85479Improve diagnostic messages for upper bound violationsKT-84585Upper bound violated warning for expansion of type alias in LHSKT-84924Native: stdlib-cache.lock used by mulitple processesKT-85244False positive DUPLICATE_BRANCH_CONDITION_IN_WHEN with guard conditionKT-78432No-arg constructor should be generated for regular classes with a value class parameter in case of JvmExposeBoxedKT-85487Investigate why WrapContinuationForTailCallFunctions does not work in Android TestKT-59633K2: Implement running AndroidRunner tests with FIRKT-85392Native: concurrency issues in per-file cachesKT-76237Store File-level annotations in KLIB metadata separatelyKT-85162Introduce diagnostics to refine numeric types castingKT-80060False positive REDUNDANT_CALL_OF_CONVERSION_METHOD in case of overloadsKT-85289False-positive smartcast from == with type parameter based variableKT-83890return-value-checker: false positive "Unused return value of 'context'" on kotlin.context() functionsKT-84106False negative "NON_EXHAUSTIVE_WHEN": "NoWhenBranchMatchedException" at runtime with sealed and platform typeKT-85005Considerall:target in the checker of repeatable annotationsKT-85210Enabling -XXLanguage:+IntrinsicConstEvaluation breaks highlighting on some broken codeKT-85217Rework implementation supporting simple-to-suspend function conversionKT-85036Introduce a proper handling of optional expectation annotations in platform checkers during metadata compilationKT-85086False-negative JVM_EXPOSE_BOXED_CANNOT_BE_THE_SAMEKT-84082[OPT_IN_USAGE_ERROR] duplicates for destructuring declarationKT-84732Collection literals: "ExpectedFirCollectionLiteralImplto be resolved" in RHS of equality operatorKT-84841Collection literals: Drop special treatment ofwhenwith expected typeKT-85007Properly implement special rules forkotlin.Resultin@JvmExposeBoxedsupportKT-74383Support new callable reference nodes in JVM backendKT-84828Cleanup JVM backend from the old callable references-related codeKT-85006Refine error messages forINAPPLICABLE_ALL_TARGETdiagnosticKT-84296Support Companion Blocks in CFGKT-85058Remove final field modification in DescriptorRendererOptionsImpl to prevent warnings on JDK 26+KT-85021False positive SUBCLASS_CANT_CALL_COMPANION_PROTECTED_NON_STATIC error in multi-module projectKT-84727[K/N] Segfault when returning null as generic Int typ...
Kotlin 2.3.21
Changelog
Backend. Wasm
KT-84610[Wasm] Failed to compile klibs in IC mode
Compiler
KT-84566Prevent launching Default dispatcher threads from IJ SDK in kotlin compilerKT-85358Native: roll back the workaround for KT-84678 once MapLibre has been properly fixedKT-85626@JvmRecordin commonMain breaks compileCommonMainKotlinMetadata with "Cannot access 'java.lang.Record'"KT-85405Postpone/RevertDontIgnoreUpperBoundViolatedOnImplicitArgumentsKT-84678K/N: Undefined symbol from SPM-added ObjC frameworks when linking iOS targetKT-85021False positive SUBCLASS_CANT_CALL_COMPANION_PROTECTED_NON_STATIC error in multi-module project
JavaScript
KT-82395Support top-level declarations from compiler plugins in JS incremental compilationKT-84475K/JS: false-positive exportability warnings in multi-module projectKT-84633Kotlin/JS: "Serializer for class not found" error when IR output granularity iswhole-programKT-85047Kotlin/JS:@JsStaticon suspend fun of class companion generates incorrect d.tsKT-84517K/JS: bad mappings data in outputted Kotlin stdlib source map
Libraries
KT-71848Kotlinx.metadata: AddCompilerPluginDatainto Km API
Native. C and ObjC Import
KT-85399Kotlin/Native: TypeCastException when casting ObjC Protocol MetaClass with genericSafeCasts enabledKT-85508K/N: TypeCastException when using nw_parameters_create_secure_tcp block parameter on 2.3.20
Tools. Gradle
KT-84729Update Gradle plugin-publish version to enable configuration cache badge on Gradle plugins portal
Tools. Gradle. Compiler plugins
KT-85257AGP/Compose: MergeMappingFileTask clears R8 artifacts due to@OutputDirectoryannotation on AGP 9.1+
Tools. Scripts
KT-85105Scripts: JVM backend internal error (IR lowering) when scratch file contains anonymous objectKT-85103Exception while generating code when explain destructuring declsKT-84842scriptCompilationClasspathFromContext behavior changed from 2.3.10 to 2.3.20KT-85029Kotlin Scripting: ScriptDiagnostic reports "at null" instead of error location
Tools. Statistics (FUS)
KT-85628KGP: composite build FUS metrics fail on access of 'configurationTimeMetrics'
Kotlin 2.3.21-RC2
Changelog
Compiler
KT-85626@JvmRecordin commonMain breaks compileCommonMainKotlinMetadata with "Cannot access 'java.lang.Record'"
Native. C and ObjC Import
KT-85508K/N: TypeCastException when using nw_parameters_create_secure_tcp block parameter on 2.3.20
Tools. Scripts
KT-85105Scripts: JVM backend internal error (IR lowering) when scratch file contains anonymous objectKT-85103Exception while generating code when explain destructuring decls
Tools. Statistics (FUS)
KT-85628KGP: composite build FUS metrics fail on access of 'configurationTimeMetrics'
Kotlin 2.3.21-RC
Changelog
Backend. Wasm
KT-84610[Wasm] Failed to compile klibs in IC mode
Compiler
KT-84678K/N: Undefined symbol from SPM-added ObjC frameworks when linking iOS targetKT-84566Prevent launching Default dispatcher threads from IJ SDK in kotlin compilerKT-85021False positive SUBCLASS_CANT_CALL_COMPANION_PROTECTED_NON_STATIC error in multi-module project
JavaScript
KT-82395Support top-level declarations from compiler plugins in JS incremental compilationKT-84633Kotlin/JS: "Serializer for class not found" error when IR output granularity iswhole-programKT-85047Kotlin/JS:@JsStaticon suspend fun of class companion generates incorrect d.tsKT-84517K/JS: bad mappings data in outputted Kotlin stdlib source map
Libraries
KT-71848Kotlinx.metadata: AddCompilerPluginDatainto Km API
Tools. Gradle
KT-84729Update Gradle plugin-publish version to enable configuration cache badge on Gradle plugins portal
Tools. Gradle. Compiler plugins
KT-85257AGP/Compose: MergeMappingFileTask clears R8 artifacts due to@OutputDirectoryannotation on AGP 9.1+
Tools. Scripts
Kotlin 2.4.0-Beta1
Changelog
Analysis API
KT-83867OVERLOAD_RESOLUTION_AMBIGUITY false positive with assertEquals in IJ repoKT-83723[Analysis API] Enable experimental KDoc resolver by defaultKT-83388Analysis API: properly support KMP in KotlinPackageProvider
Analysis API. Code Compilation
KT-78946Evaluation of variable with local class in type parameter leads to InventNamesForLocalClasses exception
Analysis API. FIR
KT-84711K2 IDE sometimes loses FIR plugin-generated declarations after file changesKT-84596Improve K2 Jooq completion performanceKT-84525KaValueParameterSymbol#getHasSynthesizedName returns false for FirDeclarationOrigin.SubstitutionOverride.DeclarationSiteKT-68260K2 AA: InvalidFirElementTypeException βFor CALLABLE_REFERENCE_EXPRESSION with text::lam1, unexpected element of type: no element foundβ with illegal callable reference callKT-83546Kotlin analysis reach ClsCustomNavigationPolicyKT-84259Move CommonDefaultImportsProvider to the frontend independent moduleKT-82945Analysis API: KotlinIllegalArgumentExceptionWithAttachments: Expected FirResolvedTypeRef with ConeKotlinType but was FirUserTypeRefImplKT-71135AA: exception from sealed inheritors checker whenanalyzeCopy
Analysis API. Infrastructure
KT-84776The test data manager misses the redundancy check in the update modeKT-84962The test data manager misses -ea flagKT-84388Preserve the EOF status in the test data manager to avoid extra changesKT-83905Analysis API: Improve UX with test dataKT-84362Analysis API tests produce many warnings due to "not yet loaded registry"KT-84279Test Data Manager fails on a clean buildKT-83913Exclude compiler-based Analysis API tests from Git trackingKT-80379Extract per-module test generators for AA testsKT-84120Move CLI modules out of kotlin-compiler-fe10-for-ideKT-83200Track external dependencies of the Analysis API modules
Analysis API. Light Classes
KT-82434Light classes should prefer enum entries to propertiesKT-84200SLC: return type is not boxed for delegated methods with generic original methodKT-72451"CCE: class PsiPrimitiveType cannot be cast to class PsiClassType" with same-named enum class and typealias
Analysis API. PSI
Analysis API. Providers and Caches
KT-82731Analysis API: Limit granular tree change processing to a few filesKT-79234Analysis API: Usage ofasMap()on Caffeine caches bypasses stats countersKT-74090Analysis API: Support dumb mode (restricted analysis)
Analysis API. Standalone
KT-83801Nested typealiases are not correctly indexed in standalone mode
Analysis API. Surface
New Features
Fixes
KT-84397KtDefaultAnnotationArgumentReference should return only results with value nameKT-84804buildSubstitutor does not work correctly with Java type parametersKT-84389Cover references with ABI and documentation checksKT-57042K2, Analysis API: KaJavaInteroperabilityComponent#callableSymbol returns null for a Java getter implementing Kotlin propertyKT-80856Analysis API:analysisContextModuleincorrectly determines the module of an original file when used for dangling file context assignmentKT-84363AA, isUsedAsExpression: Unhandled Non-KtExpression parent of KtExpression: class org.jetbrains.kotlin.psi.KtContractEffectKT-70476Analysis API: "KtDefaultAnnotationArgumentReference.resolveToSymbols" does not work in FIR implementationKT-68499Split KtDefaultAnnotationArgumentReference on K1 and K2 implementationKT-70521Analysis API: Impossible to distinguish between 'iterator' operator calls dispatched with imports from objectsKT-77669Context arguments are missed on implicit invoke callsKT-77670resolveToCall: extensionReceiver is incorrectly chosed due to a conflict with context parameters for an implicitinvokecallKT-68633K2 AA: IAE "Expected class KaClassSymbol instead of class KaFirEnumEntrySymbol" with enum entry initializerKT-79186KtCompletionExtensionCandidateChecker does not work for extensions when using callable references of a typeKT-83777Analysis API: The resolution scope of a context module accepts elements from associated dangling filesKT-82571No expected type for overridden property without explicit typeKT-83759Analysis API: Mark platform interface APIs with@KaPlatformInterfaceKT-83223Support "Explicit context arguments" in the Analysis APIKT-65186K2: Analysis API: KtExpressionTypeProvider.getExpectedType works incorrectly for the right hand side of assignment expressionsKT-76011KaFirNamedClassSymbol#companionObjectdoesn't provide generated objects generated by compiled pluginsKT-73290Analysis API: Improve the architecture of content scopes and resolution scopes
Backend. Native. Debug
KT-83804Native: debug information generator converts relative paths to absolute ones
Backend. Wasm
KT-83162K/Wasm: renaming temporary and synthetic variables in the Chrome debuggerKT-85008Develop and publish a demo app using an early version of the component model supportKT-65030K/Wasm: memory allocator for Component Model ABIKT-83607WasmJS: Production build eliminates 'else if' branch when 'else' is not wrapped with curly bracesKT-83728[Wasm] Invalid Ir type while suspend call with blocked if null comprehansionKT-82803Kotlin/WASM: Failed to compile the doResume function with if inside catch blockKT-83800[Wasm] Closed world per-module compilation
Compiler
New Features
KT-84319Add JVM target bytecode version 26KT-83165Collection literals: treat Deprecated(HIDDEN) operatorsofreasonablyKT-84487"-Xcollection-literals" compiler flagKT-84072Collection literals: treat visibility ofofduring resolve correctlyKT-80500Collection literals: AnalyzeConeCollectionLiteralAtomin cases their expected type is not fully knownKT-80491Implement fallback mechanism for collection literalsKT-80490Implement overload resolution mechanism for collection literalsKT-84484Companion Extensions Analysis & ResolutionKT-84199Imple...
Kotlin 2.3.20
Changelog
Analysis API. FIR
New Features
KT-78090Implement stubs support for new conditional returns and holdsIn contracts
Fixes
KT-82948'FirRegularClass' expected as a containing declaration, got 'FirTypeAliasImpl'KT-83467Package-level JSpecify annotations are ignored when coming from jars or librariesKT-82057K2. Cannot infer type parameter 'R' in Ktor routing post() function with explicit response typeKT-82846AA: unresolved KtExpression.expressionType for the reference to the parameter with default valueKT-80485False positive UNRESOLVED_REFERENCE on nested interface from super-super class in the super type position inside an anonymous objectKT-82772Flaky false positive deprecation warning on PersistentMap.put in Kotlin repo in IDE modeKT-76487StdLibSourcesLazyDeclarationResolveTestGenerated.testWrappedInt is unstableKT-82618Various tests are failing with NPE in kt-master after updating the compiler on 19.11.25KT-82076Error querying members of JavaClass created for SymbolLightClassForAnnotationClass during library analysisKT-71596Include Js/Wasi checkers in AbstractLLFirDiagnosticsCollectorKT-82085No OUTER_CLASS_ARGUMENTS_REQUIRED on type parameter bound in IDEKT-81873Provide a way of including traces in phase JFR eventsKT-71929Consider leaving the non-post-compute version at EnhancementSymbolsCache.enhancedFunctions
Analysis API. Infrastructure
KT-83173Analysis API Tests: Library names with RC versions aren't sanitisedKT-65140LL FIR: Implement AbstractFirPsiJsDiagnosticTest for LL FIRKT-82212[Analysis API, LL FIR] Implement AbstractDiagnosticsFirWasmTest and AbstractDiagnosticsFirWasmWasiTest for LL FIR
Analysis API. Light Classes
KT-82227Value classes should expose regular static methods
Analysis API. PSI
KT-81710'KtTypeReference.getTypeText' does not account for 'suspend' modifier on suspend lambdasKT-82258Prepare PSI for migration from context receivers to context parametersKT-81074KDoc: List rendering is broken
Analysis API. Providers and Caches
KT-82449K2 IDE Analysis Freezes During Gradle Sync (Recursive Module Dependency Computation in KotlinModuleDependentsProviderBase.computeTransitiveDependents)KT-82629'collectDiagnostics' returns stale syntax error after editor fixKT-74907Analysis API: Apply platform-based library module content restrictions consistently
Analysis API. Standalone
KT-81107AA: KtSourceModuleBuilder.sourceRoots doesn't works with symbolic links
Analysis API. Stubs and Decompilation
KT-82792Stub for KtValueArgumentList inside KtAnnotationEntry should be present if it is present in psiKT-82527TypeClsStubBuilder.createFunctionTypeStub throws NullPointerExceptionKT-82558Deserialized DNN type should have a fully qualified AnyKT-81928KaArrayAnnotationValueImpl.values missing first elementKT-82139Support contracts for property accessorsKT-82198Support context parameters in contracts
Analysis API. Surface
New Features
KT-82851Property accessors should inherit KDoc from the parent propertyKT-63339Analysis API: Provide a way to extract KDoc for symbolsKT-79070KaTypeProvider: add API to build a default type with star projectionsKT-66566AA: api to create functional typesKT-66043KtTypeCreator doesn't provide a way for creating annotated types
Performance Improvements
KT-83694Provide psi-based implementation ofKaDeclarationSymbol#isExternalKT-70868KaSymbol: support PSI-only visibility and modality for the case without compiler pluginsKT-81627KaFirSymbolDeclarationOverridesProvider#processOverrides should process only relevant declarations
Fixes
KT-83152[Analysis API, KDoc] Make class name links on constructors point to the classKT-83695DeprecateKaSymbolInformationProvider#{getter, setter}DeprecationStatusKT-82853Add a convenience property for testing declarations for effective external-nessKT-83226Support "Collection literals" in the Analysis APIKT-83225Support "@IntroduceAt" in the Analysis APIKT-83222Support "Improve use-site defaulting for annotations" in the Analysis APIKT-83351Rename KaSession context parameter from 's' in bridges to something nicerKT-83199Clarify API around extension pointsKT-83074Inner enum entry class has incorrect default visibilityKT-82442Add Ka prefix to org.jetbrains.kotlin.analysis.api.symbols.AdditionalKDocResolutionProviderKT-82443Add Ka prefix to org.jetbrains.kotlin.analysis.api.symbols.DebugSymbolRendererKT-82441Add Ka prefix to org.jetbrains.kotlin.analysis.api.compile.CodeFragmentCapturedValueKT-82439Add Ka prefix to org.jetbrains.kotlin.analysis.api.components.DebuggerExtensionKT-82438Add Ka prefix to org.jetbrains.kotlin.analysis.api.components.DefaultTypeClassIdsKT-68577asPsiTypeandmapTypeToJvmType: leading delimiter for class in a root packageKT-81734MIssing "ARGUMENT_TYPE_MISMATCH" caused by self-referential generic typeKT-82856Redesign KotlinReferenceProviderContributor to make it extensibleKT-82615ClarifyKtReference#resolvesByNamescontractKT-82534No expected type for property accessor without bodyKT-82406Add a test to ensure that all top-level classes in the Analysis API Surface haveKaprefixKT-78397investigate if there is a need in Extra support for the "various little features in contracts"KT-74009Analysis API: Expose "isOverloadable" check for callable symbols similar to "OverloadChecker.isOverloadable"KT-78399Check return value - check how we see from Java(+Stub) we see βannotatedβ signaturesKT-80357[Analysis API]KaType.enhancedTypedoesn't enhance type parametersKT-73659Analysis API: The name ofKaType.enhancedTypeis too generalKT-80545[Analysis API] DeprecateKaFunctionType.arityKT-77708K2 Mode: Potentially redundant smart cast highlighing when passing smartcasted expressions as argumentsKT-81264K2 AA:KaValueParameterSymbol.hasDefaultValueis false for overriding or actual functionsKT-81166Forbid the usage of KaSessionComponent implementation types directlyKT-74801Analysis API: Publish/subscribe to modification events with a single message bus topic
Backend. Native. Debug
- [
KT-81741](https://youtrack.je...
Kotlin 2.3.20-RC3
Kotlin 2.3.20-RC2
Changelog
Compiler
KT-84620Incorrect optimization of property delegationKT-81974Do not eagerly initialize reflection for KProperty objects for delegated properties
JVM. Reflection
KT-84600Performance regression around Kotlin properties JVM reflection during instantiation
Tools. Build Tools API
KT-84577BTA: API 2.3.20 incompatible with compiler 2.3.10
Tools. Compiler plugins. Compose
KT-84218[2.3.20-Beta1] "IllegalStateException: no implementation for FUN MISSING_DECLARATION" during bitcode lowering
Tools. Gradle
KT-84152Memory Leak and OOM Errors in Kotlin Gradle Plugin 2.3.20-Beta2 within-processexecution mode
Kotlin 2.3.20-RC
Changelog
Backend. Wasm
KT-82649K/Wasm: Rewrite StringBuilder to use JsStringKT-83995K/Wasm: 2.3.0 -> 2.3.20-Beta1 degradation in arrow testsKT-83839K/Wasm: CMP. Load time on Safari significantly increased with Kotlin = 2.3.20-Beta1
Compiler
KT-83372compileDebugKotlinAndroid hangs in 2.3.0 with SQLDelightKT-83849False-positive NULLABILITY_MISMATCH_BASED_ON_JAVA_ANNOTATIONS forOptional.orElse(null)callKT-84192"Member overrides different '@Throws' filter from" caused by overriding in different moduleKT-83697Native: increased bitcode produced with enabled safe castsKT-83984Data races around kotlinx.serialization plugin protobuf extensions registrationKT-83031K2: unstable resolution of EnhancedNullability from type-use NotNull in presence of unused codeKT-83824Delegated property in Gradle DSL fails to compileKT-81700flaky overload resolution behaviors (false-positive errors, different final candidates, compile-time failures)KT-78443Refactor session component initialization for multi-target compilation
Compose compiler
b/481953005,b/481769383Cache stability inference results during sessionb/481735904Fix Compose codegen crash in inline functionb/479646393Add groups to inline functions with two or more inline parameters
JavaScript
KT-83572KJS/Wasm: Cannot access@JsModule-declared class from non-modular projectKT-84134KJS/CMP: "IrLinkageError: Function 'get' can not be called: No function found for symbol"KT-64951Kotlin-Multiplatform does not allow JSExport of expect
Klibs
KT-84273[Klib] Added IrOffsetsChecker broke backward klib compatibility
Native
KT-83542Switch the default GC back to PMCS in 2.3.20-RC
Native. ObjC Export
KT-83736Objective-C export withobjcExportBlockExplicitParameterNamesgenerates invalid block signature when lambda parameter is namedid
Tools. Build Tools API
KT-83971BTA: OperationCancelledException cannot be thrown properly from isolated classloader
Tools. Compiler plugins. Compose
KT-84055Reference to lambda in lambda in function 'TextField' can not be evaluated
Tools. Gradle
KT-82885Run tests against Gradle 9.3.0
Tools. Gradle. Multiplatform
Kotlin 2.3.10
Changelog
Compiler
KT-83984Data races around kotlinx.serialization plugin protobuf extensions registrationKT-83317ClassCastException: with cast kotlin.UInt to java.lang.Number when defining constantKT-83031K2: unstable resolution of EnhancedNullability from type-use NotNull in presence of unused codeKT-81700flaky overload resolution behaviors (false-positive errors, different final candidates, compile-time failures)KT-83983Revert of KT-83081KT-83314JSpecify@NullMarkedchanges Java equals(Object) to equals(Any?) causing override conflict in Kotlin 2.3KT-82863@NoInferregression since 2.2.20KT-82841"kotlin.NoWhenBranchMatchedException" inwhenwith!ischeck & non-sealed class in the middle of hierarchy
JVM. Reflection
KT-83608Kotlin-reflect: "Unknown origin of public abstract operator fun invoke(p1: P1, p2: P2): R"KT-83361"KotlinReflectionInternalError: Type parameter not found: 0" on super types with Kotlin 2.3.0KT-42199"KotlinReflectionInternalError: Unknown origin of public abstract operator fun invoke" on function reference to FunctionN.invokeKT-81024Reflection: New KType implementation fails on arguments comparison for a Nothing type parameter
Tools. Compiler Plugins
KT-83266"Unsupported class file major version 69" for "produceReleaseComposeMapping" task with Kotlin 2.3KT-83099Compose compiler does not generate stack trace mappings for project files
Tools. Gradle
KT-83070The KGP api reference is missing a descriptionKT-82459Improve iOS simulator boot implementation
Tools. Gradle. JS
KT-82946Js, Wasm: Upgrade NPM dependencies
Tools. Gradle. Multiplatform
KT-83687Revert deprecation of 'androidTarget' for AGP lower than 9