Commit Graph

1000 Commits

Author SHA1 Message Date
Zalim Bashorov 90c867ae1d [JS] Define Node.js version in one place and use a single version everywhere
Consequently, it fixes the inability to run some JS related tests on Apple devices with ARM.
2022-04-23 17:58:42 +02:00
Yahor Berdnikau 5450367e39 Flip Gradle plugin kotlin_module names
Now common SourceSet output will have '_common' suffix, while all
variants will have the same name - '<module-name>.kotlin_module'.

This change is required for KSP as short-term workaround, as they
are using some internal properties/methods, which was mangled before
this change and hard to access in different variants.

^KT-52138 Fixed
2022-04-22 10:54:46 +00:00
Alexander Likhachev 2e79590750 [Build] Add workaround for dependency resolution in buildSrc 2022-04-20 17:50:46 +03:00
Vyacheslav Gerasimov c8f2872a07 Fix flaky FIR tests
failing with 'Jar with annotations does not exist. Please run
:plugins:fir-plugin-prototype:plugin-annotations:jar'
2022-04-20 12:54:08 +03:00
Nikolay Krasko f7a53a1b24 Force using 2.8.9+ gson version as a dependency
Mitigate https://github.com/google/gson/pull/1991

^KT-51837 Fixed
2022-04-19 15:38:30 +02:00
Vyacheslav Gerasimov d9e8f0c180 Build: Rework test workers calculation with respect to available memory
#KTI-787
2022-04-19 11:45:23 +00:00
Alexander Likhachev cae3d8a672 [Build] Add ability to disable Javadoc publishing on CI 2022-04-19 11:30:37 +00:00
Alexander Likhachev 079400796a [Build] Validate Gradle plugins on install 2022-04-19 00:39:25 +03:00
Alexander Likhachev 20560d6101 [Build] Update test-distribution-plugin to 2.2.3
#KT-44611 In Progress
2022-04-19 00:39:23 +03:00
Alexander Likhachev be48035917 [Build] Avoid project usage in DexMethodCountStats
#KT-44611 In Progress
2022-04-19 00:39:23 +03:00
Alexander Likhachev df55745b61 [Build] Do not use project at execution time in jar tasks
#KT-44611 In Progress
2022-04-19 00:35:35 +03:00
Alexander Likhachev 6d654a4b10 [Build] Add workaround for KGP builds metrics reports
#KT-44611 In Progress
2022-04-19 00:35:34 +03:00
Alexander Likhachev 610e9ac77a [Build] Setup org.gradle.java.installations.fromEnv in buildSrc to workaround configuration cache invalidation problem
#KT-44611 In Progress
2022-04-19 00:35:34 +03:00
Alexander Likhachev 44e92a6134 [Build] Fix configuration cache problem with embeddable task
#KT-44611 In Progress
2022-04-19 00:33:35 +03:00
Ilya Kirillov 329e495b63 [analysis api, tests] generate analysis api in a separate tests-gen folder 2022-04-13 12:53:14 +02:00
Yahor Berdnikau 78cc2365b0 Fix gradle api dependency version in variants
Common SourceSet was forcing gradle api version to be the same
in all plugin variants via 'extendsFrom(..)'.

^KT-49227 In Progress
2022-04-12 14:48:48 +00:00
Pavel Punegov d69df1898d [build] Advance kotlin-build-gradle-plugin version to 0.0.38 in the repo
Use build Gradle plugin version property
2022-04-08 14:42:35 +03:00
Yahor Berdnikau ad9aa8d519 Add plugin variants
Change configuration adding Gradle plugin variants. 'main' SourceSet
is used for minimal supported Gradle versions, 'common' SourceSet for
common code that is similar between versions, plus, currently,
'gradle70' SourceSet for Gradle 7.0+ versions.

^KT-49227 In Progress
2022-04-04 20:37:56 +02:00
Ilya Chernikov 6564632b58 FIR: Implement build properties for LightTree and tight IC cycle 2022-04-04 14:13:50 +00:00
Yahor Berdnikau 5733ed5c76 Bump Gradle api version to 7.2
^KT-50673 In Progress
2022-04-04 07:29:56 +00:00
sebastian.sellmair 1391c983a2 Implement checkExpectedGradlePropertyValues to notify developers about changing Gradle properties 2022-03-23 13:55:50 +00:00
Vyacheslav Gerasimov 5e09c3176f Build: Set kotlin.build.cache.push to false by default
#KTI-793
2022-03-13 20:29:12 +00:00
sebastian.sellmair fe45214d23 Create new kotlin-tooling-core module 2022-03-09 13:17:05 +00:00
Ilya Kirillov 7fbfb1bd95 Fix cooperative development setup for kt-master 2022-03-02 13:46:24 +01:00
Yahor Berdnikau d62c70298a Disable javadoc generation on local development
Currently Dokka tasks running for Gradle plugins take quite a lot of
time slowing down local development cycle.

This change disables publishing javadoc on non-CI builds. This could be
lifted by putting 'kotlin.build.gradle.publish.javadocs=true' into
local.properties.

