Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update dependency org.jetbrains.kotlin.multiplatform to v2 #373

Merged
merged 3 commits into from
May 31, 2024

Conversation

juul-mobile-bot
Copy link
Contributor

@juul-mobile-bot juul-mobile-bot commented May 24, 2024

This PR contains the following updates:

Package Type Update Change
org.jetbrains.kotlin.multiplatform (source) plugin major 1.9.24 -> 2.0.0

Release Notes

JetBrains/kotlin (org.jetbrains.kotlin.multiplatform)

v2.0.0

Analysis. API
New Features
  • KT-65327 Support reading klib contents in Analysis API
Performance Improvements
  • KT-65560 K2: Anaysis API: ContextCollector triggers redundant resolution in the case of file elements
  • KT-64987 Analysis API: 50GB memory allocation on creating empty kotlinx.collections.immutable.persistentMapOf
  • KT-61789 K2: optimize getFirForNonKtFileElement for references inside super type reference
  • KT-59498 K2: getOnAirGetTowerContextProvider took too much time due to on air resolve
  • KT-61728 Analysis API: optimize AllCandidatesResolver.getAllCandidates
Fixes
  • KT-65561 Analysis API: dummy.kt is not a physical file
  • KT-65616 K2: FirDeclarationStatusImpl cannot be cast to FirResolvedDeclarationStatus from STATUS
  • KT-65600 Analysis Api: FirFile for KtCodeFragments are created and not updated on changes
  • KT-64919 K2 IDE: Implement KMP support for sealed class inheritors
  • KT-64241 K2: Unresolved calls to functions in scripts depending on included projects
  • KT-65813 Analysis API Standalone: FirDeclarationForCompiledElementSearcher does not find compiled elements
  • KT-66052 AA: render expect/actual modifier
  • KT-66795 KtCodeFragment.clone() is broken
  • KT-66532 K2 CodeGen AA: missing annotation setup for function in source module but not in a compile target file
  • KT-64833 Analysis API: Members implemented by delegation have no overridden symbols
  • KT-62405 Analysis API: Symbols SUBSTITUTION_OVERRIDE have no overridden symbols
  • KT-66749 K2: "Collection contains no element matching the predicate" on an unresolved call
  • KT-62832 K2: ClassCastException: FirDeclarationStatusImpl cannot be cast to FirResolvedDeclarationStatus
  • KT-66719 AbstractGetKlibSourceFileNameTest: The dependency to ":native:analysis-api-klib-reader" breaks JPS compilation
  • KT-66603 Analysis API: support type annotations in KtPsiTypeProviderMixIn#asPsiType
  • KT-64505 Analysis API Standalone: Remove test-specific calculation of sealed class inheritors
  • KT-66013 Analysis API Standalone: Sealed inheritors aren't correctly calculated for source classes
  • KT-62880 K2 IDE: Unresolved java annotation methods in KDoc
  • KT-66530 K2: Analysis API: KtPsiTypeProvider#asKtType crashes on PsiClassType for Java type parameter with wrong use site
  • KT-65571 Support VirtualFile inputs to Analysis API modules
  • KT-66485 Substituted types are not provided for callable references
  • KT-66498 Analysis API: 'KtFe10SymbolDeclarationOverridesProvider' considers a class to be a subclass of itself
  • KT-64579 K2 IDE: "Expected FirResolvedArgumentList for FirAnnotationCallImpl of FirValueParameterImpl(Source) but FirArgumentListImpl found"
  • KT-65978 Analysis API: Use soft references in FileStructureCache
  • KT-64051 K2 IDE: Analysis API: Unresolved links to typealias in KDoc
  • KT-66189 K2 / IDE: KtFirExpressionTypeProvider bugs
  • KT-61422 K2 IDE: "No array element type for vararg value parameter: org.jetbrains.kotlin.fir.declarations.impl.FirValueParameterImpl"
  • KT-66276 K2: Analysis API: TYPECHECKER_HAS_RUN_INTO_RECURSIVE_PROBLEM false positive for script parameter
  • KT-66232 K2: Analysis API: cover ScriptWithCustomDefDiagnosticsTestBaseGenerated by LL FIR tests
  • KT-60996 K2: Stub Based Deserializer: Set versionRequirements to enable VERSION_REQUIREMENT_DEPRECATION diagnostics
  • KT-66306 K2: Analysis API: drop ability to enable global phase resolve lock
  • KT-55750 LL FIR: Implement multi-threaded resolve
  • KT-65563 Analysis API: Missing session component FirExpectActualMatchingContextFactory in LLFirLibrarySession
  • KT-66173 K2: No 'org.jetbrains.kotlin.fir.scopes.impl.FirDelegatedMembersFilter' in array owner: LLFirLibrarySession
  • KT-66238 Gradle kotlin build scripts - a lot of unresolved symbols after latest changes in kotlin master
  • KT-65099 K2: Recursive local storage cache check for Fir2IrDeclarationStorage::createAndCacheIrPropertySymbols()
  • KT-65265 Analysis API: Add library session invalidation tests
  • KT-56288 Analysis API: Add tests for session invalidation on the Analysis API side
  • KT-64000 K2: make AnnotationArgumentsStateKeepers more accurate
  • KT-63606 K2: Analysis API: rewrite FirLazyAnnotationTransformer to avoid redundant transformations
  • KT-65191 KtFirMultiplatformInfoProvider#getExpectForActual doesn't return expect function for slightly broken code
  • KT-62136 Analysis API: Add concurrent tests for CleanableSoftValueCache
  • KT-61222 K2: Add lifecycle management for KtResolveExtension
  • KT-65960 Analysis API: Test infrastructure indexes binary libraries from decompiled files instead of stubs during IDE mode tests
  • KT-65240 K2: CodeGen API fails to resolve Annotation parameter type when it runs FIR2IR for a class with a parent class from other module if the parent class has an annotation from another module
  • KT-65344 K2: make FirScript statements (declarations) independent
  • KT-65930 AA: receiver type for Int?::foo misses nullability
  • KT-65914 AA: receiver type for this::foo returns return type of the target callable
  • KT-62071 Analysis API: KtFirScopeProvider.getScopeContextForPosition throws exception when ImplicitReceiverValue.implicitScope is null
  • KT-65780 K2: polish FileStructure implementation for FirFile
  • KT-62840 K2 Script: everything around destructuring declaration on top level of scripts are broken
  • KT-64528 K2 IDE: MPP: unregistered component 'org.jetbrains.kotlin.fir.scopes.impl.FirDelegatedMembersFilter'
  • KT-64921 K2 IDE: references in platform code resolve to expect classifier instead of actual
  • KT-61296 K2: do not resolve the entire file on lazyResolve call if FirFile is passed
  • KT-65683 Analysis API: Dangling file session creation causes a computeIfAbsent contract violation
  • KT-64884 K2 IDE. FP [NAMED_PARAMETER_NOT_FOUND] for copy method of library data class when class has not parameter-properties
  • KT-65763 K2: value parameter from library data class copy have RAW_FIR phase
  • KT-65665 Analysis API: support KtDelegatedSuperTypeEntry in KtFirExpressionInfoProvider.isUsedAsExpression
  • KT-62899 K2 IDE. IDE ignores @Suppress annotation for errors
  • KT-65655 Analysis API: KtCodeCompilationException should not strongly reference FIR sessions
  • KT-62302 Support PsiType -> KtType conversion
  • KT-64604 K2: IDE K2: "Modules are inconsistent during performance tests"
  • KT-65345 K2: unify FirDesignation and LLFirResolveTarget
  • KT-61757 K2 IDE: resolution to buitlins does not work for from common module
  • KT-65268 K2: Checking the presence of the delegated constructor call forces AST loading
  • KT-63330 Analysis API: Stub-based deserialized symbol providers provide unresolved enum entry annotation arguments
  • KT-65418 Analysis API: LLFirAbstractSessionFactory loads anchor module sessions eagerly
  • KT-64718 Analysis API: do not expose SealedClassInheritorsProvider and FirRegularClass to IDE Plugin
  • KT-65075 K2: getContainingDeclaration() is broken for declarations inside code fragments
  • KT-61332 Support KtTypeCodeFragment in PsiRawFirBuilder
  • KT-65150 AA: incorrect result from KtTypeProvider#getReceiverTypeForDoubleColonExpression for Java static method
  • KT-56551 LL FIR: implement parallel resolve for jumping phases
  • KT-65223 Psi: avoid KtFile usages
  • KT-65307 Analysis API FE10: support KtFe10AnalysisSessionProvider.getAnalysisSessionByUseSiteKtModule
  • KT-62695 K2 IDE: Unresolved extension functions in KDoc
  • KT-65152 Analysis API: KDoc references to packages are not fully resolved
  • KT-64988 K2 IDE: Navigation from the named argument in safe call does not work
  • KT-63195 AA: incorrect results from KtTypeProvider#getReceiverTypeForDoubleColonExpression
  • KT-64074 K2: Investigate LL divergence for Script.testTopLevelPropertyInitialization
  • KT-62441 K2: IDE K2: "No dangling modifier found"
  • KT-62895 K2 IDE. FP 'when' expression must be exhaustive with sealed interface from library
  • KT-64993 Analysis API: KtExpressionTypeProvider.getExpectedType works incorrectly for arguments of safe calls
  • KT-64883 Allow direct creation of KtCommonFile
  • KT-64646 K2: properly forbid ast loading during raw fir phase in tests
  • KT-64862 Psi: missed parenthesis in type reference presentation
  • KT-62893 K2 IDE. FP 'when' expression must be exhaustive with Java sealed interface from library
  • KT-63795 K2: lazyResolveToPhase(BODY_RESOLVE) cannot be called from a transformer with a phase BODY_RESOLVE from SealedClassInheritorsProviderIdeImpl
  • KT-64805 Analysis API: introduce common entry point for multi-file test cases
  • KT-64714 K2: Analysis API: CollectionsKt.map doesn't resolves from Java in kotlin repo
  • KT-64647 K2: Allow to calculate decompiled inheritors for sealed classes in tests
  • KT-64595 AA: stackoverflow while simplifying a type with a recursive type parameter
  • KT-64825 Analysis API. Cannot compute containing PSI for unknown source kind 'org.jetbrains.kotlin.KtFakeSourceElementKind$DefaultAccessor' exception on getContainingSymbol call for default setter parameter
  • KT-64080 K2: Analysis API: On-air resolve does not trigger resolution of delegated super call arguments
  • KT-64243 K2: proper lazy resolution for fake overrides
  • KT-62891 K2 IDE. FP [EXPOSED_FUNCTION_RETURN_TYPE] on overriding library method which returns protected type
  • KT-62667 K2: Cannot find enclosing declaration for KtNameReferenceExpression (on-air, imports)
  • KT-61890 Analysis API: Migrate KtFirScopeProvider to ContextCollector instead of onAirResolve
  • KT-64197 K2: Code fragments are only supported in JVM
  • KT-62357 K2 IDE. False positive on generated component methods and false negative on getter of @JvmRecord classes in Java
  • KT-62892 K2 IDE. Java outer class from other module is not resolved when nested class is accessed with fq name in a type position
  • KT-62888 K2 IDE. IDE infers reference to KMutableProperty as reference to just KProperty
  • KT-64584 K2: StubBasedFirDeserializedSymbolProvider: support deserialization of delegated declarations
  • KT-60324 K2 IDE: "NoSuchElementException: List is empty at JavaOverrideChecker#buildErasure"
  • KT-62896 K2 IDE. FP ABSTRACT_MEMBER_NOT_IMPLEMENTED on inheriting class from library which implements interface by delegation
  • KT-62947 Analysis API: Error while resolving FirPropertyImpl
  • KT-64468 Analysis API: Implement mixed multi-module tests which support different kinds of KtModules
  • KT-56541 Symbol Light Classes: No @NotNull annotations are generated for accessors of lateinit properties of unresolved types
  • KT-63547 K2 IDE. False Positive AMBIGUOUS_ANNOTATION_ARGUMENT
  • KT-64205 Analysis API: Do not import non-top-level callables by default
  • KT-63056 K2: Cannot mutate an immutable ImplicitReceiverValue on FirCodeFragment analysis
  • KT-64108 K2: KtFirSymbolDeclarationOverridesProvider shouldn't provide fake overrides
  • KT-63752 K2: java.lang.StackOverflowError FirFieldSymbol.getHasInitializer
  • KT-63718 Analysis API: Stub-based dependency symbol providers of library source sessions compute the wrong package name sets
  • KT-64225 K2: IDE K2: "FirLazyBlock should be calculated before accessing" in evaluate debuger completion
  • KT-64186 Analysis API: ContextCollector provides incorrect scopes for anonymous objects
  • KT-63979 K2 IDE: presentation of types in completion is too verbose
  • KT-63681 K2: LL FIR: Improve isResolved check coverage of after lazy resolution
  • KT-62982 K2: Cannot get a PSI element for 'Enum.values'
  • KT-59732 FirLazyResolveContractViolationException: lazyResolveToPhase(IMPORTS) cannot be called from a transformer with a phase IMPORTS from serialisation plugin
  • KT-62676 K2 IDE: Reference shortener does not recoginize redundant this references
  • KT-63627 K2 IDE: shorten reference shortens required qualifier
  • KT-62675 K2 IDE: Reference shortener does not recoginize redundant labels
  • KT-60957 K2: Analysis API: Reference shortener does not work correctly with invoke function calls on properties
  • KT-63771 fe10: KtNamedClassOrObjectSymbol#isInline does not cover value classes
  • KT-60327 K2 IDE. "IllegalArgumentException: source must not be null" during delegation declaration
  • KT-62421 K2: IDE K2: "lazyResolveToPhase(BODY_RESOLVE) cannot be called from a transformer with a phase BODY_RESOLVE."
  • KT-62587 K2 IDE. FP unresolved reference on accessing nested class in annotation argument
  • KT-63700 K2: "FirLazyExpression should be calculated before accessing" in the case of secondary constructor
  • KT-61383 K2: 'KtCompilerFacility' fails on code fragment compilation in library sources with duplicated dependencies
  • KT-62111 K2 IDE. IllegalArgumentException on for loop with iterator declaration attempt
  • KT-63538 Analysis API: Removing a contract statement via PsiElement.delete() does not trigger an out-of-block modification
  • KT-63694 K1/K2 IDE. "RuntimeException: Broken stub format, most likely version of kotlin.FILE (kotlin.FILE) was not updated after serialization changes" exception on incorrect class name
  • KT-63660 K2: expect-actual gutter icons must be shown when declarations are matched but incompatible
  • KT-63560 Analysis API: Modifiable PSI tests cannot rely on the cached application environment to allow write access
  • KT-62980 Implement KtFirSimpleNameReference#getImportAlias
  • KT-63130 Analysis API: No receiver found for broken code during commit document
  • KT-62705 K2: "lazyResolveToPhase(IMPORTS) cannot be called..." from light classes
  • KT-60170 K2 IDE: CCE from KtFirCallResolver on invalid code with wrong implicit invoke
  • KT-61783 K2: Analyze 'KtCodeFragment' in a separate session
  • KT-62010 K2: IDE K2: "ConeClassLikeTypeImpl is not resolved to symbol for on-error type"
  • KT-62957 Analysis API: NullPointerException on call resolution when builtins are not available
  • KT-61252 K2: IDE K2: "By now the annotations argument mapping should have been resolved"
  • KT-62935 Analysis API: kotlin.Cloneable should not be available in Kotlin/Native sources
  • KT-62910 Analysis API: create AbstractFirPsiNativeDiagnosticsTest for LL FIR
  • KT-63096 K2: Analysis API: KotlinAnnotationsResolver for IDE is created with incorrect scope
  • KT-62310 K2 IDE. False positives errors with external annotations
  • KT-63282 K2 Script: annotation arguments phase should resolve propagated annotations
  • KT-62397 K2 IDE. FP Error in the editor on RequiresOptIn annotation from the lib despite the warning level
  • KT-63223 Analysis API: reference to declarations with kotlin* package are not resolved
  • KT-62626 IllegalStateException: Cannot build symbol for class org.jetbrains.kotlin.psi.KtScriptInitializer
  • KT-62693 K2: IDE K2: "PSI should present for declaration built by Kotlin code"
  • KT-62674 K2: "Scope for type ConeClassLikeTypeImpl" is null from transitive dependencies
  • KT-61889 Analysis API: Migrate KtFirReferenceShortener to ContextCollector instead of FirResolveContextCollector
  • KT-62772 Analysis API: No 'org.jetbrains.kotlin.fir.java.FirSyntheticPropertiesStorage'(31) in array owner: LLFirSourcesSession when analysing builtins in a context of common code
  • KT-60319 K2 IDE: "Stability for initialized variable always should be computable"
  • KT-62859 K2 IDE: "Evaluate expression" throws exception when calling "Any?.toString()"
  • KT-63058 K2 IDE: Code completion unexpectedly imports static/companion object method
  • KT-62588 getExpectedType should not calculate type of the expression
  • KT-61990 K2: Unexpected returnTypeRef for FirSyntheticProperty
  • KT-62625 K2: 'FirLazyExpression should be calculated before accessing' for unresolved super type
  • KT-62691 K2: optimize getFirForNonKtFileElement for references inside 'where'
  • KT-62834 K2: missing file node level in control flow builder
  • KT-62768 Analysis API: No 'org.jetbrains.kotlin.fir.scopes.impl.FirDelegatedMembersFilter'(44) in array owner: LLFirSourcesSession exception on analysing common code
  • KT-62874 K2: FirLazyExpression should be calculated before accessing
  • KT-62407 Analysis API: resolve [this] in KDoc to extension receiver
  • KT-61204 K2: "FirLazyExpression should be calculated before accessing in ktor HttpBinApplication"
  • KT-61901 Analysis API: Declared member scopes for Java classes are missing static members
  • KT-61800 Analysis API: Provide separate declared member scopes for non-static and static callables
  • KT-61255 Analysis API: Get rid of valueOf, values and entries from a declared member scope
  • KT-62466 Expected type for functional expression should include inferred types
  • KT-61203 IDE K2: "Expected FirResolvedArgumentList for FirAnnotationCallImpl of FirRegularClassImpl(Source) but FirArgumentListImpl found"
  • KT-61791 Analysis API: Implement combined getPackage for combined Kotlin symbol providers
  • KT-62437 K2 IDE. Resolution does not work inside lambda expression in constructor argument in supertypes
  • KT-62244 K2: Analysis API Standalone: Resolving klib dependencies from binary roots terminates application
  • KT-62897 K2 IDE. Unresolved declarations from libraries which are doubled in intellij project libraries
  • KT-61615 K2: No 'org.jetbrains.kotlin.fir.analysis.js.checkers.FirJsModuleKind' in array owner: LLFirSourcesSession
  • KT-59334 K2: LLFirImplicitTypesLazyResolver problems
  • KT-62038 K2: Nested classes are missing in symbol light class structure tests for libraries
  • KT-61788 Analysis API: Symbol for FirAnonymousInitializer cannot be null
  • KT-62139 Analysis API: KtFe10AnalysisSession.createContextDependentCopy does not need validity check
  • KT-62090 Analysis API: introduce an API to get a substitution formed by class inheritance
  • KT-62268 K2 IDE. No autocompletion and IllegalStateException for Pair
  • KT-60325 K2 IDE. "IllegalArgumentException: source must not be null" on throw usage attempt
  • KT-61431 K2: KtPropertyAccessorSymbolPointer pointer already disposed for $$result script property
  • KT-58490 K2: LLFirTypeLazyResolver problems
  • KT-58494 K2: LLFirAnnotationArgumentsLazyResolver problems
  • KT-58492 K2: LLFirBodyLazyResolver problems
  • KT-58769 K2: LL FIR: implement platform-dependent session factories
  • KT-60343 K2 IDE. IllegalArgumentException on passing incorrect type parameter to function
  • KT-61842 K2: reduce number of "in-block modification" events
  • KT-62012 K2: "KtReadActionConfinementLifetimeToken is inaccessible: Called outside analyse method"
  • KT-61371 K2: Analysis API standalone: register compiler symbol provider for libraries in standalone mode
  • KT-60611 K2: reduce number of "in-block modification" events
  • KT-61425 Analysis API: Provide a way to get a declared member scope for an enum entry's initializing anonymous object
  • KT-61405 Analysis API: An enum entry should not be a KtSymbolWithMembers
  • KT-55504 AA: remove dependency on :compiler:cli from standalone AA
  • KT-60904 K2: IDE K2: "For DESTRUCTURING_DECLARATION_ENTRY with text _, one of element types expected, but FirValueParameterSymbol found"
  • KT-61260 K2 Scripts: Containing function should be not null for KtParameter
  • KT-61568 FIR Analysis API: collectCallCandidates gives presence to the top level functions in the presence of more suitable overrides
  • KT-60610 K2 IDE: move "out of block" processing logic into LL FIR
  • KT-61597 Analysis API: KotlinIllegalStateExceptionWithAttachments: expected as maximum one expect for the actual on errorneous code with multiple expects
  • KT-59793 K2: class org.jetbrains.kotlin.fir.declarations.impl.FirErrorImportImpl cannot be cast to class org.jetbrains.kotlin.fir.declarations.FirResolvedImport
  • KT-61599 K2: ContextCollector: Support smart cast collection
  • KT-61689 Analysis API: ContextCollector provides incorrect context in scripts
  • KT-61683 Analysis API: resolve ambiguities in kotlin project
  • KT-61245 Analysis API: ContextCollector provides incorrect context for supertype constructor calls
  • KT-60384 K2: Opening @JvmName source in IDEA: NPE at PsiRawFirBuilder$Visitor.toFirConstructor()
  • KT-60918 K2 IDE: "FirDeclaration was not found for class org.jetbrains.kotlin.psi.KtDestructuringDeclarationEntry, fir is null"
  • KT-61013 K2 Scripts: LLFirReturnTypeCalculatorWithJump: No designation of local declaration
  • KT-59517 K2 IDE: KotlinExceptionWithAttachments: Modules are inconsistent
  • KT-61331 K2: add cache restoring in case of existing context
  • KT-61408 K2: IDE K2: "Inconsistency in the cache. Someone without context put a null value in the cache"
