Releases: JetBrains/kotlin
Releases Β· JetBrains/kotlin
Kotlin 2.0.0-Beta1
Changelog
Analysis. API
Performance Improvements
KT-61789
K2: optimize getFirForNonKtFileElement for references inside super type reference
KT-59498
K2: getOnAirGetTowerContextProvider took too much time due to on air resolve
KT-61728
Analysis API: optimize AllCandidatesResolver.getAllCandidates
Fixes
KT-61252
K2: IDE K2: "By now the annotations argument mapping should have been resolved"
KT-62310
K2 IDE. False positives errors with external annotations
KT-62397
K2 IDE. FP Error in the editor on RequiresOptIn
annotation from the lib despite the warning level
KT-62705
K2: "lazyResolveToPhase(IMPORTS) cannot be called..." from light classes
KT-62626
IllegalStateException: Cannot build symbol for class org.jetbrains.kotlin.psi.KtScriptInitializer
KT-62693
K2: IDE K2: "PSI should present for declaration built by Kotlin code"
KT-62674
K2: "Scope for type ConeClassLikeTypeImpl" is null from transitive dependencies
KT-61889
Analysis API: Migrate KtFirReferenceShortener to ContextCollector instead of FirResolveContextCollector
KT-62772
Analysis API: No 'org.jetbrains.kotlin.fir.java.FirSyntheticPropertiesStorage'(31) in array owner: LLFirSourcesSession when analysing builtins in a context of common code
KT-61296
K2: do not resolve the entire file on lazyResolve call if FirFile is passed
KT-60319
K2 IDE: "Stability for initialized variable always should be computable"
KT-62859
K2 IDE: "Evaluate expression" throws exception when calling "Any?.toString()"
KT-62421
K2: IDE K2: "lazyResolveToPhase(BODY_RESOLVE)
cannot be called from a transformer with a phase BODY_RESOLVE."
KT-63058
K2 IDE: Code completion unexpectedly imports static/companion object method
KT-62588
getExpectedType should not calculate type of the expression
KT-61990
K2: Unexpected returnTypeRef for FirSyntheticProperty
KT-62625
K2: 'FirLazyExpression should be calculated before accessing' for unresolved super type
KT-62071
Analysis API: KtFirScopeProvider.getScopeContextForPosition throws exception when ImplicitReceiverValue.implicitScope is null
KT-62691
K2: optimize getFirForNonKtFileElement for references inside 'where'
KT-62587
K2 IDE. FP unresolved reference on accessing nested class in annotation argument
KT-62834
K2: missing file node level in control flow builder
KT-62768
Analysis API: No 'org.jetbrains.kotlin.fir.scopes.impl.FirDelegatedMembersFilter'(44) in array owner: LLFirSourcesSession exception on analysing common code
KT-62874
K2: FirLazyExpression should be calculated before accessing
KT-62407
Analysis API: resolve [this]
in KDoc to extension receiver
KT-61204
K2: "FirLazyExpression should be calculated before accessing in ktor HttpBinApplication"
KT-61901
Analysis API: Declared member scopes for Java classes are missing static members
KT-61800
Analysis API: Provide separate declared member scopes for non-static and static callables
KT-61255
Analysis API: Get rid of valueOf
, values
and entries
from a declared member scope
KT-62466
Expected type for functional expression should include inferred types
KT-61203
IDE K2: "Expected FirResolvedArgumentList for FirAnnotationCallImpl of FirRegularClassImpl(Source) but FirArgumentListImpl found"
KT-61791
Analysis API: Implement combined getPackage
for combined Kotlin symbol providers
KT-62437
K2 IDE. Resolution does not work inside lambda expression in constructor argument in supertypes
KT-62244
K2: Analysis API Standalone: Resolving klib dependencies from binary roots terminates application
KT-62897
K2 IDE. Unresolved declarations from libraries which are doubled in intellij
project libraries
KT-61615
K2: No 'org.jetbrains.kotlin.fir.analysis.js.checkers.FirJsModuleKind' in array owner: LLFirSourcesSession
KT-59334
K2: LLFirImplicitTypesLazyResolver problems
KT-62038
K2: Nested classes are missing in symbol light class structure tests for libraries
KT-61788
Analysis API: Symbol for FirAnonymousInitializer
cannot be null
KT-62139
Analysis API: KtFe10AnalysisSession.createContextDependentCopy does not need validity check
KT-62090
Analysis API: introduce an API to get a substitution formed by class inheritance
KT-62268
K2 IDE. No autocompletion and IllegalStateException for Pair
KT-62302
Support PsiType -> KtType conversion
KT-60325
K2 IDE. "IllegalArgumentException: source must not be null" on throw
usage attempt
KT-61431
K2: KtPropertyAccessorSymbolPointer pointer already disposed for $$result script property
KT-60957
K2: Analysis API: Reference shortener does not work correctly with invoke function calls on properties
KT-58490
K2: LLFirTypeLazyResolver problems
KT-58494
K2: LLFirAnnotationArgumentsLazyResolver problems
KT-58492
K2: LLFirBodyLazyResolver problems
KT-58769
K2: LL FIR: implement platform-dependent session factories
KT-60343
K2 IDE. IllegalArgumentException on passing incorrect type parameter to function
KT-61383
K2: 'KtCompilerFacility' fails on code fragment compilation in library sources with duplicated dependencies
KT-61842
K2: reduce number of "in-block modification" events
KT-62012
K2: "KtReadActionConfinementLifetimeToken is inaccessible: Called outside analyse method"
KT-61371
K2: Analysis API standalone: register compiler symbol provider for libraries in standalone mode
KT-61422
K2 IDE: "No array element type for vararg value parameter: org.jetbrains.kotlin.fir.declarations.impl.FirValueParameterImpl"
KT-60611
K2: reduce number of "in-block modification" events
KT-61425
Analysis API: Provide a way to get a declared member scope for an enum entry's initializing anonymous object
KT-61405
Analysis API: An enum entry should not be a KtSymbolWithMembers
KT-60904
K2: IDE K2: "For DESTRUCTURING_DECLARATION_ENTRY with text _
, one of element types expected, but FirValueParameterSymbol found"
KT-61260
K2 Scripts: Containing function should be not null for KtParameter
KT-61568
FIR Analysis API: collectCallCandidates
gives presence to the top level functions in the presence of more suitable overrides
KT-60610
K2 IDE: move "out of block" processing logic into LL FIR
KT-61597
Analysis API: KotlinIllegalStateExceptionWithAttachments: expected as maximum one expect
for the actual on errorneous code with multiple expects
KT-59793
K2: class org.jetbrains.kotlin.fir.declarations.impl.FirErrorImportImpl cannot be cast to class org.jetbrains.kotlin.fir.declarations.FirResolvedImport
-...
Read more
Kotlin 1.9.20
1.9.20
Analysis. API
New Features
KT-58834
Analysis API: Add source shadowing feature to resolve extensions
Performance Improvements
KT-57515
LL FIR: Performance bottleneck in CompositeModificationTracker.getModificationCount
KT-59266
K2: optimize FirElementBuilder.getOrBuildFir for elements outside body
KT-59454
K2: drop resolve from org.jetbrains.kotlin.analysis.api.fir.components.KtFirVisibilityChecker#collectContainingDeclarations
KT-59453
K2: completion regression from org.jetbrains.kotlin.analysis.api.fir.components.KtFirVisibilityChecker#collectContainingDeclarations
KT-59189
Analysis API: KtFirKDocReference.resolveToSymbols is slow
KT-58125
K2: LL FIR: KtToFirMapping.getElement
is slow for KtUserType
s due to on-air resolution of types
Fixes
KT-59240
K2: FirLazyResolveContractViolationException: lazyResolveToPhase(IMPORTS)
cannot be called from a transformer with a phase IMPORTS from superTypes
KT-58499
K2: FirLazyBlock should be calculated before accessing
KT-57966
K2: Analysis API: Reference Shortener does not work correctly when called on entire file
KT-60954
K2: Analysis API: Reference shortener does not work correctly with variable assignments
KT-60940
K2: Analysis API: Reference shortener incorrectly handles types in vararg parameters declarations
KT-60488
Analysis API: forbid providing custom KtLifetimeToken for every analyze call
KT-60728
K2: proper support for scripts in LL FIR transformers
KT-59159
K2 IDE: declaration is not found exception
KT-59297
K2: exception from body resolve leads to corrupted state and broken analysis
KT-59077
KtFirExpressionTypeProvider behaviour for KtSimpleNameReferences in function calls
KT-60586
K2: forbid analyze from write action
KT-57743
K2 IDE: StackOverflowError from LLFirSessionCache for simple JPS project with cyclic dependencies
KT-61026
K2 Scripts: FirLazyExpression should be calculated before accessing from on-air resolve
KT-61009
K2 Scripts: KtFirExpressionTypeProvider: Expected FirResolvedTypeRef with ConeKotlinType but was FirImplicitTypeRefImplWithoutSource
KT-60357
K2 IDE. Reified types parameters are not resolved in a function body
KT-60317
K2 IDE. IAE "This method will only work on compiled declarations, but this declaration is not compiled" on invoking Find Usages for enum method in library
KT-60706
K2 IDE: FirJvmTypeMapper is not found for kotlin.kotlin-stdlib-common
KT-60552
K2: merge StateKeeper and lazy body calculator for ANNOTATIONS_ARGUMENTS_MAPPING transformer
KT-60641
Analysis API: Scope for class org.jetbrains.kotlin.fir.types.impl.ConeClassLikeTypeImpl not found exception when stdlib is missing
KT-60638
K2: Expected FirResolvedTypeRef with ConeKotlinType but was FirImplicitTypeRefImplWithoutSource
KT-54846
Analysis API: add isExpect/isActual to KtSymbol
KT-60448
FirLazyResolveContractViolationException: lazyResolveToPhase(COMPILER_REQUIRED_ANNOTATIONS)
cannot be called from a transformer with a phase COMPILER_REQUIRED_ANNOTATIONS from AllOpen plugin
KT-59342
K2 IDE. FirLazyResolveContractViolationException: lazyResolveToPhase(TYPES)
cannot be called from a transformer with a phase TYPES
KT-59687
K2: Implement proper body update for in-block modifications
KT-59329
Resolve Extensions reference resolution breaks Find Usages
KT-60295
K2: move checkIsResolved for annotations from LLFirAnnotationArgumentsLazyResolver to LLFirTypeLazyResolver
KT-59758
K2: Expected is FirResolvedTypeRef, but was FirImplicitTypeRefImplWithoutSource from ReturnTypeCalculatorWithJump
KT-60377
K2 IDE: This method will only work on compiled declarations, but this declaration is not compiled
KT-59685
K2: rewrite on-air resolution
KT-60132
K2: properties and functions without a name should be re-analyzable as well
KT-59199
K2 IDE: PSI changes which do not cause OOB modifications can be unseen from the FIR elements
KT-59667
Analysis API: PsiInvalidElementAccessException from JavaClassifierTypeImpl.substitutor
KT-59705
KotlinExceptionWithAttachments: No fir element was found for getter
KT-59697
AA standalone: JRT module paths are not properly populated in Windows
KT-59505
K2: implicit type lazy resolution doesn't work for delegated declaration from other module
KT-56426
K2 IDE: Typealised functional types cannot be rendered
KT-59598
AA: stackoverflow while simplifying a type with a recursive type parameter
KT-58497
K2: Expected FirResolvedTypeRef for initializer type of FirPropertyImpl(Source) but FirImplicitTypeRefImplWithoutSource found
KT-59511
AA standalone mode creates Application Environment for tests
KT-58161
Analysis API: Make methods in KtCallResolverMixIn
more distinctive based on their receiver/return type
KT-59093
Do not throw exception on KtCall resolution, KtCallElement.resolveCall
should return null
on unknown cases
KT-59243
K2: FirLazyResolveContractViolationException: lazyResolveToPhase(IMPORTS)
cannot be called from a transformer with a phase IMPORTS from permits types
KT-58194
K2: Low Level API: use smart pointers to store references to PSI from FIR declarations for JavaElement
KT-59133
K2: java.lang.IllegalStateException: Fir is not initialized for FirRegularClassSymbol
KT-58174
K2: LL FIR: Invalid type reference for T & Any type
KT-52615
LL FIR: build RAW FIR only by stubs
KT-55053
K2: Exception "lateinit property diagnostic has not been initialized" in FirBuilder
KT-58580
K2: LL FIR: Declarations provided by resolve extensions from a dependency module are not visible through LLFirCombinedKotlinSymbolProvider
KT-58992
Analysis API: move org.jetbrains.kotlin.analysis.api.fir.utils.addImportToFile out of Analysis API
KT-58727
K2: AA FIR: implicit type in delegated function treated as error
KT-58653
K2: Analysis API: add functions for KtScope members access by name
KT-57559
K2 IDE: KotlinExceptionWithAttachments: Modules are inconsistent on intellij project
KT-58262
Analysis API: Declarations from Analysis API Resolve Extensions are not seen from completion
KT-57455
LL FIR: Combine AbstractFirDeserializedSymbolProvider
s in session dependencies (optimization)
KT-57207
LL FIR: Combine JavaSymbolProvider
s in session dependencies (optimization)
KT-58546
K2: LL FIR: support name collision in a designation path
KT-58495
K2: Lazy calculation is redundant
KT-58500
K2: null cannot be cast to non-null type org.jetbrains.kotlin.fir.FirPureAbstractElement
KT-58493
K2: Expected ...
Read more
Kotlin 1.9.20-RC2
Changelog
Compiler
KT-62747
Wrong warning message when overriding vararg with Array during actualization
KT-62655
Don't report a warning when new members and new supertypes are added to open expect actualization
KT-62313
Kotlin/Native Compiler crash: ClassCastException in IntrinsicGenerator
JavaScript
KT-62790
java.lang.ClassCastException in compiler when ::class is used
Libraries
KT-62656
Drop @AllowDifferentMembersInActual
from stdlib
Reflection
KT-47973
Reflection: "IllegalArgumentException: argument type mismatch" when using callSuspend to call a function returning value class over primitive
Tools. Gradle
KT-61359
"Unresolved reference: platform" when enabling Gradle configuration cache
KT-62496
Configuration time regression with KGP 1.9.20-Beta caused by loading of properties
Checksums
File |
Sha256 |
kotlin-compiler-1.9.20-RC2.zip |
e7ecbb754203a427adcdfa97f609472e0840ef7c6722c04daaf218900b669728 |
kotlin-native-linux-x86_64-1.9.20-RC2.tar.gz |
5faf5f8b1f20c8214767f23a1c9918ab97191abbb93d39aae9fd529b1a93b463 |
kotlin-native-macos-x86_64-1.9.20-RC2.tar.gz |
64d40e0d3398a6fecc948391d1ccd02c30371a56da3710ee6491b5b7b98f7a24 |
kotlin-native-macos-aarch64-1.9.20-RC2.tar.gz |
41be3a0f63a6f726118024c5a9960e480390267a96a30a45211d2bcf49104c33 |
kotlin-native-windows-x86_64-1.9.20-RC2.zip |
a5305b21517756b108c748ade77780af564589b1f64feb810ce211fb72b2da2b |
Kotlin 1.9.20-RC
Changelog
Compiler
KT-62127
"NoSuchFieldError: TRUE$delegate" on referencing companion's variable in submodule
KT-62335
Improve debuggability of code generator crashes
KT-62263
Turn "different expect/actual members" error into a warning
KT-61933
K2: "Argument type mismatch: actual type is 'Foo<kotlin/Function0<kotlin/Unit>>' but 'Foo<kotlin/coroutines/SuspendFunction0<kotlin/Unit>>' was expected
"
IDE. Multiplatform
KT-61686
Check and update places in compiler and IDE where we are saying that MPP is experimental/Beta/Alpha
Native
KT-62532
Support Xcode 15.0 frameworks as Kotlin/Native platform libraries
Native. Runtime. Memory
KT-61914
Kotlin/Native: massive increase in memory usage
KT-61741
Kotlin/Native: tsan error in parallel mark
Tools. Gradle
KT-62318
Android Studio sync memory leak in 1.9.20-Beta
KT-61368
Native compiler option 'module-name' isn't available within the compilerOptions extension for native target while configuring it inside compilations
KT-61355
freeCompilerArgs arguments and its values are passed to the compiler 5 times if added through target-level compilerOptions{} extension inside compilations
Tools. Gradle. Multiplatform
KT-62029
Kotlin 1.9.20-Beta fails to detect some transitive dependency references in JVM+Android source set
Tools. Incremental Compile
KT-61852
Kotlin 1.9.20-Beta: incremental compilation fails with files outside of the project folder
Tools. Kapt
KT-62438
Change experimental K2 kapt diagnostic message
KT-61879
K2 Kapt: java.lang.NoSuchMethodError during stub generation
Tools. Wasm
KT-61973
K/Wasm: wasmWasiNodeRun is missed
KT-61971
K/Wasm: wasmWasiTest should depends on kotlinNodeJsSetup
Checksums
File |
Sha256 |
kotlin-compiler-1.9.20-RC.zip |
12d0ff13c62aedeabb6e03a9619b59f8275ec9600b4de25560d5b451e1deafdf |
kotlin-native-linux-x86_64-1.9.20-RC.tar.gz |
54cbb138324cf4a9bc1133329da40d9ffdd428b9441367dca6f96e49034423fa |
kotlin-native-macos-x86_64-1.9.20-RC.tar.gz |
82e8346bbfd01d06b3630ed0370982f24ace7e7abffd53cefdf1399ceb1ca5f0 |
kotlin-native-macos-aarch64-1.9.20-RC.tar.gz |
9b57d7631c879110e747eaa6da7a8819e48a191be3cb77169d0a4bfcef38bcca |
kotlin-native-windows-x86_64-1.9.20-RC.zip |
ec6381d769481209394c5b451145309075906a011e74b5ba9e0670579979323a |
Kotlin 1.9.20-Beta2
Changelog
Backend. Wasm
KT-59720
K/Wasm: update to final opcodes
Compiler
KT-62027
"java.lang.IndexOutOfBoundsException: Empty list doesn't contain element at index 0" caused by ClassicExpectActualMatchingContext.kt when annotation @AllowDifferentMembersInActual
used
KT-61668
Put expect/actual diagnostics introduced in 1.9.20 release under 1.9 Language Version
KT-61645
K2/KMP: Set stdlib-native before stdlib-commonMain in dependencies for shared native metadata compilation
KT-61924
Native: problem with abstract fake override from Any
KT-61725
KMP: Annotation matching requirement for expect/actual leads to errors for annotations with @OptionalExpectation
KT-61784
KMP: [DEFAULT_ARGUMENTS_IN_EXPECT_WITH_ACTUAL_TYPEALIAS] checker missed for companion functions
KT-61167
Runtime failure: ReferenceError: MyPromise is not defined
KT-59094
K2: Fix Scripting K2 tests
IDE. Navigation
KT-61894
Navigation from java sources leads to Kotlin decompiled code in case of suspend function
Native. C and ObjC Import
KT-56369
Hint about "-fmodules" is not shown
Tools. Compiler Plugin API
KT-61872
K2: Adding annotations to metadata from backend plugin doesn't work in the presence of comments on annotated declaration
KT-61833
K2: annotations added via addMetadataVisibleAnnotationsToElement
to declarations from common sourceset in MPP project are invisible
Tools. Gradle
KT-61401
The reported language version value for KotlinNativeLink tasks in build reports and build scans is inaccurate
KT-61950
K/Wasm: Add warning about changed sourceSets
KT-61895
KotlinTopLevelExtension.useCompilerVersion is not marked as experimental
Tools. Gradle. Multiplatform
KT-59042
"Cannot build 'KotlinProjectStructureMetadata' during project configuration phase" when configuration cache enabled
KT-61652
MPP ConcurrentModificationException on transformCommonMainDependenciesMetadata
KT-61622
Upgrading to Kotlin 1.9 prevents commonMain sourceset classes from being processed by kapt/ksp (dagger/Hilt)
Tools. Gradle. Native
KT-61700
Native: linkDebugExecutableNative has duplicated freeCompilerArgs
Tools. Wasm
KT-61971
K/Wasm: wasmWasiTest should depends on kotlinNodeJsSetup
Checksums
File |
Sha256 |
kotlin-compiler-1.9.20-Beta2.zip |
2ec2dd53daae4acc1fd04fe95d42332e21a350a6f3384c63a18b079e90ab5576 |
kotlin-native-linux-x86_64-1.9.20-Beta2.tar.gz |
f51bca5632e60910fb5fb8a3c08bf29c0e56fa413efd43944dd7b8e80f2fb8db |
kotlin-native-macos-x86_64-1.9.20-Beta2.tar.gz |
13a7ed1505e751860516b6729bba533861ad5d640bac1864702b5b098157e4b8 |
kotlin-native-macos-aarch64-1.9.20-Beta2.tar.gz |
4f7b4096bfe0245be3ed18d73fb3c8f8f9687444852e7397c0329dc9a0b516e9 |
kotlin-native-windows-x86_64-1.9.20-Beta2.zip |
d2ac8d34bd0e4ef651969e3db9c65c9f9ed7db23a3b66f4d2f8f1aefc0120cb1 |
Kotlin 1.9.20-Beta
Changelog
Analysis API
New Features
KT-58834
Analysis API: Add source shadowing feature to resolve extensions
Performance Improvements
KT-57515
LL FIR: Performance bottleneck in CompositeModificationTracker.getModificationCount
KT-59266
K2: optimize FirElementBuilder.getOrBuildFir for elements outside body
KT-59454
K2: drop resolve from org.jetbrains.kotlin.analysis.api.fir.components.KtFirVisibilityChecker#collectContainingDeclarations
KT-59453
K2: completion regression from org.jetbrains.kotlin.analysis.api.fir.components.KtFirVisibilityChecker#collectContainingDeclarations
KT-59189
Analysis API: KtFirKDocReference.resolveToSymbols is slow
KT-58125
K2: LL FIR: KtToFirMapping.getElement
is slow for KtUserType
s due to on-air resolution of types
Fixes
KT-60940
K2: Analysis API: Reference shortener incorrectly handles types in vararg parameters declarations
KT-61026
K2 Scripts: FirLazyExpression should be calculated before accessing from on-air resolve
KT-61009
K2 Scripts: KtFirExpressionTypeProvider: Expected FirResolvedTypeRef with ConeKotlinType but was FirImplicitTypeRefImplWithoutSource
KT-60357
K2 IDE. Reified types parameters are not resolved in a function body
KT-60954
K2: Analysis API: Reference shortener does not work correctly with variable assignments
KT-60317
K2 IDE. IAE "This method will only work on compiled declarations, but this declaration is not compiled" on invoking Find Usages for enum method in library
KT-60728
K2: proper support for scripts in LL FIR transformers
KT-60706
K2 IDE: FirJvmTypeMapper is not found for kotlin.kotlin-stdlib-common
KT-57743
K2 IDE: StackOverflowError from LLFirSessionCache for simple JPS project with cyclic dependencies
KT-60552
K2: merge StateKeeper and lazy body calculator for ANNOTATIONS_ARGUMENTS_MAPPING transformer
KT-60641
Analysis API: Scope for class org.jetbrains.kotlin.fir.types.impl.ConeClassLikeTypeImpl not found exception when stdlib is missing
KT-60586
K2: forbid analyze from write action
KT-60638
K2: Expected FirResolvedTypeRef with ConeKotlinType but was FirImplicitTypeRefImplWithoutSource
KT-54846
Analysis API: add isExpect/isActual to KtSymbol
KT-59077
KtFirExpressionTypeProvider behaviour for KtSimpleNameReferences in function calls
KT-60448
FirLazyResolveContractViolationException: lazyResolveToPhase(COMPILER_REQUIRED_ANNOTATIONS)
cannot be called from a transformer with a phase COMPILER_REQUIRED_ANNOTATIONS from AllOpen plugin
KT-59342
K2 IDE. FirLazyResolveContractViolationException: lazyResolveToPhase(TYPES)
cannot be called from a transformer with a phase TYPES
KT-59687
K2: Implement proper body update for in-block modifications
KT-60488
Analysis API: forbid providing custom KtLifetimeToken for every analyze call
KT-59329
Resolve Extensions reference resolution breaks Find Usages
KT-60295
K2: move checkIsResolved for annotations from LLFirAnnotationArgumentsLazyResolver to LLFirTypeLazyResolver
KT-59758
K2: Expected is FirResolvedTypeRef, but was FirImplicitTypeRefImplWithoutSource from ReturnTypeCalculatorWithJump
KT-60377
K2 IDE: This method will only work on compiled declarations, but this declaration is not compiled
KT-59685
K2: rewrite on-air resolution
KT-59159
K2 IDE: declaration is not found exception
KT-59297
K2: exception from body resolve leads to corrupted state and broken analysis
KT-60132
K2: properties and functions without a name should be re-analyzable as well
KT-59199
K2 IDE: PSI changes which do not cause OOB modifications can be unseen from the FIR elements
KT-59667
Analysis API: PsiInvalidElementAccessException from JavaClassifierTypeImpl.substitutor
KT-59705
KotlinExceptionWithAttachments: No fir element was found for getter
KT-59697
AA standalone: JRT module paths are not properly populated in Windows
KT-59505
K2: implicit type lazy resolution doesn't work for delegated declaration from other module
KT-56426
K2 IDE: Typealised functional types cannot be rendered
KT-59598
AA: stackoverflow while simplifying a type with a recursive type parameter
KT-58497
K2: Expected FirResolvedTypeRef for initializer type of FirPropertyImpl(Source) but FirImplicitTypeRefImplWithoutSource found
KT-59511
AA standalone mode creates Application Environment for tests
KT-58161
Analysis API: Make methods in KtCallResolverMixIn
more distinctive based on their receiver/return type
KT-59093
Do not throw exception on KtCall resolution, KtCallElement.resolveCall
should return null
on unknown cases
KT-59240
K2: FirLazyResolveContractViolationException: lazyResolveToPhase(IMPORTS)
cannot be called from a transformer with a phase IMPORTS from superTypes
KT-59243
K2: FirLazyResolveContractViolationException: lazyResolveToPhase(IMPORTS)
cannot be called from a transformer with a phase IMPORTS from permits types
KT-58194
K2: Low Level API: use smart pointers to store references to PSI from FIR declarations for JavaElement
KT-59133
K2: java.lang.IllegalStateException: Fir is not initialized for FirRegularClassSymbol
KT-58174
K2: LL FIR: Invalid type reference for T & Any type
KT-52615
LL FIR: build RAW FIR only by stubs
KT-55053
K2: Exception "lateinit property diagnostic has not been initialized" in FirBuilder
KT-58580
K2: LL FIR: Declarations provided by resolve extensions from a dependency module are not visible through LLFirCombinedKotlinSymbolProvider
KT-58992
Analysis API: move org.jetbrains.kotlin.analysis.api.fir.utils.addImportToFile out of Analysis API
KT-58727
K2: AA FIR: implicit type in delegated function treated as error
KT-58653
K2: Analysis API: add functions for KtScope members access by name
KT-57559
K2 IDE: KotlinExceptionWithAttachments: Modules are inconsistent on intellij project
KT-58262
Analysis API: Declarations from Analysis API Resolve Extensions are not seen from completion
KT-57455
LL FIR: Combine AbstractFirDeserializedSymbolProvider
s in session dependencies (optimization)
KT-57207
LL FIR: Combine JavaSymbolProvider
s in session dependencies (optimization)
KT-58546
K2: LL FIR: support name collision in a designation path
KT-58495
K2: Lazy calculation is redundant
KT-58500
K2: null cannot be cast to non-null type org.jetbrains.kotlin.fir.FirPureAbstractElement
KT-58493
K2: Expected FirResolvedTypeRef for default value type of FirValueParameterImpl(Source) but FirUserTypeRefImpl found
KT-58496
K2: Expected FirNamedReference, FirErrorNamedReference or FirFromMissingDependenciesNamedReference, b...
Read more
Kotlin 1.9.10
Changelog
Compiler
KT-60769
Partially revert KT-58371
KT-60659
Incorrect 'unresolved reference: addFirst' error with JDK 21
KT-60371
Native custom allocator link error
KT-60986
Native: static caches with custom runtime options are broken on Linux
KT-60770
Fix false-positive ABSTRACT_MEMBER_NOT_IMPLEMENTED on toArray with JDK 21
KT-60231
NoClassDefFoundError: $$$$$NON_LOCAL_RETURN$$$$$ after upgrade to Kotlin 1.9.0
JavaScript
KT-60785
KJS: Destructured value class in suspend function fails with Uncaught TypeError: can't convert to primitive type error
KT-60852
Kotlin JS(IR): IllegalArgumentException: Cross module dependency resolution failed when updating to Kotlin 1.9.0
KT-57509
KJS: Compiler generates native JS operator == for comparing values with Any type
Native
KT-60230
Native: "unknown options: -ios_simulator_version_min -sdk_version" with Xcode 15 beta 3
KT-60758
Native: Building for 'iOS-simulator', but linking in dylib built for 'iOS' in Xcode 15 beta 4
Native. C and ObjC Import
KT-59167
Native: cinterop is unable to build interop libraries against the Xcode 15 Beta 1
Tools. Gradle
KT-61147
Kotlin Compiler 1.9.0 bundles a stripped unshadowed version of Gson
KT-60543
NoClassDefFoundError for com/gradle/scan/plugin/BuildScanExtension
Checksums
File |
Sha256 |
kotlin-compiler-1.9.10.zip |
7d74863deecf8e0f28ea54c3735feab003d0eac67e8d3a791254b16889c20342 |
kotlin-native-linux-x86_64-1.9.10.tar.gz |
1db3679919f4449514e9d82451e7dfa73558ac9bc80b82579cd74d452c8faa5b |
kotlin-native-macos-x86_64-1.9.10.tar.gz |
f5650f2560438a692803d8fe07124529c19f1972f84fe09cfa2329b93f43828d |
kotlin-native-macos-aarch64-1.9.10.tar.gz |
d2cf5a484ac0808ab29fd3f6099df7c07330f81f3cbab949947e42e36138c3de |
kotlin-native-windows-x86_64-1.9.10.zip |
a34d56661455e94e1ba4dd09ec3c1adac6148fdedcf55eefb9a79c8ed01ff02c |
Kotlin 1.9.0
Changelog
Analysis API
New Features
KT-57930
Analysis API: provide an API for extending Kotlin resolution
KT-57636
K2: Add the return type of K2 reference shortener AA ShortenCommand::invokeShortening()
e.g., ShorteningResultInfo
to allow callers to access the shortening result PSI
Fixes
KT-58249
Analysis API: Disable error logging for FE10 implementation of resolveCall when resolve is not successful
KT-55626
Impossible to restore symbol by psi from script file
KT-57314
LL FIR: Combine LLFirProvider$SymbolProvider
s in session dependencies (optimization)
KT-55527
K2 IDE: Rewrite KtScopeContext class to allow to handle each scope separately
KT-55329
LL FIR: Unexpected ACTUAL_WITHOUT_EXPECT error on constructor and function declaration
KT-50732
LL API: fix compiler based tests
KT-57850
K2: contract violation due to SymbolLightAccessorMethod.propertyAccessorSymbol
KT-56543
LL FIR: rework lazy transformers so transformers modify only declarations they suppose to
KT-56721
K2: FirExtensionDeclarationsSymbolProvider: java.lang.IllegalStateException: Recursive update
KT-50253
Analysis API: Solve issues with ProcessCancelledException
KT-56800
K2 IDE: optimize deprecation calculation for symbols
KT-55006
Analysis API does not transform Java type refs for callable symbol return types
KT-57256
AA FIR: Reduce lazy resolve phase for deprecation status
KT-57619
K2: CFG for class initializer is not correctly built in reversed resolve mode
KT-58141
K2: AA FIR: impossible to restore symbol for declaration with annotation with argument inside type
KT-57462
Symbol Light Classes: SymbolLightFieldForProperty should retrieve annotations not from KtPropertySymbol, but from the corresponding backing field
KT-54864
Analysis API: add function to get expect KtSymbol list by actual KtSymbol
KT-56763
Analysis API: .KtSourceModuleImpl is missing in the map.
on symbol restore when symbol cannot be seen from the use-site module
KT-56617
Analysis API: optimize KtFirSymbolProviderByJavaPsi.getNamedClassSymbol
KT-54430
K2: .getAllOverriddenSymbols() returns invalid results
Backend. Native. Debug
KT-55440
Kotlin/Native debugger: inline function parameters are not visible during debugging
Backend. Wasm
KT-58293
Wasm: ReferenceError: e is not defined in kotlin.test.jsThrow
KT-58931
Wasm tests are failing to start on Kotlin 1.9.0-Beta
KT-58188
Restore binary compatibility of PlatformDiagnosticSuppressor.shouldReportUnusedParameter
KT-57136
K/Wasm: Restrict non-external types in JS interop
KT-57060
Clarify the lack of support for dynamic in Kotlin/Wasm
KT-56955
K/Wasm: Support restricted version of K/JS js(code)
KT-57276
Wasm: "Body not found for function" error when compiling konform library with Kotlin/Wasm support
KT-56976
K/Wasm bug with calling override of external function with default parameters
Compiler
New Features
KT-55333
Allow secondary constructors in value classes with bodies
KT-54944
@Volatile
support in native
KT-54746
Deprecate with ERROR JvmDefault annotation and old -Xjvm-default modes
KT-47902
Do not propagate method deprecation through overrides
KT-29378
K2: rework warnings/errors for equality/identity operators on incompatible types
KT-57477
False-positive overload resolution ambiguity in case of lambda without arguments
KT-57010
Kotlin/Native: make it possible to compile bitcode in a separate compiler invocation
KT-55691
K2: Avoid inferring Nothing? in presence of other constraints (beside type parameter bounds)
KT-46288
Unexpected behavior of extension function on lambda with suspend receiver
KT-24779
Inconsistent smart cast behavior for bound data flow values
Performance Improvements
KT-23397
Optimize out field for property delegate when it's safe (JVM)
KT-56906
FIR: Use cached instance of FirImplicitTypeRefImpl in FIR builders
KT-56276
LanguageVersion.getVersionString() allocates 5k objects on project opening
Fixes
KT-57784
"NullPointerException: Parameter specified as non-null is null:" with enum, companion object, 'entries' and map
KT-55217
K2: support callable reference conversions on top-level expressions
KT-57232
K2: build Space JVM (master)
KT-59079
"AE: SyntheticAccessorLowering should not attempt to modify other files!" with callable reference to constructor with value class parameter
KT-58837
Partial linkage fails to report any compiler message on Windows when launched through Gradle plugin
KT-57602
K2: Rework member scope of types having projection arguments for covariant parameters
KT-55171
Put new contracts syntax under a feature flag
KT-58719
K2: false-positive INVISIBLE_REFERENCE error in case of importing an internal abstract class
KT-56030
[K2/N] Support Objective-C overloading by param names only
KT-57510
K2: Data class equals/hashCode/toString methods are not written to Klib metadata
KT-56331
K2: compiler backend crash on usage of expected function with default arguments
KT-53846
K2 / Context receivers: ClassCastException on secondary constructor of class with context receiver
KT-58621
K2: Private class shadows public function defined in the same package
KT-59102
K2: constant evaluator does not provide Long type on shl
KT-59066
[K2] delegation leads to "IllegalStateException: Expected some types"
KT-56074
K2: build Space JVM (snapshot 2022.3)
KT-58787
KAPT: "NullPointerException: null cannot be cast to non-null type" with delegate
KT-57022
K2 IllegalStateException in signature computation
KT-56792
K2: build kotlinpoet
KT-57373
K2: FIR properties synthesized when implementing interface by delegation don't have accessors
KT-56583
K1: Implement opt-in for integer cinterop conversions
KT-59030
[PL] Workaround for broken @Deprecated
annotations in c-interop KLIBs
KT-58618
K2: Local property delegates cannot infer generic return type
KT-36770
Prohibit unsafe calls with expected @NotNull
T and given Kotlin generic parameter with nullable bound
KT-56739
K2: build Space iOS
KT-57131
K2: stdlib test compilation fails on ListTest.kt in FirJvmMangleComputer
KT-58137
K2: ISE "Usage of default value argument for this annotation is not yet possible" when instan...
Read more
Kotlin 1.9.0-RC
Changelog
Backend. Wasm
KT-58188
Restore binary compatibility of PlatformDiagnosticSuppressor.shouldReportUnusedParameter
KT-58293
Wasm: ReferenceError: e is not defined in kotlin.test.jsThrow
KT-58931
Wasm tests are failing to start on Kotlin 1.9.0-Beta
Compiler
Fixes
KT-58621
K2: Private class shadows public function defined in the same package
KT-59102
K2: constant evaluator does not provide Long type on shl
KT-59079
"AE: SyntheticAccessorLowering should not attempt to modify other files!" with callable reference to constructor with value class parameter
KT-58787
KAPT: "NullPointerException: null cannot be cast to non-null type" with delegate
KT-58837
Partial linkage fails to report any compiler message on Windows when launched through Gradle plugin
KT-59030
[PL] Workaround for broken @Deprecated
annotations in c-interop KLIBs
KT-58618
K2: Local property delegates cannot infer generic return type
KT-58897
K2: False positive unresolved reference with same-named enum class and its entry
KT-56927
Enum with secondary constructor can't be compiled with K2 using JS/Native backend
KT-57570
Remove source code excerpts from platform type nullability assertion exceptions
KT-52774
Resolve unqualified enum constants based on expected type
IDE. Gradle Integration
KT-59034
MPP build failed with "Factory type is not known for plugin variants" in kt-231-*
JavaScript
KT-58570
KJS: ES6 classes + PL throw java.lang.NullPointerException
KT-58835
K2/JS: Fix incremental compilation klib tests
KT-58794
KJS / K2: Assertion failed with Space build
Libraries
KT-58985
Update KClass.isData KDoc
KT-58276
Deprecate redundant public declarations in kotlin.native.concurrent
Native. ObjC Export
KT-58839
K/N: Exception during HiddenFromObjC marked class extension function compiling
Tools. Compiler plugins. Serialization
KT-58918
Serialization: NPE at run time obtaining a serializer for a sealed class with a generic self-referencing property
KT-58954
Serialization: NPE at run time when accessing a delegating property of a deserialized object
KT-59113
Serialization: NPE at run time when accessing a delegating property of a deserialized object
KT-57647
Serialization: "IllegalAccessError: Update to static final field" caused by serializable value class
Tools. Gradle
KT-59256
[1.9.0-Beta] ServiceLoader does not pick up classes defined in the same project
KT-58662
Gradle 8.1 + Configuration Cache: custom values data is missing from build report
KT-59063
Explicit API mode broken in Kotlin 1.9.0-Beta
KT-59191
Actual compilation failure exception might be hidden in the case of a Kotlin daemon crash
KT-59056
FreeCompilerArgs options added using 'subprojects' extension override module-level freeCompilerArgs options
KT-55740
Gradle 8: Listener registration using Gradle.addBuildListener() has been deprecated
KT-58251
Build Statistics. Kotlin-specific tags are missing in build scans if projects use Gradle 8+
KT-58916
[1.9.0-Beta] PLUGIN_CLASSPATH_CONFIGURATION_NAME and NATIVE_COMPILER_PLUGIN_CLASSPATH_CONFIGURATION_NAME should stay public or offer an alternative API
KT-58869
K2, Gradle: Improve message "100% (2/2) tasks have compiled with Kotlin 2"
Tools. Gradle. JS
KT-59116
K/JS npm dependcies are not resolved properly on Kotlin 1.9
KT-58970
browserTest gradle task fails if karma is used and gradle configuration cache is enabled
KT-59004
Kotlin JS 1.9.0-Beta, yarn.lock is unstable in multi module project
Tools. Gradle. Multiplatform
KT-57903
Prepare for migration to the pluggable android target plugin
KT-58661
KGP: KotlinJvmTarget: Implement 'run' carrier task
KT-59055
KotlinJvmRun not respecting jvmToolchain setting
Tools. Gradle. Native
KT-57823
KotlinNativeCompileOptions.moduleName value is ignored and replaced with the default one if to set up using compilations
KT-58838
KGP/Multiplatform: 1.9.0-Beta with custom cinterops: IllegalStateException: Could not create domain object 'jni' (DefaultCInteropSettings)
Tools. Incremental Compile
KT-58986
New IC: ISE "The following LookupSymbols are not yet converted to ProgramSymbols: LookupSymbol(name=$$delegatedProperties, ...)"
Tools. Parcelize
KT-59112
K2: "IllegalStateException: Function has no body with @Parcelize
" on nested sealed class hierarchies
Checksums
File |
Sha256 |
kotlin-compiler-1.9.0-RC.zip |
d00312caa89de1dd3f62d80d5b31724efc333101616ba4a22caf4458862315e7 |
kotlin-native-linux-x86_64-1.9.0-RC.tar.gz |
2dc30ef2b73bcc561decd5efc7b78b7431cfe2fb982c471baaa6762c5022ce5a |
kotlin-native-macos-x86_64-1.9.0-RC.tar.gz |
a4b9b2dbb6793ee6857e3cbdecceb2d972aba1c1055e64bd7cce90fe0c776afc |
kotlin-native-macos-aarch64-1.9.0-RC.tar.gz |
1ca609007c2cbc587b4ce5e689064867ec18a377ce0ca24a777edf8d74cb7df9 |
kotlin-native-windows-x86_64-1.9.0-RC.zip |
b3e35851992132fea2608fa6be87f0fda4b613bca2a4417e5dc3bf1509128a2d |
Kotlin 1.8.22
Changelog
Tools. Gradle
KT-58280
org.jetbrains.kotlin.jvm Gradle plugin contributes build directories to the test compile classpath
Checksums
File |
Sha256 |
kotlin-compiler-1.8.22.zip |
91f50fe25c9edfb1e79ae1fe2ede85fa4728f7f4b0587644a4eee40252cdfaa6 |
kotlin-native-linux-x86_64-1.8.22.tar.gz |
a1fb41fc010b347d5d9a5449ebb48ad200c59ec2a9121b01db5165db6697e58b |
kotlin-native-macos-x86_64-1.8.22.tar.gz |
0d6e6b12569a4b8ff2f301f827192dd715a29962cc01eed05557aa8e6eb7c20d |
kotlin-native-macos-aarch64-1.8.22.tar.gz |
29805af3220eab3c163ac54f02a6097436d4ddfa83eca7815eb053517093e417 |
kotlin-native-windows-x86_64-1.8.22.zip |
91b04aa9f3dc3d5968c75d8e7f163e542458867915777e995162864cc805b2e5 |