github JetBrains/kotlin v2.4.0-Beta2
Kotlin 2.4.0-Beta2

latest releases: build-2.4.20-dev-1843, build-2.4.20-dev-1842, build-2.4.20-dev-1841...
pre-release12 hours ago

Changelog

Analysis API

  • KT-65683 Analysis API: Dangling file session creation causes a computeIfAbsent contract violation

Analysis API. FIR

  • KT-70896 AA: False positive deprecation warning with override of built-in method in JDK mapped class
  • KT-84625 Analysis API: collectDesignationPath fails for nested classes inside plugin-generated top-level classes

Analysis API. Infrastructure

  • KT-84913 Extract compiler classes used by the PSI & Analysis API to a separate module
  • KT-64986 Analysis API: Implement Analysis API tests for different KMP Platforms
  • KT-80379 Extract per-module test generators for AA tests

Analysis API. PSI

  • KT-84715 removeModifier doesn't delete whitespaces around the removed modifier
  • KT-84564 KtEnumEntry.delete deletes semicolon
  • KT-84781 Use computed properties in KotlinElementTypeProviderImpl

Analysis API. Stubs and Decompilation

  • KT-85371 StackOverflowError from LLKotlinStubBasedLibrarySymbolProvider and StubBasedClassDeserialization
  • KT-83935 Support KDoc loading in decompiled stubs

Analysis API. Surface

  • KT-82519 Automatically recognize the appropriate analysis mode for in-memory file copies based on their content
  • KT-85239 Streaming version of collectDiagnostics()
  • KT-83921 Extend KaKDocProvider to read Kdoc from KLIB metadata
  • KT-77426 KaFirCompilerFacility uses an arbitrary JVM counterpart for common sources
  • KT-84737 KaCallableSymbol#directlyOverriddenSymbols doesn't work for java overrides of kotlin properties
  • KT-84621 Migrate symbol tests to ManagedTest properly
  • KT-80575 KaFirJavaInteroperabilityComponent#getJavaGetterName should not throw exception on incomplete code

Backend. Wasm

  • KT-76205 K/Wasm: stabilize and turn on incremental compilation by default
  • KT-83728 [Wasm] Invalid Ir type while suspend call with blocked if null comprehansion
  • KT-81637 K/JS/Wasm interop: Inconsistent behavior of is/as operations for JsReference<C> and C

Compiler

New Features

  • KT-84484 Companion Extensions Analysis & Resolution
  • KT-84298 K2: Generate IR for Companion Blocks & Extensions
  • KT-84292 Enforce Companion Blocks & Extensions Language Feature during Resolution
  • KT-84291 Companion Blocks & Extensions Checkers
  • KT-84290 Callable References to Companion Block Declarations & Extensions
  • KT-84287 Build Raw FIR for Companion Blocks & Extensions
  • KT-73256 Implement all meta-target for annotations
  • KT-84319 Add JVM target bytecode version 26
  • KT-84297 Serialize & Deserialize Companion Block Declarations & Extensions to/from Metadata
  • KT-84199 Implement DontMakeExplicitNullableJavaTypeArgumentsFlexible feature