Analysis. Light Classes
Performance Improvements
  • KT-63486 SLC: a lot of RAM is allocated in org.jetbrains.kotlin.asJava.LightClassUtil.isMangled
Fixes
  • KT-66692 SLC: findAttributeValue for attribute w/ default value in Java returns null
  • KT-61734 SLC: wildcard suppression not honored
  • KT-65112 Symbol Light Classes don't support annotations on type parameters
  • KT-65843 K2: Light method returns kotlin.Unit type for TestResult return type
  • KT-65653 SLC: wrong binary resolution to function with value class
  • KT-65393 SLC: missing deprecated-hidden property
  • KT-64772 SLC: presence of source PSI for compiler-generated declaration
  • KT-65425 K2 IDE: Seeing a reference to the class generated by compiler plugin exposed from Java code caused NPE from light classes
  • KT-64937 SLC: internal setters are not mangled
  • KT-63949 K2 IDE. Analyze hang on @Autowired constructor analysis
  • KT-63087 K2 IDE: in .java source reference to JvmName names on unsigned type / value class are unresolved
  • KT-64605 K2 IDE: usage of @Repeatable annotation in Java: false positive "Duplicate annotation"
  • KT-64795 SLC: distinguish last v.s. non-last vararg value parameter type during binary resolution
  • KT-61605 K2 IDE: Light elements do not obey platform contracts
  • KT-57536 SLC: no need to populate members with expect modifier
  • KT-64320 Decouple kotlin psi from java PSI
  • KT-64282 Decouple KotlinIconProviderService from java PSI
  • KT-63552 Symbol Light Classes don't support arrayOf and similar without parameters in property initializers and default parameter values
