10000 Releases Β· JetBrains/kotlin Β· GitHub
[go: up one dir, main page]

Skip to content

Releases: JetBrains/kotlin

Kotlin 2.2.10-RC

18 Jul 10:37
Compare
Choose a tag to compare
Kotlin 2.2.10-RC Pre-release
Pre-release

Changelog

Compiler

  • KT-78501 K2: Missing [ABSTRACT_SUPER_CALL] diagnostics for delegated interface method leads to AssertionError: isCompiledToJvmDefault during IR lowering
  • KT-78479 IR lowering failed / Unexpected null argument for composable call
  • KT-76477 Kotlin/Native: fix compiler performance reporting in sources->klib and klibs->binary
  • KT-78736 Missing [NOT_YET_SUPPORTED_IN_INLINE] diagnostics because of incorrect context update
  • KT-77685 "IllegalArgumentException: Sequence contains more than one matching element"
  • KT-76365 K2: Missing ABSTRACT_SUPER_CALL
  • KT-78352 False-positive IDENTITY_SENSITIVE_OPERATIONS_WITH_VALUE_TYPE when comparing with equality operator (==)

Compose compiler

  • KT-78479 Ensure that default transform affects functions entered through a call
  • KT-78490 Fix visibility for default wrappers of protected methods
  • b/408492167 Emit parameter names in Compose source information

Native. Runtime. Memory

  • KT-78925 Crash SIGABRT on Apple Watch after updating Kotlin to 2.2.0

Tools. CLI

  • KT-77445 UNRESOLVED_REFERENCE when importing classes from kotlin-stdlib
  • KT-78263 java.lang.NoClassDefFoundError: Could not initialize class com.intellij.psi.impl.PsiSubstitutorImpl
  • KT-78318 Unresolved reference when compiling kotlin/JS project on fresh master

Tools. Compiler Plugins

  • KT-78490 "AssertionError: SyntheticAccessorLowering should not attempt to modify other files" when calling protected open composable with default argument
  • KT-78038 Make jvm-abi-gen compiler plugin output classloader-friendly

Tools. Gradle

  • KT-77023 Support creating KotlinJvmAndroidCompilation in KotlinBaseApiPlugin

Tools. Gradle. JS

  • KT-78504 [2.2.0-RC3] NPM Tasks in 2.2 RCs produce broken/unusable build cache entries

Tools. Gradle. Multiplatform

  • KT-77466 KMP - testFixturesApi and similar configurations do not affect jvmTestFixtures source set
  • KT-68646 Compose extension's metrics/reports dir should use subdirs based on target

Tools. Gradle. Native

  • KT-77977 "Unknown hardware platform: riscv64" on JVM project build

Tools. Incremental Compile

  • KT-78807 Changing ABI fingerprint on non-ABI changes when lambda passed to inlined function

Tools. Kapt

  • KT-77853 K2 KAPT: backend internal error: exception during IR fake override builder

Kotlin 2.2.20-Beta1

10 Jul 13:40
Compare
Choose a tag to compare
Kotlin 2.2.20-Beta1 Pre-release
Pre-release

Changelog

Analysis API

  • KT-78187 Synthetic properties not to be shown as callables
  • KT-72525 K2. red code and KIWA on new-lines in guarded when conditions (with parentheses)
  • KT-61728 Analysis API: optimize AllCandidatesResolver.getAllCandidates

Analysis API. Code Compilation

  • KT-76457 K2 IDE / KMP Debugger: KISEWA β€œCannot compile a common source without a JVM counterpart” on evaluating inline fun from common module inside jvm
  • KT-73084 K2 evaluator cannot resolve local variables standing at the closing brace

Analysis API. FIR

Performance Improvements

  • KT-78132 Do not check FirElementBuilder#tryGetFirWithoutBodyResolve optimization for already resolved declarations

Fixes

  • KT-72357 Implement partial body resolution
  • KT-77629 K2: NPE: "org.jetbrains.kotlin.fir.java.declarations.FirJavaTypeParameter.performFirstRoundOfBoundsResolution"
  • KT-76855 Analysis API: KaType.asPsiType returns null for a local inner class in dependent analysis tests
  • KT-72718 ImplicitReceiverValue.createSnapshot creates invalid FIR if receiver is smart-casted
  • KT-76811 Analysis API: resolveToFirSymbol finds a FirPropertySymbol for a KtScript in dependent analysis
  • KT-73586 [Analysis API] Add lazyResolveToPhase(STATUS) before accessing modifiers of members
  • KT-71135 AA: exception from sealed inheritors checker when analyzeCopy
  • KT-75534 K2 AA: "Containing declaration should present for nested declaration class KtNamedFunction" with dangling annotation on top-level anonymous function
  • KT-75687 K2: local variable doesn't get to the do-while scope
  • KT-56543 LL FIR: rework lazy transformers so transformers modify only declarations they suppose to

