Releases: JetBrains/kotlin
Releases Β· JetBrains/kotlin
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 |
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.3
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-53916
Support Xcode 14 and new Objective-C frameworks in Kotlin/Native compiler
KT-54460
Implementation of non-local break and continue
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
Fixes
KT-52974
"IllegalStateException: Symbol with IrSimpleFunctionSymbolImpl is unbound" compiling native targets of MPP project
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-52913
JVM / IR: "IllegalArgumentException: Inline class types should have the same representation" when trying to down cast cast a value class
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-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 expression
KT-53146
JVM IR: unnecessary checkcast of null leads to NoClassDefFoundError if the type isn't available at runtime
KT-51868
JVM / IR: Inconsistent behaviour between lambda expression and SAM interface conversion for the same interface
KT-53947
IllegalStateException: No mapping for symbol: VALUE_PARAMETER INSTANCE_RECEIVER
KT-53712
Add mode to prevent generating JVM 1.8+ annotation targets (TYPE_USE, TYPE_PARAMETER)
KT-48532
Remove old JVM backend
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-47475
"IncompatibleClassChangeError: disagree on InnerClasses attribute": cross-module inlined WhenMappings has mismatched InnerClasses
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-49017
Forbid usages of super or super if in fact it accesses an abstract member
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-48031
"IllegalStateException: Type variable TypeVariable(T) should not be fixed!"
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-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 type aliases with type parameters
KT-54049
K2: false positive MANY_IMPL_MEMBER_NOT_IMPLEMENTED
KT-30054
Wrong approximation if nullable anonymous object with implemented interface is used
KT-53751
Postpone IgnoreNullabilityForErasedValueParameters feature
KT-53324
Implement Enum.entries lowering on K/N
KT-44441
K2: report redeclaration error if there is a Java class with the same name as the Kotlin class
KT-53493
K2: val on function parameter
counts as just warning
KT-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 concatenated
KT-52927
AssertionError: LambdaKotlinCallArgumentImpl
KT-53922
Make Enum.entries unstable feature to poison binaries
KT-53783
Exception during psi2ir when declaring expect data object
KT-41670
JVM IR: AbstractMethodError when using inheritance for fun interfaces
KT-53178
K2: implement diagnostics for serialization plugin
KT-53465
Unnecessary checkcast to array of reified type is not optimized since Kotlin 1.6.20
KT-52970
Default value constant in companion object works on JVM and JS, but fails on native
KT-27936
Write InnerClasses attribute for all class names used in a class file
KT-53007
JVM: "Bad invokespecial instruction: current class isn't assignable to reference class" when call superclass of outer class method from inner class
KT-53261
Evaluate effect from inline for primitive types
KT-39492
Kotlin.Metadata's packageName field cannot be an empty string
KT-53664
Ir Interpreter: unable to evaluate name of function reference marked with JvmStatic from another module
KT-52478
[Native] Partial linkage: Building native binary from cached KLIBs fails if one library depends on removed nested callable member from another one
KT-53667
Compiler crashes on attempt to alloc a string on the stack in new MM
KT-48822
CompilationException: Back-end (JVM) Internal error: Failed to generate expression: KtProperty - ConcurrentModificationException
KT-50281
IllegalStateException: unsupported c...
Read more
Kotlin 1.7.21
Changelog
Compiler
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-54004
Builder type inference does not work correctly with variable assignment and breaks run-time
KT-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 expression
KT-54581
JVM: "VerifyError: Bad type on operand stack" with generic inline function and when
inside try-catch block
KT-53146
JVM IR: unnecessary checkcast of null leads to NoClassDefFoundError if the type isn't available at runtime
KT-54600
NPE on passing nullable Kotlin lambda as Java's generic SAM interface with super
type bound
KT-54707
"VerifyError: Bad type on operand stack" in inline call chain on a nullable array value
KT-54650
Binary incompatible ABI change in Kotlin 1.7.20
KT-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 warning
KT-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 |
Kotlin 1.7.20
1.7.20
Analysis API
KT-52667
FIR IDE: fun interfaces (SAM interfaces) are not properly resolved
KT-52136
FIR: Implicit type declaration from the other module cannot be used for overloading
Analysis API. FE1.0
KT-51962
Analysis API: Finish Analysis API for FE1.0
Analysis API. FIR
KT-52779
FIR IDE: Import Optimizer cannot handle generic type qualifiers
KT-50236
Fix OOB modification trackers for non-Kotlin code
KT-51240
Analysis API: KtAnalysisSession for a specific module cannot create a symbol for PSI that cannot be seen from that module.
KT-50868
Analysis API: decompiled type aliases are not resolved
Compiler
KT-53739
Builder inference, extension hides members
KT-53733
Kotlin/Native: update source documentation for the new default memory manager
KT-53667
Compiler crashes on attempt to alloc a string on the stack in new MM
KT-53480
Internal error in file lowering: java.lang.ClassNotFoundException: com.android.systemui.R$string
KT-52843
Compose: NPE at Parameters.getParameterByDeclarationSlot if inline function with default arguments takes a lambda which captures value class represented by Long
KT-53475
Kotlin/Native for iOS: "IllegalArgumentException: Sequence has more than one element"
New Features
KT-52495
Support until operator in back-ends
KT-52420
Implement resolve of until operator
KT-52419
Implement until operator in the parser
KT-33755
Kotlin/Native: Provide a way to customize a bundle Identifier of a generated framework
KT-51665
FIR: implement label resolve for "typed this" case
KT-52361
Report warning on potentially empty intersection types
Performance Improvements
KT-47816
Disable script discovery for non-script environments
KT-48635
JVM IR: Double/Float values are boxed when comparing for equality in equals method of data/value classes
KT-23397
Optimize out field for property delegate when it's safe (JVM)
Fixes
KT-53272
Backend Internal error: Exception during IR lowering / No such value argument slot: 2
KT-53124
Receiver type mismatch when combining extension properties, type projections, Java sources, and F-bounded type-variables
KT-51868
JVM / IR: Inconsistent behaviour between lambda expression and SAM interface conversion for the same interface
KT-36770
Prohibit unsafe calls with expected @NotNull
T and given Kotlin generic parameter with nullable bound
KT-52974
"IllegalStateException: Symbol with IrSimpleFunctionSymbolImpl is unbound" compiling native targets of MPP project
KT-53007
JVM: "Bad invokespecial instruction: current class isn't assignable to reference class" when call superclass of outer class method from inner class
KT-53019
K2: cannot cast callable reference to Function1 in runtime
KT-53031
K2 compiler crashes with IllegalStateException: No type in ProtoBuf.ValueParameter
KT-29168
Prohibit upper bounds violation with generic typealias using not all type parameters as arguments for underlying type in supertypes
KT-52432
Using the IDE compiled with K2 (useFir) throws VerifyError exception
KT-52327
False negative: TYPECHECKER_HAS_RUN_INTO_RECURSIVE_PROBLEM isn't reported
KT-49682
Support JVM IR in KAPT stub generation
KT-24643
Prohibit using a type parameter declared for an extension property inside delegate
KT-51972
FIR, Gradle: "Symbol is invisible" compilation error with enabled Kotlin Lombok compiler plugin
KT-52011
[FIR] All-open compiler plugin isn't supported
KT-51950
JVM IR: "IndexOutOfBoundsException: Cannot pop operand off an empty stack" with crossinline lambdas and interface delegation
KT-52540
Native: kotlin.NotImplementedError with Arrow library
KT-48031
"IllegalStateException: Type variable TypeVariable(T) should not be fixed!"
KT-47708
RequiresOptIn check does not flag experimental method usage in SAM lambda expressions
KT-52913
JVM / IR: "IllegalArgumentException: Inline class types should have the same representation" when trying to down cast cast a value class
KT-50771
IR partial linkage: Removed abstract callable members are not supported
KT-52994
Enable generic inline classes as experimental feature
KT-52742
CYCLE_IN_ANNOTATION_PARAMETER_ERROR false positive on annotations with default values
KT-52743
Non-null generic functions throws NPE when assigned to val
KT-52745
Frontend / K2: "IncompatibleClassChangeError: class A$B overrides final method A.length()I" caused by delegation in a sealed class
KT-52832
Tree-generator's method FirExpression::isFirType returns true and false for different field names; it should always be true
KT-52403
IncompatibleClassChangeError when inlining suspend funs
KT-50107
Missed USAGE_IS_NOT_INLINABLE diagnostic: Leaking inline lambda parameter through extension receiver
KT-47965
Missed USAGE_IS_NOT_INLINABLE diagnostic on inline lambda parameter usage as receiver of .let call
KT-25787
No error on crossinline usage of receiver parameter of functional type in an inline function
KT-52762
Frontend / K2: Named arguments for Java classes lead to "Cannot find a parameter with this name"
KT-52680
K2: overload resolution ambiguity if this
is casted in a different method
KT-52676
K2: Unsupported compile-time value IrGetFieldImpl instead of IrConst in AnnotationCodegen for constant from Java
KT-50293
False positive: USELESS_CAST on stub types
KT-52175
WRONG_ANNOTATION_TARGET for annotation that used inside if
KT-52338
"IncompatibleClassChangeError: Expected non-static field" with Kotlin class with same-named companion object property as base Java class field
KT-49507
JVM: "IllegalAccessError: class X tried to access private field" with same-named Kotlin property and Java base class field
KT-44512
FIR DFA: incorrect smartcast after null assignment inside a lambda
KT-49200
FIR/FE 1.0: different behavior with multiple matching star imports
KT-52718
declaringClass deprecation message mentions the wrong replacement in 1.7
KT-52190
FIR2IR: Unexpected IrErrorTypeImpl type for put method inside buildMap
KT-52197
Incorrect inference of var type inside lambda that passed to extension function with type parameters that defined inside this lambda
KT-52057
Unsupported compile-time value STRING_CONCATENATION and GET_FIELD in annotation arguments
KT-47823
JVM IR: "IllegalArgumentException: Inline class types should have the same representation" with break
usage in the loop range
KT-51883
Kotlin 1.6.20 generates "-" in type names around ...
Read more