From a6bf9bf51b58c9bce20a2b3ccd51c5af707e23cc Mon Sep 17 00:00:00 2001 From: Alexander Likhachev Date: Tue, 9 Feb 2021 13:57:35 +0300 Subject: [PATCH] [Gradle, JS] Remove workaround for configuration cache enabled builds It's removed as those tasks now support Gradle configuration cache --- .../gradle/targets/js/dukat/DukatTask.kt | 5 ----- .../targets/js/npm/PublicPackageJsonTask.kt | 7 ------- .../js/npm/tasks/KotlinNpmInstallTask.kt | 5 ----- .../js/npm/tasks/RootPackageJsonTask.kt | 6 ------ .../targets/js/webpack/KotlinWebpack.kt | 6 ------ .../kotlin/gradle/utils/configurationCache.kt | 19 +------------------ 6 files changed, 1 insertion(+), 47 deletions(-) diff --git a/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/js/dukat/DukatTask.kt b/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/js/dukat/DukatTask.kt index 92246974ab6..e24f3fb4b40 100644 --- a/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/js/dukat/DukatTask.kt +++ b/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/js/dukat/DukatTask.kt @@ -26,11 +26,6 @@ abstract class DukatTask( compilation.disambiguatedName } - init { - // TODO: temporary workaround for configuration cache enabled builds -// disableTaskOnConfigurationCacheBuild { nodeJs.npmResolutionManager.toString() } - } - @get:Internal override val nodeModulesRequired: Boolean get() = true diff --git a/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/js/npm/PublicPackageJsonTask.kt b/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/js/npm/PublicPackageJsonTask.kt index 173f28c028f..bb1a4e8663c 100644 --- a/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/js/npm/PublicPackageJsonTask.kt +++ b/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/js/npm/PublicPackageJsonTask.kt @@ -13,8 +13,6 @@ import org.gradle.api.tasks.TaskAction import org.jetbrains.kotlin.gradle.plugin.mpp.KotlinJsCompilation import org.jetbrains.kotlin.gradle.targets.js.ir.KotlinJsIrCompilation import org.jetbrains.kotlin.gradle.targets.js.npm.NpmProject.Companion.PACKAGE_JSON -import org.jetbrains.kotlin.gradle.utils.disableTaskOnConfigurationCacheBuild -import org.jetbrains.kotlin.gradle.utils.getValue import org.jetbrains.kotlin.gradle.utils.property import java.io.File import javax.inject.Inject @@ -38,11 +36,6 @@ constructor( )[projectPath][compilationName] - init { - // TODO: temporary workaround for configuration cache enabled builds -// disableTaskOnConfigurationCacheBuild { nodeJs.npmResolutionManager.toString() } - } - // TODO: is map contains only serializable values? @get:Input val packageJsonCustomFields: Map by lazy { diff --git a/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/js/npm/tasks/KotlinNpmInstallTask.kt b/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/js/npm/tasks/KotlinNpmInstallTask.kt index cba0bf1e356..81a790b3aa5 100644 --- a/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/js/npm/tasks/KotlinNpmInstallTask.kt +++ b/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/js/npm/tasks/KotlinNpmInstallTask.kt @@ -27,11 +27,6 @@ open class KotlinNpmInstallTask : DefaultTask() { private val nodeJs = NodeJsRootPlugin.apply(project.rootProject) private val resolutionManager get() = nodeJs.npmResolutionManager - init { - // TODO: temporary workaround for configuration cache enabled builds -// disableTaskOnConfigurationCacheBuild { resolutionManager.toString() } - } - @Input val args: MutableList = mutableListOf() diff --git a/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/js/npm/tasks/RootPackageJsonTask.kt b/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/js/npm/tasks/RootPackageJsonTask.kt index d3eccdd8f7d..7da9c63954a 100644 --- a/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/js/npm/tasks/RootPackageJsonTask.kt +++ b/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/js/npm/tasks/RootPackageJsonTask.kt @@ -10,7 +10,6 @@ import org.gradle.api.tasks.OutputFile import org.gradle.api.tasks.TaskAction import org.jetbrains.kotlin.gradle.targets.js.nodejs.NodeJsRootPlugin import org.jetbrains.kotlin.gradle.targets.js.npm.NpmProject -import org.jetbrains.kotlin.gradle.utils.disableTaskOnConfigurationCacheBuild import java.io.File open class RootPackageJsonTask : DefaultTask() { @@ -29,11 +28,6 @@ open class RootPackageJsonTask : DefaultTask() { private val nodeJs = NodeJsRootPlugin.apply(project.rootProject) private val resolutionManager get() = nodeJs.npmResolutionManager - init { - // TODO: temporary workaround for configuration cache enabled builds -// disableTaskOnConfigurationCacheBuild { resolutionManager.toString() } - } - @get:OutputFile val rootPackageJson: File get() = nodeJs.rootPackageDir.resolve(NpmProject.PACKAGE_JSON) diff --git a/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/js/webpack/KotlinWebpack.kt b/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/js/webpack/KotlinWebpack.kt index c2bb17b3cfc..a99621e696f 100644 --- a/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/js/webpack/KotlinWebpack.kt +++ b/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/js/webpack/KotlinWebpack.kt @@ -25,7 +25,6 @@ import org.jetbrains.kotlin.gradle.targets.js.npm.RequiresNpmDependencies import org.jetbrains.kotlin.gradle.targets.js.npm.npmProject import org.jetbrains.kotlin.gradle.targets.js.webpack.KotlinWebpackConfig.Mode import org.jetbrains.kotlin.gradle.testing.internal.reportsDir -import org.jetbrains.kotlin.gradle.utils.disableTaskOnConfigurationCacheBuild import org.jetbrains.kotlin.gradle.utils.injected import org.jetbrains.kotlin.gradle.utils.newFileProperty import org.jetbrains.kotlin.gradle.utils.property @@ -42,11 +41,6 @@ constructor( private val nodeJs = NodeJsRootPlugin.apply(project.rootProject) private val versions = nodeJs.versions - init { - // TODO: temporary workaround for configuration cache enabled builds -// disableTaskOnConfigurationCacheBuild { nodeJs.npmResolutionManager.toString() } - } - private val npmProject = compilation.npmProject private val projectPath = project.path diff --git a/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/utils/configurationCache.kt b/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/utils/configurationCache.kt index 1a435028f97..022c1a9d4e9 100644 --- a/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/utils/configurationCache.kt +++ b/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/utils/configurationCache.kt @@ -5,7 +5,6 @@ package org.jetbrains.kotlin.gradle.utils -import org.gradle.api.Task import org.gradle.api.invocation.Gradle internal fun isConfigurationCacheAvailable(gradle: Gradle) = @@ -14,20 +13,4 @@ internal fun isConfigurationCacheAvailable(gradle: Gradle) = startParameters.javaClass.getMethod("isConfigurationCache").invoke(startParameters) as? Boolean } catch (_: Exception) { null - } ?: false - -internal fun Task.disableTaskOnConfigurationCacheBuild(transientFieldAccessor: () -> Unit) { - if (isConfigurationCacheAvailable(project.gradle)) { - onlyIf { - logger.warn("Configuration cache is not yet fully supported: use it at your own risk.") - try { - // transientFieldAccessor() will throw an exception after loading task from configuration cache - transientFieldAccessor() - true - } catch (e: Exception) { - logger.warn("Task cannot be executed because of corrupted state after loading from configuration cache.") - false - } - } - } -} \ No newline at end of file + } ?: false \ No newline at end of file