Commit Graph

88506 Commits

Author SHA1 Message Date
Roman Artemev e17f121b23 [JS REPL] Extract JS script/repl parts into separate module
- don't load js evaluation plugin in CLI compiler
2021-12-21 04:15:11 +03:00
Mikhail Glukhikh c12d1930b4 Fix FIR bootstrap (related to KT-49925) 2021-12-21 00:02:12 +03:00
Nikolay Krasko 5b073c2565 Drop ComponentsXmlResourceTransformerPatched
After shadow is updated to 7.1.1, library ComponentsXmlResourceTransformer
should work fine.

The only reason for this patched version was the bug that was fixed in 7.1.0:
https://github.com/johnrengelman/shadow/releases/tag/7.1.0

^KTI-733 Fixed
2021-12-20 21:39:04 +03:00
Nikolay Krasko 85521f01f8 Update shadow plugin 6.1.0 -> 7.1.1
Version 7.1.1 is absent in jcenter, so additional repository was added
in some modules.

Leave old version in NewMultiplatformIT.kt because of
`This version of Shadow supports Gradle 7.0+ only. Please upgrade.` error.

^KTI-733 Fixed
2021-12-20 21:39:00 +03:00
Nikolay Krasko 1b85159708 Remove kotlin.build group from verification-metadata.xml 2021-12-20 21:38:57 +03:00
Kristoffer Andersen 91e65edf86 [EE-IR] Minor: Refactor EvaluatorFragmentInfo
Part of migration to new constructor signature.

Unblocked by intellij-community#1839.
2021-12-20 19:04:19 +01:00
Alexander Udalov 6acb0c3d06 CLI: load module-info from META-INF/versions/... for any version
Not just 9, since at least some libraries are putting module-info to
META-INF/versions/11 nowadays.

 #KT-48027 Fixed
2021-12-20 18:59:07 +01:00
Joseph Walton f38e1b218d Scripting, maven: use getArtifacts to get the plugin's runtime classpath
..to correctly pass the dependencies in the ExecuteKotlinScriptMojo.
#KT-50306 fixed

Also add a test that a script has access to plugin-configured
dependencies.
If plugin/dependencies is populated, the extra artifacts should be
made available when the script is run. This test uses 'junit' simply
because it's commonly-used, but not already present, or shaded as part
of another artifact.
2021-12-20 18:02:16 +03:00
Svyatoslav Scherbina 2bd53e3dea Native, old MM: fix releasing foreign refs to circular frozen graphs
^KT-49497
2021-12-20 14:56:38 +00:00
Alexander Korepanov b82c306530 [JS IR] Add deep copying for callable reference
Perform a deep copy of callable reference adapter on inline lowering

^KT-49844 Fixed
2021-12-20 14:02:11 +00:00
Aleksei.Cherepanov 7b41d382b8 Replace deprecated hashing strategy for jvm caches
Deprecated FileUtil.PATH_HASHING_STRATEGY will be removed since Intellij 213, so replace it with another hashing strategy
2021-12-20 11:12:18 +00:00
Alexander Shabalin cc8f278948 [K/N] Add a separate aggressive GC scheduler
^KT-48537

Merge-request: KT-MR-5253
Merged-by: Alexander Shabalin <Alexander.Shabalin@jetbrains.com>
2021-12-20 11:04:46 +00:00
Dmitriy Dolovov 56e64d78e3 [Native][tests] Regenerate test classes 2021-12-20 12:35:49 +03:00
Dmitriy Dolovov c3a422105d [Native][tests] Log JUnit5 parallel test execution parameters in Gradle build 2021-12-20 12:35:48 +03:00
Dmitriy Dolovov cd11aeceac [Native][tests] Disable JVM C2 compiler at host machines with >4 CPU cores 2021-12-20 12:35:48 +03:00
Dmitriy Dolovov 37d866c95a [Native][tests] Fix parallel test execution 2021-12-20 12:35:48 +03:00
Dmitriy Dolovov f145076245 [Native][tests] Fail grouping Gradle tasks if they are launched with command-line test filters 2021-12-20 12:35:48 +03:00
Dmitriy Dolovov cb115a4088 [Build] Extract DefaultTestFilter.commandLineIncludePatterns as a property of Test 2021-12-20 12:35:48 +03:00
Dmitriy Dolovov 341e017261 [Native][tests] Don't treat any compiler test task as up-to-date
There are number of problems with up-to-date checks in tests, leading to
a test binary not being rebuilt or rerun when a developer expects it to.

Things became worse after updating to Gradle 7+:
test binary run tasks are considered up-to-date if the test data
has been changed, even after clean.

Even before Gradle 7+, we've observed other similar undesirable effects:
for example, if the compiler has been changed, tasks building
test binaries are still up-to-date.

So it was decided to workaround all possible similar problems by forcing
all test tasks in the :native:native.tests project to be not up-to-date.

