Distinguish outputs of JS IR tasks.
Now JS IR link and sync tasks will output produced artifacts based on compilation name, binary name and binary mode. This will remove Gradle 7 error about missing task dependencies, which should not depend on each other. ^KT-44949 In Progress
This commit is contained in:
+1
-1
@@ -58,7 +58,7 @@ class Kotlin2JsIrGradlePluginIT : AbstractKotlin2JsGradlePluginIT(true) {
|
|||||||
|
|
||||||
assertTasksExecuted(":compileProductionExecutableKotlinJs")
|
assertTasksExecuted(":compileProductionExecutableKotlinJs")
|
||||||
|
|
||||||
assertFileExists("build/js/packages/kotlin-js-nodejs/kotlin/kotlin-js-nodejs.js")
|
assertFileExists("build/js/packages/kotlin-js-nodejs/kotlin/productionExecutable/kotlin-js-nodejs.js")
|
||||||
}
|
}
|
||||||
|
|
||||||
File("${projectDir.canonicalPath}/src").deleteRecursively()
|
File("${projectDir.canonicalPath}/src").deleteRecursively()
|
||||||
|
|||||||
+5
-5
@@ -20,10 +20,7 @@ import org.jetbrains.kotlin.gradle.plugin.mpp.disambiguateName
|
|||||||
import org.jetbrains.kotlin.gradle.targets.js.JsAggregatingExecutionSource
|
import org.jetbrains.kotlin.gradle.targets.js.JsAggregatingExecutionSource
|
||||||
import org.jetbrains.kotlin.gradle.targets.js.KotlinJsReportAggregatingTestRun
|
import org.jetbrains.kotlin.gradle.targets.js.KotlinJsReportAggregatingTestRun
|
||||||
import org.jetbrains.kotlin.gradle.targets.js.KotlinJsTarget
|
import org.jetbrains.kotlin.gradle.targets.js.KotlinJsTarget
|
||||||
import org.jetbrains.kotlin.gradle.targets.js.dsl.KotlinJsBrowserDsl
|
import org.jetbrains.kotlin.gradle.targets.js.dsl.*
|
||||||
import org.jetbrains.kotlin.gradle.targets.js.dsl.KotlinJsNodeDsl
|
|
||||||
import org.jetbrains.kotlin.gradle.targets.js.dsl.KotlinJsSubTargetContainerDsl
|
|
||||||
import org.jetbrains.kotlin.gradle.targets.js.dsl.KotlinJsTargetDsl
|
|
||||||
import org.jetbrains.kotlin.gradle.targets.js.npm.npmProject
|
import org.jetbrains.kotlin.gradle.targets.js.npm.npmProject
|
||||||
import org.jetbrains.kotlin.gradle.tasks.registerTask
|
import org.jetbrains.kotlin.gradle.tasks.registerTask
|
||||||
import org.jetbrains.kotlin.gradle.utils.lowerCamelCaseName
|
import org.jetbrains.kotlin.gradle.utils.lowerCamelCaseName
|
||||||
@@ -111,6 +108,9 @@ constructor(
|
|||||||
binary.linkTask.configure {
|
binary.linkTask.configure {
|
||||||
it.kotlinOptions.outputFile = project.buildDir
|
it.kotlinOptions.outputFile = project.buildDir
|
||||||
.resolve(COMPILE_SYNC)
|
.resolve(COMPILE_SYNC)
|
||||||
|
.resolve(compilation.name)
|
||||||
|
.resolve(binary.name)
|
||||||
|
.resolve(binary.mode.name.toLowerCase())
|
||||||
.resolve(npmProject.main)
|
.resolve(npmProject.main)
|
||||||
.canonicalPath
|
.canonicalPath
|
||||||
|
|
||||||
@@ -133,7 +133,7 @@ constructor(
|
|||||||
task.from(project.tasks.named(compilation.processResourcesTaskName))
|
task.from(project.tasks.named(compilation.processResourcesTaskName))
|
||||||
|
|
||||||
task.into(
|
task.into(
|
||||||
npmProject.dist
|
npmProject.dist.resolve(binary.name)
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
-5
@@ -97,11 +97,6 @@ constructor(
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@get:Internal
|
|
||||||
val nodeModulesToLoad: List<String> by lazy {
|
|
||||||
listOf("./" + compilation.npmProject.main)
|
|
||||||
}
|
|
||||||
|
|
||||||
override val nodeModulesRequired: Boolean
|
override val nodeModulesRequired: Boolean
|
||||||
@Internal get() = testFramework!!.nodeModulesRequired
|
@Internal get() = testFramework!!.nodeModulesRequired
|
||||||
|
|
||||||
|
|||||||
+1
-3
@@ -314,9 +314,7 @@ class KotlinKarma(
|
|||||||
nodeJsArgs: MutableList<String>,
|
nodeJsArgs: MutableList<String>,
|
||||||
debug: Boolean
|
debug: Boolean
|
||||||
): TCServiceMessagesTestExecutionSpec {
|
): TCServiceMessagesTestExecutionSpec {
|
||||||
val file = task.nodeModulesToLoad
|
val file = task.inputFileProperty.get().asFile.toString()
|
||||||
.map { npmProject.require(it) }
|
|
||||||
.single()
|
|
||||||
|
|
||||||
val adapterJs = createAdapterJs(file, debug)
|
val adapterJs = createAdapterJs(file, debug)
|
||||||
|
|
||||||
|
|||||||
+1
-3
@@ -74,9 +74,7 @@ class KotlinMocha(@Transient override val compilation: KotlinJsCompilation, priv
|
|||||||
|
|
||||||
val mocha = npmProject.require("mocha/bin/mocha")
|
val mocha = npmProject.require("mocha/bin/mocha")
|
||||||
|
|
||||||
val file = task.nodeModulesToLoad
|
val file = task.inputFileProperty.get().asFile.toString()
|
||||||
.map { npmProject.require(it) }
|
|
||||||
.single()
|
|
||||||
|
|
||||||
val adapter = createAdapterJs(file)
|
val adapter = createAdapterJs(file)
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user