Releases: JetBrains/kotlin
Releases Β· JetBrains/kotlin
Kotlin 2.1.21-RC
Changelog
Backend. Native. Debug
KT-75991Xcode 16.3: Fix lldb stepping test over an inline function
Compiler
KT-75992Xcode 16.3: stacktraces on simulators are not symbolicatedKT-76663KJS: KotlinNothingValueException caused by expression return since 2.1.20KT-75756Backend Internal error: Exception during IR lowering when trying to access variable from providedProperties in class within kotlin custom scriptKT-76209CONFLICTING_UPPER_BOUNDS onNothingboundKT-70352K2: False-negative CONFLICTING_UPPER_BOUNDS onNothingboundKT-74739Native: "IllegalArgumentException: All constructors should've been lowered: FUNCTION_REFERENCE"KT-75483Native: redundant unboxing generated with smart castKT-71425IR Inliner: investigate return type of an inlined block
Compose compiler
b/408013789Add missing return for the default function wrappersb/405541364Realize coalescable children in the body ofkeycallb/401484249Generate a group aroundArrayconstructor callb/400380396Fix missingendMovableGroupcall with early return inkeyfunction
Native
KT-76252Native: executable crash with generic value classes with 2.1.20
Native. C and ObjC Import
KT-75781Xcode 16.3: Fix cinterop tests failing with fatal error: could not build module '_stdint'
Native. Runtime. Memory
KT-74280Native: GC.collect crashes with -Xallocator=std
Tools. CLI
KT-74663kotlinc-js CLI: not providing -ir-output-dir results in NullPointerException
Tools. Compiler Plugins
KT-76162"IllegalStateException: No mapping for symbol: VALUE_PARAMETER INSTANCE_RECEIVER" after updating to 2.1.20
Tools. Gradle
KT-73142Kotlin Gradle plugin: Remove usage of Gradle's internal ExecHandleBuilderKT-73684Run integration tests against Gradle 8.12KT-74889Compile against Gradle 8.13 APIKT-74887Compatibility with Gradle 8.13 releaseKT-36004Update 'org.gradle.usage' attribute rules to support the 'JAVA_API' and 'JAVA_RUNTIME' valueKT-72694Accessing Task.project during execution is being deprecated in Gradle 8.12KT-74890Run Gradle integrations test against Gradle 8.13 releaseKT-73682Compatibility with Gradle 8.12 releaseKT-73968KotlinDependencyManagement tries to mutate configuration after it was resolvedKT-73683Compile against Gradle API 8.12
Tools. Gradle. JS
KT-74735KGP uses Gradle internalCompositeProjectComponentArtifactMetadataKT-71879Notice of upcoming deprecation for Boolean 'is-' properties in Gradle Groovy scripts
Tools. Gradle. Multiplatform
KT-75808KGP: MPP with jvm target and Gradle java-test-fixtures is brokenKT-75605Dependency resolution fails in commonTest/nativeTest source sets for KMP module when depending on another project due to missing PSMKT-75512Maven-publish: ArtifactId is not correct inpomfile with customizedwithXml
Tools. Incremental Compile
KT-62555Wrong ABI fingerprint for inline function containing a lambda
Tools. Kapt
KT-75936K2 KAPT: unsupported FIR element kinds in constant evaluationKT-75942K2 KAPT: underscore not allowed here
Tools. Scripts
KT-76424Dependencies in main.kts not working with 2.1.20KT-76296Kotlin script compiler crashes when secondary constructor calls a functionKT-75589Scripts: "IndexOutOfBoundsException in jdk.internal.util.Preconditions.outOfBounds" when trying to extend a class which uses global variable
Tools. Wasm
KT-76161Wasm: "export startUnitTests was not found" after updating to Kotlin 2.1.20
Kotlin 2.2.0-Beta1
Changelog
Analysis API
KT-75880K2 Mode: Typealias reference resolves to the underlying class in KMP projectKT-74246KaVisibilityChecker.isVisible is inefficient with multiple calls on the same use-siteKT-57733Analysis API: Use optimizedModuleWithDependenciesScopes in combined symbol providers
Analysis API. Code Compilation
KT-75502K2: IDEA hangs when evaluating inside kotlin-stdlib modules in the Kotlin projectKT-73077Evaluation of inline functions is broken inside Kotlin project and Amper module in Idea sourcesKT-73936K2: CyclicInlineDependencyException: Inline functions have a cyclic dependency in evaluatorKT-74582InterpreterMethodNotFoundError when trying to evaluate simple expressions after recent fixesKT-74524Compilation exception with incorrect JvmName annotation argumentsKT-74443Compilation peer collector ignores inline property accessors
Analysis API. FIR
Performance Improvements
KT-75790Experiment with increasing DEFAULT_LOCKING_INTERVAL timeKT-72159LLFirCompilerRequiredAnnotationsTargetResolver: consider rewriting it to use honest jumping locks
Fixes
KT-72908K2 Analysis API: "FirDeclaration was not found for class org.jetbrains.kotlin.psi.KtFunctionLiteral" with non-local destructuring declaration without initializer beforeinitblockKT-75532ContextCollector: scope for an anonymous function type parameter contains regular parametersKT-74508FirElementBuilder#findElementInsideshould reuse logic fromKtToFirMapping#getFirKT-73066[LL] Enable low-level-api-fir-native even with the disabled native partKT-75132Investigate failures of sandbox diagnostic testKT-75130Set up LL FIR tests for sandbox test dataKT-73386Standardize LL FIR test for compiler test dataKT-75125ISE βValue classes cannot have 0 fieldsβ on instantiating inline class without fieldsKT-75179ContextCollector: support error propertiesKT-74632K2: ISE FirLazyDelegatedConstructorCall should be calculated before accessingKT-73493Support context parametersKT-73183Support context parameters in ContextCollectorVisitorKT-60350K2 IDE: top level destructuring RHS should be resolvableKT-74794K2: FirLazyExpression should be calculated before accessing with context parameter and implicit return typeKT-72938Get rid of KaFirAnnotationListForReceiverParameterKT-73727Exception in implicit type resolution
Analysis API. Infrastructure
KT-74917[Analysis API, Test Framework] Introduce a way to acquirePsiFilefor a givenTestFileinKtTestModule
Analysis API. Light Classes
KT-75391Reduce the amount of psi-based logic in light classesKT-70001SLC adds@Overridewith zero text offset onoverridememberKT-75755K2. False positive red code on vararg parameters in Kotlin class with@JvmOverloadswhen called from JavaKT-75397Constructors and functions with non-last vararg parameters are treated as varargsKT-73405Get rid of KtElement#{symbolPointer, symbolPointerOfType} API usagesKT-74868Support context parametersKT-74733SymbolPsiLiteral.text == value for Java constantKT-74620Delegated functions with value classes are present in light classesKT-74595Static functions with value classes are present in light classesKT-74284Synthetic data class methods using value class types present in LC
Analysis API. Providers and Caches
KT-74090Analysis API: Support dumb mode (restricted analysis)KT-74943Analysis API: ReplaceKotlinGlobalModificationServicewith simpler global modification event publishing and listener-based modification trackersKT-70518K2: Analysis API: Access indices outside ofConcurrentMapcomputation in symbol providersKT-62115Analysis API: Package providers are not cached per search scopeKT-74302Analysis API:LLFirProvidershould disregard self-declarations ingetFirClassifierBy*KT-74463Analysis API:LLNativeForwardDeclarationsSymbolProviderqueries its cache even when theClassIdcannot represent a native forward declarationKT-67868Analysis API: Improve the architecture ofLLFirKotlinSymbolProviders
Analysis API. Standalone
KT-72810withMultiplatformLightClassSupport is inconvenient in Standalone
Analysis API. Stubs and Decompilation
KT-68484K2 IDE, Analysis API: "We should be able to find a symbol for function" for getting KaType ofIterable<T>.map(transform: (T) -> R)parameter in J2K
Analysis API. Surface
New Features
Performance Improvements
KT-70165Introduce PSI-basedKaSymbols for K2
Fixes
KT-72482"KotlinIllegalArgumentExceptionWithAttachments: Expected all candidates to have same callableId but some of them but was different" on trying to add the importKT-75894Cannot build KaFirJavaFieldSymbol for FirFieldImplKT-75586KaFirPropertyGetterSymbol#isInlineandKaFirPropertySetterSymbol#isInlineis incorrect for accessors with explicit modifierKT-58572Analysis API: Enforcing STATUS resolve in 'KtFirNamedClassOrObjectSymbol.visibility' may cause lazy resolve contract violationKT-72730K2: "Unexpected owner function: KtNamedFunction" on vararg val parameter in functionKT-75574Recognize injected code fragment copiesKT-75573Recognize physical file copies as dangling filesKT-74801Analysis API: Publish/subscribe to modification events with a single message bus topicKT-73290Analysis API: Improve the architecture of content scopes and resolution scopesKT-68901Constructor delegation call receiver missing in fir implementationKT-75115Analysis API: TheJavaModuleResolvercompiler class is leaked to Analysis API platform implementationsKT-75123K2. KaFirNamedFunctionSymbol should contain a receiverKT-72639Support context parameter APIKT-73112AA: FirExpression.toKtReceiverValue should handle context receivers properlyKT-74905Cannot find context receiver in FIR declarationKT-74563createPointeris overloaded not for all implementationsKT-73722Analysis API: Automatically check that the API surface is fully documentedKT-65065ProvideKtTypeReference#getShortTypeText()
Backend. Wasm
KT-59032Support instantiation of annotation cl...
Kotlin 2.1.20
Changelog
Analysis API
Fixes
KT-68198Analysis API: Support application service registration in plugin XMLsKT-57733Analysis API: Use optimizedModuleWithDependenciesScopes in combined symbol providersKT-73156AA: type retrieval for erroneous typealias crashesKT-71907K2 debugger evaluator failed when cannot resolve unrelated annotationKT-69128K2 IDE: "Unresolved reference in KDoc" reports existing Java class in reference to its own nested classKT-71613KaFirPsiJavaTypeParameterSymbol cannot be cast to KaFirTypeParameterSymbolKT-71741K2 IDE. Classifier was found in KtFile but was not found in FirFile inlibraries/tools/kotlin-gradle-plugin-integration-tests/build.gradle.ktsinkotlin.gitand broken analysisKT-71942Need to rethrow Intellij Platform exceptions, like ProcessCanceledExceptionKT-70949Analysis API: "containingDeclaration" does not work on nested Java classes in K2 implementationKT-69736K2 IDE: False positive resolution from KDoc forvalueKT-69047Analysis API: Unresolved KDoc reference to extensions with the same nameKT-70815Analysis API: Implement stop-the-world session invalidationKT-69630KAPT User project builds with KAPT4 enabled fail with Metaspace overflow
Analysis API. Code Compilation
KT-71263K2 evaluator: Error in evaluating self property with extension receiver
Analysis API. FIR
Performance Improvements
KT-72025FileStructureElement: reduce redundant resolveKT-74012RedundantFirAbstractBodyResolveTransformerDispatcher.<init>CPU consumptionKT-73900ContextCollectorVisitor#computeContext may spend significant time oncreateSnapshotKT-73665FirElementFinder is inefficient in large filesKT-73330Remove bodies from functions without contracts after the CONTRACTS phaseKT-73017Analysis API:FirReferenceResolveHelper.getSymbolsByResolvedImportsearches for classes even when the selectedFqNameis a known package
Fixes
KT-72308getOrBuildFir returns null for this expression for plusAssign operatorKT-72660ISE: Recursive update at org.jetbrains.kotlin.analysis.low.level.api.fir.caches.FirCaffeineCache.getValueKT-74097ISE: Recursive update at org.jetbrains.kotlin.analysis.low.level.api.fir.caches.FirCaffeineCache.getValueKT-74098ISE: Recursive update at org.jetbrains.kotlin.analysis.low.level.api.fir.caches.FirCaffeineCache.getValueKT-72148K2: KISEWA: Expected FirResolvedArgumentList for FirAnnotationCallImpl of FirValueParameterImpl(DataClassMember) but FirArgumentListImpl foundKT-73079K2: Internal compiler error when conflicting type aliases are presentKT-73456Expected FirResolvedContractDescription but FirRawContractDescriptionImpl found for FirSimpleFunctionImplKT-73259Expected FirResolvedContractDescription but FirLegacyRawContractDescriptionImpl found for FirSimpleFunctionImplKT-72740FirDanglingModifierList:lazyResolveToPhase(STATUS)cannot be called from a transformer with a phase STATUSKT-66132K2: FirRegularClass expected, but FirFileImpl found | Containing declaration is not foundKT-72196K2. KMP. IllegalStateException: expect-actual matching is only possible for code with sourcesKT-72652FirProvider#getContainingClassshould supportFirDanglingModifierSymbolKT-73105Lazy resolve contract violation (BODY_RESOLVE from BODY_RESOLVE)KT-66261K2: Analysis API: "FirDeclaration was not found for class org.jetbrains.kotlin.psi.KtProperty, fir is null" with MULTIPLE_LABELS_ARE_FORBIDDEN K2 errorKT-72315K2. KIWA on usage of always-true OR in guard conditionKT-65707K2 IDE: unresolved calls of callables imported with typealias as qualifierKT-61516K2: Provide an LL FIR implementation forgetContainingClassSymbol(inFirHelpers)KT-72853Expected FirResolvedArgumentList for FirAnnotationCallImpl of FirContextReceiverImpl(Source) but FirArgumentListImpl foundKT-64215K2: do not resolve type annotations of receiver if it is used as an implicit return typeKT-64248K2: do not resolve type annotations of context receiver if it is used as an implicit return typeKT-72821Add assertion to diagnostic tests to check that all declarations have BODY_RESOLVE phase at the endKT-64056K2: K2: FirLazyBodiesCalculator shouldn't calculate annotation arguments on type phaseKT-71651K2 IDE: False positive NON_LOCAL_SUSPENSION_POINT in suspend function callKT-72164K2. IllegalArgumentException when pre and post increment are used simultaneously in assignmentKT-71174Illegal scope usedKT-72407FirImplementationByDelegationWithDifferentGenericSignatureChecker: FirLazyExpression should be calculated before accessingKT-72228K2: Reformat doesn't work in project with Kotlin2.0.21KT-69671TYPES phase contract violation through JavaSymbolProviderKT-71348K2: KotlinIllegalStateExceptionWithAttachments: 'By now the annotations argument mapping should have been resolved' during code inspectionKT-72024FirClassVarianceChecker: Expected FirResolvedTypeRef with ConeKotlinType but was FirImplicitTypeRefImplWithoutSourceKT-71746K2 IDE.ISE: Zero or multiple overrides found for descriptor in FirRegularClassSymbol serializing/ExternalSerializerand red code on@Serializer(forClass) ` usage
Analysis API. Infrastructure
KT-72922KotlinFakeClsStubsCache project leakageKT-71988Improve scripts test coverage by LL FIRKT-64687K2: Analysis API: migrate AbstractFirLibraryModuleDeclarationResolveTest to kotlin repo
Analysis API. Light Classes
KT-73492K2. FP error in Java file when using@JvmSuppressWildcardsannotation without argumentsKT-66763K2: Get rid of context receivers in Analysis API and LL APIKT-71781SLC: migrate SLC from KotlinModificationTrackerService to KotlinModificationTrackerFactoryKT-67963K2: PsiInvalidElementAccessException on redeclaration of class with constructorKT-71407K2: Do not report@JvmFielddefault value as PsiField initializer in K2KT-72078K2 PSI change for constructor parameter with value class type
Analysis API. Providers and Caches
KT-69247Analysis API: Invalidate sessions after builtins modification eventsKT-72704ISE: No 'org.jetbrains.kotlin.fir.scopes.impl.FirDelegatedMembersFilter'(53) in array owner: LLFirBuiltinsAndCloneableSession for Builtins for JS/wasm-js (JS)KT-67148Analysis API: Introduce a weak reference cache for the originalKtSymbolinKtSymbolPointerKT-73395Analysis API:JavaElementPsiSourceWithSmartPointercontains strong references to PSI- [
KT-72390](https://youtrack.jetbrains.com/issue/KT-...
Kotlin 2.1.20-RC3
Kotlin 2.1.20-RC2
Changelog
Compiler
KT-75649K2: NPE on assigning platform type value to non-nullable lateinit varKT-75483Native: redundant unboxing generated with smart castKT-75526Regression in K2 scripting: local name doesn't shadow one from the implicit receiverKT-75444Contradictions in the constraint system are ignored in case of multiple constraints from forking pointsKT-75111False negative "This declaration needs opt-in" for usage of enum entry with OptIn marker in another moduleKT-74764Native: merge init nodes generated within the same LLVM module for the same klib
Compose compiler
CMP-75711.8.0-alpha03 incompatible with Compose based on k1b/397855145Fix "Unknown file" error in target annotation inference
JavaScript
KT-75606KJS: java.lang.AssertionError: Different declarations with the same signatures were detectedKT-72437KJS. Invalidcopymethod for inherited JSO with type parameters
Klibs
KT-75393Non-JVM artifacts from Kotlin 2.1.20-RC fail on 2.1.x releases due to IMPLICIT_ARGUMENT
Native
KT-70202Xcode 16 Linker fails with SIGBUS
Tools. Compiler Plugins
KT-73897PowerAssert: Implicit argument detection is brittle in a number of cases
Tools. Gradle
KT-73842Gradle: AGP failing tests with "Failed to calculate the value of property 'generalConfigurationMetrics'" using KGPKT-74394KGP + isolated projects: "Something has been appended to this collector already"KT-75262Gradle test-fixtures plugin apply order breaks the projectKT-75277FUS statistics: 'java.lang.IllegalStateException: The value for this property cannot be changed any further' exception is thrown during project import
Tools. Gradle. JS
KT-75485KJS: "Module not found: Error: Can't resolve 'style-loader' and 'css-loader'" in 2.1.20-RC
Kotlin 2.1.20-RC
Changelog
Compiler
KT-74929False positive TYPE_PARAMETER_OF_PROPERTY_NOT_USED_IN_RECEIVER if it is used with T&AnyKT-74227K2: "Cannot infer type for this parameter. Please specify it explicitly" caused by lambda in another lambda with a parameterized function typeKT-74474K2: Report more precise diagnostic when last expression of non-unit lambda is a statementKT-74478K2: False negative RETURN TYPE_MISMATCH if the last statement of a lambda is indexed assignmentKT-74203K2: False negative NO_ELSE_IN_WHEN of a generic type with star projection <*> bounded by a sealed hierarchy
Compose compiler
b/377499888Allow restarting overridden functions in a final classb/390151896Fix default arguments with varargs in@Composablefunctionsb/388030459Prevent usage of transitive captures in lambda memoizationb/310004740Check vararg parameter length in skipping logicb/393400768Use -1 for.changedcall if nullable enum parameter isnull
Native
KT-74377Kotlin Native: release executable crashes with error 139
Tools. Compiler Plugins
KT-74102"Lambda cannot be cast to class kotlin.jvm.functions.Function0" in 2.1.20-Beta1 with ComposeKT-75159Compose: Missing 'FunctionKeyMeta' annotation on lamdas declared in non-composable function
Tools. Gradle
KT-74997Unexpected KGP warnings about kotlin scripting pluginKT-75026Corrupted NonSynchronizedMetricsContainer in parallel Gradle buildKT-74846Gradle Configuration Cache miss on second build with 2.1.20-Beta2KT-74462Flaky Kotlin Gradle Plugin Tests: IsInIdeaEnvironmentValueSource$Inject not found
Tools. Gradle. JS
KT-74869KJS:jsBrowserProductionWebpackdoes not minify output with 2.1.20-Beta2KT-74859Gradle configuration cache issues related to RootPackageJsonTask
Tools. Gradle. Multiplatform
KT-74669Executable binaries for JVM: a jar generated by jvmJar task isn't added to the build/install/testAppName/lib directoryKT-66542Gradle: JVM target withwithJava()produces a deprecation warningKT-37964Gradle application/distribution plugin does not copy and name jar files correctly when using installDist task for multiplatform projectKT-30878It's impossible to have .java sources in a Multiplatform Gradle Project with Android, becauseandroid()andjvm { withJava() }targets can not be applied to one and the same Gradle ProjectKT-66962Kapt with Kotlin Multiplatform: Cannot query the value of this provider because it has no value availableKT-71074Optimize Granular Metadata Dependencies Transformation for Import after adding support for Project IsolationKT-74727Dependency resolve from a single target KMP module to another kmp module fails on non-found PSMKT-74832Relax JVM target validation diagnostic in KMP/Jvm projects
Tools. Gradle. Native
KT-74403:commonizeNativeDistribution fails when configured native targets cannot be built on machine
Tools. Kapt
KT-75202K2 kapt: mapped type class literal is converted incorrectly
Kotlin 2.1.20-Beta2
Changelog
Analysis API
KT-73156AA: type retrieval for erroneous typealias crashesKT-68198Analysis API: Support application service registration in plugin XMLsKT-69630KAPT User project builds with KAPT4 enabled fail with Metaspace overflow
Analysis API. FIR
Performance Improvements
KT-74012RedundantFirAbstractBodyResolveTransformerDispatcher.<init>CPU consumptionKT-73900ContextCollectorVisitor#computeContext may spend significant time oncreateSnapshotKT-73665FirElementFinder is inefficient in large filesKT-73330Remove bodies from functions without contracts after the CONTRACTS phase
Fixes
KT-74097ISE: Recursive update at org.jetbrains.kotlin.analysis.low.level.api.fir.caches.FirCaffeineCache.getValueKT-74098ISE: Recursive update at org.jetbrains.kotlin.analysis.low.level.api.fir.caches.FirCaffeineCache.getValueKT-73079K2: Internal compiler error when conflicting type aliases are presentKT-73456Expected FirResolvedContractDescription but FirRawContractDescriptionImpl found for FirSimpleFunctionImplKT-73259Expected FirResolvedContractDescription but FirLegacyRawContractDescriptionImpl found for FirSimpleFunctionImplKT-72740FirDanglingModifierList:lazyResolveToPhase(STATUS)cannot be called from a transformer with a phase STATUSKT-69671TYPES phase contract violation through JavaSymbolProvider
Analysis API. Light Classes
KT-73492K2. FP error in Java file when using@JvmSuppressWildcardsannotation without arguments
Analysis API. Providers and Caches
KT-69247Analysis API: Invalidate sessions after builtins modification eventsKT-72704ISE: No 'org.jetbrains.kotlin.fir.scopes.impl.FirDelegatedMembersFilter'(53) in array owner: LLFirBuiltinsAndCloneableSession for Builtins for JS/wasm-js (JS)KT-67148Analysis API: Introduce a weak reference cache for the originalKtSymbolinKtSymbolPointer
Analysis API. Standalone
KT-73776Analysis API Standalone: Application services are missing registrations in tests and Dokka
Analysis API. Surface
New Features
KT-73414Analysis API: Support typealiased constructors in KaConstructorSymbol
Performance Improvements
KT-74112UI freeze:AnyThreadWriteThreadingSupport.getWritePermitKT-73942Extend resolveToSymbols cache to all referencesKT-73622CacheresolveToSymbolsresultKT-72684Drop explicit resolve from KaFirJavaInteroperabilityComponent#asPsiTypeElement
Fixes
KT-70114K2: Analysis API: do not lazy resolve declarations without deprecation to get it deprecationKT-73406[Analysis API] Allow extending KaModule resolution scope for all KaModulesKT-65850Cover Analysis API with KDocsKT-73662KotlinIllegalArgumentExceptionWithAttachments: Expected FirResolvedTypeRef with ConeKotlinType but was FirUserTypeRefImplKT-70108Analysis API: "KaScopeProvider.scopeContext" provides scopes from implicit companion objects with inaccessible classifiersKT-68954Remove JAR publications with old artifact names (high-level-api family)KT-70134Analysis API: Port API documentation from the guide to KDocKT-72973Introduce KaSymbolOrigin.TYPE_ALIAS_CONSTRUCTOR
Backend. Wasm
KT-71645[Wasm] Check wasm test runner for groupByPackage=true caseKT-73907Wasm: Duplication of files in browser distributionKT-71868K/Wasm: support generating debug information in DWARF format
Compiler
New Features
KT-74049Introduce special override rule to allow overriding T! with T & AnyKT-61447Support context receivers overloads in Kotlin multiplatformKT-73255Change defaulting rule for annotationsKT-73256Implementallmeta-target for annotations
Performance Improvements
KT-73434Slow / infinite compile involving ConeInferenceContextKT-73328Do not spillthisto a local variable in coroutinesKT-69995K2: Slow compilation when star projecting mutually recursive bounds from javaKT-73687Inefficient KtCommonFile#getFileAnnotationList
Fixes
KT-70789CLI error "mixing legacy and modern plugin arguments is prohibited" on using -Xcompiler-plugin unless default scripting plugin is disabledKT-74024K2: Prohibit declaring local type aliasesKT-73858Compose / iOS: NullPointerException on buildingKT-73864[Native] DecoupleIrType.computePrimitiveBinaryTypeOrNullfrom backend.nativeKT-73122Move the upgrade references lowering to be first one in Native pipelineKT-73608K2: "Initializer type mismatch" with map and typealias to objectKT-74104Native: SynchronizedLazyImpl produces NPE on 2.1.20-Beta1 on mingwX64KT-74147K2: False negative INCONSISTENT_TYPE_PARAMETER_VALUESKT-73454K2: Fix type parameters mapping for typealiases with inner RHSKT-73043K2 Compiler does not allow references to inner constructors with typealiasesKT-74040Compilation of inner class usage does not check the visibility of parent class during compilation in different roundsKT-74195Fully qualified names in error messages make them complicatedKT-74221MakeFirSupertypesCheckera platform checkerKT-72962Consider enabling ConsiderForkPointsWhenCheckingContradictions LF earlierKT-74242Freeze onrunCatchingcall infinallyblock inside SAM conversionKT-73903Design 'replaceWith' / 'test-only' kinds for the 'LanguageFeature' classKT-29222FIR: consider folding binary expression chainsKT-73760Cannot implement two Java interfaces with@NotNull-annotated type argument and Kotlin's plain (nullable) type parameterKT-58933Applying suggested signature from WRONG_NULLABILITY_FOR_JAVA_OVERRIDE leads to red codeKT-74107K2: Calling type alias constructor with inner RHS in static scope causes runtime crashKT-74244Context parameters: context isn't checked for expect/actual property declarationKT-74276Update ASM from 9.0 to 9.6.1KT-72295K2: Generated accessors for delegated property should have property sourceKT-73150Investigate/test approximation of context parameter type in completionKT-73862[Native] Decouple NativePreSerializationLoweringContext from backend.nativeKT-72677K2 IDE / Kotlin Debugger: βCouldn't find virtual file for p1/MainKt$foo$iface$1β on evaluating inline function from another moduleKT-72672K2 ...
Kotlin 2.1.10
Changelog
Compiler
KT-73858Compose / iOS: NullPointerException on buildingKT-73454K2: Fix type parameters mapping for typealiases with inner RHSKT-73043K2 Compiler does not allow references to inner constructors with typealiasesKT-74040Compilation of inner class usage does not check the visibility of parent class during compilation in different roundsKT-73339K2: "VerifyError: Bad type on operand stack" because of missing implicit cast on generic field receiver with star projectionKT-72585K2: Compilation failure when upgrading to Kotlin 2.0.20+: Cannot replace top-level type with star projection: SKT-73399compile-time JVM codegen failure on a KProperty argument of a KSuspendFunction parameterKT-72725KMP: Unsupported actualization of inherited java field in expect classKT-73153K2: Standalone diagnostics on type arguments are not reported
Compose compiler
CMP-5680Compose compiler: unexpected stability warnings for classes compiled with 2.0.10b/381407900Avoid adding Compose annotations on synthetic classes
IR. Inlining
KT-73981[2.1.10] SuppresscheckIncorrectCrossFileDeclarationAccesswarning for Compose<class>$stablefield access
JavaScript
KT-70778Kotlin Js companion is undefined in production buildKT-73130KJS: Missedbreakfor do/while in generated JS codeKT-58797Optimize the code generated for objects on JS and Wasm backends
Klibs
KT-70146[KLIB Resolve] Don't fail on nonexistent transitive dependencyKT-73951Workaround for "Partial linkage engine may not patch some discrepancies in IR when compiling Kotlin/Native static caches" in 2.1.10
Native
KT-73559K/Native: AndroidNativeArm64 linking fails starting from Kotlin 2.1.0
Tools. CLI
KT-73967JDK 25: "IllegalArgumentException: 25-ea" with EA builds
Tools. Daemon
KT-73311"Unable to release compile session, maybe daemon is already down" flakiness
Tools. Gradle
KT-73728'generatePomFileForMavenPublication' creates pom with dependencies with 'unspecified' version
Tools. Gradle. Multiplatform
KT-73620KMP 2.1.0: Transitive dependency is broken when setting publication groupId
Tools. Gradle. Native
Kotlin 2.1.10-RC2
Changelog
Compiler
KT-73858Compose / iOS: NullPointerException on buildingKT-74040Compilation of inner class usage does not check the visibility of parent class during compilation in different rounds
Compose compiler
b/381407900Avoid adding Compose annotations on synthetic classesCMP-5680Compose compiler: unexpected stability warnings for classes compiled with 2.0.10
Kotlin 2.1.10-RC
Changelog
Compiler
KT-73454K2: Fix type parameters mapping for typealiases with inner RHSKT-73043K2 Compiler does not allow references to inner constructors with typealiasesKT-73339K2: "VerifyError: Bad type on operand stack" because of missing implicit cast on generic field receiver with star projectionKT-72585K2: Compilation failure when upgrading to Kotlin 2.0.20+: Cannot replace top-level type with star projection: SKT-73399compile-time JVM codegen failure on a KProperty argument of a KSuspendFunction parameterKT-72725KMP: Unsupported actualization of inherited java field in expect classKT-73153K2: Standalone diagnostics on type arguments are not reported
Compose compiler
CMP-5680Compose compiler: unexpected stability warnings for classes compiled with 2.0.10
IR. Inlining
KT-73981Cherry-pick the fix for KT-73482 to 2.1.10
JavaScript
KT-58797Optimize the code generated for objects on JS and Wasm backendsKT-70778Kotlin Js companion is undefined in production buildKT-73130KJS: Missedbreakfor do/while in generated JS code
Klibs
KT-73951Workaround for "Partial linkage engine may not patch some discrepancies in IR when compiling Kotlin/Native static caches" in 2.1.10
Native
KT-73559K/Native: AndroidNativeArm64 linking fails starting from Kotlin 2.1.0
Tools. CLI
KT-73967JDK 25: "IllegalArgumentException: 25-ea" with EA builds
Tools. Daemon
KT-73311"Unable to release compile session, maybe daemon is already down" flakiness
Tools. Gradle
KT-73728'generatePomFileForMavenPublication' creates pom with dependencies with 'unspecified' version
Tools. Gradle. Multiplatform
KT-73620KMP 2.1.0: Transitive dependency is broken when setting publication groupId