This project should contain only test tasks, so this workaround
seems pretty natural -- it is just "tests aren't up-to-date".
2021-12-20 12:35:48 +03:00
Dmitriy Dolovov a707a7a65a [Native][tests] Use single instance of AbstractExternalNativeBlackBoxTest for consistent caching of source transformers
This also makes sense for all inner classes under AbstractExternalNativeBlackBoxTest.
2021-12-20 12:35:48 +03:00
Dmitriy Dolovov a440864de4 [Native][tests] Extract all external source-transformation logic into AbstractExternalNativeBlackBoxTest
This abstract class is used only for generated external codegen box tests that may have custom source transformers.
2021-12-20 12:35:47 +03:00
Dmitriy Dolovov 72bb38dc68 [Native][tests] Re-organize Gradle tasks and test suite classes 2021-12-20 12:35:47 +03:00
Dmitriy Dolovov 835de3083a [Native][tests] Don't fail Gradle tasks if there are failed tests 2021-12-20 12:35:47 +03:00
Dmitriy Dolovov eb371fa5e0 [Native][tests] Truncate large test output to avoid blowing up in logs 2021-12-20 12:35:47 +03:00
Dmitriy Dolovov 51a79c4592 [Native][tests] Move "samples" tests to infrastructure tests 2021-12-20 12:35:47 +03:00
Dmitriy Dolovov 8e98deb3b0 [Native][tests] Read stdout/stderr of test process in separate threads
Sometimes, the launched test process can't finish on Windows if stdout and stderr threads are not read completely. The proper approach here would be to spawn two threads for constantly reading stdout & stderr while the process in being executed.
2021-12-20 12:35:47 +03:00
Dmitriy Dolovov 50d766166b [Native][tests] Run stdlib tests with & without workers 2021-12-20 12:35:47 +03:00
Dmitriy Dolovov 3e54bb06ee [Native][tests] Add a directive to specify test runner type 2021-12-20 12:35:47 +03:00
Dmitriy Dolovov 580328ece7 [Native][tests] Fix: Avoid IO exceptions on Windows while expanding globs 2021-12-20 12:35:46 +03:00
Dmitriy Dolovov 49755e0aae [Native][tests] Fix: Location of OutputFilter test 2021-12-20 12:35:46 +03:00
Dmitriy Dolovov 83a7379cc4 [Native][tests] Fix: Provide correct path to K/N stdlib in compiled tests 2021-12-20 12:35:46 +03:00
Dmitriy Dolovov b78ff1d61a [Native][tests] Minor. Organize imports 2021-12-20 12:35:46 +03:00
Dmitriy Dolovov ab4f60b105 [Native][tests] Fix: Avoid unnecessary canonicalization of FS paths
This may lead to IO errors.
2021-12-20 12:35:46 +03:00
Dmitriy Dolovov 3d8fce4edb [Native][tests] Log environment variables and JVM properties 2021-12-20 12:35:46 +03:00
Dmitriy Dolovov a81c44301d [Native][tests] Separate Gradle tasks for different types of tests 2021-12-20 12:35:46 +03:00
Dmitriy Dolovov 3756634b84 [Native][tests] Add OutputFilter test 2021-12-20 12:35:46 +03:00
Dmitriy Dolovov 445ffa9970 [Native][tests] Add TestListing test 2021-12-20 12:35:46 +03:00
Dmitriy Dolovov 304d2ad768 [Native][tests] Add NamedEntities test 2021-12-20 12:35:46 +03:00
Dmitriy Dolovov cdbbc70116 [Native][tests] Drop TestFunction/FunctionName, introduce TestName instead 2021-12-20 12:35:45 +03:00
Dmitriy Dolovov 7abfe4d47b [Native][tests] Rework PackageName entity 2021-12-20 12:35:45 +03:00
Dmitriy Dolovov a98d1d2b11 [Native][tests] Minor. Rename test infra-related tests for easier distinguishing 2021-12-20 12:35:45 +03:00
Dmitriy Dolovov bb01c4cbbb [Native][tests] Filter test output to suppress TEAMCITY-related messages 2021-12-20 12:35:45 +03:00
Dmitriy Dolovov 09dbd43b97 [Native][tests] Use TEAMCITY test logger instead of GTEST one
That's because currently K/N tests do not report ignored tests with GTEST logger, but do so with TEAMCITY logger.
2021-12-20 12:35:45 +03:00
Dmitriy Dolovov 553ea22504 [Native][tests] Minor. Simplify assertion expression 2021-12-20 10:47:03 +03:00
Dmitriy Dolovov 7981cf8368 [Native][tests] Remove unnecesary common prefix in dynamic test names 2021-12-20 10:47:03 +03:00
Dmitriy Dolovov 4a4760dc4b [Native][tests] Run stdlib tests using new test infrastructure 2021-12-20 10:47:03 +03:00
Dmitriy Dolovov 179d324444 [Native][tests] Extract test function names from test executables 2021-12-20 10:47:03 +03:00
Dmitriy Dolovov 87873f9824 [Native][tests] Extract GTest report verification logic 2021-12-20 10:47:02 +03:00
Dmitriy Dolovov f73ab305e6 [Native][tests] Introduce TestCaseId and TestCaseGroupId 2021-12-20 10:47:02 +03:00
Dmitriy Dolovov b051d2f67d [Native][tests] Naive implementation of glob expansion 2021-12-20 10:47:02 +03:00