Fixes

  • KT-80489 Collection literals: experimental version (Frontend)
  • KT-84566 Prevent launching Default dispatcher threads from IJ SDK in kotlin compiler
  • KT-85358 Native: roll back the workaround for KT-84678 once MapLibre has been properly fixed
  • KT-84931 Incorrect type nullability in SAM super type in anonymous class-based SAM conversion
  • KT-83920 False positive "modifier 'value' is not applicable to 'local variable'" with soft keyword in positional destructuring (square bracket) declaration
  • KT-85626 @JvmRecord in commonMain breaks compileCommonMainKotlinMetadata with "Cannot access 'java.lang.Record'"
  • KT-52673 Don't report deprecation warning/error on imports
  • KT-84991 Improve Argument type mismatch diagnostics
  • KT-82216 Sanitize '.kotlin_module' filename
  • KT-84678 K/N: Undefined symbol from SPM-added ObjC frameworks when linking iOS target
  • KT-77726 Move FirUnusedExpressionChecker to the default checkers list
  • KT-85354 checkPsiTypeConsistency: add psi text attachments
  • KT-85479 Improve diagnostic messages for upper bound violations
  • KT-84585 Upper bound violated warning for expansion of type alias in LHS
  • KT-84924 Native: stdlib-cache.lock used by mulitple processes
  • KT-85244 False positive DUPLICATE_BRANCH_CONDITION_IN_WHEN with guard condition
  • KT-78432 No-arg constructor should be generated for regular classes with a value class parameter in case of JvmExposeBoxed
  • KT-85487 Investigate why WrapContinuationForTailCallFunctions does not work in Android Test
  • KT-59633 K2: Implement running AndroidRunner tests with FIR
  • KT-85392 Native: concurrency issues in per-file caches
  • KT-76237 Store File-level annotations in KLIB metadata separately
  • KT-85162 Introduce diagnostics to refine numeric types casting
  • KT-80060 False positive REDUNDANT_CALL_OF_CONVERSION_METHOD in case of overloads
  • KT-85289 False-positive smartcast from == with type parameter based variable
  • KT-83890 return-value-checker: false positive "Unused return value of 'context'" on kotlin.context() functions
  • KT-84106 False negative "NON_EXHAUSTIVE_WHEN": "NoWhenBranchMatchedException" at runtime with sealed and platform type
  • KT-85005 Consider all: target in the checker of repeatable annotations
  • KT-85210 Enabling -XXLanguage:+IntrinsicConstEvaluation breaks highlighting on some broken code
  • KT-85217 Rework implementation supporting simple-to-suspend function conversion
  • KT-85036 Introduce a proper handling of optional expectation annotations in platform checkers during metadata compilation
  • KT-85086 False-negative JVM_EXPOSE_BOXED_CANNOT_BE_THE_SAME
  • KT-84082 [OPT_IN_USAGE_ERROR] duplicates for destructuring declaration
  • KT-84732 Collection literals: "Expected FirCollectionLiteralImpl to be resolved" in RHS of equality operator
  • KT-84841 Collection literals: Drop special treatment of when with expected type
  • KT-85007 Properly implement special rules for kotlin.Result in @JvmExposeBoxed support
  • KT-74383 Support new callable reference nodes in JVM backend
  • KT-84828 Cleanup JVM backend from the old callable references-related code
  • KT-85006 Refine error messages for INAPPLICABLE_ALL_TARGET diagnostic
  • KT-84296 Support Companion Blocks in CFG
  • KT-85058 Remove final field modification in DescriptorRendererOptionsImpl to prevent warnings on JDK 26+
  • KT-85021 False positive SUBCLASS_CANT_CALL_COMPANION_PROTECTED_NON_STATIC error in multi-module project
  • KT-84727 [K/N] Segfault when returning null as generic Int type from dynamic framework
  • KT-85062 Deprecate language version 2.1
  • KT-83460 Deprecation from @all:Deprecated is not propagated to property accessors/backing fields
  • KT-84859 Skip deprecation phase for generic arguments in qualifier receiver of static call for companion block members and extensions
  • KT-85050 [Swift Export] usage of inline classes with ref types crashes at runtime
  • KT-84983 Type parameter annotations are lost for local functions
  • KT-78800 Investigate FirMissingDependencySupertypeInQualifiedAccessExpressionsChecker
  • KT-73945 K2 IDE: Duplicated inspections for redundant 'open' in interface member
  • KT-84294 Ensure Context Sensitive Resolution works with Companion Blocks & Extensions
  • KT-81675 Improve message for CONTEXTUAL_OVERLOAD_SHADOWED
  • KT-84994 Rework optimization for companion extension resolution
  • KT-81598 incorrect type mismatch error messages for generic calls with explicit type arguments
  • KT-83587 K2: Missing null-check when using == on Short! and Byte! platform types
  • KT-261 Can't specify function return type in a subclass

Compose compiler

New features

  • c1bbb47 Started inferring the stability of all interfaces to be
    Stability.Unknown, expect for those explicitly marked as known
    stable.

Fixes

  • b/504284805 Fix indentation for generated proguard mappings
  • b/422193018 Fix applier inference for nested composables of different types.
  • b/497751457 Prevent a $stable property from being added to any object.
  • b/427530633 Do not infer a getter call as static across when it is defined in another file.
  • b/427530633 Started using Stability.Runtime more broadly. Now, when an
    element depends on the stability of an internal or public class
    defined in another file, the element will no longer infer the
    stability of that class and will depend on the runtime stability of
    that class instead.

IR. Actualizer

  • KT-84293 Expect Actual Matching for Companion Block Declarations & Extensions

IR. Inlining

  • KT-85605 "Local delegated property has not delegate" exception when calling inline function containing delegated property in a lambda from within an inline lambda

