Commit Graph

1031 Commits

Author SHA1 Message Date
Nikolay Krasko c67c615fa3 Allow to disable progressive mode with the false value 2022-07-01 13:40:23 +00:00
Dmitriy Novozhilov 1a8496757e [Compiler] Mark all entrypoints to compiler API as experimental 2022-06-29 12:00:01 +00:00
Ilya Chernikov bb996c1b27 Switch kotlin version to 1.8
with appropriate fixes in testdata, tests and other
places.
2022-06-29 10:20:30 +02:00
Mikhael Bogdanov 8f60f73207 JvmDefault. Add deprecation warning for '-Xjvm-default=enable|compatibility' options
#KT-46329
2022-06-28 14:11:49 +02:00
Yahor Berdnikau 7e537b680e Remove 'org.jetbrains.kotlin.platform.type' attribute from publication
Temporary workaround for Kotlin Gradle plugin publications until
https://youtrack.jetbrains.com/issue/KT-52987 will be implemented.

Requested by Gradle team for Gradle 7.6 compatibility.
2022-06-28 11:02:04 +02:00
Yahor Berdnikau 9b768d647c Update Gradle publish plugin to 1.0.0-rc-3 version
This should fix publishing multiple artifacts with the same hash and
remove requirement of custom action from Gradle team.
2022-06-28 10:50:00 +02:00
Yahor Berdnikau f9e00b0eb2 Fix all publications contain dependencyManagement
Only apply gson constraint for those modules which adds dependency on
gson.
2022-06-24 08:10:49 +00:00
Simon Ogorodnik 00d7a755a9 Build. Disable K2 for jvm-minimal-for-test, as it uses multiplatform 2022-06-20 23:43:09 +00:00
sebastian.sellmair 19399a60d9 [kpm] Add :kotlin-gradle-plugin-proto to the'kotlinGradlePluginAndItsRequired' array
^KT-52568 Verification Pending
2022-06-17 22:27:07 +00:00
Yahor Berdnikau c495c07b1a Drop convention usage on accessing Java SourceSet
This is only valid for Gradle 7.1+, so new plugin variant was added -
"gradle71". For Gradle <=7.0 old convention approach is still used.

^KT-47047 In Progress
2022-06-14 10:53:20 +00:00
Dmitriy Novozhilov c62257bbab [Build] Use -Xuse-k2 flag instead of -Xuse-fir 2022-06-07 14:12:22 +00:00
Alexander Udalov 1557ed9489 Remove unsupported argument from common-configuration 2022-06-04 00:52:17 +02:00
Yahor Berdnikau ebce1a1d2d Fix warnings in gradle70 variant
This allowed to enable warning-as-errors for :k-g-p:gradle70 compilation

^KT-47047 In Progress
2022-06-03 08:29:57 +00:00
Yahor Berdnikau 1be8480aed Suppress deprecations for MavenPluginConfiguratorG6
This allowed to enable warning-as-errors for :k-g-p:main compilation

^KT-47047 In Progress
2022-06-03 08:29:56 +00:00
Yahor Berdnikau 4a7a0126f2 Decrease Kotlin daemon autoshutdown timeout to 30 sec
Daemon spawned via buildSrc compilation is incompatible with other
compilations in Kotlin repo, as they use custom compiler classpath.

To reduce memory consumption (especially on CI), idle autoshutdown
timeout was reduced from default 2 hours to 30 seconds.
2022-06-02 13:16:54 +00:00
Vyacheslav Gerasimov 7360dff0da Build: Fix test forks and memory calculations for low memory cases 2022-05-30 21:43:23 +03:00
Alexander Shabalin 20884d82eb [K/N] Modernize CompilationDatabase tasks
Merge-request: KT-MR-6276
Merged-by: Alexander Shabalin <Alexander.Shabalin@jetbrains.com>
2022-05-25 21:49:35 +00:00
Yahor Berdnikau 8b17a42866 Fix main Gradle plugins variants were published unshadowed
The problem comes from "com.gradle.plugin-publish" plugin. It asks to
run 'jar' task even if this tasks outputs are removed from artifacts.
As 'jar' and shadow 'embeddedJar' tasks outputs has the same name and
'jar' task runs after shadow one - this leads to jar file overwrite.
And eventually publishing unshadowed artifact.
2022-05-25 10:21:45 +02:00
Yahor Berdnikau af6f17c243 Unify kotlinCompilerClasspath for all projects
This will prevent spawning second Kotlin daemon during compilation
except 'buildSrc' compilation. Original change was introduced in
2e515f3945 commit.
2022-05-24 07:58:38 +00:00
Yahor Berdnikau f016fd4766 Fix 'compilerDummyJar' configuration was not properly exposed
This fixes error:
Project :kotlin-daemon-embeddable declares a dependency from
configuration 'compilerDummyJar' to configuration 'compilerDummyJar'
which is not declared in the descriptor for
project :kotlin-compiler-embeddable.
2022-05-24 07:58:37 +00:00
Yahor Berdnikau e25778a719 Fix ConcurrentModificationException
This exception is happening on build configuration trying to remove
default jar task artifacts from published one. I've set 'jar' task
to be always disabled instead and just add shadow jar to artifacts.
2022-05-24 07:58:36 +00:00
Yahor Berdnikau cf2d03b914 Move common configuration from /build.gradle.kts into plugin
Move all common to all projects configuration from root build.gradle.kts
into common-configuration convention plugin.
2022-05-24 07:58:36 +00:00
Yahor Berdnikau 3e82661d80 Introduce 'common-configuration' convention plugin
This plugin should do project common configuration in the Kotlin repo.
As a first thing I moved gson version constraint into it, because
current approach has Gradle bug:
https://github.com/gradle/gradle/issues/20548
2022-05-24 07:58:35 +00:00
Dmitriy Novozhilov 993021a71d [Build] Use 1.8 target version instead of 1.6 while using JPS build 2022-05-19 07:14:21 +00:00
Vyacheslav Gerasimov 7157a54155 Fix unnecessary usages of Locale.getDefault() 2022-05-06 22:08:25 +00:00
Aleksei.Cherepanov 0d0d7a9659 Fix JPS build for Kotlin
Disable gradle70 sourceSet for JPS buid
2022-05-06 12:52:59 +00:00
Nkolay Krasko 239d969f99 Remove source sets from the instrumentation task 2022-05-04 22:50:22 +00:00
Nkolay Krasko 0b6b129cc0 Disable erroneously enabled compilation during the instrumentation 2022-05-04 22:50:22 +00:00
Vyacheslav Gerasimov dcd17e41a4 Fix capitalization related deprecation warnings 2022-05-04 19:15:01 +00:00
Nikita Bobko c1f2d66ed8 Kotlin JPS plugin: drop intellij-core dependency
Drop dependency because
https://youtrack.jetbrains.com/issue/IDEA-292483/UnsupportedClassVersionError-when-trying-to-run-JUnit5-unit-test#focus=Comments-27-6034750.0-0

IDEA plans to drop `PathUtil` from JPS classpath, we should prepare to
that

`KotlinFacetSettingsProvider` isn't used in jps so it was moved into
intellij repo. It was moved to
`community/plugins/kotlin/idea/src/org/jetbrains/kotlin/config/KotlinFacetSettingsProvider.kt`
path (so you can find it git history)

Review: KT-MR-6195
2022-04-29 14:51:03 +02:00
Yahor Berdnikau cb35e868cc Don't add Kotlin specific attributes to legacy 'default' configuration
^KT-51913 Fixed
2022-04-29 08:29:34 +00:00
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