Analysis API. Infrastructure

  • KT-76809 Analysis API: Dependent analysis tests frequently work with the original element instead of the copied element

Analysis API. Light Classes

  • KT-78076 DLC: KotlinDeclarationInCompiledFileSearcher missed accessors if types are boxed
  • KT-77569 SLC: annotation missing from generated no-args constructor
  • KT-75182 K2 AA. False positive red code "Unresolved reference" to a Kotlin method in Java when Kotlin uses a value class with @JvmOverloads
  • KT-77564 Constructor with JvmOverloads and value class shouldn't mark regular constructors private
  • KT-77505 K2: find usages on java accessor methods do not detect kotlin property accessor usages
  • KT-76789 Annotation resolve shouldn't search through non-class members
  • KT-76907 Wrong equality between repeatable annotation and container

Analysis API. Providers and Caches

  • KT-74907 Analysis API: Apply platform-based library module content restrictions consistently
  • KT-77578 Analysis API: Performance degradation of KaBaseResolutionScope.contains after introduction of library restriction scopes
  • KT-77605 AA: Leaking KaDanglingFileModule through IdeKotlinPackageProvider
  • KT-62474 Analysis API: Improve mergeability and performance of custom search scopes
  • KT-77022 Get rid of ExpectBuiltinPostProcessor workaround
  • KT-77248 Delegation of JavaModuleResolver is restricted to CliJavaModuleResolver
  • KT-76850 LLFirLibrarySession cannot be cast to LLFirResolvableModuleSession
  • KT-76952 Analysis API: when exhaustiveness analysis fails for sealed classes in dangling files
  • KT-72390 Kotlin project full of red code

Analysis API. Stubs and Decompilation

  • KT-77496 Support HAS_MUST_USE_RETURN_VALUE metadata flags in FirStubBasedMemberDeserializer
  • KT-77778 Function receivers doesn't have annotations
  • KT-77777 Receiver annotations shouldn't be present on types
  • KT-77538 Support default property accessors with annotations
  • KT-77763 Decompiled stubs miss inline modifier for property accessors
  • KT-77309 Decompiled property from annotation constructor with default value should have a constant initializer
  • KT-77168 Prefer DataInputOutputUtil for serialization/deserialization
  • KT-77117 Flaky WRONG_ANNOTATION_TARGET diagnostic
  • KT-76791 Function signature types are deserialized inconsistently
  • KT-76947 Support functional types with context parameters

Analysis API. Surface

New Features

  • KT-77278 Implement psi-based KaFirKotlinPropertyKtPropertyBasedSymbol#hasBackingField
  • KT-70770 KaLocalVariableSymbol: support isLateInit