IR. Interpreter

  • KT-80804 Enable constant evaluation for more standard library
  • KT-83514 Get rid of EvaluatedConstTracker

IR. Tree

  • KT-79663 KLIB-based compilers: Promote partial linkage to "always on"
  • KT-76934 Drop old IR parameter API
  • KT-74763 Build: refactor ':compiler:backend.common' and ':compiler:ir.backend.common' modules

JVM. Reflection

  • KT-85550 Reflection: KParameter.type.classifier returns boxed KClass for non-nullable primitive types
  • KT-85285 Reflection: InvocationTargetException (UInt cannot be cast to Integer) when reading UInt annotation property via getter
  • KT-85322 Reflection: KotlinReflectionInternalError when loading ProGuard-obfuscated code compiled before 2.3.20
  • KT-84679 Reflection: confusing "Kotlin reflection is not yet supported for synthetic Java properties" for reference to Java enum's entries property
  • KT-85025 KTypeParameter instances not equal to each other for the same type parameter in member specialization KFunction
  • KT-85091 Reflection: "KotlinReflectionInternalError: Unsupported parameter owner: null" on attempt to get annotations of annotation constructor parameter
  • KT-84382 Reflection: raw list in Java type is transformed to List instead of MutableList

JavaScript

Fixes

  • KT-82395 Support top-level declarations from compiler plugins in JS incremental compilation
  • KT-81787 KJS: Value class type lost when using JsExport on interface
  • KT-85411 Fix conversionCombinations.kt tests for the JS target
  • KT-72198 KJS: ES2015 interop with ValueClass
  • KT-15101 js: Same callable references are not equal
  • KT-84810 [K/JS] Callable references operator produces duplicates
  • KT-85323 JsClass optimization doesn't work well for primitives
  • KT-60651 KJS / ES6: init block and constructor are not called
  • KT-84601 K/JS: KClass<> reference doesn't work in JS counterside as a new target in ES6 mode
  • KT-85099 KotlinJS: JsPlainObject from the js-plain-objects plugin does not respect overrides
  • KT-84615 KJS: Forbid @JsStatic on extension functions/properties
  • KT-84633 Kotlin/JS: "Serializer for class not found" error when IR output granularity is whole-program
  • KT-85038 Kotlin/JS: @JsExport on sealed external interface with companion object causes NPE
  • KT-85047 Kotlin/JS: @JsStatic on suspend fun of class companion generates incorrect d.ts
  • KT-84517 K/JS: bad mappings data in outputted Kotlin stdlib source map

Klibs

  • KT-84415 Ineffective hashMap usage in IrSymbolDeserializer
  • KT-84511 [Native][Tests] Improve descriptor-related logic in NativeCliBasedFacades.kt
  • KT-85017 [PL] Add test for added internal abstract fun
  • KT-84488 Export in previous version: Prohibit using on 2nd stage
  • KT-85149 Klib Dump parser: fix parsing of qualified names adjacent to vararg symbol
  • KT-85129 Klib Dump parser: fix enum names parsing
  • KT-84684 Remove UserVisibleIrModulesSupport from IR linker
  • KT-84820 [K/N] Load libcallbacks and libllvmstubs from configured path

Language Design

  • KT-73821 Decide the future of the ForbidUsingSupertypesWithInaccessibleContentInTypeArguments language feature
  • KT-80852 Version overloading: generate overloads corresponding to different versions of a function whose parameters are annotated with @IntroducedAt()
  • KT-85120 @IntroducedAt on expect parameter cannot be properly actualized

Libraries

  • KT-85122 Deprecate kotlin.io.readLine with WARNING
  • KT-84970 Deprecate AbstractCoroutineContextKey and associated API
  • KT-84818 [Regex] Native and Wasm: Decomposed Unicode character are incorrectly process with CANON_EQ flag
  • KT-80772 K/N: Regex: improve look behind matching performance for "fixed-length" patterns
  • KT-81395 Stabilize kotlin.uuid.Uuid API
  • KT-85127 Remove kotlin.test.assert*NoInline hidden functions
  • KT-84264 Add appropiate @SinceKotlin to new contracts
  • KT-84921 Add 'returnsResultOf' contract to appropriate declarations in the stdlib
  • KT-84697 Update the list of JDKs the stdlib is tested with

