From 540419a5d769c551b7b554d1615c2c7052bfacdb Mon Sep 17 00:00:00 2001 From: Ilya Goncharov Date: Tue, 2 Nov 2021 12:57:49 +0300 Subject: [PATCH] [Gradle, JS] Do not force dukat in separate dukat task ^KT-34014 fixed ^KT-49505 fixed --- .../targets/js/dukat/SeparateDukatTask.kt | 2 +- .../resolver/KotlinCompilationNpmResolver.kt | 2 +- .../gradle/targets/js/yarn/YarnPlugin.kt | 27 ++++++++----------- 3 files changed, 13 insertions(+), 18 deletions(-) diff --git a/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/js/dukat/SeparateDukatTask.kt b/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/js/dukat/SeparateDukatTask.kt index d79efd7813f..76736b5dd66 100644 --- a/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/js/dukat/SeparateDukatTask.kt +++ b/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/js/dukat/SeparateDukatTask.kt @@ -20,7 +20,7 @@ constructor( override val considerGeneratingFlag: Boolean = false override val requiredNpmDependencies: Set by lazy { - setOf(nodeJs.versions.dukat) + emptySet() } @get:OutputDirectory diff --git a/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/js/npm/resolver/KotlinCompilationNpmResolver.kt b/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/js/npm/resolver/KotlinCompilationNpmResolver.kt index 23788dbfea9..567e4a06dea 100644 --- a/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/js/npm/resolver/KotlinCompilationNpmResolver.kt +++ b/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/js/npm/resolver/KotlinCompilationNpmResolver.kt @@ -462,7 +462,7 @@ internal class KotlinCompilationNpmResolver( val toolsNpmDependencies = compilationResolver.rootResolver.taskRequirements .getCompilationNpmRequirements(projectPath, compilationResolver.compilationDisambiguatedName) - val dukatIfNecessary = if (externalNpmDependencies.any { it.generateExternals }) { + val dukatIfNecessary = if (externalNpmDependencies.isNotEmpty()) { setOf( NpmDependencyDeclaration( scope = NpmDependency.Scope.DEV, diff --git a/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/js/yarn/YarnPlugin.kt b/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/js/yarn/YarnPlugin.kt index 710a850e4fa..546c63076c2 100644 --- a/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/js/yarn/YarnPlugin.kt +++ b/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/js/yarn/YarnPlugin.kt @@ -54,8 +54,17 @@ open class YarnPlugin : Plugin { // https://youtrack.jetbrains.com/issue/KT-48241 project.allprojects .forEach { - it.tasks.implementing(RequiresNpmDependencies::class) - .forEach {} + val fn: (Project) -> Unit = { + it.tasks.implementing(RequiresNpmDependencies::class) + .forEach {} + } + if (it.state.executed) { + fn(it) + } else { + it.afterEvaluate { + fn(it) + } + } } } @@ -77,20 +86,6 @@ open class YarnPlugin : Plugin { it.dependsOn(packageJsonUmbrella) } -// project.allprojects -// .forEach { -// val fn: (Project) -> Unit = { -// it.tasks.implementing(RequiresNpmDependencies::class).all {} -// } -// if (it.state.executed) { -// fn(it) -// } else { -// it.afterEvaluate { -// fn(it) -// } -// } -// } - val storeYarnLock = tasks.register("kotlinStoreYarnLock", YarnLockCopyTask::class.java) { it.dependsOn(kotlinNpmInstall) it.inputFile.set(nodeJs.rootPackageDir.resolve("yarn.lock"))