HabitBuilder icon indicating copy to clipboard operation
HabitBuilder copied to clipboard

Update kotlin

Open renovate[bot] opened this issue 8 months ago • 0 comments

Mend Renovate

This PR contains the following updates:

Package Change Age Adoption Passing Confidence
org.jetbrains.kotlinx:kotlinx-collections-immutable 0.3.6 -> 0.3.7 age adoption passing confidence
org.jetbrains.kotlinx:kotlinx-coroutines-test 1.7.3 -> 1.8.1 age adoption passing confidence
org.jetbrains.kotlinx:kotlinx-coroutines-core 1.7.3 -> 1.8.1 age adoption passing confidence
com.google.devtools.ksp (source) 1.9.10-1.0.13 -> 1.9.24-1.0.20 age adoption passing confidence
org.jetbrains.kotlin:kotlin-reflect (source) 1.9.10 -> 1.9.24 age adoption passing confidence
org.jetbrains.kotlin:kotlin-gradle-plugin (source) 1.9.10 -> 1.9.24 age adoption passing confidence

Release Notes

Kotlin/kotlinx.collections.immutable (org.jetbrains.kotlinx:kotlinx-collections-immutable)

v0.3.7

  • Upgrade Kotlin version up to 1.9.21
  • Support wasmJs and wasmWasi targets
Kotlin/kotlinx.coroutines (org.jetbrains.kotlinx:kotlinx-coroutines-test)

v1.8.1