Native

  • KT-83914 Native: when loading JNI libraries, java.library.path can contain system directories with libraries with same names
  • KT-84826 Bump the minimum deployment version of Apple targets
  • KT-83133 Native: don't use sun.misc.Unsafe in the compiler and cinterop when running on JDK 25+
  • KT-84686 Removing x64 in gradle file breaks builds on certain platforms
  • KT-83648 Native: don't use sun.misc.Unsafe in NativeMemoryAllocator when running on JDK 25+
  • KT-83647 Native: don't use sun.misc.Unsafe in nativeMemUtils when running on JDK 25+

Native. Build Infrastructure

  • KT-85191 K/N: Dependency cycle in libclangInterop
  • KT-84937 Kotlin/Native: non-reproducible .bc for mingw_x64

Native. C Export

  • KT-61748 KMM- warnings when compiling native targets (Kotlin 1.9.0)

Native. C and ObjC Import

  • KT-85705 Swift-generated headers with external_source_symbol produce duplicate enum declarations
  • KT-85399 Kotlin/Native: TypeCastException when casting ObjC Protocol MetaClass with genericSafeCasts enabled
  • KT-85508 K/N: TypeCastException when using nw_parameters_create_secure_tcp block parameter on 2.3.20
  • KT-84023 Modular import fails with an obscure error when the failing module is not the last one

Native. ObjC Export

  • KT-85171 Red Swift code in Native UI Multiplatform App project from Template Gallery

Native. Runtime

  • KT-84331 Kotlin/Native: RunLoopFinalizerProcessor needs initialized runtime before it has any jobs

Native. Runtime. Memory

  • KT-83670 K/N: gc concurrent mark phase assert Failed to terminate mark in STW in a single iteration

Native. Swift Export

New Features

  • KT-82705 Support convenient export of Flow types in Swift export
  • KT-85130 [Swift Export] Preserve TypeInfo on SharedFlow
  • KT-84361 [Swift Export] Preserve TypeInfo on StateFlow

Fixes

  • KT-84317 Swift Export: "protocol members can only be marked unavailable in an '@objc' protocol" in generated code for kotlinx-coroutines
  • KT-85380 [Swift Export] Attempt to bridge unbridgeable type: SirUnsupportedType
  • KT-85704 [Swift Export] cannot infer generic type of function returning a generic type
  • KT-85711 [Swift Export] suspend function returning non-null generic fails to compile
  • KT-85715 [Swift Export] generic interface in typealias fails to compile
  • KT-85714 [Swift Export] unsupported input type param in functional receiver
  • KT-85458 [Swift Export] value of a closure returning a closure generates invalid swift code
  • KT-85521 [Swift Export] conflicting overloads for generated Kotlin bridges
  • KT-85293 SwiftExportCoroutinesWithResultValidationTest.testCoroutines fails after cross-push
  • KT-84515 [Swift Export] suspend functional parameter generates invalid Swift code
  • KT-82282 Swift Export: suspend function returning Array leads to incompilable code
  • KT-81540 Swift Export: using interface in Set generates incompilable code
  • KT-80305 Support coroutines in Swift Export
  • KT-66873 Swift Export: suspendable contravariant functional type
  • KT-85272 [Swift Export] conflicting imports for kotlinx-coroutines
  • KT-85163 [Swift Export] Flow of Unit values crashes
  • KT-85159 [Swift Export] Flow is not properly being cancelled
  • KT-84226 [Swift Export] Flow in contrvariant position is not allowed
  • KT-84485 [Swift Export] Flow with nullable elements
  • KT-83730 Generated Swift switch on bridged Kotlin enum crashes with fatalError
  • KT-85016 [Swift Export] it's not OK to expose Flow as AsyncSequence
  • KT-84979 Swift Export Nullability: Unit
  • KT-83821 Swift Export: suspend function returning Nothing leads to incompilable code

Tools. BCV

  • KT-83476 Use Maven publications as dump input [ABI Validation]

Tools. Build Tools API

New Features

  • KT-82791 BTA: introduce an option for ExecutionPolicy.WithDaemon to control the daemon log files path
  • KT-80963 BTA: Add structured information about reported messages to KotlinLogger
  • KT-73037 Add input (like compiler arguments) changes tracking