Apple Ecosystem
  • KT-64096 Diagnostic when embedAndSign used for framework with cocoapods-dependencies
  • KT-63821 Copy framework to BUILT_PRODUCTS_DIR in the embedAndSign task
  • KT-67892 KotlinNativeLink task instantiates with a fixed list of apiFiles
  • KT-66446 Diagnostic never showed, and build fails when CocoaPods dependency is used with embedAndSign task and linking type is dynamic
  • KT-66445 Diagnostic never showed when CocoaPods dependency is used with embedAndSign task and linking type is static
  • KT-62373 "Xcode higher than tested" diagnostic
  • KT-63212 podInstall task fails without a proper diagnostic when xcodeproj gem is outdated
Backend. Native. Debug
  • KT-65553 K2: Native: kt42208WithPassingLambdaToAnotherFunction test fails with K2
  • KT-57365 [Native] Incorrect debug info on inline function call site
Backend. Wasm
New Features
  • KT-65009 Generate TypeScript definitions for the @JsExport declarations in K/Wasm
  • KT-58088 [PL] Support & enable partial linkage for Wasm
  • KT-66327 Include information about particular Wasm target into KLib manifest
Fixes
  • KT-66465 WASM support doesn't appear to be able to see some common declarations
  • KT-66905 K/Wasm: support new version of exception handling proposal
  • KT-66515 Wasm: "call param types must match" during the build
  • KT-67435 K/Wasm: import.meta.url transforming into absolute local path in webpack
  • KT-65777 Implement named export for Kotlin/Wasm
  • KT-65660 [WasmJs] Support catching JS exceptions
  • KT-65824 Wasm: Allow unsigned primitives to be used inside functions annotated with @JsExport
  • KT-66103 Wasm: companion object is not initialized in test initializers1.kt
  • KT-66471 Null method reference with Kotlin/Wasm on 2.0.0-Beta4
  • KT-65210 K/Wasm ::class operator produces Number KClass for Short expression
  • KT-66065 [Wasm] Make specialisations for closured primitive values
  • KT-64890 K/Wasm compiler crash with external class and Kodein
  • KT-66104 Wasm: compiler crash: NoSuchElementException: Sequence contains no element matching the predicate
  • KT-65778 Create the same TypeScript tests infrastructure for Kotlin/Wasm that we have now for Kotlin/JS
  • KT-65411 Kotlin/Wasm: Boolean boxed instances are not the same
  • KT-65713 Kotlin/Wasm generates a wrapper that cannot run in Deno
  • KT-63939 Kotlin/Wasm Support lazy associated object initialisation
  • KT-61888 [Kotlin/wasm] in kotlin.test support for @AfterTest for async tests
  • KT-64803 K/Wasm: non-capturing lambdas are not singleton unlike same lambdas in jvm
  • KT-64449 K2: Implement K1WasmWasiCodegenBoxTestGenerated for K2
  • KT-64829 K/Wasm: division remainder has a wrong sign
  • KT-58852 WASM: two methods with different varargs: Class korlibs.template.dynamic.DynamicShape has 2 methods with the same signature [register(kotlin.Array)
  • KT-61263 K/Wasm: add a way to turn on k2 in wasm examples using Compose
  • KT-62863 Execution failed for task ':kotlinx-serialization-properties:wasmJsD8Test' in serialization in the K2 QG
  • KT-62657 K/Wasm: switch to json repots for Kotlin Wasm Benchmarks
  • KT-62147 [Kotlin/Wasm] Nothing typed when expression cause a backend error
  • KT-61958 Update SpiderMonkey and return its usage in box tests when they switch to the final opcodes for GC and FTR proposals
  • KT-60828 K/Wasm: return br_on_cast_fail usages
  • KT-59084 WASM: "RuntimeError: illegal cast" caused by inline class and JsAny
  • KT-60700 [WASM] test FirWasmCodegenBoxTestGenerated.testSuspendUnitConversion failed after KT-60259
Compiler
New Features
  • KT-24664 No smartcast on stable property if receiver had non-null assertion
  • KT-45375 Generate all Kotlin lambdas via invokedynamic + LambdaMetafactory by default
  • KT-23915 Add smart cast to non-nullable type after elvis operator
  • KT-61077 Support provideDelegate inference from var property type
  • KT-59688 K2: consider removing smartcasts only from the only visibile property with specific name, not from all of them
  • KT-7389 Intersection type for type parameter with multiple upper bounds in star projection
  • KT-63477 Consider supporting builder-style type inference from Unit coercion of last statements in lambdas
  • KT-61907 K2: builder inference works with assignments to member properties
  • KT-61909 K2: builder inference infers correct types from assignments to extension properties
  • KT-59551 K2: builder inference works with anonymous functions if builder parameter has a receiver with a postponed type variable
  • KT-65443 [K/N] Implement header caches
  • KT-4113 Smart casts for properties to not-null functional types at invoke calls
  • KT-65681 K2: Improve error message of UPPER_BOUND_VIOLATED when upper bound is a captured type or other non-denotable type
  • KT-32754 Choose existing extensions over additional built-ins members from JDK except overrides
  • KT-57800 Support synthetic properties on super receiver
  • KT-64350 K2: deprecate using typealias as a callable qualifier in imports
  • KT-26565 Choose existing extensions over additional built-ins members from JDK
  • KT-65478 JVM: Change inlined variable naming format
  • KT-64702 Upper bound of type parameter is ignored when capturing of in-projection appears in out position
  • KT-60274 K2: builder inference works through a delegated local variable inside builder argument
  • KT-65859 Calls refinement extension point
  • KT-15220 Reuse resolution results of common code for platform modules in multiplatform projects
  • KT-60476 K2: False positive NO_VALUE_FOR_PARAMETER in platform code for value class with default parameter in common declaration
  • KT-65153 K/N: extract liveness analysis to a separate phase
  • KT-59098 Support -Xjdk-release=1.6/1.7 with -jvm-target 1.8
  • KT-63670 Implement platform specific declaration clash diagnostics across all backends
  • KT-62547 Introduce a language feature flag for smartcasts based on "memory" variables
  • KT-60820 K1: Empty vararg value is inserted in serialized annotation call with expect default vararg value
  • KT-58172 Forbid expect class A actual constructor
  • KT-54443 Smart cast to non-null after safe-call in require
  • KT-25747 DFA variables: propagate smart cast results from local variables
  • KT-22997 Smart-cast should merge is-check for non-nullable type and a null check to a nullable type
  • KT-22996 Smart casts should observe nullability after is-check with a nullable subject type
  • KT-22004 Allow to resolve CONFLICTING_OVERLOADS with Deprecated(HIDDEN)
  • KT-61955 Support more wider actual member visibility, if the expect member is effectively final
  • KT-59504 K2 compiler does not require resolved 'componentX' functions for the placeholder ('_') variables in the destructuring declarations
  • KT-62239 Allow enum entries without parentheses uniformly
  • KT-11712 Smart cast is not applied for invisible setter
Performance Improvements
  • KT-47545 NI: Slow type inference involving large when-expression (ConstraintInjector.processConstraints)
  • KT-62714 Do not add nullability annotations to the methods of inner classes in enum entries
  • KT-62903 Unoptimzied when compilation
  • KT-67388 FP intellij: performance degradation in build 611
  • KT-67507 K2: Slow compilation times when a class has a lot of possibly conflicting declarations
  • KT-65005 K2: Investigate testCommonSuperTypeContravariant performance
  • KT-65996 Compiler enters endless loop
  • KT-66341 K2: Don't build IdSignatures in FIR2IR with IR f/o builder
  • KT-66172 K2: Improve memory consumption of KtPsiSourceElement
  • KT-50860 Combination of array set convention and plusAssign works exponentially
  • KT-62798 'in' range checks are not intrinsified in kotlin-stdlib
  • KT-65579 K2: performance regression in FP Space
  • KT-61635 K2: getConstructorKeyword call in PsiRawFirBuilder.toFirConstructor forces AST load
  • KT-62619 FIR: Checker performance regression due to MISSING_DEPENDENCY checkers
  • KT-62044 Do not add nullability annotations to the methods of anonymous class
  • KT-62706 Optimize KtSourceElement.findChild()
  • KT-62513 Do not add nullability annotations to the methods of local classes
  • KT-61991 K2: avoid redundant full body resolution for properties during implicit type phase
  • KT-61604 [K/N] Bitcode dependency linking is slow for large compilations
  • KT-61121 [K/N] Kotlin Native compiler performance is slow when generating large frameworks
  • KT-57616 K2: Consider optimizing reversed versions of persistent lists in FirTowerDataContext
Fixes
  • KT-67486 K2: Calling method from a Java (implementing a Kotlin class) with named parameters is no longer possible if Java method has different parameter names
  • KT-64615 Inconsistent error messages for platform type nullability assertions
  • KT-65062 K2: build kotlinx.collections.immutable and pass to CI
  • KT-68164 Smart cast fails for KT-49404
  • KT-56545 Fix incorrect functions mangling in JVM backend in case of accidental clashing overload in a Java subclass
  • KT-49404 Fix type unsoundness for contravariant captured type based on Java class
  • KT-64598 K2: build Arrow with k2 user project
  • KT-61039 False positive ABSTRACT_MEMBER_NOT_IMPLEMENTED in K1 when expect actual super types scopes don't match
  • KT-56408 Inconsistent rules of CFA in class initialization block between K1 and K2
  • KT-63580 "AssertionError: access of const val: GET_FIELD" caused by const value and variable with delegation
  • KT-67993 K2: PCLA Inference throws exception with local objects
  • KT-61768 Wrong bytecode index in LineNumberTable when there is an incremental operation
  • KT-63567 "NoSuchMethodError" on getting value of lazily initialized property by companion's const value
  • KT-56078 K2: build kotlinx.coroutines
  • KT-67609 K2: False negative INFERRED_TYPE_VARIABLE_INTO_EMPTY_INTERSECTION_ERROR
  • KT-57750 Report ambiguity error when resolving types and having the same-named classes star imported
  • KT-65603 K2: No approximation is done on public, but effectively private property
  • KT-59932 K2: Disappeared AMBIGUOUS_ANONYMOUS_TYPE_INFERRED
  • KT-59906 K2: Disappeared CAPTURED_VAL_INITIALIZATION
  • KT-53886 NoSuchMethodError exception in Kotlin/Native compiler
  • KT-57678 K2: Inconsistency in how K2 analyzes unresolved code for loops and changing closures
  • KT-57871 K1/K2 inconsistency on if-conditional without else-branch in parenthesis
  • KT-56384 K2: build IntelliJ monorepo master branch
  • KT-49191 Leaked integer literals from lambda with flexible return type
  • KT-65812 K2: "OutOfMemoryError: Java heap space" in kotlin.utils.SmartList.add
  • KT-67224 K2/Native: Member overrides different '@Throws' filter from separate module
  • KT-65623 K2: Unresolved reference in connection with casts
  • KT-64136 K2: NSME with Anvil compiler plugin
  • KT-51241 Provide a error when override method has different set of context receivers
  • KT-52920 Confusing "Multiple arguments applicable for context receiver" error message
  • KT-67912 K2: Cannot inference type properly from inline function with Type parameter
  • KT-68056 Prohibit referencing java field in case of conflict with property from companion object of the derived class
  • KT-61129 K2: Implement error suppression warning
  • KT-67367 K2: Incorrect resolution to top-level function with less specific signature in presence of SAM constructor on the same tower level
  • KT-50179 Fix DUPLICATE_LABEL_IN_WHEN warning with new rules of complex boolean constants
  • KT-45334 Prohibit referencing constructors of sealed classes by its inner members
  • KT-59943 K2: Disappeared OPERATOR_MODIFIER_REQUIRED
  • KT-67875 K2: Resolution ambiguity between Iterable and varargs
  • KT-67699 Not enough information to infer type argument for 'Error' using Arrow's Raise context receiver since Kotlin 2.0.0-Beta3
  • KT-66527 K2: type mismatch on override for type
  • KT-59897 K2: Disappeared PACKAGE_OR_CLASSIFIER_REDECLARATION
  • KT-50020 K2: False-negative USAGE_IS_NOT_INLINEABLE when lambda in receiver position
  • KT-44557 Implement main function detection to FIR
  • KT-67810 K2: public-API inline function cannot access non-public-API annotation enum
  • KT-66447 Implement KT-59138 under a language feature
  • KT-54862 Anonymous type can be exposed from private inline function from type argument
  • KT-37592 Property invoke of a functional type with receiver is preferred over extension function invoke
  • KT-51194 False negative CONFLICTING_INHERITED_MEMBERS when dependency class contained in two different versions of the same dependency
  • KT-67221 K2: "new inference error [NewConstraintError at Incorporate TypeVariable" for captured type
  • KT-66701 K2: Java interface method override via Kotlin class rejected
  • KT-60604 K2: introduced NON_PUBLIC_CALL_FROM_PUBLIC_INLINE, @PublishedApi needed for constants in annotations
  • KT-64309 Generate a variable mapping for continuation parameter in suspend methods just from the start
  • KT-65438 K2: Introduce WEAKLY_HIDDEN concept to built-in-JDK content mapping
  • KT-65235 JDK 21 might lead to change in overloads resolution
  • KT-66768 K1: False positive UNRESOLVED_REFERENCE in super.getFirst/getLast call
  • KT-67106 Platforms libs-dependant autotests for ObjC checkers
  • KT-65440 K2: Mark all potential implementations of List.getFirst()/getLast() as deprecated independently of JDK
  • KT-65594 K2: Type inference fails on NullMarked object with star type
  • KT-62849 Unoptimised bytecode for Java synthetic property references
  • KT-60174 JVM IR inline: accidental reification in various cases
  • KT-57609 K2: Stop relying on the presence of @UnsafeVariance using for contravariant parameters
  • KT-54316 Out-of-call reference to companion object's member has invalid signature
  • KT-66976 Some value class diagnostics are missed
  • KT-57426 Incorrect error message on inapplicable smartcast from alien property
  • KT-55111 OptIn: forbid constructor calls with default arguments under marker
  • KT-49856 Incorrect smartcast on var assigned in try-catch block
  • KT-41237 ReturnsImplies contract for receiver of member function does not work (no smartcast)
  • KT-37878 No Smart cast for class literal reference of nullable generic type
  • KT-35846 Smart cast with unchecked cast leads to unresolved call that was resolved before (both old and new inference)
  • KT-30867 Unsound smartcast if smartcast source and break is placed in for-in header as function arguments
  • KT-30267 Inconsistent smart casts in while (true)
  • KT-33917 Prohibit to expose anonymous types from private inline functions
  • KT-28889 Smart cast does not work with boolean and infix function
  • KT-54790 False positive NO_ELSE_IN_WHEN when all interfaces are sealed
  • KT-54920 K2: when with a single branch stops being exhaustive the second time it's done
  • KT-53364 False positive UNUSED_VARIABLE warning for variable that is used across multiple blocks
  • [KT-43234](https://youtrack.jetbrains.co

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.

🔕 Ignore: Close this PR and you won't be reminded about this update again.


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

This PR has been generated by Renovate Bot.

@cedrickcooke cedrickcooke self-assigned this May 31, 2024
@cedrickcooke cedrickcooke enabled auto-merge (squash) May 31, 2024 16:27
Copy link

Test Results

69 tests  ±0   69 ✅ ±0   1s ⏱️ ±0s
12 suites ±0    0 💤 ±0 
12 files   ±0    0 ❌ ±0 

Results for commit dddf894. ± Comparison against base commit a17eeef.

@cedrickcooke cedrickcooke merged commit d757abd into main May 31, 2024
3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants