Commit Graph

99118 Commits

Author SHA1 Message Date
Sebastian Sellmair cb61b93ea3 [Gradle] Implement initial K2 based versions of existing integration tests
^KT-56210 Verification Pending
2023-03-01 16:30:42 +00:00
Sebastian Sellmair a6d145eb4f [Gradle] Implement K2MultiplatformStructureTest
^KT-56210 Verification Pending
2023-03-01 16:30:42 +00:00
Sebastian Sellmair 4f48cac601 [Gradle] Pass multiplatform structure to K2
^KT-56210 Verification Pending
2023-03-01 16:30:42 +00:00
Sebastian Sellmair 6c618ae5cc [Gradle] Add KotlinVersion.DEFAULT
KT-56210
2023-03-01 16:30:41 +00:00
Sebastian Sellmair 21bf497830 [CLI] Replace K2 -Xmodule by -Xfragments and -Xfragment-sources
KT-56210
2023-03-01 16:30:41 +00:00
Vladimir Sukharev 8e5b19fe96 Put separate tag to KotlinTestK2LibraryTest to disable it for one-stage testing
Merge-request: KT-MR-9054
Merged-by: Vladimir Sukharev <Vladimir.Sukharev@jetbrains.com>
2023-03-01 15:25:34 +00:00
Dmitriy Novozhilov 5b7efbfed7 Add utility script for bootstrap update
Script `scripts/update-bootstrap` takes one argument with new bootstrap
  version, updates all required places and commit them with message
  "Advance bootstrap to {version}"
2023-03-01 13:53:47 +00:00
Andrei Klunnyi 66a74ab60e KT-56941 Gradle KTS navigation: go to declaration (Java) doesn't work
Case:
```
options.incrementalAfterFailure = false    // assignment operator  (a)
options.incrementalAfterFailure.set(false) // equivalent (without) (b)

// (a) works thanks to AssignResolutionAltererExtension
// 'incrementalAfterFailure' is a synthetic Java property
// i.e. getIncrementalAfterFailure()

// Navigation to 'incrementalAfterFailure' (a) doesn't work.
```

By navigation, we mean opening declaration sources. The reason of the
issue lied in sources absence (inability to find them).

In general, sources are available via declaration descriptor.
To find one for a property, one needs to understand expression
kind: read/write/both. Hence, the choice of a getter/setter/both.
Since `=` operator is interpreted as a write type expression, a setter
was searched. Missing one resulted in corrupted navigation.

As a fix we provide getter for the missing setter case.

^KT-56941 fixed
2023-03-01 13:25:38 +00:00
Andrei Klunnyi e3d5affe5c KT-56221 Gradle KTS: overloaded assignment is not supported
```
java.docsDir = file("src/docs")
```
is a `KtBinaryExpression`. Decision on the assignment validity involves
`AbstractAssignPluginResolutionAltererExtension.hasSpecialAnnotation()`.
The function requires a parent declaration, which in case of a script
is `KtScriptInitializer`.

^KT-56221 fixed
2023-03-01 12:49:32 +01:00
Vyacheslav Gerasimov a51ae33e4d Build: Add -Xmx3g to kotlin.daemon.jvmargs in settings-conventions
To avoid spawning multiple daemons `kotlin.daemon.jvmargs` should be
the same as root gradle.properties and buildSrc
 #KTI-1142
2023-03-01 11:38:35 +00:00
Dmitriy Novozhilov 088109a660 Advance bootstrap to 1.9.0-dev-2695 2023-03-01 11:07:06 +00:00
Dmitrii Gridin 0a1c903e11 [SLC] add tests for containingClass
^KT-56613
2023-03-01 10:43:03 +00:00
Dmitrii Gridin 9129235079 [LC] add missing parent to implementsList and extendsList
^KT-56613
2023-03-01 10:43:03 +00:00
Dmitrii Gridin 58dc93da90 [LC] do not store name identifier as property
^KT-56613
2023-03-01 10:43:02 +00:00
Dmitrii Gridin 327208fb8a [SLC] drop hard references to member declarations to reduce memory consumption
^KT-56613 Fixed
2023-03-01 10:43:02 +00:00
Dmitrii Gridin 7af78db2e1 [DLC] drop hard references to member declarations to reduce memory consumption
^KT-56613
2023-03-01 10:43:02 +00:00
Dmitrii Gridin e20f72fcf8 [SLC] introduce tests on equality
^KT-56613
2023-03-01 10:43:01 +00:00
Dmitrii Gridin 847b29ac15 [DLC] add missing identity checks to 'equals'
^KT-56613
2023-03-01 10:43:01 +00:00
Dmitrii Gridin 95455c9870 [DLC] add missing visitor methods
Some of our light classes have no correct parent (KT-56882),
so I temporarily disabled
AbstractSymbolLightClassesParentingTestBase for such cases
(previously decompiled light classes were not tested at all)

^KT-56613
^KT-56882
2023-03-01 10:43:01 +00:00
Dmitrii Gridin 0bd193ccba [SLC] rename AbstractSymbolLightClassesEqualityTest to AbstractSymbolLightClassesEquivalentTest
^KT-56613
2023-03-01 10:43:00 +00:00
Dmitrii Gridin 8c757e36ea [SLC] provide correct parent for annotations on type
The first step of KT-56870

^KT-56613
^KT-56870
2023-03-01 10:43:00 +00:00
Dmitrii Gridin 7273610d41 [SLC] introduce AbstractSymbolLightClassesParentingTestByPsi
^KT-56613
2023-03-01 10:43:00 +00:00
Dmitrii Gridin cfb358140c [SLC] rename AbstractSymbolLightClassesParentingTest to AbstractSymbolLightClassesParentingTestByFqName
^KT-56613
2023-03-01 10:42:59 +00:00
Dmitrii Gridin 68e6dba22b [SLC] extract base class from AbstractSymbolLightClassesParentingTest
^KT-56613
2023-03-01 10:42:59 +00:00
Dmitrii Gridin bf600afce0 [SLC] extract base class from AbstractSymbolLightClassesStructureTest
^KT-56613
2023-03-01 10:42:59 +00:00
Dmitrii Gridin 5e18ebcd7e [DLC] cleanup code and drop some redundant constructions
^KT-56613
2023-03-01 10:42:58 +00:00
Dmitrii Gridin 007af1c547 [DLC] use library tracker instead of out of block tracker
^KT-56613
2023-03-01 10:42:58 +00:00
Dmitrii Gridin b565df65c4 [SLC] drop redundant properties to reduce memory consumption
^KT-56613
2023-03-01 10:42:58 +00:00
Ilya Muradyan 6ddf32d013 Scripts: synchronize calculation of parent in LexicalScopeWrapper to fix #EA-803423 2023-03-01 09:05:25 +00:00
Sebastian Sellmair 57b32b6f69 [Gradle] Fix cryptic task descriptions of Kotlin Compile Tasks
^KT-57023 Verification Pending
2023-03-01 08:55:59 +00:00
Sebastian Sellmair de138532c7 [Gradle] Multiplatform: Bump minSupportedVersion for AGP to 4.2
^KT-56654 Verification Pending
2023-03-01 08:55:04 +00:00
Sebastian Sellmair cd7b4eb632 [Gradle] Multiplatform: Bump maxSupportedVersion for AGP to 8.0
^KT-56654 Verification Pending
2023-03-01 08:55:04 +00:00
Dmitriy Novozhilov 1cac3b4ae1 [Build] Run only FIR PSI tests in predefined [JPS] Fast FIR tests configuration 2023-03-01 08:38:32 +00:00
Igor Chevdar a92c53daec [K/N][IR] Do not save local inline functions before closure building
#KT-56965 Fixed
2023-03-01 08:09:52 +00:00
Igor Chevdar c038bbde08 [box-tests] Added a reproducer for KT-56965 2023-03-01 08:09:51 +00:00
Vyacheslav Gerasimov 9b3c77de8b Revert "[Gradle, JS] Fix pom.xml publication to OSS sonatype"
This reverts commit 332ce81408.
2023-02-28 22:32:39 +01:00
Vladimir Sukharev 9a30edceeb Put proper tag to stdlibK2
Merge-request: KT-MR-9034
Merged-by: Vladimir Sukharev <Vladimir.Sukharev@jetbrains.com>
2023-02-28 20:48:08 +00:00
Artem Kobzar 50a462fed1 [K/JS] Exclude kotlinx.serialization synthetic declarations from JsExport
^KT-57024 Fixed
2023-02-28 18:11:36 +00:00
Yahor Berdnikau 36ae6d1238 Update wrapper to Gradle 7.6.1 release 2023-02-28 16:39:00 +00:00
Bogdan Mukvich 332ce81408 [Gradle, JS] Fix pom.xml publication to OSS sonatype 2023-02-28 16:29:47 +00:00
Troels Bjerre Lund e33e1653f6 [K/N] Add design overview to custom_alloc/README and rename page types ^KT-55364
Co-authored-by: Troels Lund <troels@google.com>

Merge-request: KOTLIN-MR-626
Merged-by: Alexander Shabalin <alexander.shabalin@jetbrains.com>
2023-02-28 16:21:23 +00:00
Alexander Korepanov a0727b22bb [Gradle, JS] Make KotlinJsIrLink::rootCacheDirectory public
^KT-56999 Fixed
2023-02-28 14:58:09 +00:00
Pavel Punegov 0609edb4b8 [K/N][test] Get rid of the Gradle warning in the old infra
This outputDirectory property was marked incorrectly as OutputDirectory.
It points to test build tasks output and should not be considered during
up-to-date checks.

Merge-request: KT-MR-9019
Merged-by: Pavel Punegov <Pavel.Punegov@jetbrains.com>
2023-02-28 14:21:00 +00:00
Ilya Kirillov 4944b454c5 [Analysis API] optimize KotlinPackageProvider.getSubPackageFqNames
Previously, we queried heavy kotlin package provider two times which affected performance
Now it's being queries only a single time

Also, the commit introduces separation for KotlinPackageProvider between kotlin and platform-specific packages

^KTIJ-24640
2023-02-28 13:38:23 +00:00
Sergej Jaskiewicz c940eb25b0 [Test Data Helper Plugin] Update paths to JS output files
417fef0d58 updated the output paths,
but the plugin settings were not updated there.
2023-02-28 13:19:40 +00:00
Artem Kobzar deb6ca66ea [K/JS] Add undefined type to parameter with default argument that are placed before non-optional parameters
^KT-53180 Fixed
2023-02-28 11:53:28 +00:00
Kirill Rakhman fbc0796ed2 [FIR] Accept opt-in annotations on primary ctor params of properties
For backward compatibility with K1.

KT-56177
2023-02-28 10:19:20 +00:00
Kirill Rakhman cfc5bb74ef [Test] Fix FileNotFoundException in removeDirectiveFromFile
This happened when a FIR test didn't have a .fir.kt file.
2023-02-28 10:19:20 +00:00
Kirill Rakhman 59c61cdd07 [FIR Plugin prototype] Fix AllPropertiesConstructor test
^KT-56861 Fixed
2023-02-28 10:19:19 +00:00
Kirill Rakhman 2139914061 [FIR] Add diagnostic when annotation argument is resolved ambiguously
Annotation arguments that are resolved in COMPILER_REQUIRED_ANNOTATIONS
phase are resolved again in ANNOTATION_ARGUMENTS phase. If they resolve
to a different symbol, report an error.

KT-56177
2023-02-28 10:19:19 +00:00