Fixes

  • KT-84228 BTA: Improving KDoc generation for Enums and Custom Types
  • KT-85738 BTA forward compatibility: NoSuchFieldError on X_IGNORED_ANNOTATIONS_FOR_BRIDGES when API 2.3.0 is used with impl 2.4.0
  • KT-85082 Make Xignored-annotations-for-bridges type safe
  • KT-82390 [BTA] Remove deprecated non-builder factory functions and classes
  • KT-85072 AbstractMethodError when calling discoverScriptExtensionsOperationBuilder with pre-2.4.0 compiler
  • KT-85447 BTA: deprecate JvmCompilerArguments.contains (warning)
  • KT-85092 [BTA] Update BTA Backward Compatibility Testing: 2.3.20-RC → 2.3.20
  • KT-85439 BTA: Warn or error when incompatible compiler arguments are passed via applyArgumentStrings
  • KT-75540 Build Tools API Should Reject -Xbuild-file Argument
  • KT-85391 [BTA] Hide boilerplate required to load isolated BTA implementation
  • KT-80679 Add support for the Build Tools API [ABI Validation]
  • KT-85035 Don't expose X_COMPILER_PLUGIN_ORDER in CommonCompilerArguments
  • KT-84738 Make Xscript-resolver-environment type safe
  • KT-85204 Make Xdump-directory type safe
  • KT-85205 Make Xdump-perf type safe
  • KT-85069 Make Xnullability-annotations type safe
  • KT-85167 Make Xjsr305 type safe
  • KT-85094 Make Xwarning-level type safe
  • KT-85294 BTA: Replace hardcoded @since in KDoc with dynamic versioning
  • KT-85333 Add BTA tests for BACKUP_CLASSES and KEEP_IC_CACHES_IN_MEMORY behavior after compilation error
  • KT-84770 BTA: default options cannot be retrieved from many option objects
  • KT-85224 Add @ExperimentalArgumentApi to compiler argument DSL types
  • KT-84322 Make X_PROFILE BTA compiler argument type safe
  • KT-84953 Fail TC build if generated files change
  • KT-85189 Refactor path argument types: flatten hierarchy and improve naming
  • KT-84984 Runtime NPEs caused by null return in CompilerMessageRenderer implementation
  • KT-84015 Introduce detection of custom script names to new BTA API

Tools. CLI

  • KT-85414 Argument DSL: delimiter = KotlinCompilerArgument.Delimiter.PathSeparator generates invalid Kotlin code
  • KT-85001 Convert ImplicitJvmExposeBoxed language feature to analysis flag
  • KT-84999 Don't poison binaries with ImplicitJvmExposeBoxed language feature
  • KT-85004 Set proper since version for language feature about property annotation targeting
  • KT-56850 Separate K/Wasm CLI entry point from K/JS CLI

Tools. Compiler Plugin API

  • KT-85133 Drop deprecated K1 specific methods from IrPluginContext

Tools. Compiler Plugins

  • KT-75656 PowerAssert: Create runtime library
  • KT-75873 PowerAssert: display callable reference value under '::'
  • KT-85151 PowerAssert: Surround string and character values with quotes
  • KT-85184 PowerAssert: Annotation may only be used on expect and non-override functions
  • KT-69036 Power-Assert indent multiline values
  • KT-85089 PowerAssert: Wasm CompileError when using PowerAssert.explanation

Tools. Gradle

New Features

  • KT-76197 Write Kotlin compiler warnings and errors to Problems API

Fixes

  • KT-85412 Module name is not sanitized with older Kotlin compiler versions
  • KT-65566 Use the new ConfigurationContainer consumable method to create consumable configurations
  • KT-85509 Remove deprecated API in the 2.4.0 release
  • KT-83858 Compatibility with Gradle 9.4.0 release
  • KT-69830 Support Gradle com.gradle.develocity plugin in KGP
  • KT-85433 Gradle: deprecate non-BTA JVM compiler execution mode
  • KT-80448 Remove internal & deprecated API from ExtrasProperty.kt
  • KT-69701 Gradle: module name is passed inconsistently to different types of compilations
  • KT-83860 Run tests against Gradle 9.4.0
  • KT-83859 Compile against Gradle API 9.4.0
  • KT-84729 Update Gradle plugin-publish version to enable configuration cache badge on Gradle plugins portal

Tools. Gradle. BCV

  • KT-83999 ABI validation: Groovy DSL doesn’t deprecate included/excluded filters, allowing four filter configs instead of two
  • KT-84461 Remove the use of abi-tools-api from KGP [ABI Validation]
  • KT-84100 Add Deprecated annotation to legacyDump block and property [ABI Validation]

Tools. Gradle. Compiler plugins

  • KT-85343 Update Compose Gradle plugin deprecations before 2.4