Compare Source

  • Remove the @ExperimentalTime annotation from usages of TimeSource (#​4046). Thanks, @​hfhbd!
  • Introduce a workaround for an Android bug that caused an occasional NullPointerException when setting the StateFlow value on old Android devices (#​3820).
  • No longer use kotlin.random.Random as part of Dispatchers.Default and Dispatchers.IO initialization (#​4051).
  • Flow.timeout throws the exception with which the channel was closed (#​4071).
  • Small tweaks and documentation fixes.
Changelog relative to version 1.8.1-Beta
  • Flow.timeout throws the exception with which the channel was closed (#​4071).
  • Small documentation fixes.

v1.8.0

Compare Source

  • Implement the library for the Web Assembly (Wasm) for JavaScript (#​3713). Thanks @​igoriakovlev!
  • Major Kotlin version update: was 1.8.20, became 1.9.21.
  • On Android, ensure that Dispatchers.Main != Dispatchers.Main.immediate (#​3545, #​3963).
  • Fixed a bug that caused Flow operators that limit cancel the upstream flow to forget that they were already finished if there is another such operator upstream (#​4035, #​4038)
  • kotlinx-coroutines-debug is published with the correct Java 9 module info (#​3944).
  • kotlinx-coroutines-debug no longer requires manually setting DebugProbes.enableCoroutineCreationStackTraces to false, it's the default (#​3783).
  • kotlinx-coroutines-test: set the default timeout of runTest to 60 seconds, added the ability to configure it on the JVM with the kotlinx.coroutines.test.default_timeout=10s (#​3800).
  • kotlinx-coroutines-test: fixed a bug that could lead to not all uncaught exceptions being reported after some tests failed (#​3800).
  • delay(Duration) rounds nanoseconds up to whole milliseconds and not down (#​3920). Thanks @​kevincianfarini!
  • Dispatchers.Default and the default thread for background work are guaranteed to use the same context classloader as the object containing it them (#​3832).
  • It is guaranteed that by the time SharedFlow.collect suspends for the first time, it's registered as a subscriber for that SharedFlow (#​3885). Before, it was also true, but not documented.
  • Atomicfu version is updated to 0.23.1, and Kotlin/Native atomic transformations are enabled, reducing the footprint of coroutine-heavy code (#​3954).
  • Added a workaround for miscompilation of withLock on JS (#​3881). Thanks @​CLOVIS-AI!
  • Small tweaks and documentation fixes.
Changelog relative to version 1.8.0-RC2
  • kotlinx-coroutines-debug no longer requires manually setting DebugProbes.enableCoroutineCreationStackTraces to false, it's the default (#​3783).
  • Fixed a bug that caused Flow operators that limit cancel the upstream flow to forget that they were already finished if there is another such operator upstream (#​4035, #​4038)
  • Small documentation fixes.
google/ksp (com.google.devtools.ksp)

v1.9.24-1.0.20

Compare Source

KSP 1.0.20 for kotlin compiler version 1.9.24

v1.9.23-1.0.20

Compare Source

KSP1 issues fixed
  • performance optimization for certain workload consists of heavy Java files, including
    • Replace IdKey's impl with identityHashCode #​1804
    • Cache enclosed descriptors by name #​1808
  • Add excludedSources to the KSP extension object #​1793 thanks to @​bitspittle
KSP2 issues fixed
  • NoClassDefFoundError for LZ4Factory when trying KSP2 #​1713
  • Calling KSType.replace() with original arguments results in <ERROR TYPE> #​1807
  • Static fields in base class appear in derived classes #​1744
  • fix backing field checking for top level callables
  • support sealed inheritors lookup.
  • support type alias for getSymbolsWithAnnotation
  • support more types for reference elements

v1.9.23-1.0.19

New APIs
  • #​1708 SymbolProcessorEnvironment.kspVersion
  • #​1707 CodeGenerator.associateWithFunctions and CodeGenerator.associateWithProperties
Issues fixed in KSP2
  • #​1691 IllegalStateException: Value type not found for value
  • #​1719 The order of symbols returned from Resolver.getSymbolsWithAnnotation() is different
  • #​1718 Getting packageName of Kotlin types returns empty String
  • #​1721 KSAnnotation packageName is an empty String for a type from a different module
  • #​1722 Resolver.getDeclarationsFromPackage() returns declarations from the default package when passing in an unknown package
  • #​1717 Resolver.getJvmName() returns different results for annotation args
  • #​1725 asMemberOf() throws exception with a generic type without arguments
  • #​1728 ClassCastException when calling KSType.replace() with empty list
  • #​1713 NoClassDefFoundError for LZ4Factory when trying KSP2
  • #​1665 NoClassDefFound in ksp.useKSP2=true mode
  • #​1733 ABI incompatibility with kotlin-compiler-embeddable in 2.0.0-Beta4
  • #​1714 Generated resources are not added to KotlinCompilation inputs
  • #​1747 isCompanionObject is false for companion objects from KOTLIN_LIB
  • #​1743 Incorrect type parameter variances
  • #​1759 IllegalStateException when getting the modifiers from properties in a Java annotation declaration
Issues fixed in KSP Gradle Plugin
  • #​1712 Analysis API artifacts have the wrong common-deps dependency
  • #​1775 1.0.18 creates circular dependencies with kapt tasks
  • #​1772 Update plugin com.google.devtools.ksp to v1.9.22-1.0.18 BUILD FAILED
Known issues
  • #​1776 KSP2 has higher memory usage when the compile classpath is very large.

v1.9.22-1.0.17

Compare Source

Issues fixed
  • Annotations missing on KSTypeArgument of typealias #​1679
  • unhandled visibility: private to this #​1515
  • Resolver#getJvmCheckedException results in <ERROR TYPE> when throwing type variable. #​1460
  • Class annotation values with $ in name are null when used in Kotlin source #​1671
  • KSP 1.9.21-1.0.15 leaking memory and causing OOMs #​1653
  • KSP processing fails with Java enum #​1482
  • [KSP2] Support Package annotations #​1641

v1.9.22-1.0.16

Compare Source

This is KSP 1.0.16 for Kotlin compiler 1.9.22

v1.9.21-1.0.16

Compare Source

Issue fixed

#​1653 KSP 1.9.21-1.0.15 leaking memory and causing OOMs

v1.9.21-1.0.15

Compare Source

This is a hot fix to #​1591 where multiple KMP projects were affected.

Issues Fixed / PRs Merged

#​1591 Error: Rewrite at slice LEXICAL_SCOPE key: ANNOTATION_ENTRY old value #​1612 Filter out the -progressive compiler flag in KSP tasks #​1614 Revert back to the non-thread-local KSP compiler plugin implementation.

v1.9.20-1.0.14

Compare Source

issues fixed
  • #​1474 Unresolvable types in annotation value are incorrectly displayed as null values instead of error types.
  • #​1522 KspTaskNative is not configuration cacheable
  • #​1554 KSP Incremental Processing: Removing a file does not remove transitively generated files
  • #​1555 KSP Incremental Processing: Clean source files should have generated output cache accessible via Resolver.
  • #​1568 KSP resolves dependencies too early

v1.9.20-1.0.13

Compare Source

Bumping Kotlin to 1.9.20 for KSP 1.0.13.

JetBrains/kotlin (org.jetbrains.kotlin:kotlin-reflect)

v1.9.24: 1.9.24

Changelog
Backend. Wasm
  • KT-64890 K/Wasm compiler crash with external class and Kodein
Compiler
  • KT-65235 JDK 21 might lead to change in overloads resolution
  • KT-66768 K1: False positive UNRESOLVED_REFERENCE in super.getFirst/getLast call
Native
  • KT-67218 Native: nested classes in kx.serialization ProtoBuf produce empty array for release binary
Tools. Gradle
  • KT-67139 Build reports can be overridden
  • KT-67138 Json report is empty for incremental compilation
Tools. Gradle. Multiplatform
  • KT-67127 KMP: IDE Dependency Resolver for CInterops reports errors on linux and windows machines
  • KT-66514 Don't get output file from Cinterop task for IDE Import if host os doesn't support it
Tools. JPS
  • KT-65043 JPS dumb mode should respect maps needed for the compiler
Tools. Wasm
  • KT-67785 Kotlin/Wasm: Node.JS 22 does not need experimental-wasm-gc flag anymore
  • KT-65864 K/Wasm: update Node.js to 22.x

v1.9.23: Kotlin 1.9.23

1.9.23
Apple Ecosystem
  • KT-65542 Cinterop tasks fails if Xcode 15.3 is used
Backend. Wasm
  • KT-64486 Kotlin/Wasm/WASI exported function callback for coroutines support
Compiler
  • KT-53478 Could not load module <Error module>
  • KT-66044 JDK's new API is used over Kotlin's SDK functions
  • KT-64640 Prevent mutating SequenceCollection methods from JDK 21 be available on read-only collections
  • KT-65441 K1: Remove JDK 21 getFirst()/getLast() in (Mutable)List interfaces
  • KT-65634 K/N: data race during monolithic cache creation
  • KT-53109 CompilationErrorException generateUnboundSymbolsAsDependencies with builder inference and lambdas
  • KT-52757 Type inference for builders fails if inferred from a function
Tools. Gradle
  • KT-65792 Add JSON build report
  • KT-65091 Update compiler metrics in build reports
  • KT-62490 KGP dropping resource directories
Tools. Gradle. JS
  • KT-64119 K/JS: Migrate package manager from Yarn onto NPM
  • KT-64561 K/JS tests are not executed after upgrade to 1.9.22
Tools. Gradle. Multiplatform
  • KT-65954 commonTest dependencies affect commoMainMetadata compilation
Tools. Gradle. Native
  • KT-64573 Default value for produceUnpackedKlib was not provided

v1.9.22

JavaScript
  • KT-63719 KJS: Test results ignored for ES module kind
  • KT-63808 compileTestDevelopmentExecutableKotlinJs failed in JsIntrinsicTransformers
Native
  • KT-64139 Weird bug with while and coroutine in Kotlin Native
  • KT-63471 linkDebugTestIosX64 Failed to build cache: NoSuchFileException bitcode_deps
  • KT-63789 Native: Incremental compilation problem with compose
Tools. CLI
  • KT-64485 CLI: cache and optimize parsing of command-line arguments
Tools. Gradle
  • KT-63990 "Cannot query the value of property 'buildFlowServiceProperty' because it has no value available" with Isolated Projects
Tools. Gradle. Native
  • KT-63363 Kotlin Gradle Plugin: KotlinNativeHostSpecificMetadataArtifact breaks configuration cache, implicitly includes output file as configuration cache input
  • KT-63742 Gradle wrongly caches Kotlin/Native compiler flags
Tools. JPS
  • KT-64305 Kotlin JPS builder requests chunk rebuild with graph implementation
  • KT-64112 Avoid using IJ's JPS mappings in Kotlin JPS tests
  • KT-63799 Make plugin classpath serialization path agnostic

v1.9.21

Compiler
  • KT-62885 Introduce a language feature entry for expect actual classes for easier configuration of MPP projects
  • KT-63081 Optimize new native caches: CachedLibraries.computeVersionedCacheDirectory()
Docs & Examples
  • KT-55619 Document String.format function
IDE. Gradle Integration
  • KT-62877 Artifact files collecting for project configuration was finished. Resolution for configuration configuration X will be skipped
IDE. Gradle. Script
  • KT-60813 Scripts: NoSuchMethodError: 'void org.slf4j.Logger.error(java.lang.String, java.lang.Object)' when dependency uses Slf4j API
JavaScript
  • KT-60785 KJS: Destructured value class in suspend function fails with Uncaught TypeError: can't convert to primitive type error
  • KT-63207 KMP / JS: "TypeError: <mangled_name> is not a function" with 1.9.20
  • KT-62778 package.json "main" field has .js extension when the result files have .mjs extension
  • KT-61795 KJS: Incremental Cache is not invalidated if useEsClasses compiler argument was changed
  • KT-61957 KJS: "Uncaught ReferenceError: entries is not defined" caused by enum class with @JsExport and Enum.entries call
  • KT-62444 KJS with commonJS modules should re-export in 1.9.20
  • KT-63184 KJS / Serialization: JsExport on serializable interface creates erroneous TypeScript
  • KT-62190 KJS: "IllegalStateException: Expect to have either super call or partial linkage stub inside constructor" caused by Compose and useEsModules()
  • KT-58685 KJS: "IllegalStateException: Not locked" cused by "unlock" called twice
Klibs
  • KT-62515 Interop klib of concurrent version is not accepted when building dependent project: "The library versions don't match"
Tools. CLI
  • KT-63139 Incorrect kotlin implementation version (1.9.255-SNAPSHOT) in metadata info
Tools. Gradle
  • KT-63499 Gradle: Source sets conventions are still registered
Tools. Gradle. JS
  • KT-59523 MPP / KJS: ESM modules uses incorrect file extension on package.json (.mjs)
Tools. Gradle. Kapt
  • KT-63366 Kapt processing fails with custom source sets
Tools. Gradle. Multiplatform
  • KT-32608 Create JUnit-XML result file in multiplatform gradle build
  • KT-63315 Wasm gradle plugin DSL is invalid for parameterless wasmWasi method
  • KT-63338 [KMP] metadata task fails to find cinterop classes from dependency projects
  • KT-63044 KGP: Multiplatform - 8.4 configuration cache support
  • KT-63011 Apple Framework Artifacts is not connected to KotlinNativeTask
  • KT-62601 AS/IntelliJ exception after updating a KMP project with a macos target to Kotlin 1.9.20-RC
Tools. Incremental Compile
  • KT-61590 K2/KMP: Expect actual matching is breaking on the incremental compilation
Tools. JPS
  • KT-63594 ClassCastException in JPS statistics
  • KT-63651 Fix NPE in Kotlin JPS after enabling graph implementation of JPS
Tools. Kapt
  • KT-57389 KAPT3 uses a Javac API for JCImport which will break in JDK 21
  • KT-60507 Kapt: "IllegalAccessError: superclass access check failed" using java 21 toolchain
Tools. Scripts
  • KT-54819 Scripts: Not able to use slf4j in .main.kts
  • KT-61727 Scripts: Maven artifacts resolution is slow

v1.9.20

Analysis. API
New Features
  • KT-58834 Analysis API: Add source shadowing feature to resolve extensions
Performance Improvements
  • KT-57515 LL FIR: Performance bottleneck in CompositeModificationTracker.getModificationCount
  • KT-59266 K2: optimize FirElementBuilder.getOrBuildFir for elements outside body
  • KT-59454 K2: drop resolve from org.jetbrains.kotlin.analysis.api.fir.components.KtFirVisibilityChecker#collectContainingDeclarations
  • KT-59453 K2: completion regression from org.jetbrains.kotlin.analysis.api.fir.components.KtFirVisibilityChecker#collectContainingDeclarations
  • KT-59189 Analysis API: KtFirKDocReference.resolveToSymbols is slow
  • KT-58125 K2: LL FIR: KtToFirMapping.getElement is slow for KtUserTypes due to on-air resolution of types
Fixes
  • KT-59240 K2: FirLazyResolveContractViolationException: lazyResolveToPhase(IMPORTS) cannot be called from a transformer with a phase IMPORTS from superTypes
  • KT-58499 K2: FirLazyBlock should be calculated before accessing
  • KT-57966 K2: Analysis API: Reference Shortener does not work correctly when called on entire file
  • KT-60954 K2: Analysis API: Reference shortener does not work correctly with variable assignments
  • KT-60940 K2: Analysis API: Reference shortener incorrectly handles types in vararg parameters declarations
  • KT-60488 Analysis API: forbid providing custom KtLifetimeToken for every analyze call
  • KT-60728 K2: proper support for scripts in LL FIR transformers
  • KT-59159 K2 IDE: declaration is not found exception
  • KT-59297 K2: exception from body resolve leads to corrupted state and broken analysis
  • KT-59077 KtFirExpressionTypeProvider behaviour for KtSimpleNameReferences in function calls
  • KT-60586 K2: forbid analyze from write action
  • KT-57743 K2 IDE: StackOverflowError from LLFirSessionCache for simple JPS project with cyclic dependencies
  • KT-61026 K2 Scripts: FirLazyExpression should be calculated before accessing from on-air resolve
  • KT-61009 K2 Scripts: KtFirExpressionTypeProvider: Expected FirResolvedTypeRef with ConeKotlinType but was FirImplicitTypeRefImplWithoutSource
  • KT-60357 K2 IDE. Reified types parameters are not resolved in a function body
  • KT-60317 K2 IDE. IAE "This method will only work on compiled declarations, but this declaration is not compiled" on invoking Find Usages for enum method in library
  • KT-60706 K2 IDE: FirJvmTypeMapper is not found for kotlin.kotlin-stdlib-common
  • KT-60552 K2: merge StateKeeper and lazy body calculator for ANNOTATIONS_ARGUMENTS_MAPPING transformer
  • KT-60641 Analysis API: Scope for class org.jetbrains.kotlin.fir.types.impl.ConeClassLikeTypeImpl not found exception when stdlib is missing
  • KT-60638 K2: Expected FirResolvedTypeRef with ConeKotlinType but was FirImplicitTypeRefImplWithoutSource
  • KT-54846 Analysis API: add isExpect/isActual to KtSymbol
  • KT-60448 FirLazyResolveContractViolationException: lazyResolveToPhase(COMPILER_REQUIRED_ANNOTATIONS) cannot be called from a transformer with a phase COMPILER_REQUIRED_ANNOTATIONS from AllOpen plugin
  • KT-59342 K2 IDE. FirLazyResolveContractViolationException: lazyResolveToPhase(TYPES) cannot be called from a transformer with a phase TYPES
  • KT-59687 K2: Implement proper body update for in-block modifications
  • KT-59329 Resolve Extensions reference resolution breaks Find Usages
  • KT-60295 K2: move checkIsResolved for annotations from LLFirAnnotationArgumentsLazyResolver to LLFirTypeLazyResolver
  • KT-59758 K2: Expected is FirResolvedTypeRef, but was FirImplicitTypeRefImplWithoutSource from ReturnTypeCalculatorWithJump
  • KT-60377 K2 IDE: This method will only work on compiled declarations, but this declaration is not compiled
  • KT-59685 K2: rewrite on-air resolution
  • KT-60132 K2: properties and functions without a name should be re-analyzable as well
  • KT-59199 K2 IDE: PSI changes which do not cause OOB modifications can be unseen from the FIR elements
  • KT-59667 Analysis API: PsiInvalidElementAccessException from JavaClassifierTypeImpl.substitutor
  • KT-59705 KotlinExceptionWithAttachments: No fir element was found for getter
  • KT-59697 AA standalone: JRT module paths are not properly populated in Windows
  • KT-59505 K2: implicit type lazy resolution doesn't work for delegated declaration from other module
  • KT-56426 K2 IDE: Typealised functional types cannot be rendered
  • KT-59598 AA: stackoverflow while simplifying a type with a recursive type parameter
  • KT-58497 K2: Expected FirResolvedTypeRef for initializer type of FirPropertyImpl(Source) but FirImplicitTypeRefImplWithoutSource found
  • KT-59511 AA standalone mode creates Application Environment for tests
  • KT-58161 Analysis API: Make methods in KtCallResolverMixIn more distinctive based on their receiver/return type
  • KT-59093 Do not throw exception on KtCall resolution, KtCallElement.resolveCall should return null on unknown cases
  • KT-59243 K2: FirLazyResolveContractViolationException: lazyResolveToPhase(IMPORTS) cannot be called from a transformer with a phase IMPORTS from permits types
  • KT-58194 K2: Low Level API: use smart pointers to store references to PSI from FIR declarations for JavaElement
  • KT-59133 K2: java.lang.IllegalStateException: Fir is not initialized for FirRegularClassSymbol
  • KT-58174 K2: LL FIR: Invalid type reference for T & Any type
  • KT-52615 LL FIR: build RAW FIR only by stubs
  • KT-55053 K2: Exception "lateinit property diagnostic has not been initialized" in FirBuilder
  • KT-58580 K2: LL FIR: Declarations provided by resolve extensions from a dependency module are not visible through LLFirCombinedKotlinSymbolProvider
  • KT-58992 Analysis API: move org.jetbrains.kotlin.analysis.api.fir.utils.addImportToFile out of Analysis API
  • KT-58727 K2: AA FIR: implicit type in delegated function treated as error
  • KT-58653 K2: Analysis API: add functions for KtScope members access by name
  • KT-57559 K2 IDE: KotlinExceptionWithAttachments: Modules are inconsistent on intellij project
  • KT-58262 Analysis API: Declarations from Analysis API Resolve Extensions are not seen from completion
  • KT-57455 LL FIR: Combine AbstractFirDeserializedSymbolProviders in session dependencies (optimization)
  • KT-57207 LL FIR: Combine JavaSymbolProviders in session dependencies (optimization)
  • KT-58546 K2: LL FIR: support name collision in a designation path
  • KT-58495 K2: Lazy calculation is redundant
  • KT-58500 K2: null cannot be cast to non-null type org.jetbrains.kotlin.fir.FirPureAbstractElement
  • KT-58493 K2: Expected FirResolvedTypeRef for default value type of FirValueParameterImpl(Source) but FirUserTypeRefImpl found
  • KT-58496 K2: Expected FirNamedReference, FirErrorNamedReference or FirFromMissingDependenciesNamedReference, but FirExplicitSuperReference found
  • KT-58491 K2: Expected FirResolvedTypeRef or FirImplicitTypeRef for return type of FirDefaultPropertyBackingField(Synthetic) but FirUserTypeRefImpl found
  • KT-56550 LL FIR: implement parallel resolve for non-jumping phases
  • KT-58503 Analysis API: KtFirNamedClassOrObjectSymbol.visibility/modality do not trigger STATUS resolve
  • KT-57623 K2 IDE: ConcurrentModificationException from getSuperConeTypes
  • KT-58083 K2: LL FIR: implement FakeOverrideTypeCalculator
Android
  • KT-27170 Android lint tasks fails in Gradle with MPP dependency
Backend. Native. Debug
  • KT-61131 Virtual functions trampolines have invalid debug info
Backend. Wasm
Fixes
  • KT-60244 K/Wasm: make the compiler compatible with Wasm GC phase 4 (Final) specification
  • KT-61262 K/Wasm: add a way to turn on k2 in wasm examples that don't use compose
  • KT-61343 K/Wasm: add a wasi example to kotlin-wasm-examples
  • KT-62147 [Kotlin/Wasm] Nothing typed when expression cause a backend error
  • KT-59720 K/Wasm: update to final opcodes
  • KT-60834 K/Wasm: investigate consequences of stopping using br_on_cast_fail
  • KT-59294 WASM: localStorage Cannot read properties of undefined (reading 'length')
  • KT-60835 K/Wasm: fix compatibility with Node.js 20.*
  • KT-60113 K/Wasm: illegal cast when using 1.9.20-dev
  • KT-60496 Compose-web Wasm crashes on remember { null } calls
  • KT-58746 K/Wasm: Make Arrays' constructors with size and lambda inline (similar to other implementations)
  • KT-58993 [K/Wasm] Fix w3c declarations with lambda parameters
  • KT-59722 K/Wasm: Support new encoding with flags for br_on_cast and br_on_cast_fail instructions
  • KT-59713 K/Wasm: Implement enumEntries intrinsic
  • KT-59082 WASM: NullPointerException caused by companion with String type constants
  • KT-58941 WASM Hang with extension delegate inside a Class
  • KT-60200 K/Wasm: generate types without supertypes properly
  • KT-52178 IR dump doesn't seem to work for Kotlin/WASM phases
  • KT-59556 Wasm: critical dependency when using with webpack
  • KT-58681 K/Wasm: division remainder has a wrong sign
  • KT-56711 Wasm: IllegalStateException caused by dynamic type
Compiler
New Features
  • KT-58551 KMP: check all annotation from expect declaration are present on actual
  • KT-58554 KMP: restrict expect opt-in annotations and actual typealiases to annotations with special meaning
  • KT-58545 KMP: prohibit implicit actualization via Java
  • KT-58536 KMP: prohibit expect tailrec / expect external
  • KT-59764 Make a frontend checker that reports cast to forward declaration as unchecked
  • KT-60528 Updates for JVM/IR backend of kotlin-atomicfu-compiler-plugin
  • KT-59558 Add support for creating annotation instances with type parameters
  • KT-52367 Devirtualization algorithm improvement
  • KT-58652 Native: Implement frontend checkers for HiddenFromObjC on classes
Performance Improvements
  • KT-59600 K2: CFG: do not add edges to nested classes and functions
  • KT-57860 K/N: Functions with default arguments of value/inline class types have poor performance due to value class boxing
Fixes
  • KT-60387 K2: IDE K2: "org.jetbrains.kotlin.fir.expressions.impl.FirArgumentListImpl cannot be cast to class org.jetbrains.kotlin.fir.expressions.impl.FirResolvedArgumentList"
  • KT-61228 False positive MUST_BE_INITIALIZED_OR_FINAL_OR_ABSTRACT_WARNING for effectively final properties
  • KT-61643 "Argument type mismatch" for mixed Java/Kotlin Project with Java 21
  • KT-62389 JDK 21: Cannot access class 'TimeUnit'. Check your module classpath for missing or conflicting dependencies
  • KT-56768 K2. No error description on incomplete try catch declaration
  • KT-52220 FIR + LightTree - Consider building a single tree on parsing into LightTree
  • KT-60601 K2 / Maven: Overload resolution ambiguity between candidates inline method
  • KT-62027 "java.lang.IndexOutOfBoundsException: Empty list doesn't contain element at index 0" caused by ClassicExpectActualMatchingContext.kt when annotation @AllowDifferentMembersInActual used
  • KT-62747 Wrong warning message when overriding vararg with Array during actualization
  • KT-62655 Don't report a warning when new members and new supertypes are added to open expect actualization
  • KT-62313 Kotlin/Native Compiler crash: ClassCastException in IntrinsicGenerator
  • KT-60902 visibility vs upper bound expect actual matching conflict
  • KT-61095 K2: "IAE: source must not be null" from FirMultipleDefaultsInheritedFromSupertypesChecker
  • KT-47567 'Val cannot be reassigned' error not reported in unreachable code
  • KT-59468 K2: build realm-kotlin
  • KT-62026 KMP: Correctly handle a case when annotation on expect declaration is unresolved
  • KT-59476 K2: build ClashForAndroid
  • KT-59487 K2: build KSP-playground
  • KT-47409 K1/K2: Investigate and align inference for equality (==) operator
  • KT-59393 K2: Missing TYPE_ARGUMENTS_FOR_OUTER_CLASS_WHEN_NESTED_REFERENCED
  • KT-62127 "NoSuchFieldError: TRUE$delegate" on referencing companion's variable in submodule
  • KT-62335 Improve debuggability of code generator crashes
  • KT-61165 More than one overridden descriptor declares a default value for 'cause: Throwable?'. As the compiler can not make sure these values agree, this is not allowed
  • KT-62263 Turn "different expect/actual members" error into a warning
  • KT-59969 K2: Disappeared UNSUPPORTED_CONTEXTUAL_DECLARATION_CALL
  • KT-61616 K2: IrBuiltIns.extensionToString fails during native compilation
  • KT-59377 K2: Missing CALL_TO_JS_MODULE_WITHOUT_MODULE_SYSTEM
  • KT-61645 K2/KMP: Set stdlib-native before stdlib-commonMain in dependencies for shared native metadata compilation
  • KT-61924 Native: problem with abstract fake override from Any
  • KT-61933 K2: "Argument type mismatch: actual type is 'Foo<kotlin/Function0<kotlin/Unit>>' but 'Foo<kotlin/coroutines/SuspendFunction0<kotlin/Unit>>' was expected"
  • KT-59471 K2: build multiplatform-settings
  • KT-56077 K2: build kotlinx.atomicfu
  • KT-59465 K2: build kotlinx-datetime
  • KT-60824 K2 IDE: FirSyntheticCallGenerator: IAE: List has more than one element
  • KT-61856 K2: "KotlinIllegalArgumentExceptionWithAttachments" on usage of javax.validation.constraints.Email.List
  • KT-54792 Store program order of properties inside @kotlin.Metadata
  • KT-56083 K2: build ktor
  • KT-23861 Expect annotation should not be applicable wider than the actual one
  • KT-59466 K2: build kotlinx-benchmark
  • KT-60830 KMP, K2: expect actual annotation IR checker doesn't unwrap actual typealiases to annotations
  • KT-61668 Put expect/actual diagnostics introduced in 1.9.20 release under 1.9 Language Version
  • KT-61725 KMP: Annotation matching requirement for expect/actual leads to errors for annotations with @OptionalExpectation
  • KT-47892 False negative BREAK_OR_CONTINUE_OUTSIDE_A_LOOP with continue in init block inside for
  • KT-61784 KMP: [DEFAULT_ARGUMENTS_IN_EXPECT_WITH_ACTUAL_TYPEALIAS] checker missed for companion functions
  • KT-61173 K2: FirProperty.hasBackingField is true for an expect val
  • KT-59743 K2: erroneous binding of typealias with two type parameters to a class with one type parameter
  • KT-60650 KMP: prohibit problematic actual typealiases
  • KT-61461 K2: Kotlin native metadata compilation breaks when stdlib is present in -libraries
  • KT-61270 Enabling Kotlin/Native caching causes 65K warnings from dsymutil when building Compose iOS app
  • KT-58229 K2/MPP/JVM: compiler codegen crash on call of inherited generic class's method with actual-typealias as value parameter
  • KT-47702 Support call of Java annotation constructor without specifying a default value
  • KT-56460 K2: Do not re-run DiagnosticCollectorVisitor from FirInlineDeclarationChecker.checkChildrenWithCustomVisitor
  • KT-55933 K2: False negative Overload resolution ambiguity for call functions with named parameters if one of params is vararg
  • KT-59548 FIR2IR: inconsistent generation of dispatch receiver for object methods
  • KT-55072 K2: False positive "suspension point is inside a critical section"
  • KT-58778 JVM IR inline: add fake variables for debugger
  • KT-59404 K2: Missing EXPECT_TYPE_IN_WHEN_WITHOUT_ELSE
  • KT-59830 K2. False negative [FINAL_SUPERTYPE] on extending final class through type alias
  • KT-60580 K2: Not supported: class org.jetbrains.kotlin.fir.types.ConeFlexibleType
  • KT-59391 K2: Missing JS_BUILTIN_NAME_CLASH
  • KT-59392 K2: Missing NAME_CONTAINS_ILLEGAL_CHARS
  • KT-58360 Intrinsics for atomic update of array elements
  • KT-59165 K2: Prohibit class literals with empty left-hand side
  • KT-60427 K2 @Metadata annotations contain outerType/outerTypeId information for non-inner nested classes
  • KT-59376 K2: Missing TYPECHECKER_HAS_RUN_INTO_RECURSIVE_PROBLEM_ERROR
  • KT-55221 K2: No error reported for self-referencing local function with inferred return type
  • KT-59586 K2: support JVM backend diagnostics in light tree mode
  • KT-57780 K2: Calling a constructor through a deprecated typealias doesn't report a deprecation
  • KT-59110 K2. "NotImplementedError: An operation is not implemented." error on incorrect @Target annotation
  • KT-59249 K2: Empty varargs are not serialized to KLIB
  • KT-55373 K2. Unresolved reference error for type mismatch with callable references
  • KT-55955 K2: callable references are not properly resolved when in conflict with expected type
  • KT-60144 JVM IR inline: backport primitive boxing in class literals
  • KT-60779 K2: missing INTERFACE_CANT_CALL_DEFAULT_METHOD_VIA_SUPER
  • KT-60587 K2: Implement warning NO_REFLECTION_IN_CLASS_PATH
  • KT-61145 False negative NOTHING_TO_OVERRIDE when context receivers don't match
  • KT-59378 K2: Missing FINITE_BOUNDS_VIOLATION and FINITE_BOUNDS_VIOLATION_IN_JAVA
  • KT-61163 Default params on actual check and inheritance by delegation compilation error
  • KT-60800 [atomicfu-K/N]: turn on the tests for the K/N part of the compiler plugin
  • KT-61029 K2: Duplicates when processing direct overridden callables
  • KT-55196 K2: False-negative CONST_VAL_WITH_NON_CONST_INITIALIZER on boolean .not() call
  • KT-60862 Kotlin Scripting: NoSuchMethodError for ExternalDependenciesResolver.addRepository
  • KT-57963 K2: MPP: Annotation calls should be actualized
  • KT-60854 K2: IrActualizer incorrectly generates fake overrides for synthetic java properties
  • KT-59665 ACTUAL_FUNCTION_WITH_DEFAULT_ARGUMENTS isn't reported for actual typealias and fake-override actualization
  • KT-61039 False positive ABSTRACT_MEMBER_NOT_IMPLEMENTED in K1 when expect actual super types scopes don't match
  • KT-61166 Inherited platform declaration clash & accidental override
  • KT-60531 K2/JS: Report diagnostics before running FIR2IR
  • KT-32275 Embedding kotlin-compiler-embeddable into a Java EE App leads to CDI related deployment error
  • KT-57845 K2. Unresolved reference error on calling Java references with fully qualified name
  • KT-58757 K2: False-positive NON_PUBLIC_CALL_FROM_PUBLIC_INLINE error in case an inline fun is protected and is a part of an internal abstract class declaration
  • KT-59736 kotlinx.serialization + K2 + JS: e: java.lang.IllegalStateException: Symbol for kotlinx.serialization.json.internal/FormatLanguage.|-547215418288530576[1] is unbound
  • KT-59071 K2/MPP: internal declarations from common module are invisible in dependent source sets if there is more that one intermediate source set between
  • KT-61167 Runtime failure: ReferenceError: MyPromise is not defined
  • KT-59408 K2: Missing MULTIPLE_DEFAULTS_INHERITED_FROM_SUPERTYPES
  • KT-61409 Kotlin/Native: crash in kmm-production-sample (compose-app) with escape analysis enabled
  • KT-57329 K/N IR linkage issues due to the combination of static caches w/ Lazy IR & Compose compiler plugin
  • KT-59247 Kapt+JVM_IR: AssertionError on anonymous object in enum super constructor call
  • KT-58576 K2: IR actualization problems in MPP scenario
  • KT-61442 K2: Consider stricter filtering on implicit integer coercion
  • KT-61441 K2: Wrong overload is chosen with Implicit

Configuration

📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

👻 Immortal: This PR will be recreated if closed unmerged. Get config help if that's undesired.


  • [ ] If you want to rebase/retry this PR, check this box

This PR has been generated by Mend Renovate. View repository job log here.

renovate[bot] avatar Oct 30 '23 22:10 renovate[bot]