Releases: JetBrains/kotlin
Releases Β· JetBrains/kotlin
Kotlin 1.9.0-Beta
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-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-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-58249
Analysis API: Disable error logging for FE10 implementation of resolveCall when resolve is not successful
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-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
KT-56584
K/Wasm: Can't link symbol class
Compiler
New Features
KT-49276
Warn about potential overload resolution change if Range/Progression starts implementing Collection
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-29378
K2: rework warnings/errors for equality/identity operators on incompatible types
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-56906
FIR: Use cached instance of FirImplicitTypeRefImpl in FIR builders
KT-56276
LanguageVersion.getVersionString() allocates 5k objects on project opening
Fixes
KT-56609
K2: False positive NULL_FOR_NONNULL_TYPE with -Xjsr305=strict and @Nullable
annotation Java parameter
KT-56656
K1/K2: inconsistent NOTHING_TO_OVERRIDE with complex nullable annotations
KT-58332
K2: local fun with suspend type is not marked as suspend in IR
KT-57991
K2: Modifier 'suspend' is not applicable to 'anonymous function'
KT-4113
No smartcast for nullable lambda property (functional type) with implicit/operator invoke
call
KT-54294
K2: "Not all type variables found" in builder inference with type parameters inferred through a union of two branches
KT-52597
Provide Alpha Support for Multiplatform in the K2 platform
KT-58523
K2: reference is resolved to imported type-alias instead of identically named top-level property
KT-57098
Native: avoid object initialization while accessing const val
KT-57973
32-th default value in inline classes override function is not used
KT-57714
"IllegalStateException: <B::!>" using reified generics
KT-57810
toString
of object erroneously considered as constant function in string concatenation
KT-58076
K2: Incorrect inference of type of labeled receiver
KT-57929
K2: Arguments of annotations are not calculated in a lot of strange locations
KT-55388
Consider enabling ProhibitUsingNullableTypeParameterAgainstNotNullAnnotated
KT-53041
NPE in Kotlin 1.7.0 when using RxJava Maybe.doOnEvent with anonymous parameters
KT-54829
Cleanup local types approximation logic
KT-38871
Kotlin Gradle DSL, MPP: UNUSED_VARIABLE when configuring a sourceset with delegated property
KT-58587
MUST_BE_INITIALIZED must take into account effectivelly final
KT-58524
K2: false-positive overload resolution ambiguity error on invoking a generic class's member function with id-shaped function-typed parameter on intersection-typed receiver
KT-53929
Enum.entries: consider changing scope behavior in K1
KT-58520
K2: FIR2IR: ISE during const evaluation of operator times with exposed
KT-56662
K1: false negative INVISIBLE_SETTER for a var with internal setter accessed from a derived class
KT-57770
K2: Support generation of serializer if base class for serializable class declared in different module
KT-58375
Kapt: "wrong number of type arguments. required 1" when more than 22 type arguments
KT-56077
K2: build atomicfu
KT-56074
K2: build Space JVM (snapshot 2022.3)
KT-48870
[FIR] Different behavior for explicit receiver resolution inside delegated constructors
KT-53865
Partial linkage: overriding function with parameter losing vararg: Native is successful, JS fails in runtime
KT-53568
Partial linkage: absent class as type parameter bound causes failure of compileProductionExecutableKotlinJs
- [
KT-53608
](https://youtrack.jetbrains.com/iss...
Read more
Kotlin 1.8.21
Changelog
Compiler
KT-57848
Native: compilation of dynamic/static library fails with Xcode 14.3
KT-57875
Native compilation failure: Suspend functions should be lowered out at this point, but FUN LOCAL_FUNCTION_FOR_LAMBDA
KT-57946
KAPT: "RuntimeException: No type for expression" with delegate
JavaScript
KT-57356
KJS: StackOverflowException on @JsExport
with type parameters referring to one another
Tools. Commonizer
KT-57796
NoSuchFileException in :module-B:commonizeCInterop with Kotlin 1.8.20
Tools. Compiler plugins. Serialization
KT-58067
Serialization: NullPointerException caused by @Contextual
property with type with generic
KT-57730
Serialization: "IllegalStateException: Serializer for element of type .Foo has not been found" caused by serialization of Java type
Tools. Gradle. JS
KT-57766
KJS / Gradle "Module not found: Error: Can't resolve 'kotlin-kotlin-stdlib-js-ir'" when using "useEsModules"
Tools. Kapt
KT-58027
Kotlin 1.8.20 kapt issue "null: KtCallExpression: build()"
Tools. Maven
KT-58048
Maven: "Too many source module declarations found" after upgrading to 1.8.20
KT-58101
'Unable to access class' in kotlin-maven-plugin after updating to Kotlin 1.8.20
Checksums
File |
Sha256 |
kotlin-compiler-1.8.21.zip |
6e43c5569ad067492d04d92c28cdf8095673699d81ce460bd7270443297e8fd7 |
kotlin-native-linux-x86_64-1.8.21.tar.gz |
0fc854641dd6d88dce3cc044bb5bc99b9035480474e23541eff03771690c68cf |
kotlin-native-macos-x86_64-1.8.21.tar.gz |
e73bfdac0461ee0c84f25e61063c243bf8d4eb8e0ff5da250456d6a23c677fd6 |
kotlin-native-macos-aarch64-1.8.21.tar.gz |
0a97957921ed55458f3e6cc9117643914ccf3663d8ad7eb161a4a03035a7521b |
kotlin-native-windows-x86_64-1.8.21.zip |
f23d3288a47ee580f82f862d55452a75074fce3d26fe7e7f55e27b6015226d8d |
Kotlin 1.8.20
Changelog
Analysis API
KT-55510
K2: Lost designation for local classes
KT-55191
AA: add an API to compare symbol pointers
KT-55487
K2: symbol pointer restoring doesn't work for static members
KT-55336
K2 IDE: "java.lang.IllegalStateException: Required value was null." exception while importing a compiled JPS project
KT-55098
AA: KtDeclarationRenderer should render a context receivers
KT-51181
LL API: errors for SAM with suspend function from another module
KT-50250
Analysis API: Implement Analysis API of KtExpression.isUsedAsExpression
KT-54360
KtPropertySymbol: support JvmField in javaSetterName and javaGetterName
Analysis API. FE1.0
KT-55825
AA FE1.0: stackoverflow when resolution to a function with a recursive type parameter
Analysis API. FIR
KT-54311
K2: proper implementation of KtSymbolPointer
KT-50238
Analysis API: Implement KSymbolPointer for KtSymbol
Analysis API. FIR Low Level API
KT-52160
FIR: Substitution overrides on FirValueParameter-s are incorrectly unwrapped
KT-55566
LL FIR: Tests in compiler/testData/diagnostics/tests/testsWithJava17
fail under LL FIR
KT-55339
LL FIR: Missing RECURSIVE_TYPEALIAS_EXPANSION error in function type alias
KT-55327
LL FIR: Diverging UNRESOLVED_REFERENCE errors in recursive local function test
KT-54826
KtSymbolPointer: migrate from IdSignature to our own solution
Android
KT-54464
MPP, Android SSL2: Add a flag for suppressing warning in case of using Android Style folders
Backend. Wasm
KT-38924
Wasm support in nodejs
KT-56160
Getting WebAssembly.CompileError in browsers not supported GC and other required proposals
KT-46773
Implement an experimental version of the Kotlin/Wasm compiler backend
KT-56584
K/Wasm: Can't link symbol class
KT-56166
Fix compatibility with Firefox Nightly
KT-55589
Basic support of WASI
KT-53790
Reading from "node:module" is not handled by plugins error with Kotlin/Wasm 1.7.20-Beta
Compiler
New Features
KT-54535
Implement custom equals and hashCode for value classes in Kotlin/JVM
KT-55949
Release experimental @Volatile
support in native
KT-44698
Frontend (K2): print file name/line on compiler crash/exception
KT-54666
K2: Allow to skip specifying type arguments for members from raw type scope
KT-54524
Implement Java synthetic property references in compiler
KT-54024
K2: support -Xlink-via-signatures mode
Performance Improvements
KT-33722
JVM: Result API causes unnecessary boxing
KT-53330
Optimize for-loops and contains over open-ended ranges with until operator (..<
) for all backends
KT-54415
JVM BE: performance loss related to multi-field inline class lowering
KT-48759
Infix compareTo boxes inline classes
KT-55033
Make org.jetbrains.kotlin.resolve.calls.inference.model.NewConstraintSystemImpl#runTransaction an inline function
KT-54501
Improve code generation for inline classes with custom equals
Fixes
KT-56965
K/N: linkDebugFrameworkIosArm64 tasks failing with UnsupportedOperationException: VAR name:disposables type:com.badoo.reaktive.disposable.CompositeDisposable [val]
KT-56611
Native: new native caches are broken when KONAN_DATA_DIR is defined to a directory inside ~/.gradle
KT-55251
Enum.entries compilation error should be more specific
KT-56527
K2: "AssertionError: Assertion failed" during compilation in SequentialFilePositionFinder
KT-56526
InvalidProtocolBufferException on reading module metadata compiled by K2 in 1.8.20
KT-57388
Kapt+JVM_IR: "RuntimeException: No type for expression" for delegated property
KT-53153
Synthetic Enum.entries can be shadowed by user-defined declarations
KT-51290
"AssertionError: Parameter indices mismatch at context" with context receivers
KT-57242
Equals behaviour for value classes implementing interfaces is different between 1.8.10 and 1.8.20-RC
KT-57261
"IllegalArgumentException was thrown at: MemoizedInlineClassReplacements.getSpecializedEqualsMethod" when comparing non-inline class instance with an inline class instance
KT-57107
Handling of Windows line endings CRLF broken in latest snapshot with K2
KT-57117
K2: Compiler reports invalid columns in diagnostics in case of crlf line endings
KT-56500
The type parameter TYPE_PARAMETER name:E index:0 variance: superTypes:[kotlin.Any?] reified:false is not defined in the referenced function FUN LOCAL_FUNCTION_FOR_LAMBDA
KT-56258
VerifyError: Bad local variable type when using -Xdebug
KT-54455
Unexpected result of equality comparison of inline class objects
KT-56251
Generic Java synthetic property references don't work in K2
KT-55886
K2: Wrong code location mapping with Windows line endings
KT-43296
FIR: Complicated interaction between smart cast and inference leads to false-positive diagnostic
KT-57053
Problem around anonymous objects in inline functions
KT-54950
NoSuchMethodError on calling 'addAll' on inline class implementing mutable list
KT-56815
compileKotlin task is stuck with while(true) and suspend function
KT-56847
Unresolved reference to Java annotation in Kotlin class with the same name packages
KT-52459
Context receivers: AbstractMethodError caused by Interface method with both an extension and a context receiver is overriden incorrectly in subclasses
KT-56215
JVM: Object extension function nullable receiverο»Ώ null check false negative when object is null
KT-56188
K/N: AssertionError when casting SAM wrapper with generic type parameter
KT-56033
Restore 'isMostPreciseContravariantArgument' function signature for compatibility
KT-56407
Backend Internal error: Exception during IR lowering during :daemon-common-new:compileKotlin
KT-55887
K2. "IllegalStateException: org.jetbrains.kotlin.ir.expressions.impl.IrErrorCallExpressionImpl is not expected" on adding kotlin.plugin.jpa
KT-56701
K2 (with LightTree) reports syntax errors without additional information
KT-56649
K2 uses 0-index for line numbers rather than 1-index
KT-54807
K2. Support @OnlyInputTypes
diagnostic checks (contains
like calls)
KT-51247
"AssertionError: org.jetbrains.kotlin.ir.expressions.impl.IrFunctionReferenceImpl" caused by context receiver functional types
KT-55436
K1: implement warning about shadowing of the derived property by the base class field
KT-56521
Static scope...
Read more
Kotlin 1.8.20-RC2
Changelog
Compiler
KT-57388
Kapt+JVM_IR: "RuntimeException: No type for expression" for delegated property
KT-57242
Equals behaviour for value classes implementing interfaces is different between 1.8.10 and 1.8.20-RC
KT-57261
"IllegalArgumentException was thrown at: MemoizedInlineClassReplacements.getSpecializedEqualsMethod" when comparing non-inline class instance with an inline class instance
KT-56527
K2: "AssertionError: Assertion failed" during compilation in SequentialFilePositionFinder
KT-57107
Handling of Windows line endings CRLF broken in latest snapshot with K2
Tools. Gradle
KT-57296
Build statistics sending errors in case of buildSrc directory usage with kotlin-dsl plugin applied
Tools. Gradle. JS
KT-57285
KJS / Gradle / MPP: FileNotFoundException on publishing empty KJS sourceset
Tools. Gradle. Multiplatform
KT-57460
Kotlin Gradle Plugin: Null this
pointer in transformCommonMainDependenciesMetadata
KT-57306
[Kotlin 1.8.20-RC] GradleException: Could not load the value of field apiConfiguration
of org.jetbrains.kotlin.gradle.plugin.mpp.compilationImpl.DefaultKotlinCompilationConfigurationsContainer
Checksums
File |
Sha256 |
kotlin-compiler-1.8.20-RC2.zip |
0db23d86962bece7577c19b76ec6b27611e5c4b7c70e93d71451d289e6a7741b |
kotlin-native-linux-x86_64-1.8.20-RC2.tar.gz |
e38429bd0f778689c3953d4c3d5aa67c30fc9c39c0fa4d75463fa645356aa97b |
kotlin-native-macos-x86_64-1.8.20-RC2.tar.gz |
0939c73f2d30b0eaed826d2dd3eb6ce0a4720ccaa48a8fed2b9439b3168273ef |
kotlin-native-macos-aarch64-1.8.20-RC2.tar.gz |
536fb2d6f26d4f9ed351a07c8673fe3c8d669cedc983b6151ef1d36f8bd564b4 |
kotlin-native-windows-x86_64-1.8.20-RC2.zip |
2fd80c2f59125469d17d35a79c7711302875f8dd4a0403d6e0885e678a099ece |
Kotlin 1.8.20-RC
Changelog
Backend. Wasm
KT-56584
K/Wasm: Can't link symbol class
Compiler
Fixes
KT-57053
Problem around anonymous objects in inline functions
KT-56965
K/N: linkDebugFrameworkIosArm64 tasks failing with UnsupportedOperationException: VAR name:disposables type:com.badoo.reaktive.disposable.CompositeDisposable [val]
KT-56815
compileKotlin task is stuck with while(true) and suspend function
KT-56258
VerifyError: Bad local variable type when using -Xdebug
KT-56847
Unresolved reference to Java annotation in Kotlin class with the same name packages
KT-56526
InvalidProtocolBufferException on reading module metadata compiled by K2 in 1.8.20
KT-56500
The type parameter TYPE_PARAMETER name:E index:0 variance: superTypes:[kotlin.Any?] reified:false is not defined in the referenced function FUN LOCAL_FUNCTION_FOR_LAMBDA
KT-56611
Native: new native caches are broken when KONAN_DATA_DIR is defined to a directory inside ~/.gradle
KT-56215
JVM: Object extension function nullable receiver null check false negative when object is null
KT-56033
Restore 'isMostPreciseContravariantArgument' function signature for compatibility
KT-56407
Backend Internal error: Exception during IR lowering during :daemon-common-new:compileKotlin
KT-56701
K2 (with LightTree) reports syntax errors without additional information
KT-56649
K2 uses 0-index for line numbers rather than 1-index
KT-56521
Static scope initializers sometimes not called when first accessed from interop
KT-49182
Strange cast from Unit to String
KT-55125
Difference in generated bytecode for open suspend functions of generic classes
IDE. Gradle. Script
KT-56941
Gradle KTS / Navigation: Go to declaration for Java types doesn't work
JavaScript
KT-56602
KJS / Serialization: polymorphicDefaultDeserializer unbound on Kotlin 1.8.20-Beta
KT-56580
KJS: languageVersionSettings string is unstable
KT-56581
KJS: Lock file for incremental cache
KT-56582
KJS: Function type interface reflection crashes the compiler in incremental build
KT-56469
KJS: BE Incremental rebuild spoils source map comment
Libraries
KT-55935
[Kotlin/JVM] Path.copyToRecursively does not work across file systems
Native
KT-56443
Native link task reports w: Cached libraries will not be used for optimized compilation
Tools. CLI
KT-56789
Metaspace memory leak in CoreJrtFileSystem
KT-56992
Performance test regression in Gradle when switching to Kotlin 1.8.20
KT-56925
Remove warning about assignment plugin
KT-57077
1.8.20-RC-243
shows Java 19 warnings even if configured with Java 17 toolchain
Tools. Compiler Plugins
KT-56487
Add more methods to DescriptorSerializerPlugin
Tools. Compiler plugins. Serialization
KT-56738
Unexpected SERIALIZER_NOT_FOUND when compiling against binary with enum
KT-56990
"AssertionError: SyntheticAccessorLowering should not attempt to modify other files" in kotlinx-serialization using @Serializer
and List argument
Tools. Gradle
KT-56221
Gradle KTS: False positive Val cannot be reassigned
when using an extension and its property with an implicit set
operator
KT-55452
Values of the compiler arguments set via KotlinCompile task configuration are duplicated by the KaptGenerateStubs task
KT-56645
Gradle: KGP reports an incorrect resources processing task name for JVM projects
KT-55565
Consider de-duping or blocking standard addition of freeCompilerArgs to KaptGenerateStubsTask
KT-56414
Dependency locking and failed builds with Kotlin 1.8.10
Tools. Gradle. JS
KT-57068
KJS / Gradle: "Unable to find method 'kotlin.gradle.targets.js.dsl.KotlinJsBrowserDsl.testTask'" after updating to 1.8.20-Beta
KT-56999
K/JS: KotlinJsIrLink::rootCacheDirectory property must be public
KT-56765
K/JS: Several binaries use same cache directory
KT-56488
Debugger won't stop on breakpoints of JS browser test
KT-56719
KJS / Gradle: Compile sync task has to sync only changed files
Tools. Gradle. Multiplatform
KT-56729
commonizeCInterop: Duplicated libraries: co.touchlab:sqliter-driver-cinterop-sqlite3
KT-56510
Import with included plugin build may fail with OverlappingFileLockException during commonizeNativeDistribution
Tools. Kapt
KT-56635
KAPT / IR: "Unresolved reference: DaggerGeneratedCodeTest_AppComponent " caused by stub generation with Kotlin 1.8.20-Beta
KT-56360
Kapt with JVM IR changes fields order
Checksums
File |
Sha256 |
kotlin-compiler-1.8.20-RC.zip |
cd90d3fef3608f8866520c84f4fe729e6733b13cfa18bf93ebb52a2cf3f37b7b |
kotlin-native-linux-x86_64-1.8.20-RC.tar.gz |
35296775617118bc2e703f3e226bbb827885765be7001a9ebcd5cb68783ce323 |
kotlin-native-macos-x86_64-1.8.20-RC.tar.gz |
f76faf8063d9d170db2dc5bb1b5d442787b0cf69983aa0605c1da22f31ef33b7 |
kotlin-native-macos-aarch64-1.8.20-RC.tar.gz |
45694d385d09eb0eb075fa08b1bbf5000289120e6de677b71504481010a170a7 |
kotlin-native-windows-x86_64-1.8.20-RC.zip |
9a0ce3887a4fc188b209a3ceff2b9235b2bd5ac965b1259b62ac91b9ea914b0f |
Kotlin 1.8.20-Beta
Changelog
Analysis API
KT-55510
K2: Lost designation for local classes
KT-55191
AA: add an API to compare symbol pointers
KT-55487
K2: symbol pointer restoring doesn't work for static members
KT-55336
K2 IDE: "java.lang.IllegalStateException: Required value was null." exception while importing a compiled JPS project
KT-55098
AA: KtDeclarationRenderer should render a context receivers
KT-51181
LL API: errors for SAM with suspend function from another module
KT-50250
Analysis API: Implement Analysis API of KtExpression.isUsedAsExpression
KT-54360
KtPropertySymbol: support JvmField in javaSetterName and javaGetterName
Analysis API. FIR
KT-54311
K2: proper implementation of KtSymbolPointer
KT-50238
Analysis API: Implement KSymbolPointer for KtSymbol
Analysis API. FIR Low Level API
KT-52160
FIR: Substitution overrides on FirValueParameter-s are incorrectly unwrapped
KT-54826
KtSymbolPointer: migrate from IdSignature to our own solution
Android
KT-54464
MPP, Android SSL2: Add a flag for suppressing warning in case of using Android Style folders
Backend. Wasm
KT-56160
Getting WebAssembly.CompileError in browsers not supported GC and other required proposals
KT-56166
Fix compatibility with Firefox Nightly
KT-55589
Basic support of WASI
KT-46773
Implement an experimental version of the Kotlin/Wasm compiler backend
KT-53790
Reading from "node:module" is not handled by plugins error with Kotlin/Wasm 1.7.20-Beta
Compiler
New Features
KT-55949
Release experimental @Volatile
support in native
KT-44698
Frontend (K2): print file name/line on compiler crash/exception
KT-54666
K2: Allow to skip specifying type arguments for members from raw type scope
KT-54535
Implement custom equals and hashCode for value classes in Kotlin/JVM
KT-54524
Implement Java synthetic property references in compiler
KT-54024
K2: support -Xlink-via-signatures mode
Performance Improvements
KT-53330
Optimize for-loops and contains over open-ended ranges with until operator (..<
) for all backends
KT-48759
Infix compareTo boxes inline classes
KT-55033
Make org.jetbrains.kotlin.resolve.calls.inference.model.NewConstraintSystemImpl#runTransaction an inline function
KT-33722
JVM: Result API causes unnecessary boxing
Fixes
KT-53153
Synthetic Enum.entries can be shadowed by user-defined declarations
KT-54140
SOE at IrBasedDescriptorsKt.makeKotlinType
with mixing recursive definitely not nullable type with nullability
KT-56224
Clarify message "Secondary constructors with bodies are reserved for for future releases" for secondary constructors in value classes with bodies
KT-54662
K2: Assign operator ambiguity on synthetic property from java
KT-54507
K2: Wrong implicitModality
for interface in FirHelpers
KT-55912
"UnsupportedOperationException: Unsupported const element type kotlin.Any" caused by kotlin
fqn in annotation
KT-55251
Enum.entries compilation error should be more specific
KT-43296
FIR: Complicated interaction between smart cast and inference leads to false-positive diagnostic
KT-55483
K2: Fir is not initialized for FirRegularClassSymbol java/lang/invoke/LambdaMetafactory
KT-56188
K/N: AssertionError when casting SAM wrapper with generic type parameter
KT-54209
K2: false positive deprecation on a class literal with deprecated companion
KT-55408
K2: can't access indirectly inherited from a package-private class Java members through a type alias
KT-55116
K2: store static qualifiers in dispatch receiver field
KT-55436
K1: implement warning about shadowing of the derived property by the base class field
KT-55368
K2/MPP: Metadata compiler
KT-53846
K2 / Context receivers: ClassCastException on secondary constructor of class with context receiver
KT-54305
K1: implement warning "synthetic setter projected out"
KT-52027
"NullPointerException" when using context receivers with inline fun
KT-55984
Stack allocated array is not cleaned between loop iterations
KT-52593
Provide Alpha support for JS in the K2 platform
KT-54656
NoSuchMethodError on invoking Java constructor which takes an inline value class as a parameter
KT-55606
K2. Infix operator "in" works on ConcurrentHashMap when it's declared through another class
KT-53884
K2: "IllegalStateException: Fir is not initialized for FirRegularClassSymbol com/appodeal/consent/Consent.a" when importing this class
KT-54502
Synthetic extensions on raw types work differently from regular getter calls
KT-49351
FIR: Raw type scopes are unsupported
KT-49345
FIR: Properly support raw types in type parameter upper bounds
KT-55887
K2. "IllegalStateException: org.jetbrains.kotlin.ir.expressions.impl.IrErrorCallExpressionImpl is not expected" on adding kotlin.plugin.jpa
KT-55733
K2. Reference resolve works incorrectly for classes declared through typealias
KT-46369
FIR: Investigate raw types for arrays
KT-41794
[FIR] Implement raw type based scope
KT-55181
K2. No compilation error on throwing not throwable
KT-55398
Kotlin inline nested inline lambda's inline variable will inline not correctly
KT-55359
K2. No error when secondary constructor does not delegate to primary one
KT-55759
K2: Unresolved reference of serializer
if library linking is used (with kotlinx.serialization plugin)
KT-54705
Kotlin scripting doesn't support files with UTF-8 BOM
KT-51753
FIR: various errors due to expect/actual mapping absence in translator
KT-44515
FIR DFA: extract non-null info from anonymous object's initialization
KT-55018
K2 / serialization: FIR2IR fails on local companion
KT-55284
Refactor org.jetbrains.kotlin.diagnostics.KtDiagnosticReportContextHelpersKt#reportOn(...)
KT-55693
K2. Type inference changed in k2
KT-54332
Add deprecation warning for false-negative TYPE_MISMATCH for KT-49404
KT-55597
K2. This type has a constructor, and thus must be initialized here
error is missed for anonymous object inherits class with no-arg constructor
KT-52459
Context receivers: AbstractMethodError caused by Interface method with both an extension and a context receiver is overriden incorrectly in subclasses
KT-54357
"ClassCastException: class...
Read more
Kotlin 1.8.10
Changelog
Compiler
KT-55483
K2: Fir is not initialized for FirRegularClassSymbol java/lang/invoke/LambdaMetafactory
KT-55729
"None of the following functions can be called with the arguments supplied:" in 1.8.0
KT-55769
"ERROR: Could not find accessor": Android DataBinding fails with Kotlin 1.8.0
KT-55308
InnerClass attributes should be sorted (innermost last)
JavaScript
KT-56282
KJS: Invalidate incremental cache in case of compiler internal errors
KT-55852
JS: "IllegalStateException: Unexpected ir type argument" caused by List with star projection type
KT-55716
KJS / IC: "Cannot read properties of undefined" with overriding variables with 1.8.0
KT-55758
KJS / IR: Checking implemented interface on a class implementing a @JsExport interface returns the wrong result
Reflection
KT-56093
Metaspace leak in a Gradle plugin built with Kotlin 1.8.0
Tools. Compiler plugins. Serialization
KT-56347
[Kotlin 1.8] Regression kotlinx.serialization compiler plugin internal error
KT-55681
Serialization: NullPointerException after update to 1.8.0 caused by @Serializer(forClass= ..)
KT-56244
kotlinx.serialization compiler intrinsic does not work with encodeToString function in 1.8.0
KT-55683
Serialization: "IllegalStateException: Expected to have a primary constructor" with expect class and companion object
KT-55682
Serialization: "IllegalStateException: Function has no body: FUN name:serializer" with 1.8.0
Tools. Gradle
KT-55697
KGP 1.8.0 adds compileOnly dependencies to unit test compile classpath
Tools. Gradle. Multiplatform
KT-55730
MPP / Gradle: compileKotlinMetadata fails to resolve symbols in additional source sets
Tools. Gradle. Native
KT-56280
Gradle: freeCompilerArgs are no longer propagated from compilations to Native binaries
Tools. Kapt
KT-48013
Kapt generates illegal stubs for private interface methods
Checksums
File |
Sha256 |
kotlin-compiler-1.8.10.zip |
4c3fa7bc1bb9ef3058a2319d8bcc3b7196079f88e92fdcd8d304a46f4b6b5787 |
kotlin-native-linux-x86_64-1.8.10.tar.gz |
4c5c8a82a63a3a9845be2514d536ca407340db7fc558b97c43ed003f866a9742 |
kotlin-native-macos-x86_64-1.8.10.tar.gz |
52ea7cf2dfaae058fc00fc4e00ec89fefe5a7e4c83abeadb7531cc9346ff18db |
kotlin-native-macos-aarch64-1.8.10.tar.gz |
08cef514e9d582b0e7bcf3f592dd853270b535a4b765555db97381aeb8c92a85 |
kotlin-native-windows-x86_64-1.8.10.zip |
e8b9a04f0df3cdec6fa360a6781723fc8551e93c70dfd1aaffbd282b7cddc19d |
Kotlin 1.8.0
Changelog
Analysis API
KT-50255
Analysis API: Implement standalone mode for the Analysis API
Analysis API. FIR
KT-54292
Symbol Light classes: implement PsiVariable.computeConstantValue for light field
KT-54293
Analysis API: fix constructor symbol creation when its accessed via type alias
Android
KT-53342
TCS: New AndroidSourceSet layout for multiplatform
KT-53013
Increase AGP compile version in KGP to 4.1.3
KT-54013
Report error when using deprecated Kotlin Android Extensions compiler plugin
KT-53709
MPP, Android SSL2: Conflicting warnings for androidTest/kotlin
source set folder
Backend. Native. Debug
KT-53561
Invalid LLVM module: "inlinable function call in a function with debug info must have a !dbg location"
Compiler
New Features
KT-52817
Add @JvmSerializableLambda
annotation to keep old behavior of non-invokedynamic lambdas
KT-54460
Implementation of non-local break and continue
KT-53916
Support Xcode 14 and new Objective-C frameworks in Kotlin/Native compiler
KT-32208
Generate method annotations into bytecode for suspend lambdas (on invokeSuspend)
KT-53438
Introduce a way to get SourceDebugExtension attribute value via JVMTI for profiler and coverage
Performance Improvements
KT-53347
Get rid of excess allocations in parser
KT-53689
JVM: Optimize equality on class literals
KT-53119
Improve String Concatenation Lowering
Fixes
KT-53465
Unnecessary checkcast to array of reified type is not optimized since Kotlin 1.6.20
KT-49658
NI: False negative TYPE_MISMATCH on nullable type with when
KT-48162
NON_VARARG_SPREAD isn't reported on *toTypedArray() call
KT-43493
NI: False negative: no compilation error "Operator '==' cannot be applied to 'Long' and 'Int'" is reported in builder inference lambdas
KT-54393
Change in behavior from 1.7.10 to 1.7.20 for java field override.
KT-55357
IllegalStateException when reading a class that delegates to a Java class with a definitely-not-null type with a flexible upper bound
KT-55068
Kotlin Gradle DSL: No mapping for symbol: VALUE_PARAMETER SCRIPT_IMPLICIT_RECEIVER on JVM IR backend
KT-51284
SAM conversion doesn't work if method has context receivers
KT-48532
Remove old JVM backend
KT-55065
Kotlin Gradle DSL: Reflection cannot find class data for lambda, produced by JVM IR backend
KT-53270
K1: implement synthetic Enum.entries property
KT-52823
Cannot access class Thread.State after upgrading to 1.7 from 1.6.1 using -Xjdk-release=1.8
KT-55108
IR interpreter: Error occurred while optimizing an expression: VARARG
KT-53547
Missing fun IrBuilderWithScope.irFunctionReference
KT-54884
"StackOverflowError: null" caused by Enum constant name in constructor of the same Enum constant
KT-47475
"IncompatibleClassChangeError: disagree on InnerClasses attribute": cross-module inlined WhenMappings has mismatched InnerClasses
KT-55013
State checker use-after-free with XCode 14.1
KT-54802
"VerifyError: Bad type on operand stack" for inline functions on arrays
KT-54707
"VerifyError: Bad type on operand stack" in inline call chain on a nullable array value
KT-48678
Coroutine debugger: disable "was optimised out" compiler feature
KT-54745
Restore KtToken constructors without tokenId parameter to preserve back compatibility
KT-54650
Binary incompatible ABI change in Kotlin 1.7.20
KT-52786
Frontend / K2: IndexOutOfBoundsException when opting in to K2
KT-54004
Builder type inference does not work correctly with variable assignment and breaks run-time
KT-54581
JVM: "VerifyError: Bad type on operand stack" with generic inline function and when
inside try-catch block
KT-53794
IAE "Unknown visibility: protected/protected and package/" on callable reference to protected member of Java superclass
KT-54600
NPE on passing nullable Kotlin lambda as Java's generic SAM interface with super
type bound
KT-54463
Delegating to a field with a platform type causes java.lang.NoSuchFieldError: value$delegate
KT-54509
Ir Interpreter: unable to evaluate string concatenation with "this" as argument
KT-54615
JVM: Internal error in file lowering: java.lang.AssertionError: Error occurred while optimizing an expression
KT-53146
JVM IR: unnecessary checkcast of null leads to NoClassDefFoundError if the type isn't available at runtime
KT-53712
Add mode to prevent generating JVM 1.8+ annotation targets (TYPE_USE, TYPE_PARAMETER)
KT-54366
K2: no JVM BE specific diagnostics (in particular CONFLICTING_JVM_DECLARATIONS) in 1.8
KT-35187
NullPointerException on compiling suspend inline fun with typealias to suspend function type
KT-54275
K2: "IllegalArgumentException: KtParameter is not a subtype of class KtAnnotationEntry for factory REPEATED_ANNOTATION"
KT-53656
"IllegalStateException: typeParameters == null for SimpleFunctionDescriptorImpl" with recursive generic type parameters
KT-46727
Report warning on contravariant usages of star projected argument from Java
KT-53197
K2: 'init' hides member of supertype 'UIComponent' and needs 'override' modifier
KT-53867
K2: @JvmRecord
does not compile to a java record
KT-53964
K2 is unable to work with Java records
KT-53349
K2: TYPE_MISMATCH caused by non-local return
KT-54100
"Type variable TypeVariable(P) should not be fixed" crash in code with errors
KT-54212
K2: cannot calculate implicit property type
KT-53699
K2: Exception during IR lowering in code with coroutines
KT-54192
Warn about unsupported feature on generic inline class parameters
KT-53723
Friend modules aren't getting passed to cache build during box tests
KT-53873
K2: Duplicated diagnostics reported from user type ref checkers
KT-50909
"VerifyError: Bad type on operand stack" caused by smartcasting for nullable inline class property in class
KT-54115
Restore Psi2IrTranslator constructor from 1.7.20
KT-53908
K2: Self-referencing generics in Java class causes New Inference Error (IE: class Foo<T extends Foo>)
KT-53193
K2: compile error on project that compiles fine with normal 1.7.10
KT-54062
K2 Invalid serialization for type-aliased suspend function type with extension receiver
KT-53953
Forbid usages of super or super if in fact it accesses an abstract member
KT-47473
NI: Missed UPPER_BOUND_VIOLATED diagnostics if use ty...
Read more
Kotlin 1.8.0-RC2
Changelog
Compiler
KT-55357
IllegalStateException when reading a class that delegates to a Java class with a definitely-not-null type with a flexible upper bound
KT-55068
Kotlin Gradle DSL: No mapping for symbol: VALUE_PARAMETER SCRIPT_IMPLICIT_RECEIVER on JVM IR backend
KT-51284
SAM conversion doesn't work if method has context receivers
KT-55065
Kotlin Gradle DSL: Reflection cannot find class data for lambda, produced by JVM IR backend
Tools. Compiler plugins. Serialization
KT-55340
Argument for kotlinx.serialization.UseSerializers does not implement KSerializer or does not provide serializer for concrete type
Tools. Gradle
KT-55334
kaptGenerateStubs passes wrong android variant module names to compiler
KT-55255
Gradle: stdlib version alignment fails build on dynamic stdlib version.
KT-55363
[K1.8.0-Beta] Command line parsing treats plugin parameters as source files
Checksums
File |
Sha256 |
kotlin-compiler-1.8.0-RC2.zip |
149492cac31a94e8ee5173035520bb31286f6f6eb004cc0306b47127f7a72ce9 |
kotlin-native-linux-x86_64-1.8.0-RC2.tar.gz |
859031d2f8dc86398a3484a9103eea3dffbe546be658063bff69913c2d1d7233 |
kotlin-native-macos-x86_64-1.8.0-RC2.tar.gz |
cb25632ddc061c04a0a7a23a3afdf9dcc5a8c5d4a536fd8b5396be700ad87b38 |
kotlin-native-macos-aarch64-1.8.0-RC2.tar.gz |
9ba55a4e4ca3fc263d9758bd5f5ded732c0ef53fae7920a495715907c9a43c33 |
kotlin-native-windows-x86_64-1.8.0-RC2.zip |
2c6a2b11523929563845b945faa8b7c481727d0408d18e41dcd48bf6bdf7e570 |
Kotlin 1.8.0-RC
Changelog
Compiler
KT-55108
IR interpreter: Error occurred while optimizing an expression: VARARG
KT-54884
"StackOverflowError: null" caused by Enum constant name in constructor of the same Enum constant
KT-55013
State checker use-after-free with XCode 14.1
KT-54275
K2: "IllegalArgumentException: KtParameter is not a subtype of class KtAnnotationEntry for factory REPEATED_ANNOTATION"
JavaScript
KT-55097
KJS / IR + IC: Using an internal function from a friend module throws an unbound symbol exception
KT-54934
KJS / IR + IC: Suspend abstract function stubs are generated with unstable lowered ic signatures
KT-54895
KJS / IR + IC: broken cross module references for function default param wrappers
Language Design
KT-48516
Forbid @Synchronized
annotation on suspend functions
Libraries
KT-54835
Document that Iterable.all(emptyCollection) returns TRUE.
KT-54168
Expand on natural order in comparator docs
Native. Platform Libraries
Tools. Compiler plugins. Serialization
KT-55296
Improve exceptions in serialization plugin
KT-55180
KJS: regression in serialization for Kotlin 1.8.0-beta
KT-54878
JVM/IR: java.lang.ClassCastException: class org.jetbrains.kotlin.ir.types.impl.IrStarProjectionImpl cannot be cast to class org.jetbrains.kotlin.ir.types.IrTypeProjection on serializer<Box<*>>()
Tools. Gradle
KT-50115
Setting toolchain via Java extension does not configure 'kotlinOptions.jvmTarget' value when Kotlin compilation tasks are created eagerly
KT-55222
Migrate AndroidDependencyResolver to the new Gradle API
KT-54993
Raise kotlin.jvm.target.validation.mode check default level to error when build is running on Gradle 8+
KT-54995
[1.8.0-Beta] compileAppleMainKotlinMetadata fails on default parameters with No value passed for parameter 'mustExist'
KT-45335
kotlinOptions.jvmTarget conflicts with Gradle variants
KT-55019
Gradle sync: UnknownConfigurationException when adding implementation dependencies to a Kotlin with Java compilation
KT-55004
jvmTarget value is ignored by depending modules if a task "UsesKotlinJavaToolchain" is configured for all project modules using allProjects {}
KT-54888
Add Gradle property to suppress kotlinOptions.freeCompilerArgs modification on execution phase
Tools. Gradle. JS
KT-55099
K/JS: Second declaration of JS target without compiler type report warning incorrectly
Tools. Gradle. Multiplatform
KT-54634
MPP: Test Failure causes: KotlinJvmTest$Executor$execute$1 does not define failure
Tools. Incremental Compile
KT-54144
New IC: "IllegalStateException: The following LookupSymbols are not yet converted to ProgramSymbols" when changing an inline function with custom JvmName
Checksums
File |
Sha256 |
kotlin-compiler-1.8.0-RC.zip |
20437cf085cfc1e70d63ba0be9034db1c4dd9f280872b626213f974b130b8dfe |
kotlin-native-linux-x86_64-1.8.0-RC.tar.gz |
195b2ef759a28138df5e305259b77b3512ad1942c3aaed2dd2cba54235ac693f |
kotlin-native-macos-x86_64-1.8.0-RC.tar.gz |
d7b55e44f0a41f7e1b62d41fad4d130a6bbe981422776cd8b1c98d13c0e209d9 |
kotlin-native-macos-aarch64-1.8.0-RC.tar.gz |
a91fb1b057140dc5508b0a83bd551384e3d0364196f45ca5dbe4e2ff51113fc5 |
kotlin-native-windows-x86_64-1.8.0-RC.zip |
d38a39e1e53bba5bdb5f52a04e55dca360dcc527434d2c5c338c92ba1bf03b6a |