Tools. Gradle. JS

  • KT-84753 Deprecate KotlinJsCompilerType and KotlinProjectExtension methods using it
  • KT-81033 K/JS, Wasm: Remove deprecated wasm declarations in "js" package
  • KT-81034 K/JS, Wasm: Remove deprecated public constructors of JS declarations
  • KT-81030 K/JS, Wasm: remove deprecated NodeJsExec.create
  • KT-81037 K/JS, Wasm: Remove deprecated internal JS functions

Tools. Gradle. Multiplatform

  • KT-84767 K/N: associateWith triggers warning about friend-modules libs not included in -library argument
  • KT-69571 compileNativeMainKotlinMetadata not handling project/prebuilt substitutions
  • KT-84533 KMP: compileCommonMainKotlinMetadata: "Unresolved reference" for androidx.savedstate from Maven (works with project() dependency)
  • KT-84669 SPM import: If iosApp dir located outside of the project, checkSyntheticImportProjectIsCorrectlyIntegrated will fail
  • KT-84085 Remove deprecated gradle property kotlin.kmp.isolated-projects.support
  • KT-84597 Remove trailing comma for dependencies blocks settings in Package.swift
  • KT-82895 kotlin-stdlib import is flaky in commonTest in 2.1.21

Tools. Gradle. Native

New Features

  • KT-83873 Redo how dynamic library linkage and promotion are handled

Fixes

  • KT-69896 Native: output to stderr ends up in the Gradle log
  • KT-85708 [KGP] dSYM copy task ignores isStatic due to eager read before framework configuration
  • KT-84262 integrateEmbedAndSign produces an incorrect Gradle call for the root project
  • KT-84730 Add Kdocs to SwiftPM import APIs
  • KT-85502 Swift PM Import: "Library not loaded": KotlinMultiplatformLinkedPackage.framework is not copied next to the executable
  • KT-85510 Cleanup native tasks API
  • KT-82824 Make linker hack path relative
  • KT-85128 Refactor SwiftPM import lock tests and test utils
  • KT-83874 Linker hack doesn't work when clang uses response files
  • KT-83681 Parallelize parts of SwiftPM import pipeline that are called during import

Tools. Gradle. Wasm

  • KT-85046 K/Wasm: Wasm per-module Gradle integration tests on Windows

Tools. Incremental Compile

  • KT-85387 BTA: switch the default value of MONOTONOUS_INCREMENTAL_COMPILE_SET_EXPANSION to true
  • KT-85386 BTA JVM IC: 'moduleName' is null!
  • KT-84450 Star imports are not reported via FirImportTrackerComponent

Tools. JPS

  • KT-81579 JPS: -Xwarning-level=DEPRECATION:warning not supported

Tools. Kapt

  • KT-32743 Kapt, Maven: Do not include compile classpath entries in the annotation processing classpath
  • KT-41217 Running kapt with Maven does not seem to include the compilation classpath

Tools. Maven

  • KT-84386 Support Maven Toolchains in kotlin-maven-plugin
  • KT-76062 Maven: remove Kotlin script execution support
  • KT-85317 Auto‑align jvmTarget with the project’s Java level
  • KT-84101 Maven: compile and test-compile handle sourceDirs inconsistently
  • KT-84653 Add integration test for KAPT with smart defaults in mixed Kotlin+Java projects
  • KT-85121 Maven: enable configuration inputs tracking in BTA
  • KT-84778 Add integration test for auto-bind execution order in mixed Kotlin+Java projects
  • KT-85146 Maven: Adding stdlib as smart-default may break maven dependency resolution for other plugins
  • KT-83109 Remove beanshell and groovy verification in kotlin-maven-plugin-test

Tools. REPL

  • KT-77816 REPL: Support for const properties
  • KT-84483 [K2 Repl] NullPointerException in Analysis when using custom classes
  • KT-84803 [REPL] FirReplSnippet: provide the eval function symbol instead of the name (evalFunctionName)

Tools. Scripts

  • KT-85105 Scripts: JVM backend internal error (IR lowering) when scratch file contains anonymous object
  • KT-85103 Exception while generating code when explain destructuring decls
  • KT-85029 Kotlin Scripting: ScriptDiagnostic reports "at null" instead of error location

Tools. Statistics (FUS)

  • KT-85628 KGP: composite build FUS metrics fail on access of 'configurationTimeMetrics'

Tools. Wasm

  • KT-75086 Wasm: Deprecate and remove D8 in js packages

Don't miss a new kotlin release

NewReleases is sending notifications on new releases.