Commit Graph

101453 Commits

Author SHA1 Message Date
Kirill Rakhman 0ac02be534 [FIR] Generate annotations to data class copy method parameters
#KT-57003 Fixed
2023-05-26 11:29:13 +00:00
Mikhail Glukhikh 5ae3a93084 FE approximator conf: simplify typeVariable/HandleAsTypeVariable
Related to KT-58618
2023-05-26 11:13:39 +00:00
Mikhail Glukhikh 6e58ba8f33 FE: don't approximate type variable based types for public/local declarations
#KT-58618 Fixed
2023-05-26 11:13:39 +00:00
Mikhail Glukhikh 2cfa3d7e0d K2: reproduce KT-58618 2023-05-26 11:13:39 +00:00
Ilya Goncharov 666239c587 [Gradle, JS] Upgrade yarn.lock 2023-05-26 11:03:57 +00:00
Sergej Jaskiewicz 02180e8685 Factor out duplicated mangling logic for functions into the base class
^KT-57777 Fixed
^KT-57818 Fixed
2023-05-26 10:55:24 +00:00
Ilya Goncharov 8ae196d4fc [Gradle, Wasm] Add kotlin-stdlib-wasm to IDE deps 2023-05-26 09:07:07 +00:00
Nikolay Krasko 15825549a2 Auto provide JDK_21_0 env variable to relevant tests
KTI-1229
2023-05-26 09:05:54 +00:00
Alexander Shabalin 0457001a87 [K/N] Apply execution timeout to tests 2023-05-25 16:28:00 +00:00
Sergey Bogolepov 89be94f123 [K/N] Fix KT-58839
Do not export extensions of classes that are
hidden from the generated Objective-C API.

Merge-request: KT-MR-10330
Merged-by: Sergey Bogolepov <sergey.bogolepov@jetbrains.com>
2023-05-25 15:17:18 +00:00
Nikolay Lunyak c0ce37a271 [FIR] KT-58460: Report a return type mismatch diagnostic
^KT-58460 Fixed
2023-05-25 14:52:04 +00:00
Nikolay Lunyak ff61f70dd0 [FIR] KT-58460: Ensure the error is missing 2023-05-25 14:52:04 +00:00
Nataliya.Valtman 06ac8a10cd Use FlowParameter for buildFinish event
Support build scan report for Gradle 8.1

#KT-55740: Fixed
#KT-58251: Fixed
2023-05-25 14:24:16 +00:00
Troels Bjerre Lund 99e4ca65be [K/N] Fix GC stats reporting sweep in wrong epoch ^KT-55364
Co-authored-by: Troels Lund <troels@google.com>

Merge-request: KOTLIN-MR-696
Merged-by: Alexander Shabalin <alexander.shabalin@jetbrains.com>
2023-05-25 12:48:30 +00:00
Sergej Jaskiewicz 2fc5316c1b [IR] Add a kdoc for IrValueParameter.isHidden 2023-05-25 12:33:35 +00:00
Egor Kulikov 9a77632f1c [FIR] Fix invalid expression throwing exception when determining type
^KTIJ-25421 fixed

Merge-request: KT-MR-10317
Merged-by: Egor Kulikov <Egor.Kulikov@jetbrains.com>
2023-05-25 12:31:42 +00:00
Egor Kulikov 5e38c2d570 [FIR] Fix invalid expression throwing exception when determining type
^KTIJ-25421 fixed

Merge-request: KT-MR-10290
Merged-by: Egor Kulikov <Egor.Kulikov@jetbrains.com>
2023-05-25 12:29:46 +00:00
Nikolay Lunyak 83f2c2e1f0 [FIR] KT-58623: Unify FirInlineDeclarationChecker
> Condition 'isSuspendFunctionType' is always false when reached

The change in the native tests is needed, because K2
doesn't support disabling old language features

^KT-58623 Fixed
2023-05-25 12:19:51 +00:00
Nikolay Lunyak 75c0304671 [FIR] KT-58623: Ensure the diagnostics are missing for Native 2023-05-25 12:19:51 +00:00
Nikolay Lunyak 699366f178 [FIR] KT-58184: Prevent missing diagnostics on component calls
Update the component function visibility
based on the already resolved visibility
of the property before transforming
the status of the component function itself.

