Releases: JetBrains/kotlin
Releases Β· JetBrains/kotlin
Kotlin 1.8.20-RC2
Changelog
Compiler
KT-57388
Kapt+JVM_IR: "RuntimeException: No type for expression" for delegated propertyKT-57242
Equals behaviour for value classes implementing interfaces is different between 1.8.10 and 1.8.20-RCKT-57261
"IllegalArgumentException was thrown at: MemoizedInlineClassReplacements.getSpecializedEqualsMethod" when comparing non-inline class instance with an inline class instanceKT-56527
K2: "AssertionError: Assertion failed" during compilation in SequentialFilePositionFinderKT-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: Nullthis
pointer in transformCommonMainDependenciesMetadataKT-57306
[Kotlin 1.8.20-RC] GradleException: Could not load the value of fieldapiConfiguration
oforg.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 functionsKT-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 functionKT-56258
VerifyError: Bad local variable type when using -XdebugKT-56847
Unresolved reference to Java annotation in Kotlin class with the same name packagesKT-56526
InvalidProtocolBufferException on reading module metadata compiled by K2 in 1.8.20KT-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_LAMBDAKT-56611
Native: new native caches are broken when KONAN_DATA_DIR is defined to a directory inside ~/.gradleKT-56215
JVM: Object extension function nullable receiver null check false negative when object is nullKT-56033
Restore 'isMostPreciseContravariantArgument' function signature for compatibilityKT-56407
Backend Internal error: Exception during IR lowering during:daemon-common-new:compileKotlin
KT-56701
K2 (with LightTree) reports syntax errors without additional informationKT-56649
K2 uses 0-index for line numbers rather than 1-indexKT-56521
Static scope initializers sometimes not called when first accessed from interopKT-49182
Strange cast from Unit to StringKT-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-BetaKT-56580
KJS: languageVersionSettings string is unstableKT-56581
KJS: Lock file for incremental cacheKT-56582
KJS: Function type interface reflection crashes the compiler in incremental buildKT-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 CoreJrtFileSystemKT-56992
Performance test regression in Gradle when switching to Kotlin 1.8.20KT-56925
Remove warning about assignment pluginKT-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 enumKT-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 positiveVal cannot be reassigned
when using an extension and its property with an implicitset
operatorKT-55452
Values of the compiler arguments set via KotlinCompile task configuration are duplicated by the KaptGenerateStubs taskKT-56645
Gradle: KGP reports an incorrect resources processing task name for JVM projectsKT-55565
Consider de-duping or blocking standard addition of freeCompilerArgs to KaptGenerateStubsTaskKT-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-BetaKT-56999
K/JS: KotlinJsIrLink::rootCacheDirectory property must be publicKT-56765
K/JS: Several binaries use same cache directoryKT-56488
Debugger won't stop on breakpoints of JS browser testKT-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-sqlite3KT-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-BetaKT-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 classesKT-55191
AA: add an API to compare symbol pointersKT-55487
K2: symbol pointer restoring doesn't work for static membersKT-55336
K2 IDE: "java.lang.IllegalStateException: Required value was null." exception while importing a compiled JPS projectKT-55098
AA: KtDeclarationRenderer should render a context receiversKT-51181
LL API: errors for SAM with suspend function from another moduleKT-50250
Analysis API: Implement Analysis API of KtExpression.isUsedAsExpressionKT-54360
KtPropertySymbol: support JvmField in javaSetterName and javaGetterName
Analysis API. FIR
KT-54311
K2: proper implementation of KtSymbolPointerKT-50238
Analysis API: Implement KSymbolPointer for KtSymbol
Analysis API. FIR Low Level API
KT-52160
FIR: Substitution overrides on FirValueParameter-s are incorrectly unwrappedKT-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 proposalsKT-56166
Fix compatibility with Firefox NightlyKT-55589
Basic support of WASIKT-46773
Implement an experimental version of the Kotlin/Wasm compiler backendKT-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 nativeKT-44698
Frontend (K2): print file name/line on compiler crash/exceptionKT-54666
K2: Allow to skip specifying type arguments for members from raw type scopeKT-54535
Implement custom equals and hashCode for value classes in Kotlin/JVMKT-54524
Implement Java synthetic property references in compilerKT-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 backendsKT-48759
Infix compareTo boxes inline classesKT-55033
Make org.jetbrains.kotlin.resolve.calls.inference.model.NewConstraintSystemImpl#runTransaction an inline functionKT-33722
JVM: Result API causes unnecessary boxing
Fixes
KT-53153
Synthetic Enum.entries can be shadowed by user-defined declarationsKT-54140
SOE atIrBasedDescriptorsKt.makeKotlinType
with mixing recursive definitely not nullable type with nullabilityKT-56224
Clarify message "Secondary constructors with bodies are reserved for for future releases" for secondary constructors in value classes with bodiesKT-54662
K2: Assign operator ambiguity on synthetic property from javaKT-54507
K2: WrongimplicitModality
for interface inFirHelpers
KT-55912
"UnsupportedOperationException: Unsupported const element type kotlin.Any" caused bykotlin
fqn in annotationKT-55251
Enum.entries compilation error should be more specificKT-43296
FIR: Complicated interaction between smart cast and inference leads to false-positive diagnosticKT-55483
K2: Fir is not initialized for FirRegularClassSymbol java/lang/invoke/LambdaMetafactoryKT-56188
K/N: AssertionError when casting SAM wrapper with generic type parameterKT-54209
K2: false positive deprecation on a class literal with deprecated companionKT-55408
K2: can't access indirectly inherited from a package-private class Java members through a type aliasKT-55116
K2: store static qualifiers in dispatch receiver fieldKT-55436
K1: implement warning about shadowing of the derived property by the base class fieldKT-55368
K2/MPP: Metadata compilerKT-53846
K2 / Context receivers: ClassCastException on secondary constructor of class with context receiverKT-54305
K1: implement warning "synthetic setter projected out"KT-52027
"NullPointerException" when using context receivers with inline funKT-55984
Stack allocated array is not cleaned between loop iterationsKT-52593
Provide Alpha support for JS in the K2 platformKT-54656
NoSuchMethodError on invoking Java constructor which takes an inline value class as a parameterKT-55606
K2. Infix operator "in" works on ConcurrentHashMap when it's declared through another classKT-53884
K2: "IllegalStateException: Fir is not initialized for FirRegularClassSymbol com/appodeal/consent/Consent.a" when importing this classKT-54502
Synthetic extensions on raw types work differently from regular getter callsKT-49351
FIR: Raw type scopes are unsupportedKT-49345
FIR: Properly support raw types in type parameter upper boundsKT-55887
K2. "IllegalStateException: org.jetbrains.kotlin.ir.expressions.impl.IrErrorCallExpressionImpl is not expected" on adding kotlin.plugin.jpaKT-55733
K2. Reference resolve works incorrectly for classes declared through typealiasKT-46369
FIR: Investigate raw types for arraysKT-41794
[FIR] Implement raw type based scopeKT-55181
K2. No compilation error on throwing not throwableKT-55398
Kotlin inline nested inline lambda's inline variable will inline not correctlyKT-55359
K2. No error when secondary constructor does not delegate to primary oneKT-55759
K2: Unresolved reference ofserializer
if library linking is used (with kotlinx.serialization plugin)KT-54705
Kotlin scripting doesn't support files with UTF-8 BOMKT-51753
FIR: various errors due to expect/actual mapping absence in translatorKT-44515
FIR DFA: extract non-null info from anonymous object's initializationKT-55018
K2 / serialization: FIR2IR fails on local companionKT-55284
Refactor org.jetbrains.kotlin.diagnostics.KtDiagnosticReportContextHelpersKt#reportOn(...)KT-55693
K2. Type inference changed in k2KT-54332
Add deprecation warning for false-negative TYPE_MISMATCH for KT-49404KT-55597
K2.This type has a constructor, and thus must be initialized here
error is missed for anonymous object inherits class with no-arg constructorKT-52459
Context receivers: AbstractMethodError caused by Interface method with both an extension and a context receiver is overriden incorrectly in subclassesKT-54357
"ClassCastException: class...
Kotlin 1.8.10
Changelog
Compiler
KT-55483
K2: Fir is not initialized for FirRegularClassSymbol java/lang/invoke/LambdaMetafactoryKT-55729
"None of the following functions can be called with the arguments supplied:" in 1.8.0KT-55769
"ERROR: Could not find accessor": Android DataBinding fails with Kotlin 1.8.0KT-55308
InnerClass attributes should be sorted (innermost last)
JavaScript
KT-56282
KJS: Invalidate incremental cache in case of compiler internal errorsKT-55852
JS: "IllegalStateException: Unexpected ir type argument" caused by List with star projection typeKT-55716
KJS / IC: "Cannot read properties of undefined" with overriding variables with 1.8.0KT-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 errorKT-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.0KT-55683
Serialization: "IllegalStateException: Expected to have a primary constructor" with expect class and companion objectKT-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 fieldKT-54293
Analysis API: fix constructor symbol creation when its accessed via type alias
Android
KT-53342
TCS: New AndroidSourceSet layout for multiplatformKT-53013
Increase AGP compile version in KGP to 4.1.3KT-54013
Report error when using deprecated Kotlin Android Extensions compiler pluginKT-53709
MPP, Android SSL2: Conflicting warnings forandroidTest/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 lambdasKT-54460
Implementation of non-local break and continueKT-53916
Support Xcode 14 and new Objective-C frameworks in Kotlin/Native compilerKT-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 parserKT-53689
JVM: Optimize equality on class literalsKT-53119
Improve String Concatenation Lowering
Fixes
KT-53465
Unnecessary checkcast to array of reified type is not optimized since Kotlin 1.6.20KT-49658
NI: False negative TYPE_MISMATCH on nullable type withwhen
KT-48162
NON_VARARG_SPREAD isn't reported on *toTypedArray() callKT-43493
NI: False negative: no compilation error "Operator '==' cannot be applied to 'Long' and 'Int'" is reported in builder inference lambdasKT-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 boundKT-55068
Kotlin Gradle DSL: No mapping for symbol: VALUE_PARAMETER SCRIPT_IMPLICIT_RECEIVER on JVM IR backendKT-51284
SAM conversion doesn't work if method has context receiversKT-48532
Remove old JVM backendKT-55065
Kotlin Gradle DSL: Reflection cannot find class data for lambda, produced by JVM IR backendKT-53270
K1: implement synthetic Enum.entries propertyKT-52823
Cannot access class Thread.State after upgrading to 1.7 from 1.6.1 using -Xjdk-release=1.8KT-55108
IR interpreter: Error occurred while optimizing an expression: VARARGKT-53547
Missing fun IrBuilderWithScope.irFunctionReferenceKT-54884
"StackOverflowError: null" caused by Enum constant name in constructor of the same Enum constantKT-47475
"IncompatibleClassChangeError: disagree on InnerClasses attribute": cross-module inlined WhenMappings has mismatched InnerClassesKT-55013
State checker use-after-free with XCode 14.1KT-54802
"VerifyError: Bad type on operand stack" for inline functions on arraysKT-54707
"VerifyError: Bad type on operand stack" in inline call chain on a nullable array valueKT-48678
Coroutine debugger: disable "was optimised out" compiler featureKT-54745
Restore KtToken constructors without tokenId parameter to preserve back compatibilityKT-54650
Binary incompatible ABI change in Kotlin 1.7.20KT-52786
Frontend / K2: IndexOutOfBoundsException when opting in to K2KT-54004
Builder type inference does not work correctly with variable assignment and breaks run-timeKT-54581
JVM: "VerifyError: Bad type on operand stack" with generic inline function andwhen
inside try-catch blockKT-53794
IAE "Unknown visibility: protected/protected and package/" on callable reference to protected member of Java superclassKT-54600
NPE on passing nullable Kotlin lambda as Java's generic SAM interface withsuper
type boundKT-54463
Delegating to a field with a platform type causes java.lang.NoSuchFieldError: value$delegateKT-54509
Ir Interpreter: unable to evaluate string concatenation with "this" as argumentKT-54615
JVM: Internal error in file lowering: java.lang.AssertionError: Error occurred while optimizing an expressionKT-53146
JVM IR: unnecessary checkcast of null leads to NoClassDefFoundError if the type isn't available at runtimeKT-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.8KT-35187
NullPointerException on compiling suspend inline fun with typealias to suspend function typeKT-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 parametersKT-46727
Report warning on contravariant usages of star projected argument from JavaKT-53197
K2: 'init' hides member of supertype 'UIComponent' and needs 'override' modifierKT-53867
K2:@JvmRecord
does not compile to a java recordKT-53964
K2 is unable to work with Java recordsKT-53349
K2: TYPE_MISMATCH caused by non-local returnKT-54100
"Type variable TypeVariable(P) should not be fixed" crash in code with errorsKT-54212
K2: cannot calculate implicit property typeKT-53699
K2: Exception during IR lowering in code with coroutinesKT-54192
Warn about unsupported feature on generic inline class parametersKT-53723
Friend modules aren't getting passed to cache build during box testsKT-53873
K2: Duplicated diagnostics reported from user type ref checkersKT-50909
"VerifyError: Bad type on operand stack" caused by smartcasting for nullable inline class property in classKT-54115
Restore Psi2IrTranslator constructor from 1.7.20KT-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.10KT-54062
K2 Invalid serialization for type-aliased suspend function type with extension receiverKT-53953
Forbid usages of super or super if in fact it accesses an abstract memberKT-47473
NI: Missed UPPER_BOUND_VIOLATED diagnostics if use ty...
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 boundKT-55068
Kotlin Gradle DSL: No mapping for symbol: VALUE_PARAMETER SCRIPT_IMPLICIT_RECEIVER on JVM IR backendKT-51284
SAM conversion doesn't work if method has context receiversKT-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 compilerKT-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: VARARGKT-54884
"StackOverflowError: null" caused by Enum constant name in constructor of the same Enum constantKT-55013
State checker use-after-free with XCode 14.1KT-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 exceptionKT-54934
KJS / IR + IC: Suspend abstract function stubs are generated with unstable lowered ic signaturesKT-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
KT-54225
Native: update to Xcode 14.1
Tools. Compiler plugins. Serialization
KT-55296
Improve exceptions in serialization pluginKT-55180
KJS: regression in serialization for Kotlin 1.8.0-betaKT-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 eagerlyKT-55222
Migrate AndroidDependencyResolver to the new Gradle APIKT-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 withNo value passed for parameter 'mustExist'
KT-45335
kotlinOptions.jvmTarget conflicts with Gradle variantsKT-55019
Gradle sync: UnknownConfigurationException when adding implementation dependencies to a Kotlin with Java compilationKT-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 |
Kotlin 1.7.22
This is a technical release. It doesn't contain any fixes that aren't included in Kotlin 1.7.21.
Version 1.7.22 of the Kotlin plugin will not be available for downloading or installing in any IDEs.
Checksums
File | Sha256 |
---|---|
kotlin-compiler-1.7.22.zip | 9db4b467743c1aea8a21c08e1c286bc2aeb93f14c7ba2037dbd8f48adc357d83 |
kotlin-native-linux-x86_64-1.7.22.tar.gz | dd004d520056aba67f2955a3bec5af75f8f2d78b179d4b5f733a77e3eef57aff |
kotlin-native-macos-x86_64-1.7.22.tar.gz | 153fa411fa8c993ce2635e2504e9b102cb05362cc794b66ef9def26a78b427b5 |
kotlin-native-macos-aarch64-1.7.22.tar.gz | 4ffcd76c77cc824eff8addd5e2a73da4f3bbd3584fa9ef282b3f669c45426b1e |
kotlin-native-windows-x86_64-1.7.22.zip | 3bccd23479848ec61c56ed5760010456d17acbe88a00a1f10fb38eae256f2e92 |
Kotlin 1.8.0-Beta
1.8.0-Beta
Android
KT-53013
Increase AGP compile version in KGP to 4.1.3KT-53709
MPP, Android SSL2: Conflicting warnings forandroidTest/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-53916
Support Xcode 14 and new Objective-C frameworks in Kotlin/Native compilerKT-54460
Implementation of non-local break and continueKT-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
Fixes
KT-52974
"IllegalStateException: Symbol with IrSimpleFunctionSymbolImpl is unbound" compiling native targets of MPP projectKT-48678
Coroutine debugger: disable "was optimised out" compiler featureKT-54745
Restore KtToken constructors without tokenId parameter to preserve back compatibilityKT-54650
Binary incompatible ABI change in Kotlin 1.7.20KT-52786
Frontend / K2: IndexOutOfBoundsException when opting in to K2KT-54004
Builder type inference does not work correctly with variable assignment and breaks run-timeKT-54581
JVM: "VerifyError: Bad type on operand stack" with generic inline function andwhen
inside try-catch blockKT-52913
JVM / IR: "IllegalArgumentException: Inline class types should have the same representation" when trying to down cast cast a value classKT-54600
NPE on passing nullable Kotlin lambda as Java's generic SAM interface withsuper
type boundKT-54463
Delegating to a field with a platform type causes java.lang.NoSuchFieldError: value$delegateKT-54509
Ir Interpreter: unable to evaluate string concatenation with "this" as argumentKT-54393
Change in behavior from 1.7.10 to 1.7.20 for java field override.KT-54615
JVM: Internal error in file lowering: java.lang.AssertionError: Error occurred while optimizing an expressionKT-53146
JVM IR: unnecessary checkcast of null leads to NoClassDefFoundError if the type isn't available at runtimeKT-51868
JVM / IR: Inconsistent behaviour between lambda expression and SAM interface conversion for the same interfaceKT-53947
IllegalStateException: No mapping for symbol: VALUE_PARAMETER INSTANCE_RECEIVERKT-53712
Add mode to prevent generating JVM 1.8+ annotation targets (TYPE_USE, TYPE_PARAMETER)KT-48532
Remove old JVM backendKT-35187
NullPointerException on compiling suspend inline fun with typealias to suspend function typeKT-54275
K2: "IllegalArgumentException: KtParameter is not a subtype of class KtAnnotationEntry for factory REPEATED_ANNOTATION"KT-47475
"IncompatibleClassChangeError: disagree on InnerClasses attribute": cross-module inlined WhenMappings has mismatched InnerClassesKT-53197
K2: 'init' hides member of supertype 'UIComponent' and needs 'override' modifierKT-53867
K2: @JvmRecord does not compile to a java recordKT-53964
K2 is unable to work with Java recordsKT-53349
K2: TYPE_MISMATCH caused by non-local returnKT-54100
"Type variable TypeVariable(P) should not be fixed" crash in code with errorsKT-49017
Forbid usages of super or super if in fact it accesses an abstract memberKT-54192
Warn about unsupported feature on generic inline class parametersKT-53723
Friend modules aren't getting passed to cache build during box testsKT-53873
K2: Duplicated diagnostics reported from user type ref checkersKT-50909
"VerifyError: Bad type on operand stack" caused by smartcasting for nullable inline class property in classKT-48031
"IllegalStateException: Type variable TypeVariable(T) should not be fixed!"KT-54115
Restore Psi2IrTranslator constructor from 1.7.20KT-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.10KT-53953
Forbid usages of super or super if in fact it accesses an abstract memberKT-47473
NI: Missed UPPER_BOUND_VIOLATED diagnostics if use type aliases with type parametersKT-54049
K2: false positive MANY_IMPL_MEMBER_NOT_IMPLEMENTEDKT-30054
Wrong approximation if nullable anonymous object with implemented interface is usedKT-53751
Postpone IgnoreNullabilityForErasedValueParameters featureKT-53324
Implement Enum.entries lowering on K/NKT-44441
K2: report redeclaration error if there is a Java class with the same name as the Kotlin classKT-53493
K2:val on function parameter
counts as just warningKT-53435
K2: "IllegalArgumentException: class KtValueArgument is not a subtype of class KtExpression for factory ANNOTATION_ARGUMENT_MUST_BE_CONST" if string in nested annotation is concatenatedKT-52927
AssertionError: LambdaKotlinCallArgumentImplKT-53922
Make Enum.entries unstable feature to poison binariesKT-53783
Exception during psi2ir when declaring expect data objectKT-41670
JVM IR: AbstractMethodError when using inheritance for fun interfacesKT-53178
K2: implement diagnostics for serialization pluginKT-53465
Unnecessary checkcast to array of reified type is not optimized since Kotlin 1.6.20KT-52970
Default value constant in companion object works on JVM and JS, but fails on nativeKT-27936
Write InnerClasses attribute for all class names used in a class fileKT-53007
JVM: "Bad invokespecial instruction: current class isn't assignable to reference class" when call superclass of outer class method from inner classKT-53261
Evaluate effect from inline for primitive typesKT-39492
Kotlin.Metadata's packageName field cannot be an empty stringKT-53664
Ir Interpreter: unable to evaluate name of function reference marked with JvmStatic from another moduleKT-52478
[Native] Partial linkage: Building native binary from cached KLIBs fails if one library depends on removed nested callable member from another oneKT-53667
Compiler crashes on attempt to alloc a string on the stack in new MMKT-48822
CompilationException: Back-end (JVM) Internal error: Failed to generate expression: KtProperty - ConcurrentModificationExceptionKT-50281
IllegalStateException: unsupported c...
Kotlin 1.7.21
Changelog
Compiler
KT-54463
Delegating to a field with a platform type causes java.lang.NoSuchFieldError: value$delegateKT-54509
Ir Interpreter: unable to evaluate string concatenation with "this" as argumentKT-54004
Builder type inference does not work correctly with variable assignment and breaks run-timeKT-54393
Change in behavior from 1.7.10 to 1.7.20 for java field override.KT-54615
JVM: Internal error in file lowering: java.lang.AssertionError: Error occurred while optimizing an expressionKT-54581
JVM: "VerifyError: Bad type on operand stack" with generic inline function andwhen
inside try-catch blockKT-53146
JVM IR: unnecessary checkcast of null leads to NoClassDefFoundError if the type isn't available at runtimeKT-54600
NPE on passing nullable Kotlin lambda as Java's generic SAM interface withsuper
type boundKT-54707
"VerifyError: Bad type on operand stack" in inline call chain on a nullable array valueKT-54650
Binary incompatible ABI change in Kotlin 1.7.20KT-54802
"VerifyError: Bad type on operand stack" for inline functions on arrays
Native. Runtime. Memory
KT-54498
Deprecation message of 'FreezingIsDeprecated' is not really helpful
Tools. Gradle. Multiplatform
KT-54387
Remove MPP alpha stability warningKT-48436
False positive "The Kotlin source set androidAndroidTestRelease was configured but not added to any Kotlin compilation"
Tools. JPS
KT-45474
False positive NO_ELSE_IN_WHEN on sealed class with incremental compilation
Checksums
File | Sha256 |
---|---|
kotlin-compiler-1.7.21.zip | 8412b31b808755f0c0d336dbb8c8443fa239bf32ddb3cdb81b305b25f0ad279e |
kotlin-native-linux-x86_64-1.7.21.tar.gz | 0f9eb04a5ee0665a195c1f1093c778f5696216660feb638b29f923f586093dd0 |
kotlin-native-macos-x86_64-1.7.21.tar.gz | 9530cadcf05cfd6111ef35725115009283b1a0292427261b78d43853c35ccd44 |
kotlin-native-macos-aarch64-1.7.21.tar.gz | f75e1a68e193b0cd9df56f15166fb4e721641b408065531b620cf204d78922e5 |
kotlin-native-windows-x86_64-1.7.21.zip | 5e76301f6c386ea83dc668e171887244908c18da636f7237d5371b56d8fec8da |