Fixes

  • KT-75913 K2: SymbolLightLazyAnnotation evaluates arguments and replaces them with constants
  • KT-78278 ISE: FIR element "class org.jetbrains.kotlin.fir.expressions.impl.FirErrorResolvedQualifierImpl" is not supported in constant evaluation at org.jetbrains.uast.kotlin.internal.FirKotlinUastConstantEvaluator.evaluate
  • KT-73327 Cover all psi inputs with scope validity assertions
  • KT-71876 Support storing parameter names in KaFunctionType
  • KT-77738 AA: inconsistent KaType.allSupertypes regarding multiple iterations
  • KT-73723 K2 AA, KaFirVisibilityChecker: protected member of superclass is not visible from anonymous object
  • KT-78057 [Analysis API, K2] Context parameters are not resolved in KDoc
  • KT-73758 K2 Mode: "KaEvaluator.evaluate" does not work for simple arithmetic expressions
  • KT-72301 K2 AA. PSI should present for declaration built by Kotlin code on property access syntax of generic Java getter through Kotlin subclass
  • KT-77730 K2: Unable to get a light PSI for a nested annotation used with fully-qualified name
  • KT-73216 K2: unresolvable references in type parameters
  • KT-71794 Analysis API: Types with errors have unresolved qualifiers in lambda parameters position
  • KT-65846 Support parameter names in functional type rendering
  • KT-76738 K2 AA: rendering constructor of sealed class inserts protected modifier
  • KT-77515 KaTypeProvider#receiverType should be more tolerant to an error code
  • KT-77333 K2 AA: KaFirTypeProvider.getType: InvalidFirElementTypeException: For TYPE_REFERENCE with text I, unexpected element of type: FirSuperReceiverExpressionImpl found
  • KT-76044 K2 AA: isFun is true for restored symbol of Java interface with several methods
  • KT-77264 KaTypeProvider#type should be more tolerant to an error code
  • KT-77282 KaPropertySymbol: support isDelegatedProperty for libraries
  • KT-77254 K2 AA: expectedType doesn't provide anything for parameter default value
  • KT-74777 KaVariableSymbol.hasBackingField returns incorrect result for libraries
  • KT-77280 Rename KaPropertyAccessorSymbol#isCustom to isNotDefault
  • KT-77210 Analysis API: `scopeContex...
Read more

Kotlin 2.2.0

23 Jun 13:11
Compare
Choose a tag to compare

Changelog

Analysis API

  • KT-73337 Migrate analysis sources to new IR parameter API
  • KT-75880 K2 Mode: Typealias reference resolves to the underlying class in KMP project
  • KT-74246 KaVisibilityChecker.isVisible is inefficient with multiple calls on the same use-site
  • KT-57733 Analysis API: Use optimized ModuleWithDependenciesScopes in combined symbol providers
  • KT-69535 Redesign 'containingSymbol'
  • KT-69950 Analysis API: Introduce isSubtypeOf(ClassId)
  • KT-68393 Analysis API: Rename KaClassLikeSymbol. classIdIfNonLocal to classId
  • KT-62924 Analysis API: rename KtCallableSymbol.callableIdIfNonLocal -> callableId

Analysis API. Code Compilation

  • KT-75502 K2: IDEA hangs when evaluating inside kotlin-stdlib modules in the Kotlin project
  • KT-73077 Evaluation of inline functions is broken inside Kotlin project and Amper module in Idea sources
  • KT-73936 K2: CyclicInlineDependencyException: Inline functions have a cyclic dependency in evaluator
  • KT-74582 InterpreterMethodNotFoundError when trying to evaluate simple expressions after recent 10000 fixes
  • KT-74524 Compilation exception with incorrect JvmName annotation arguments
  • KT-74443 Compilation peer collector ignores inline property accessors

Analysis API. FIR

New Features

Performance Improvements

  • KT-75790 Experiment with increasing DEFAULT_LOCKING_INTERVAL time
  • KT-72159 LLFirCompilerRequiredAnnotationsTargetResolver: consider rewriting it to use honest jumping locks

Fixes

  • KT-76331 Cleanup FileStructureElement for classes
  • KT-73117 K2 AA: Exception "Setter is not found" when val has a setter without body
  • KT-76540 K2: Missing library dependency on Android SDK from androidx.activity-1.8.2 causes LiveEdit failures
  • KT-73266 K2. "Declaration should have non-local container" with unclosed annotation on top-level function
  • KT-76432 JavaClassUseSiteMemberScope: Expected FirResolvedTypeRef with ConeKotlinType but was FirUserTypeRefImpl
  • KT-76217 K2 AA: "No fir element was found for KtParameter" with multiple context parameter lists
  • KT-74740 Highlighting is broken after the built-in serialization refactoring
  • KT-76366 ContextCollector: annotations on class members don't have the class as implicit receiver
  • KT-76352 ContextCollector: wrong class annotation context in BODY mode
  • KT-76341 ContextCollector: support dangling modifiers
  • KT-76332 "Declaration should have non-local container" for declaration inside file annotation
  • KT-76115 Disable FirElementBuilder#getFirForElementInsideAnnotations optimization for files, classes and scripts
  • KT-76347 ContextCollector: avoid resolution for enum entry annotations
  • KT-76272 Cleanup AbstractFileStructureTest
  • KT-75542 K2 AA: "FirDeclaration was not found for class KtNamedFunction, fir is class FirErrorExpressionImpl" for unclosed annotation on member function
  • KT-73719 K2. "FirDeclaration was not found for class KtDestructuringDeclaration, fir is class FirBlockImpl" on incorrect chain call
  • KT-72908 K2 Analysis API: "FirDeclaration was not found for class org.jetbrains.kotlin.psi.KtFunctionLiteral" with non-local destructuring declaration without initializer before init block
  • KT-75532 ContextCollector: scope for an anonymous function type parameter contains regular parameters
  • KT-74508 FirElementBuilder#findElementInside should reuse logic from KtToFirMapping#getFir
  • KT-73066 [LL] Enable low-level-api-fir-native even with the disabled native part
  • KT-75132 Investigate failures of sandbox diagnostic test
  • KT-75130 Set up LL FIR tests for sandbox test data
  • KT-73386 Standardize LL FIR test for compiler test data
  • KT-75125 ISE β€œValue classes cannot have 0 fields” on instantiating inline class without fields
  • KT-75179 ContextCollector: support error properties
  • KT-74632 K2: ISE FirLazyDelegatedConstructorCall should be calculated before accessing
  • KT-74818 K2 AA: "FirDeclaration was not found for class KtTypeParameter, fir is null" with TYPE_PARAMETERS_NOT_ALLOWED on anonymous function
  • KT-73183 Support context parameters in ContextCollectorVisitor
  • KT-60350 K2 IDE: top level destructuring RHS should be resolvable
  • KT-74794 K2: FirLazyExpression should be calculated before accessing with context parameter and implicit return type
  • KT-72938 Get rid of KaFirAnnotationListForReceiverParameter
  • KT-73727 Exception in implicit type resolution

Analysis API. Infrastructure

  • KT-74917 [Analysis API, Test Framework] Introduce a way to acquire PsiFile for a given TestFile in KtTestModule

Analysis API. Light Classes

  • KT-73405 Get rid of KtElement#{symbolPointer, symbolPointerOfType} API usages
  • KT-75391 Reduce the amount of psi-based logic in light classes
  • KT-70001 SLC adds @Override with zero text offset on override member
  • KT-75755 K2. False positive red code on vararg parameters in Kotlin class with @JvmOverloads when called from Java
  • KT-75397 Constructors and functions with non-last vararg parameters are treated as varargs
  • KT-74868 Support context parameters
  • KT-74733 SymbolPsiLiteral.text == value for Java constant
  • KT-74620 Delegated functions with value classes are present in light classes
  • KT-74595 Static functions with value classes are present in light classes
  • KT-74284 Synthetic data class methods using value class types present in LC

Analysis API. Providers and Caches

Performance Improvements

  • KT-62115 Analysis API: Package providers are not cached per search scope
  • KT-74463 Analysis API: LLNativeForwardDeclarationsSymbolProvider queries its cache even when the ClassId cannot represent a native forward declaration

Fixes

  • KT-74541 Analysis API: Include files generated by resolve extensions in KaModule content scopes
  • KT-64236 Analysis API: Introduce a separate module for fallback dependencies of library source modules
  • KT-74090 Analysis API: Support dumb mode (restricted analysis)
  • KT-63780 Analysis API: Invalidate resolvable library sessions when binary library modules are modified
  • KT-72388 KaFirStopWorldCacheCleaner: Control-flow exceptions
  • KT-74943 Analysis API: Replace KotlinGlobalModificationService with simpler global modification event publishing and listener-based modification trackers
  • KT-70518 K2: Analysis API: Access indices outside of ConcurrentMap computation in...
Read more

Kotlin 2.2.0-RC3

16 Jun 10:36
Compare
Choose a tag to compare
Kotlin 2.2.0-RC3 Pre-release
Pre-release

Changelog

Compiler

  • KT-77301 False positive Context Parameter resolution when using DslMarker

JavaScript

  • KT-78073 K/JS: KProperty from local delegate changes after another delegate is invoked

Klibs

  • KT-78168 K/N: "IndexOutOfBoundsException: Index 3 out of bounds for length 3" for iOS build with Kotlin 2.2.0-RC2

Kotlin 2.2.0-RC2

04 Jun 12:35
Compare
Choose a tag to compare
Kotlin 2.2.0-RC2 Pre-release
Pre-release

Changelog

Backend. Wasm

  • KT-77622 K/Wasm: investigate CMP crash on mobile Safari

Compiler

  • KT-77220 Annotation with EXPRESSION is not allowed on lambdas in Kotlin 2.2.0

Compose compiler

  • b/420729503 Avoid copying @Deprecated annotations on Compose compiler stubs
  • b/417412949 Emit fake line number for skipToGroupEnd branch

IR. Tree

  • KT-77508 K/JS and K/Native CompilationException Wrong number of parameters in wrapper

JVM. Reflection

  • KT-77663 Reflection: java.util.ServiceConfigurationError: "module kotlin.reflect does not declare uses" when using kotlin-reflect in modular mode

Tools. CLI

  • KT-77445 UNRESOLVED_REFERENCE when importing classes from kotlin-stdlib

Tools. Gradle. Multiplatform

  • KT-77404 The kotlin-stdlib and annotations are missing from commonTest dependencies with 2.2.0-Beta1

Kotlin 2.2.0-RC

16 May 08:46
Compare
Choose a tag to compare
Kotlin 2.2.0-RC Pre-release
Pre-release

Changelog

Compiler

Fixes

  • KT-77259 Confusing message for ANNOTATION_WILL_BE_APPLIED_ALSO_TO_PROPERTY_OR_FIELD
  • KT-77219 "@Composable annotation is not applicable" on vararg @Composable () -> Unit in Kotlin 2.2.0
  • KT-77397 Report UNSUPPORTED_CONTEXTUAL_DECLARATION_CALL when calling declaration with contextual function type in signature
  • KT-74470 NSME on calling in runtime internal constructor of value class with default arg from tests
  • KT-77137 K2: Controversial behavior allows resolving annotation arguments on a companion inside it
  • KT-77150 Native: compilation fails with an assertion error
  • KT-76357 K2: a nested class annotation observes member declarations of the outer class
  • KT-77283 Binary compatibility of FirDeclarationChecker
  • KT-75457 Native: cache machinery uses stdlib cache with default runtime options even if custom runtime options are supplied when partial linkage is disabled
  • KT-76898 K2: ClassCastException when data class shadows supertype's componentX method with wrong type
  • KT-77078 K2: anonymous object is wrongly allowed to implement interfaces by unsafe Delegation
  • KT-77001 Leave ForbidParenthesizedLhsInAssignments as a warning

Compose compiler

  • CMP-7873 Native build fails with "e: Compilation failed: Exception during generating code for following declaration"
  • b/412584977 Fix false positive for overriding open functions from older dependencies

JavaScript

  • KT-77418 KJS: cannot debug with whole-program granularity
  • KT-77271 KJS / Serialization: "Cannot set property message of Error which has only a getter"
  • KT-69591 KJS / d.ts: Wrong type of SerializerFactory for abstract classes
  • KT-42305 KJS / IR: "Class constructor is marked as private" @JsExport produces wrong TS code for sealed classes
  • KT-52563 KJS / IR: Invalid TypeScript generated for class extending base class with private constructor

Native

  • KT-76992 Native: update llvm for windows targets

Native. Build Infrastructure

  • KT-77349 Kotlin/Native: default cache for stdlib is unused

Tools. Gradle

  • KT-76138 Compile against Gradle API 8.14
  • KT-76139 Run integration tests against Gradle 8.14
  • KT-76137 Compatibility with Gradle 8.14 release
  • KT-76797 KGP: StdlibDependencyManagementKt.configureStdlibVersionAlignment() triggering eager configuration realization
  • KT-77288 Using 'KotlinJvmOptions' is an error - Gradle sync issue when using 2.2.0-Beta2 with Android Gradle Plugin
  • KT-77035 A compiler diagnostic isn't reported when its severity is set to warning with Gradle
  • KT-73142 Kotlin Gradle plugin: Remove usage of Gradle's internal ExecHandleBuilder
  • KT-75823 Resources bundle with XCFrameworks for iOS

Tools. Gradle. JS

  • KT-77119 KJS: Gradle: Setting custom environment variables in KotlinJsTest tasks no longer works

Tools. Gradle. Native

  • KT-77067 Kotlin Gradle plugin with the configuration cache passes all platform libraries to the compiler when compiling a binary for the first time

Tools. Wasm

  • KT-76948 Wasm: Rename kotlinBinaryenSetup and kotlinD8Setup

Kotlin 2.1.21

13 May 09:40
Compare
Choose a tag to compare

Changelog

Backend. Native. Debug

  • KT-75991 Xcode 16.3: Fix lldb stepping test over an inline function

Compiler

  • KT-75992 Xcode 16.3: stacktraces on simulators are not symbolicated
  • KT-76663 KJS: KotlinNothingValueException caused by expression return since 2.1.20
  • KT-75756 Backend Internal error: Exception during IR lowering when trying to access variable from providedProperties in class within kotlin custom script
  • KT-76209 CONFLICTING_UPPER_BOUNDS on Nothing bound
  • KT-70352 K2: False-negative CONFLICTING_UPPER_BOUNDS on Nothing bound
  • KT-74739 Native: "IllegalArgumentException: All constructors should've been lowered: FUNCTION_REFERENCE"
  • KT-75483 Native: redundant unboxing generated with smart cast
  • KT-71425 IR Inliner: investigate return type of an inlined block

Native

  • KT-76252 Native: executable crash with generic value classes with 2.1.20

Native. C and ObjC Import

  • KT-75781 Xcode 16.3: Fix cinterop tests failing with fatal error: could not build module '_stdint'

Native. Runtime. Memory

  • KT-74280 Native: GC.collect crashes with -Xallocator=std

Tools. CLI

  • KT-75588 [2.1.20-RC] "was compiled by a pre-release version of Kotlin and cannot be loaded by this version of the compiler" warnings despite using the same compiler version
  • KT-74663 kotlinc-js CLI: not providing -ir-output-dir results in NullPointerException

Tools. Compiler Plugins

  • KT-76162 "IllegalStateException: No mapping for symbol: VALUE_PARAMETER INSTANCE_RECEIVER" after updating to 2.1.20

Tools. Gradle

  • KT-73682 Compatibility with Gradle 8.12 release
  • KT-73142 Kotlin Gradle plugin: Remove usage of Gradle's internal ExecHandleBuilder
  • KT-36004 Update 'org.gradle.usage' attribute rules to support the 'JAVA_API' and 'JAVA_RUNTIME' value
  • KT-73968 KotlinDependencyManagement tries to mutate configuration after it was resolved
  • KT-73684 Run integration tests against Gradle 8.12
  • KT-72694 Accessing Task.project during execution is being deprecated in Gradle 8.12
  • KT-73683 Compile against Gradle API 8.12

Tools. Gradle. JS

  • KT-77119 KJS: Gradle: Setting custom environment variables in KotlinJsTest tasks no longer works
  • KT-74735 KGP uses Gradle internal CompositeProjectComponentArtifactMetadata
  • KT-71879 Notice of upcoming deprecation for Boolean 'is-' properties in Gradle Groovy scripts

Tools. Gradle. Multiplatform

  • KT-75808 KGP: MPP with jvm target and Gradle java-test-fixtures is broken
  • KT-75605 Dependency resolution fails in commonTest/nativeTest source sets for KMP module when depending on another project due to missing PSM
  • KT-75512 Maven-publish: ArtifactId is not correct inpom file with customized withXml

Tools. Incremental Compile

  • KT-62555 Wrong ABI fingerprint for inline function containing a lambda
  • KT-75883 Follow-up: switch from INSTANCE heuristic to outerClass chain

Tools. Kapt

  • KT-75936 K2 KAPT: unsupported FIR element kinds in constant evaluation
  • KT-75942 K2 KAPT: underscore not allowed here

Tools. Scripts

  • KT-76424 Dependencies in main.kts not working with 2.1.20
  • KT-76296 Kotlin script compiler crashes when secondary constructor calls a function
  • KT-75589 Scripts: "IndexOutOfBoundsException in jdk.internal.util.Preconditions.outOfBounds" when trying to extend a class which uses global variable

Tools. Wasm

  • KT-76161 Wasm: "export startUnitTests was not found" after updating to Kotlin 2.1.20

Kotlin 2.1.21-RC2

01 May 11:02
Compare
Choose a tag to compare
Kotlin 2.1.21-RC2 Pre-release
Pre-release

Changelog

Tools. Gradle. JS

  • KT-77119 KJS: Gradle: Setting custom environment variables in KotlinJsTest tasks no longer works

Kotlin 2.2.0-Beta2

30 Apr 13:02
Compare
Choose a tag to compare
Kotlin 2.2.0-Beta2 Pre-release
Pre-release

Changelog

Analysis API

  • KT-73337 Migrate analysis sources to new IR parameter API
  • KT-68393 Analysis API: Rename KaClassLikeSymbol. classIdIfNonLocal to classId
  • KT-62924 Analysis API: rename KtCallableSymbol.callableIdIfNonLocal -> callableId
  • KT-63718 Analysis API: Stub-based dependency symbol providers of library source sessions compute the wrong package name sets

Analysis API. FIR

Fixes

  • KT-76540 K2: Missing library dependency on Android SDK from androidx.activity-1.8.2 causes LiveEdit failures
  • KT-73266 K2. "Declaration should have non-local container" with unclosed annotation on top-level function
  • KT-76432 JavaClassUseSiteMemberScope: Expected FirResolvedTypeRef with ConeKotlinType but was FirUserTypeRefImpl
  • KT-76217 K2 AA: "No fir element was found for KtParameter" with multiple context parameter lists
  • KT-76366 ContextCollector: annotations on class members don't have the class as implicit receiver
  • KT-76352 ContextCollector: wrong class annotation context in BODY mode
  • KT-76341 ContextCollector: support dangling modifiers
  • KT-76332 "Declaration should have non-local container" for declaration inside file annotation
  • KT-76331 Cleanup FileStructureElement for classes
  • KT-76115 Disable FirElementBuilder#getFirForElementInsideAnnotations optimization for files, classes and scripts
  • KT-76347 ContextCollector: avoid resolution for enum entry annotations
  • KT-76272 Cleanup AbstractFileStructureTest
  • KT-75542 K2 AA: "FirDeclaration was not found for class KtNamedFunction, fir is class FirErrorExpressionImpl" for unclosed annotation on member function
  • KT-73117 K2 AA: Exception "Setter is not found" when val has a setter without body
  • KT-73719 K2. "FirDeclaration was not found for class KtDestructuringDeclaration, fir is class FirBlockImpl" on incorrect chain call

Analysis API. Providers and Caches

  • KT-74541 Analysis API: Include files generated by resolve extensions in KaModule content scopes
  • KT-64236 Analysis API: Introduce a separate module for fallback dependencies of library source modules
  • KT-63780 Analysis API: Invalidate resolvable library sessions when binary library modules are modified

Analysis API. Stubs and Decompilation

  • KT-71787 PsiRawFirBuilder.Visitor#visitStringTemplateExpression forces AST loading

Analysis API. Surface

  • KT-76018 K2: Stop the wold leads to deadlock/freeze
  • KT-73669 Support psi-based symbol pointer for implicit primary constructors
  • KT-76011 KaFirNamedClassSymbol#companionObject doesn't provide generated objects generated by compiled plugins
  • KT-76008 Provide PSI-based implementation for KaFirNamedClassSymbol#companionObject

Backend. Native. Debug

  • KT-75991 Xcode 16.3: Fix lldb stepping test over an inline function

Backend. Wasm

  • KT-76747 [Wasm] Wasm name section absent for wasm structs
  • KT-76701 K/Wasm: custom formatters are not loaded when a project is built with incremental compilation
  • KT-66081 K/WASM: 0/0, 5/0 and 5%0throw not ArithmeticException, but RuntimeError
  • KT-76287 [Wasm] Enable stdlib and kotlin.test tests after compiler bootstrap
  • KT-75871 [Wasm] Implement new RTTI approach
  • KT-75872 Wasm / IC: IllegalStateException: IC internal error: can not find library
  • KT-73362 Migrate K/Wasm sources to new IR parameter API

Compiler

New Features

  • KT-70722 Implement better Kotlin warnings for value classes and JEP 390 (Warnings for Value-Based Classes)
  • KT-57919 Store all annotations in Kotlin metadata on JVM under a flag
  • KT-54205 Support jakarta Nullability annotations

Performance Improvements

  • KT-76422 FirJavaFacade#createFirJavaClass: do not compute super type references right away

Fixes

  • KT-75828 Store backing field/delegate annotations and extension receiver annotations in metadata
  • KT-76663 KJS: KotlinNothingValueException caused by expression return since 2.1.20
  • KT-76615 K2: "IllegalArgumentException: Inline class types should have the same representation: Lkotlin/UByte; != B" for mixed Java/Kotlin code
  • KT-76805 Wrong NPE occurs when assigning synthetic properties with platform types in Kotlin 2.1.20
  • KT-76253 K2 Compiler: Less precise diagnostic COMPONENT_FUNCTION_AMBIGUITY for flexible type
  • KT-76583 CCE: suspend lambda attempts to unbox value class parameter twice after lambda suspended
  • KT-59526 Store annotation default values in metadata on JVM
  • KT-63850 K2: setter with an annotated parameter has isNotDefault == false flag in metadata
  • KT-75712 -Wextra: false positive UNUSED_LAMBDA_EXPRESSION on functional type variable assignment with inferred type
  • KT-69624 Debugger: Missing local variable in Variables view (inline function)
  • KT-75992 Xcode 16.3: stacktraces on simulators are not symbolicated
  • KT-76199 Introduce -Xcontext-sensitive-resolution compiler flag
  • KT-75553 MISSING_DEPENDENCY_SUPERCLASS and MISSING_DEPENDENCY_SUPERCLASS_WARNING is reported at the same time on the same element
  • KT-76159 Obsolete error "'@JvmDefaultWithCompatibility' annotation is only allowed on interfaces" should be removed
  • KT-76660 False negative RETURN_NOT_ALLOWED in lambda in default argument leads to NoClassDefFoundError: $$$$$NON_LOCAL_RETURN$$$$$
  • KT-76301 Fail to infer types after syntactical change
  • KT-74999 K2: KotlinNothingValueException within Extension Function
  • KT-76675 KIAEWA exception at KaFirDataFlowProvider with non-local return from nested inline call
  • KT-75756 Backend Internal error: Exception during IR lowering when trying to access variable from providedProperties in class within kotlin custom script
  • KT-76171 "KotlinIllegalArgumentExceptionWithAttachments: Expected expression 'FirSingleExpressionBlock' to be resolved"
  • KT-76345 Enhance variable fixation
  • KT-76578 [FIR, K1/K2 Regression] lateinit is allowed on loop parameters
  • KT-76448 FirOverrideChecker: class ClsMethodImpl is not a subtype of class KtNamedDeclaration for factory VIRTUAL_MEMBER_HIDDEN
  • KT-73360 Migrate K/JVM sources to new IR parameter API
  • KT-76606 Enable 'Indy: Allow lambdas with annotations' by default
  • KT-74852 Kotlin/Native: allow caches for thread state checker and sanitizers
  • KT-76130 IR evaluator does not support array literals in annotation parameter default values
  • KT-76436 Missing K2 checker: non-local return through lambda passed to inline f/o
  • KT-74326 False negative: no variable must be initialized ...
Read more

Kotlin 2.1.21-RC

17 Apr 08:24
Compare
Choose a tag to compare
Kotlin 2.1.21-RC Pre-release
Pre-release

Changelog

Backend. Native. Debug

  • KT-75991 Xcode 16.3: Fix lldb stepping test over an inline function

Compiler

  • KT-75992 Xcode 16.3: stacktraces on simulators are not symbolicated
  • KT-76663 KJS: KotlinNothingValueException caused by expression return since 2.1.20
  • KT-75756 Backend Internal error: Exception during IR lowering when trying to access variable from providedProperties in class within kotlin custom script
  • KT-76209 CONFLICTING_UPPER_BOUNDS on Nothing bound
  • KT-70352 K2: False-negative CONFLICTING_UPPER_BOUNDS on Nothing bound
  • KT-74739 Native: "IllegalArgumentException: All constructors should've been lowered: FUNCTION_REFERENCE"
  • KT-75483 Native: redundant unboxing generated with smart cast
  • KT-71425 IR Inliner: investigate return type of an inlined block

Compose compiler

  • b/408013789 Add missing return for the default function wrappers
  • b/405541364 Realize coalescable children in the body of key call
  • b/401484249 Generate a group around Array constructor call
  • b/400380396 Fix missing endMovableGroup call with early return in key function

Native

  • KT-76252 Native: executable crash with generic value classes with 2.1.20

Native. C and ObjC Import

  • KT-75781 Xcode 16.3: Fix cinterop tests failing with fatal error: could not build module '_stdint'

Native. Runtime. Memory

  • KT-74280 Native: GC.collect crashes with -Xallocator=std

Tools. CLI

  • KT-74663 kotlinc-js CLI: not providing -ir-output-dir results in NullPointerException

Tools. Compiler Plugins

  • KT-76162 "IllegalStateException: No mapping for symbol: VALUE_PARAMETER INSTANCE_RECEIVER" after updating to 2.1.20

Tools. Gradle

  • KT-73142 Kotlin Gradle plugin: Remove usage of Gradle's internal ExecHandleBuilder
  • KT-73684 Run integration tests against Gradle 8.12
  • KT-74889 Compile against Gradle 8.13 API
  • KT-74887 Compatibility with Gradle 8.13 release
  • KT-36004 Update 'org.gradle.usage' attribute rules to support the 'JAVA_API' and 'JAVA_RUNTIME' value
  • KT-72694 Accessing Task.project during execution is being deprecated in Gradle 8.12
  • KT-74890 Run Gradle integrations test against Gradle 8.13 release
  • KT-73682 Compatibility with Gradle 8.12 release
  • KT-73968 KotlinDependencyManagement tries to mutate configuration after it was resolved
  • KT-73683 Compile against Gradle API 8.12

Tools. Gradle. JS

  • KT-74735 KGP uses Gradle internal CompositeProjectComponentArtifactMetadata
  • KT-71879 Notice of upcoming deprecation for Boolean 'is-' properties in Gradle Groovy scripts

Tools. Gradle. Multiplatform

  • KT-75808 KGP: MPP with jvm target and Gradle java-test-fixtures is broken
  • KT-75605 Dependency resolution fails in commonTest/nativeTest source sets for KMP module when depending on another project due to missing PSM
  • KT-75512 Maven-publish: ArtifactId is not correct inpom file with customized withXml

Tools. Incremental Compile

  • KT-62555 Wrong ABI fingerprint for inline function containing a lambda

Tools. Kapt

  • KT-75936 K2 KAPT: unsupported FIR element kinds in constant evaluation
  • KT-75942 K2 KAPT: underscore not allowed here

Tools. Scripts

  • KT-76424 Dependencies in main.kts not working with 2.1.20
  • KT-76296 Kotlin script compiler crashes when secondary constructor calls a function
  • KT-75589 Scripts: "IndexOutOfBoundsException in jdk.internal.util.Preconditions.outOfBounds" when trying to extend a class which uses global variable

Tools. Wasm

  • KT-76161 Wasm: "export startUnitTests was not found" after updating to Kotlin 2.1.20
0