^KT-58184 Fixed
2023-05-25 12:19:30 +00:00
Svyatoslav Scherbina d45e0116dd Bump Kotlin/Native version to 1.9.20-dev-2332 2023-05-25 12:13:46 +00:00
Alexander Udalov d32268c5cb JVM: do not assume that methods have body in BridgeLowering
They don't have bodies in the kapt stub generation mode.

 #KT-58787 Fixed
2023-05-25 12:07:58 +00:00
Brian Norman b2230327df [FIR] Refactor upper bound validation with better source element info
Attach source information to each argument of the type before expanding
to preserve information during validation. This allows errors to be
reported on the original argument during nested type alias expansion.

^KT-50798 Fixed
^KT-50703 Fixed
2023-05-25 11:24:17 +00:00
Alexander Shabalin d82a6f2fa2 [K/N] Fix default value of testTarget 2023-05-25 10:32:48 +00:00
Anton Lakotka 9456872bbe [Gradle] Remove unnecessary participatingSourceSetsLazy
The `withDependsOnClosure` is live object, it is ok to request it early
as long as other properties will read data from it at the end of the
configuration.

^KT-58471 Verification Pending
2023-05-25 10:25:17 +00:00
Anton Lakotka 731d3bf602 [Gradle] Remove legacy participatingSourceSets logic
It is unknown why we would need to include commonMain source set
explicitly from kotlinExtension.sourceSets.

Few assumptions:
* common main source set loaded somehow from different classloader
* compatibility with legacy multipaltform plugins

^KT-58471 Verification Pending
2023-05-25 10:25:16 +00:00
Anton Lakotka 60939a8fe6 [Gradle] Change skipProjectDependencies to transformProjectDependencies
For better code readability

^KT-58471 Verification Pending
2023-05-25 10:25:16 +00:00
Anton Lakotka 792c08ec7d [Gradle] Test CInterop commonization doesn't trigger configuration resolution
...before taskGraph is ready

KT-56858 Verification Pending
2023-05-25 10:25:16 +00:00
Anton Lakotka fc33892e70 [Gradle] Test cinterop dependency from composite build
KT-58471 Verification Pending
2023-05-25 10:25:16 +00:00
Anton Lakotka 7c47ff0819 [Gradle] Introduce isProjectComponentIdentifierInCurrentBuild
KT-58471 Verification Pending
2023-05-25 10:25:16 +00:00
Anton Lakotka 9ead1d84b1 [Gradle] Fix CInterop commonization for included builds
KT-58471 Verification Pending
2023-05-25 10:25:16 +00:00
Anton Lakotka b6a3a60f36 [Gradle] Update UP-TO-DATE checks in MppCInteropDependencyTransformationIT
CInteropDependencyTransformation task now is executed also for project
dependencies.

KT-58471 Verification Pending
2023-05-25 10:25:16 +00:00
Anton Lakotka e937f0739b [Gradle] Process project dependencies in CLI version of CInterop[MDT]Task
If MetadataDependencyTransformation is triggered it will resolve related
metadata dependency configuration. Which is not recommended from gradle
performance point of view.
Update CInterop[MDT]Task to work as regular [MDT]Task i.e. it will
process project dependencies during task execution but keep the original
functionality for IDE. Since during IDE import it is expected to resolve
configurations during gradle configuration phase.

^KT-58471 Verification Pending
2023-05-25 10:25:16 +00:00
Anton Lakotka 72c7d15be8 [Gradle] Share Cinterop and regular [MDT]Tasks inputs
These tasks are essentially operating on the same inputs but produces
different ouputs. Therefore, it makes sense to extract their Task Inputs
into a separate container and let these tasks share it.

KT-58471 Verification Pending
2023-05-25 10:25:16 +00:00
Sergej Jaskiewicz 7abc6af124 [FIR, IR] Fix name mangling for dynamic types
^KT-57566 Fixed
2023-05-25 10:23:33 +00:00
Ivan Kochurkin 994c2229df [FIR] Report UNSUPPORTED_FEATURE for expect/actual members if MPP is disabled
Always enable MultiPlatformProjects for K2MetadataCompilerArguments

 ^KT-57243 Fixed
2023-05-25 09:46:56 +00:00
Ivan Kochurkin 16ed06d4e9 [FIR] Add EXPECT_ACTUAL_MODIFIER positioning strategy 2023-05-25 09:46:56 +00:00
Sebastian Sellmair d8ed7a2820 [Gradle] Run functionalTests in parallel 2023-05-25 09:33:44 +00:00
Kirill Rakhman 4dd1f9f4d6 [FIR] Set type arguments for callable reference in property delegation
#KT-58555 Fixed
2023-05-25 09:27:47 +00:00
Aleksei.Cherepanov bdfc2c33c5 Add missed dependency for JPS serialization
#KTIJ-25610 Fixed
2023-05-25 08:22:11 +00:00
Alexander Udalov 3eb7ac1aac Remove ReflectProperties.lazy, replace with lazy(PUBLICATION)
There's no point in using `ReflectProperties.lazy` over
`lazy(PUBLICATION)`, especially because of the subtle problems the
former can create, such as KT-27585. This is inspired by the fix in
99b38ccb74, although in this case I couldn't come up with an example
that would lead to a runtime exception.
2023-05-24 16:39:45 +00:00
Sebastian Sellmair e0389a0a87 [Gradle] Implement KotlinJvmTarget.mainRun (KotlinJvmRun)
This task will also automatically support the use case of
a 'carrier' task for the IDE. The IDE can use this task
to execute generic main methods, providing a -P<taskName>.mainClass
property

^KT-58661 Verification Pending
2023-05-24 15:00:07 +00:00
Ivan Kochurkin 432c781ff7 [K2, MPP] Fix actualization of fake overrides (fixes a set of bugs in coroutines / ktor)
Split MissingFakeOverridesAdder on FakeOverridesActualizer and ActualFakeOverridesAdder

^KT-57984 Fixed
^KT-58003 Fixed
^KT-58124 Fixed
^KT-57833 Fixed
^KT-58153 Fixed
2023-05-24 14:54:51 +00:00
Dmitriy Novozhilov 58f8e25bfe [JVM IR] Generate mutable lower bound type for flexible IR types 2023-05-24 14:07:33 +00:00
Dmitriy Novozhilov fdc236296d [FIR2IR] Generate @FlexibleMutability annotation on IR types if needed 2023-05-24 14:07:32 +00:00
Ilmir Usmanov a0484de1a6 JVM_IR: Do not copy static init blocks to inline class's constructor
#KT-58593 Fixed
2023-05-24 13:24:47 +00:00
Vladimir Sukharev 74c57e6057 [K2/N] Compile to native binary in two stages
^KT-56855 Fixed

Merge-request: KT-MR-10219
Merged-by: Vladimir Sukharev <Vladimir.Sukharev@jetbrains.com>
2023-05-24 13:07:12 +00:00
Vladimir Sukharev 62901e22ec [K2/N] Turn on IR verification for passed tests
^KT-57716 Fixed

Merge-request: KT-MR-10300
Merged-by: Vladimir Sukharev <Vladimir.Sukharev@jetbrains.com>
2023-05-24 12:23:00 +00:00
Sebastian Sellmair 3b1a7c3ac1 [Gradle] CInteropConfigurations: Support lazy configuration
Using 'whenEvaluated' (aka 'afterEvaluate') is not supported
when using lazy APIs (like register). In order to safely
copy user configuration in both use-cases,
'launchInStage(AfterFinaliseDsl)' is used as this will be safe
either way.

^KT-58838 Verification Pending
2023-05-24 11:45:21 +00:00
Sebastian Sellmair dafe24a3a9 [Gradle] Implement KT58838LazyCinteropConfiguration to cover KT-58838 2023-05-24 11:45:21 +00:00