From 81bed3c89cadf09025b2dcb4d29ff04dc899f499 Mon Sep 17 00:00:00 2001 From: Alexander Sysoev Date: Wed, 11 Sep 2024 15:09:51 +0200 Subject: [PATCH] Added Gradle Doctor to the build --- build.gradle.kts | 1 + compiler-plugin/build.gradle.kts | 4 ++++ gradle-conventions/latest-only/build.gradle.kts | 1 + .../kotlin/conventions-gradle-doctor.gradle.kts | 14 ++++++++++++++ gradle-plugin/build.gradle.kts | 1 + versions-root/libs.versions.toml | 3 +++ 6 files changed, 24 insertions(+) create mode 100644 gradle-conventions/latest-only/src/main/kotlin/conventions-gradle-doctor.gradle.kts diff --git a/build.gradle.kts b/build.gradle.kts index a3ca21bc..a6b7aa66 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -10,6 +10,7 @@ plugins { alias(libs.plugins.kotlinx.rpc) apply false alias(libs.plugins.atomicfu) apply false alias(libs.plugins.conventions.kover) + alias(libs.plugins.conventions.gradle.doctor) alias(libs.plugins.binary.compatibility.validator) } diff --git a/compiler-plugin/build.gradle.kts b/compiler-plugin/build.gradle.kts index 7e657b05..c0d16570 100644 --- a/compiler-plugin/build.gradle.kts +++ b/compiler-plugin/build.gradle.kts @@ -2,6 +2,10 @@ * Copyright 2023-2024 JetBrains s.r.o and contributors. Use of this source code is governed by the Apache 2.0 license. */ +plugins { + alias(libs.plugins.conventions.gradle.doctor) +} + val kotlinVersion: KotlinVersion by extra val rpcVersion: String = libs.versions.kotlinx.rpc.get() diff --git a/gradle-conventions/latest-only/build.gradle.kts b/gradle-conventions/latest-only/build.gradle.kts index 11a85e40..d0a52cd7 100644 --- a/gradle-conventions/latest-only/build.gradle.kts +++ b/gradle-conventions/latest-only/build.gradle.kts @@ -14,4 +14,5 @@ dependencies { implementation(":gradle-conventions-settings") implementation(libs.kotlin.gradle.plugin) implementation(libs.kover.gradle.plugin) + implementation(libs.gradle.doctor.plugin) } diff --git a/gradle-conventions/latest-only/src/main/kotlin/conventions-gradle-doctor.gradle.kts b/gradle-conventions/latest-only/src/main/kotlin/conventions-gradle-doctor.gradle.kts new file mode 100644 index 00000000..8c5ec027 --- /dev/null +++ b/gradle-conventions/latest-only/src/main/kotlin/conventions-gradle-doctor.gradle.kts @@ -0,0 +1,14 @@ +/* + * Copyright 2023-2024 JetBrains s.r.o and contributors. Use of this source code is governed by the Apache 2.0 license. + */ + +plugins { + id("com.osacky.doctor") +} + +doctor { + enableTestCaching = false + warnWhenNotUsingParallelGC = true + disallowMultipleDaemons = true + GCFailThreshold = 0.5f +} diff --git a/gradle-plugin/build.gradle.kts b/gradle-plugin/build.gradle.kts index 0ec4e748..ac0f11eb 100644 --- a/gradle-plugin/build.gradle.kts +++ b/gradle-plugin/build.gradle.kts @@ -9,6 +9,7 @@ plugins { alias(libs.plugins.conventions.gradle.publish) alias(libs.plugins.gradle.kotlin.dsl) alias(libs.plugins.gradle.plugin.publish) + alias(libs.plugins.conventions.gradle.doctor) } group = "org.jetbrains.kotlinx" diff --git a/versions-root/libs.versions.toml b/versions-root/libs.versions.toml index 017efb2c..91ad9b08 100644 --- a/versions-root/libs.versions.toml +++ b/versions-root/libs.versions.toml @@ -17,6 +17,7 @@ kotlin-wrappers = "1.0.0-pre.781" junit4 = "4.13.2" junit5 = "5.10.3" intellij = "213.7172.53" +gradle-doctor = "0.10.0" # stub versions – relpaced based on kotlin, mostly for gradle-related (plugins) dependencies # but also for dependencies for compiler specific modules @@ -93,6 +94,7 @@ kover-gradle-plugin = { module = "org.jetbrains.kotlinx:kover-gradle-plugin", ve kotlin-js-wrappers = { module = "org.jetbrains.kotlin-wrappers:kotlin-js", version.ref = "kotlin-wrappers" } gradle-kotlin-dsl-pluigns = { module = "org.gradle.kotlin:gradle-kotlin-dsl-plugins", version.ref = "gradle-kotlin-dsl" } intellij-util = { module = "com.jetbrains.intellij.platform:util", version.ref = "intellij" } +gradle-doctor-plugin = { module = "com.osacky.doctor:doctor-plugin", version.ref = "gradle-doctor" } [plugins] kotlin-multiplatform = { id = "org.jetbrains.kotlin.multiplatform", version.ref = "kotlin-lang" } @@ -113,6 +115,7 @@ conventions-jvm = { id = "conventions-jvm", version.ref = "kotlinx-rpc" } conventions-kmp = { id = "conventions-kmp", version.ref = "kotlinx-rpc" } conventions-gradle-publish = { id = "conventions-gradle-publish", version.ref = "kotlinx-rpc" } conventions-kover = { id = "conventions-kover", version.ref = "kotlinx-rpc" } +conventions-gradle-doctor = { id = "conventions-gradle-doctor", version.ref = "kotlinx-rpc" } compiler-specific-module = { id = "compiler-specific-module", version.ref = "kotlinx-rpc" } # gradle-plugin project