^KT-49227 In Progress
2022-02-25 15:21:48 +00:00
Yan Zhulanow d741aaf82f Fix pattern for filtering out services in compiler-tests-for-ide
The original pattern wasn't enough for matching all files in the
'META-INF/services' directory, especially the 'TestExecutionListener'
service registration that breaks tearDown() in JUnit5 tests in IDE.
2022-02-25 19:48:17 +09:00
Yahor Berdnikau bd6480e7e5 Removed plugin api dependency from 'android-test-fixes' plugin
^KT-49227 In progress
2022-02-22 12:35:06 +00:00
Yahor Berdnikau d0790bb2cb Gradle plugin will publish shadowed jar.
^KT-49227 In Progress
2022-02-22 12:35:05 +00:00
Yahor Berdnikau ab564d371e Remove old code used to configure Gradle plugin publication.
^KT-49227 In Progress
2022-02-22 12:35:04 +00:00
Yahor Berdnikau 1d2796d491 Update Gradle plugins publishing setup
Simplifies and make it aligned with official documentation, which
removes some old workarounds. Additionally, it enables publication of
Gradle metadata file, which is required for plugin variants feature
support.

Instead of using 'gradleApi()' as Gradle API dependency, which provides
build current Gradle version api, now setup is using
"dev.gradleplugins:gradle-api" artifacts with specific Gradle version.
This allows to have more fine-grained Gradle support for removed apis.

^KT-49227 In Progress
2022-02-22 12:35:01 +00:00
Yahor Berdnikau e4610d9df6 Update Gradle plugin publish plugin to 0.20.0 version.
^KT-49227 In Progress
2022-02-22 12:35:01 +00:00
Yahor Berdnikau 764dd84803 Update dokka plugin to 1.6.10 version
Move it into 'buildSrc' dependency, so it will be available to
precompiled script plugins.

^KT-49227 In Progress
2022-02-22 12:35:00 +00:00
Yan Zhulanow 0b94cb2c6e Exclude junit-platform.properties from compiler test JAR
Presence of 'junit-platform.properties' in the JAR makes JUnit5
IDE tests run in parallel. The IDE infrastructure isn't prepared
for this, and tests fail miserably with a variety of exceptions.
2022-02-22 02:17:45 +09:00
Dmitriy Novozhilov 3d48f9926f [Build] Update version of kotlin-build-gradle-plugin to 0.0.35 2022-02-18 17:44:44 +03:00
Yahor Berdnikau 283ba353e7 Remove useless cast in jvm toolchain scripts 2022-02-18 15:40:35 +01:00
sebastian.sellmair e91785ba39 [KPM] Implement initial IdeaKotlinProjectModelBuilder
- Introduce `kotlin-gradle-plugin-idea` module that allows
to share models between the IDE and KGP

- Add `kotlin-gradle-plugin-idea` to the RuntimePublicAPITest to
ensure binary compatibility

^KT-51262
2022-02-17 20:19:12 +00:00
Alexander Likhachev 80a68ec433 [Build] Remove local publishing workaround for configuration cache
#KTI-759 Fixed
2022-02-16 08:28:14 +00:00
Yahor Berdnikau ff3a08de6e Cleanup JVM toolchain implementation
Remove support for <Gradle 6.7 and fix extension method to accept
'JavaToolchainSpec' instead of 'Any'.

^KT-47924 Fixed
2022-02-15 09:36:31 +00:00
Yahor Berdnikau 34ca38d1a0 Fix comment in properties was not ignored by property
This lead to inable to spawn Kotlin daemon in buildSrc files compilation
2022-01-25 14:30:03 +01:00
Dmitriy Novozhilov b9c22a5e5e [Build] Add ability to choose which run configurations for modularized tests should be generated 2022-01-23 08:22:07 +03:00
Dmitriy Novozhilov b8e728f0cb [Build] Generate run configurations for modularized tests on Space 2022-01-23 08:22:07 +03:00
Nikolay Krasko 22b5d86656 Stop double null instrumentation for modules with several source roots
KTI-754

For instrumentation only destination directory is relevant. So each
execution did own instrumentation, and there no internal mechanism for
preventing re-instrumentation included.

Replace InstrumentIdeaExtensions with Javac2 because
areJavaClassesCompiled=true in the base class.

https://github.com/JetBrains/intellij-community/blob/9c40bdd/java/compiler/javac2/src/com/intellij/ant/InstrumentIdeaExtensions.java
https://github.com/JetBrains/intellij-community/blob/9c40bdd/java/compiler/javac2/src/com/intellij/ant/Javac2.java
2022-01-19 16:49:07 +03:00
Yahor Berdnikau 1c1e8f3c85 Migrate SubpluginsIT to new test DSL
^KT-45745 In Progress
2022-01-13 10:30:50 +01:00
Nikita Bobko fc9000d460 Adopt Kotlin JPS plugin modules Gradle model to kotlin/master
Recenlty, Kotlin repository started using Gradle 7.1.
Deprecated `compile`/`testCompile` Gradle API were dropped in that release
2022-01-12 15:25:17 +01:00
Ilya Gorbunov 2954769296 KT-50059 Stop publishing artifacts with 'modular' classifier 2021-12-29 17:43:56 +00:00
Yahor Berdnikau 3fca808b63 Revert "Revert "Set minimal supported Gradle version to 6.7.1.""
This reverts commit 2aa1c187d9.

^KT-49733 Fixed
2021-12-27 15:19:15 +01: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
Dmitriy Dolovov cb115a4088 [Build] Extract DefaultTestFilter.commandLineIncludePatterns as a property of Test 2021-12-20 12:35:48 +03:00
Vyacheslav Gerasimov 5369813acc Fix "IdeaWin64.dll not found" error when running tests on Windows 2021-12-17 21:28:10 +03:00