[Gradle, JS] Use KotlinJsIrCompilation with deprecated KotlinJsCompilation
^KT-41382 fixed
This commit is contained in:
committed by
Space Team
parent
4c36538646
commit
3a6cdc83cf
+2
-2
@@ -14,9 +14,9 @@ import org.jetbrains.kotlin.gradle.dsl.*
|
|||||||
import org.jetbrains.kotlin.gradle.plugin.KotlinPlatformType
|
import org.jetbrains.kotlin.gradle.plugin.KotlinPlatformType
|
||||||
import org.jetbrains.kotlin.gradle.plugin.KotlinSourceSet
|
import org.jetbrains.kotlin.gradle.plugin.KotlinSourceSet
|
||||||
import org.jetbrains.kotlin.gradle.plugin.KotlinTarget
|
import org.jetbrains.kotlin.gradle.plugin.KotlinTarget
|
||||||
import org.jetbrains.kotlin.gradle.plugin.mpp.KotlinJsCompilation
|
|
||||||
import org.jetbrains.kotlin.gradle.plugin.sources.KotlinDependencyScope
|
import org.jetbrains.kotlin.gradle.plugin.sources.KotlinDependencyScope
|
||||||
import org.jetbrains.kotlin.gradle.plugin.sources.sourceSetDependencyConfigurationByScope
|
import org.jetbrains.kotlin.gradle.plugin.sources.sourceSetDependencyConfigurationByScope
|
||||||
|
import org.jetbrains.kotlin.gradle.targets.js.ir.KotlinJsIrCompilation
|
||||||
import org.jetbrains.kotlin.gradle.targets.js.npm.SemVer
|
import org.jetbrains.kotlin.gradle.targets.js.npm.SemVer
|
||||||
import org.jetbrains.kotlin.gradle.utils.forAllTargets
|
import org.jetbrains.kotlin.gradle.utils.forAllTargets
|
||||||
|
|
||||||
@@ -45,7 +45,7 @@ private fun KotlinTarget.addKotlinDomApiDependency(
|
|||||||
) {
|
) {
|
||||||
compilations.configureEach { compilation ->
|
compilations.configureEach { compilation ->
|
||||||
if (compilation.platformType != KotlinPlatformType.js) return@configureEach
|
if (compilation.platformType != KotlinPlatformType.js) return@configureEach
|
||||||
if (compilation !is KotlinJsCompilation) return@configureEach
|
if (compilation !is KotlinJsIrCompilation) return@configureEach
|
||||||
|
|
||||||
compilation.allKotlinSourceSets.forEach { kotlinSourceSet ->
|
compilation.allKotlinSourceSets.forEach { kotlinSourceSet ->
|
||||||
val scopeConfiguration = configurations
|
val scopeConfiguration = configurations
|
||||||
|
|||||||
+2
-2
@@ -9,8 +9,8 @@ import org.gradle.api.Project
|
|||||||
import org.gradle.api.tasks.TaskProvider
|
import org.gradle.api.tasks.TaskProvider
|
||||||
import org.jetbrains.kotlin.gradle.dsl.KotlinJsCompilerOptions
|
import org.jetbrains.kotlin.gradle.dsl.KotlinJsCompilerOptions
|
||||||
import org.jetbrains.kotlin.gradle.dsl.KotlinJsCompilerOptionsHelper
|
import org.jetbrains.kotlin.gradle.dsl.KotlinJsCompilerOptionsHelper
|
||||||
import org.jetbrains.kotlin.gradle.plugin.mpp.KotlinJsCompilation
|
|
||||||
import org.jetbrains.kotlin.gradle.targets.js.ir.JsIrBinary
|
import org.jetbrains.kotlin.gradle.targets.js.ir.JsIrBinary
|
||||||
|
import org.jetbrains.kotlin.gradle.targets.js.ir.KotlinJsIrCompilation
|
||||||
import org.jetbrains.kotlin.gradle.targets.js.ir.KotlinJsIrTarget
|
import org.jetbrains.kotlin.gradle.targets.js.ir.KotlinJsIrTarget
|
||||||
import org.jetbrains.kotlin.gradle.targets.js.npm.npmProject
|
import org.jetbrains.kotlin.gradle.targets.js.npm.npmProject
|
||||||
import org.jetbrains.kotlin.gradle.tasks.Kotlin2JsCompile
|
import org.jetbrains.kotlin.gradle.tasks.Kotlin2JsCompile
|
||||||
@@ -43,7 +43,7 @@ internal class KotlinJsIrSourceSetProcessor(
|
|||||||
it.dependsOn(kotlinTask)
|
it.dependsOn(kotlinTask)
|
||||||
}
|
}
|
||||||
|
|
||||||
val compilation = compilationInfo.tcs.compilation as KotlinJsCompilation
|
val compilation = compilationInfo.tcs.compilation as KotlinJsIrCompilation
|
||||||
|
|
||||||
compilation.binaries
|
compilation.binaries
|
||||||
.withType(JsIrBinary::class.java)
|
.withType(JsIrBinary::class.java)
|
||||||
|
|||||||
+2
-1
@@ -7,6 +7,7 @@ import org.jetbrains.kotlin.gradle.internal.kaptGenerateStubsTaskName
|
|||||||
import org.jetbrains.kotlin.gradle.logging.kotlinDebug
|
import org.jetbrains.kotlin.gradle.logging.kotlinDebug
|
||||||
import org.jetbrains.kotlin.gradle.plugin.mpp.*
|
import org.jetbrains.kotlin.gradle.plugin.mpp.*
|
||||||
import org.jetbrains.kotlin.gradle.targets.js.ir.JsIrBinary
|
import org.jetbrains.kotlin.gradle.targets.js.ir.JsIrBinary
|
||||||
|
import org.jetbrains.kotlin.gradle.targets.js.ir.KotlinJsIrCompilation
|
||||||
import org.jetbrains.kotlin.gradle.tasks.*
|
import org.jetbrains.kotlin.gradle.tasks.*
|
||||||
import org.jetbrains.kotlin.gradle.utils.whenKaptEnabled
|
import org.jetbrains.kotlin.gradle.utils.whenKaptEnabled
|
||||||
|
|
||||||
@@ -64,7 +65,7 @@ class SubpluginEnvironment(
|
|||||||
kotlinCompilation.compileTaskProvider.configure(configureKotlinTask)
|
kotlinCompilation.compileTaskProvider.configure(configureKotlinTask)
|
||||||
project.configurePluginOptionsForKapt(kotlinCompilation, configureKotlinTask)
|
project.configurePluginOptionsForKapt(kotlinCompilation, configureKotlinTask)
|
||||||
|
|
||||||
if (kotlinCompilation is KotlinJsCompilation) {
|
if (kotlinCompilation is KotlinJsIrCompilation) {
|
||||||
kotlinCompilation.binaries.all {
|
kotlinCompilation.binaries.all {
|
||||||
if (it is JsIrBinary) {
|
if (it is JsIrBinary) {
|
||||||
it.linkTask.configure(configureKotlinTask)
|
it.linkTask.configure(configureKotlinTask)
|
||||||
|
|||||||
+2
-3
@@ -10,10 +10,9 @@ import org.jetbrains.kotlin.gradle.plugin.KotlinCompilation
|
|||||||
import org.jetbrains.kotlin.gradle.plugin.KotlinPluginLifecycle.Stage.AfterEvaluateBuildscript
|
import org.jetbrains.kotlin.gradle.plugin.KotlinPluginLifecycle.Stage.AfterEvaluateBuildscript
|
||||||
import org.jetbrains.kotlin.gradle.plugin.KotlinProjectSetupCoroutine
|
import org.jetbrains.kotlin.gradle.plugin.KotlinProjectSetupCoroutine
|
||||||
import org.jetbrains.kotlin.gradle.plugin.await
|
import org.jetbrains.kotlin.gradle.plugin.await
|
||||||
import org.jetbrains.kotlin.gradle.plugin.launchInStage
|
import org.jetbrains.kotlin.gradle.targets.js.ir.KotlinJsIrCompilation
|
||||||
import org.jetbrains.kotlin.gradle.utils.copyAttributes
|
import org.jetbrains.kotlin.gradle.utils.copyAttributes
|
||||||
import org.jetbrains.kotlin.gradle.utils.forAllTargets
|
import org.jetbrains.kotlin.gradle.utils.forAllTargets
|
||||||
import org.jetbrains.kotlin.gradle.utils.targets
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -66,7 +65,7 @@ private val KotlinCompilation<*>.allOwnedConfigurationsNames
|
|||||||
androidVariant.compileConfiguration.name,
|
androidVariant.compileConfiguration.name,
|
||||||
androidVariant.runtimeConfiguration.name
|
androidVariant.runtimeConfiguration.name
|
||||||
)
|
)
|
||||||
is KotlinJsCompilation -> listOfNotNull(npmAggregatedConfigurationName, publicPackageJsonConfigurationName)
|
is KotlinJsIrCompilation -> listOfNotNull(npmAggregatedConfigurationName, publicPackageJsonConfigurationName)
|
||||||
else -> emptyList()
|
else -> emptyList()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
+2
-2
@@ -10,15 +10,15 @@ import org.jetbrains.kotlin.gradle.plugin.KotlinCommonSourceSetProcessor
|
|||||||
import org.jetbrains.kotlin.gradle.plugin.KotlinCompilationInfo
|
import org.jetbrains.kotlin.gradle.plugin.KotlinCompilationInfo
|
||||||
import org.jetbrains.kotlin.gradle.plugin.KotlinJsIrSourceSetProcessor
|
import org.jetbrains.kotlin.gradle.plugin.KotlinJsIrSourceSetProcessor
|
||||||
import org.jetbrains.kotlin.gradle.plugin.mpp.KotlinCommonCompilation
|
import org.jetbrains.kotlin.gradle.plugin.mpp.KotlinCommonCompilation
|
||||||
import org.jetbrains.kotlin.gradle.plugin.mpp.KotlinJsCompilation
|
|
||||||
import org.jetbrains.kotlin.gradle.plugin.mpp.KotlinJvmCompilation
|
import org.jetbrains.kotlin.gradle.plugin.mpp.KotlinJvmCompilation
|
||||||
|
import org.jetbrains.kotlin.gradle.targets.js.ir.KotlinJsIrCompilation
|
||||||
import org.jetbrains.kotlin.gradle.tasks.KotlinTasksProvider
|
import org.jetbrains.kotlin.gradle.tasks.KotlinTasksProvider
|
||||||
|
|
||||||
internal val KotlinCompilationProcessorSideEffect = KotlinCompilationSideEffect { compilation ->
|
internal val KotlinCompilationProcessorSideEffect = KotlinCompilationSideEffect { compilation ->
|
||||||
val processor = when (compilation) {
|
val processor = when (compilation) {
|
||||||
is KotlinCommonCompilation -> KotlinCommonSourceSetProcessor(KotlinCompilationInfo(compilation), KotlinTasksProvider())
|
is KotlinCommonCompilation -> KotlinCommonSourceSetProcessor(KotlinCompilationInfo(compilation), KotlinTasksProvider())
|
||||||
is KotlinJvmCompilation -> Kotlin2JvmSourceSetProcessor(KotlinTasksProvider(), KotlinCompilationInfo(compilation))
|
is KotlinJvmCompilation -> Kotlin2JvmSourceSetProcessor(KotlinTasksProvider(), KotlinCompilationInfo(compilation))
|
||||||
is KotlinJsCompilation -> KotlinJsIrSourceSetProcessor(KotlinTasksProvider(), KotlinCompilationInfo(compilation))
|
is KotlinJsIrCompilation -> KotlinJsIrSourceSetProcessor(KotlinTasksProvider(), KotlinCompilationInfo(compilation))
|
||||||
else -> null
|
else -> null
|
||||||
}
|
}
|
||||||
processor?.run()
|
processor?.run()
|
||||||
|
|||||||
+2
-2
@@ -14,7 +14,7 @@ import org.gradle.api.attributes.AttributeContainer
|
|||||||
import org.gradle.api.tasks.TaskProvider
|
import org.gradle.api.tasks.TaskProvider
|
||||||
import org.jetbrains.kotlin.gradle.dsl.KotlinJsCompilerOptions
|
import org.jetbrains.kotlin.gradle.dsl.KotlinJsCompilerOptions
|
||||||
import org.jetbrains.kotlin.gradle.dsl.KotlinJsOptions
|
import org.jetbrains.kotlin.gradle.dsl.KotlinJsOptions
|
||||||
import org.jetbrains.kotlin.gradle.plugin.*
|
import org.jetbrains.kotlin.gradle.plugin.HasCompilerOptions
|
||||||
import org.jetbrains.kotlin.gradle.plugin.mpp.compilationImpl.KotlinCompilationImpl
|
import org.jetbrains.kotlin.gradle.plugin.mpp.compilationImpl.KotlinCompilationImpl
|
||||||
import org.jetbrains.kotlin.gradle.targets.js.dsl.KotlinJsSubTargetContainerDsl
|
import org.jetbrains.kotlin.gradle.targets.js.dsl.KotlinJsSubTargetContainerDsl
|
||||||
import org.jetbrains.kotlin.gradle.targets.js.ir.JsBinary
|
import org.jetbrains.kotlin.gradle.targets.js.ir.JsBinary
|
||||||
@@ -98,4 +98,4 @@ open class KotlinJsCompilation @Inject internal constructor(
|
|||||||
project.configure(this, handler)
|
project.configure(this, handler)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
+7
-7
@@ -11,10 +11,10 @@ import org.jetbrains.kotlin.gradle.plugin.CompilationExecutionSource
|
|||||||
import org.jetbrains.kotlin.gradle.plugin.CompilationExecutionSourceSupport
|
import org.jetbrains.kotlin.gradle.plugin.CompilationExecutionSourceSupport
|
||||||
import org.jetbrains.kotlin.gradle.plugin.KotlinTarget
|
import org.jetbrains.kotlin.gradle.plugin.KotlinTarget
|
||||||
import org.jetbrains.kotlin.gradle.plugin.KotlinTargetTestRun
|
import org.jetbrains.kotlin.gradle.plugin.KotlinTargetTestRun
|
||||||
import org.jetbrains.kotlin.gradle.plugin.mpp.KotlinJsCompilation
|
|
||||||
import org.jetbrains.kotlin.gradle.targets.js.dsl.KotlinJsSubTargetContainerDsl
|
import org.jetbrains.kotlin.gradle.targets.js.dsl.KotlinJsSubTargetContainerDsl
|
||||||
import org.jetbrains.kotlin.gradle.targets.js.dsl.KotlinJsSubTargetDsl
|
import org.jetbrains.kotlin.gradle.targets.js.dsl.KotlinJsSubTargetDsl
|
||||||
import org.jetbrains.kotlin.gradle.targets.js.dsl.KotlinWasmSubTargetContainerDsl
|
import org.jetbrains.kotlin.gradle.targets.js.dsl.KotlinWasmSubTargetContainerDsl
|
||||||
|
import org.jetbrains.kotlin.gradle.targets.js.ir.KotlinJsIrCompilation
|
||||||
import org.jetbrains.kotlin.gradle.targets.js.testing.KotlinJsTest
|
import org.jetbrains.kotlin.gradle.targets.js.testing.KotlinJsTest
|
||||||
import org.jetbrains.kotlin.gradle.testing.KotlinReportAggregatingTestRun
|
import org.jetbrains.kotlin.gradle.testing.KotlinReportAggregatingTestRun
|
||||||
import org.jetbrains.kotlin.gradle.testing.KotlinTaskTestRun
|
import org.jetbrains.kotlin.gradle.testing.KotlinTaskTestRun
|
||||||
@@ -22,12 +22,12 @@ import org.jetbrains.kotlin.gradle.testing.requireCompilationOfTarget
|
|||||||
import javax.inject.Inject
|
import javax.inject.Inject
|
||||||
import kotlin.properties.Delegates
|
import kotlin.properties.Delegates
|
||||||
|
|
||||||
class JsCompilationExecutionSource(override val compilation: KotlinJsCompilation) :
|
class JsCompilationExecutionSource(override val compilation: KotlinJsIrCompilation) :
|
||||||
CompilationExecutionSource<KotlinJsCompilation>
|
CompilationExecutionSource<KotlinJsIrCompilation>
|
||||||
|
|
||||||
open class KotlinJsPlatformTestRun(testRunName: String, target: KotlinTarget) :
|
open class KotlinJsPlatformTestRun(testRunName: String, target: KotlinTarget) :
|
||||||
KotlinTaskTestRun<JsCompilationExecutionSource, KotlinJsTest>(testRunName, target),
|
KotlinTaskTestRun<JsCompilationExecutionSource, KotlinJsTest>(testRunName, target),
|
||||||
CompilationExecutionSourceSupport<KotlinJsCompilation> {
|
CompilationExecutionSourceSupport<KotlinJsIrCompilation> {
|
||||||
|
|
||||||
private var _executionSource: JsCompilationExecutionSource by Delegates.notNull()
|
private var _executionSource: JsCompilationExecutionSource by Delegates.notNull()
|
||||||
|
|
||||||
@@ -38,7 +38,7 @@ open class KotlinJsPlatformTestRun(testRunName: String, target: KotlinTarget) :
|
|||||||
_executionSource = value
|
_executionSource = value
|
||||||
}
|
}
|
||||||
|
|
||||||
override fun setExecutionSourceFrom(compilation: KotlinJsCompilation) {
|
override fun setExecutionSourceFrom(compilation: KotlinJsIrCompilation) {
|
||||||
requireCompilationOfTarget(compilation, target)
|
requireCompilationOfTarget(compilation, target)
|
||||||
|
|
||||||
executionSource = JsCompilationExecutionSource(compilation)
|
executionSource = JsCompilationExecutionSource(compilation)
|
||||||
@@ -57,9 +57,9 @@ abstract class KotlinJsReportAggregatingTestRun @Inject constructor(
|
|||||||
override val target: KotlinJsSubTargetContainerDsl
|
override val target: KotlinJsSubTargetContainerDsl
|
||||||
) : KotlinReportAggregatingTestRun<JsCompilationExecutionSource, JsAggregatingExecutionSource, KotlinJsPlatformTestRun>(testRunName),
|
) : KotlinReportAggregatingTestRun<JsCompilationExecutionSource, JsAggregatingExecutionSource, KotlinJsPlatformTestRun>(testRunName),
|
||||||
KotlinTargetTestRun<JsAggregatingExecutionSource>,
|
KotlinTargetTestRun<JsAggregatingExecutionSource>,
|
||||||
CompilationExecutionSourceSupport<KotlinJsCompilation> {
|
CompilationExecutionSourceSupport<KotlinJsIrCompilation> {
|
||||||
|
|
||||||
override fun setExecutionSourceFrom(compilation: KotlinJsCompilation) = configureAllExecutions {
|
override fun setExecutionSourceFrom(compilation: KotlinJsIrCompilation) = configureAllExecutions {
|
||||||
setExecutionSourceFrom(compilation)
|
setExecutionSourceFrom(compilation)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
+2
-1
@@ -9,11 +9,12 @@
|
|||||||
package org.jetbrains.kotlin.gradle.plugin.mpp
|
package org.jetbrains.kotlin.gradle.plugin.mpp
|
||||||
|
|
||||||
import org.gradle.api.Project
|
import org.gradle.api.Project
|
||||||
|
import org.jetbrains.kotlin.gradle.targets.js.ir.KotlinJsIrCompilation
|
||||||
|
|
||||||
@Deprecated("The Kotlin/JS legacy target is deprecated and its support completely discontinued", level = DeprecationLevel.WARNING)
|
@Deprecated("The Kotlin/JS legacy target is deprecated and its support completely discontinued", level = DeprecationLevel.WARNING)
|
||||||
abstract class KotlinJsTargetPreset(
|
abstract class KotlinJsTargetPreset(
|
||||||
project: Project
|
project: Project
|
||||||
) : KotlinOnlyTargetPreset<KotlinOnlyTarget<KotlinJsCompilation>, KotlinJsCompilation>(
|
) : KotlinOnlyTargetPreset<KotlinOnlyTarget<KotlinJsIrCompilation>, KotlinJsIrCompilation>(
|
||||||
project
|
project
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|||||||
+2
-2
@@ -10,7 +10,7 @@ import org.gradle.api.file.RegularFileProperty
|
|||||||
import org.gradle.api.tasks.*
|
import org.gradle.api.tasks.*
|
||||||
import org.gradle.work.DisableCachingByDefault
|
import org.gradle.work.DisableCachingByDefault
|
||||||
import org.gradle.work.NormalizeLineEndings
|
import org.gradle.work.NormalizeLineEndings
|
||||||
import org.jetbrains.kotlin.gradle.plugin.mpp.KotlinJsCompilation
|
import org.jetbrains.kotlin.gradle.targets.js.ir.KotlinJsIrCompilation
|
||||||
import org.jetbrains.kotlin.gradle.tasks.registerTask
|
import org.jetbrains.kotlin.gradle.tasks.registerTask
|
||||||
import org.jetbrains.kotlin.gradle.utils.newFileProperty
|
import org.jetbrains.kotlin.gradle.utils.newFileProperty
|
||||||
import javax.inject.Inject
|
import javax.inject.Inject
|
||||||
@@ -89,7 +89,7 @@ constructor() : AbstractExecTask<BinaryenExec>(BinaryenExec::class.java) {
|
|||||||
|
|
||||||
companion object {
|
companion object {
|
||||||
fun create(
|
fun create(
|
||||||
compilation: KotlinJsCompilation,
|
compilation: KotlinJsIrCompilation,
|
||||||
name: String,
|
name: String,
|
||||||
configuration: BinaryenExec.() -> Unit = {}
|
configuration: BinaryenExec.() -> Unit = {}
|
||||||
): TaskProvider<BinaryenExec> {
|
): TaskProvider<BinaryenExec> {
|
||||||
|
|||||||
+2
-2
@@ -10,8 +10,8 @@ import org.gradle.api.tasks.*
|
|||||||
import org.gradle.work.DisableCachingByDefault
|
import org.gradle.work.DisableCachingByDefault
|
||||||
import org.gradle.work.NormalizeLineEndings
|
import org.gradle.work.NormalizeLineEndings
|
||||||
import org.jetbrains.kotlin.gradle.plugin.KotlinPlatformType
|
import org.jetbrains.kotlin.gradle.plugin.KotlinPlatformType
|
||||||
import org.jetbrains.kotlin.gradle.plugin.mpp.KotlinJsCompilation
|
|
||||||
import org.jetbrains.kotlin.gradle.targets.js.addWasmExperimentalArguments
|
import org.jetbrains.kotlin.gradle.targets.js.addWasmExperimentalArguments
|
||||||
|
import org.jetbrains.kotlin.gradle.targets.js.ir.KotlinJsIrCompilation
|
||||||
import org.jetbrains.kotlin.gradle.tasks.registerTask
|
import org.jetbrains.kotlin.gradle.tasks.registerTask
|
||||||
import org.jetbrains.kotlin.gradle.utils.newFileProperty
|
import org.jetbrains.kotlin.gradle.utils.newFileProperty
|
||||||
|
|
||||||
@@ -53,7 +53,7 @@ open class D8Exec : AbstractExecTask<D8Exec>(D8Exec::class.java) {
|
|||||||
|
|
||||||
companion object {
|
companion object {
|
||||||
fun create(
|
fun create(
|
||||||
compilation: KotlinJsCompilation,
|
compilation: KotlinJsIrCompilation,
|
||||||
name: String,
|
name: String,
|
||||||
configuration: D8Exec.() -> Unit = {}
|
configuration: D8Exec.() -> Unit = {}
|
||||||
): TaskProvider<D8Exec> {
|
): TaskProvider<D8Exec> {
|
||||||
|
|||||||
+2
-4
@@ -8,14 +8,12 @@ package org.jetbrains.kotlin.gradle.targets.js.dsl
|
|||||||
import org.gradle.api.Action
|
import org.gradle.api.Action
|
||||||
import org.gradle.api.GradleException
|
import org.gradle.api.GradleException
|
||||||
import org.gradle.api.NamedDomainObjectContainer
|
import org.gradle.api.NamedDomainObjectContainer
|
||||||
import org.jetbrains.kotlin.gradle.ExperimentalKotlinGradlePluginApi
|
|
||||||
import org.jetbrains.kotlin.gradle.dsl.KotlinJsCompilerOptions
|
|
||||||
import org.jetbrains.kotlin.gradle.dsl.KotlinJsDce
|
import org.jetbrains.kotlin.gradle.dsl.KotlinJsDce
|
||||||
import org.jetbrains.kotlin.gradle.plugin.KotlinTarget
|
import org.jetbrains.kotlin.gradle.plugin.KotlinTarget
|
||||||
import org.jetbrains.kotlin.gradle.plugin.mpp.KotlinJsCompilation
|
|
||||||
import org.jetbrains.kotlin.gradle.targets.js.KotlinJsPlatformTestRun
|
import org.jetbrains.kotlin.gradle.targets.js.KotlinJsPlatformTestRun
|
||||||
import org.jetbrains.kotlin.gradle.targets.js.KotlinJsReportAggregatingTestRun
|
import org.jetbrains.kotlin.gradle.targets.js.KotlinJsReportAggregatingTestRun
|
||||||
import org.jetbrains.kotlin.gradle.targets.js.ir.KotlinJsBinaryContainer
|
import org.jetbrains.kotlin.gradle.targets.js.ir.KotlinJsBinaryContainer
|
||||||
|
import org.jetbrains.kotlin.gradle.targets.js.ir.KotlinJsIrCompilation
|
||||||
import org.jetbrains.kotlin.gradle.targets.js.nodejs.NodeJsExec
|
import org.jetbrains.kotlin.gradle.targets.js.nodejs.NodeJsExec
|
||||||
import org.jetbrains.kotlin.gradle.targets.js.testing.KotlinJsTest
|
import org.jetbrains.kotlin.gradle.targets.js.testing.KotlinJsTest
|
||||||
import org.jetbrains.kotlin.gradle.targets.js.webpack.KotlinWebpack
|
import org.jetbrains.kotlin.gradle.targets.js.webpack.KotlinWebpack
|
||||||
@@ -65,7 +63,7 @@ interface KotlinJsTargetDsl : KotlinTarget, KotlinTargetWithNodeJsDsl {
|
|||||||
val testRuns: NamedDomainObjectContainer<KotlinJsReportAggregatingTestRun>
|
val testRuns: NamedDomainObjectContainer<KotlinJsReportAggregatingTestRun>
|
||||||
|
|
||||||
// Need to compatibility when users use KotlinJsCompilation specific in build script
|
// Need to compatibility when users use KotlinJsCompilation specific in build script
|
||||||
override val compilations: NamedDomainObjectContainer<KotlinJsCompilation>
|
override val compilations: NamedDomainObjectContainer<KotlinJsIrCompilation>
|
||||||
}
|
}
|
||||||
|
|
||||||
interface KotlinTargetWithNodeJsDsl {
|
interface KotlinTargetWithNodeJsDsl {
|
||||||
|
|||||||
+4
-4
@@ -28,7 +28,7 @@ interface JsBinary {
|
|||||||
}
|
}
|
||||||
|
|
||||||
sealed class JsIrBinary(
|
sealed class JsIrBinary(
|
||||||
final override val compilation: KotlinJsCompilation,
|
final override val compilation: KotlinJsIrCompilation,
|
||||||
final override val name: String,
|
final override val name: String,
|
||||||
override val mode: KotlinJsBinaryMode
|
override val mode: KotlinJsBinaryMode
|
||||||
) : JsBinary {
|
) : JsBinary {
|
||||||
@@ -85,7 +85,7 @@ sealed class JsIrBinary(
|
|||||||
}
|
}
|
||||||
|
|
||||||
open class Executable(
|
open class Executable(
|
||||||
compilation: KotlinJsCompilation,
|
compilation: KotlinJsIrCompilation,
|
||||||
name: String,
|
name: String,
|
||||||
mode: KotlinJsBinaryMode
|
mode: KotlinJsBinaryMode
|
||||||
) : JsIrBinary(
|
) : JsIrBinary(
|
||||||
@@ -109,7 +109,7 @@ open class Executable(
|
|||||||
}
|
}
|
||||||
|
|
||||||
open class ExecutableWasm(
|
open class ExecutableWasm(
|
||||||
compilation: KotlinJsCompilation,
|
compilation: KotlinJsIrCompilation,
|
||||||
name: String,
|
name: String,
|
||||||
mode: KotlinJsBinaryMode
|
mode: KotlinJsBinaryMode
|
||||||
) : Executable(
|
) : Executable(
|
||||||
@@ -129,7 +129,7 @@ open class ExecutableWasm(
|
|||||||
}
|
}
|
||||||
|
|
||||||
class Library(
|
class Library(
|
||||||
compilation: KotlinJsCompilation,
|
compilation: KotlinJsIrCompilation,
|
||||||
name: String,
|
name: String,
|
||||||
mode: KotlinJsBinaryMode
|
mode: KotlinJsBinaryMode
|
||||||
) : JsIrBinary(
|
) : JsIrBinary(
|
||||||
|
|||||||
+2
-3
@@ -15,7 +15,6 @@ import org.gradle.language.base.plugins.LifecycleBasePlugin
|
|||||||
import org.jetbrains.kotlin.gradle.dsl.JsModuleKind
|
import org.jetbrains.kotlin.gradle.dsl.JsModuleKind
|
||||||
import org.jetbrains.kotlin.gradle.dsl.KotlinJsDce
|
import org.jetbrains.kotlin.gradle.dsl.KotlinJsDce
|
||||||
import org.jetbrains.kotlin.gradle.plugin.KotlinPlatformType
|
import org.jetbrains.kotlin.gradle.plugin.KotlinPlatformType
|
||||||
import org.jetbrains.kotlin.gradle.plugin.mpp.KotlinJsCompilation
|
|
||||||
import org.jetbrains.kotlin.gradle.utils.archivesName
|
import org.jetbrains.kotlin.gradle.utils.archivesName
|
||||||
import org.jetbrains.kotlin.gradle.targets.js.dsl.ExperimentalDceDsl
|
import org.jetbrains.kotlin.gradle.targets.js.dsl.ExperimentalDceDsl
|
||||||
import org.jetbrains.kotlin.gradle.targets.js.dsl.KotlinJsBinaryMode
|
import org.jetbrains.kotlin.gradle.targets.js.dsl.KotlinJsBinaryMode
|
||||||
@@ -105,7 +104,7 @@ abstract class KotlinBrowserJsIr @Inject constructor(target: KotlinJsIrTarget) :
|
|||||||
}
|
}
|
||||||
|
|
||||||
override fun configureRun(
|
override fun configureRun(
|
||||||
compilation: KotlinJsCompilation
|
compilation: KotlinJsIrCompilation
|
||||||
) {
|
) {
|
||||||
val commonRunTask = registerSubTargetTask<Task>(disambiguateCamelCased(RUN_TASK_NAME)) {}
|
val commonRunTask = registerSubTargetTask<Task>(disambiguateCamelCased(RUN_TASK_NAME)) {}
|
||||||
|
|
||||||
@@ -172,7 +171,7 @@ abstract class KotlinBrowserJsIr @Inject constructor(target: KotlinJsIrTarget) :
|
|||||||
}
|
}
|
||||||
|
|
||||||
override fun configureBuild(
|
override fun configureBuild(
|
||||||
compilation: KotlinJsCompilation
|
compilation: KotlinJsIrCompilation
|
||||||
) {
|
) {
|
||||||
val project = compilation.target.project
|
val project = compilation.target.project
|
||||||
|
|
||||||
|
|||||||
+15
-11
@@ -14,7 +14,6 @@ import org.jetbrains.kotlin.gradle.plugin.KotlinPlatformType
|
|||||||
import org.jetbrains.kotlin.gradle.plugin.mpp.KotlinJsCompilation
|
import org.jetbrains.kotlin.gradle.plugin.mpp.KotlinJsCompilation
|
||||||
import org.jetbrains.kotlin.gradle.plugin.mpp.KotlinTargetWithBinaries
|
import org.jetbrains.kotlin.gradle.plugin.mpp.KotlinTargetWithBinaries
|
||||||
import org.jetbrains.kotlin.gradle.plugin.mpp.isMain
|
import org.jetbrains.kotlin.gradle.plugin.mpp.isMain
|
||||||
import org.jetbrains.kotlin.gradle.targets.js.binaryen.BinaryenExec
|
|
||||||
import org.jetbrains.kotlin.gradle.targets.js.dsl.KotlinJsBinaryMode
|
import org.jetbrains.kotlin.gradle.targets.js.dsl.KotlinJsBinaryMode
|
||||||
import org.jetbrains.kotlin.gradle.targets.js.dsl.KotlinJsBinaryMode.DEVELOPMENT
|
import org.jetbrains.kotlin.gradle.targets.js.dsl.KotlinJsBinaryMode.DEVELOPMENT
|
||||||
import org.jetbrains.kotlin.gradle.targets.js.dsl.KotlinJsBinaryMode.PRODUCTION
|
import org.jetbrains.kotlin.gradle.targets.js.dsl.KotlinJsBinaryMode.PRODUCTION
|
||||||
@@ -25,7 +24,7 @@ import javax.inject.Inject
|
|||||||
open class KotlinJsBinaryContainer
|
open class KotlinJsBinaryContainer
|
||||||
@Inject
|
@Inject
|
||||||
constructor(
|
constructor(
|
||||||
val target: KotlinTargetWithBinaries<KotlinJsCompilation, KotlinJsBinaryContainer>,
|
val target: KotlinTargetWithBinaries<KotlinJsIrCompilation, KotlinJsBinaryContainer>,
|
||||||
backingContainer: DomainObjectSet<JsBinary>,
|
backingContainer: DomainObjectSet<JsBinary>,
|
||||||
) : DomainObjectSet<JsBinary> by backingContainer {
|
) : DomainObjectSet<JsBinary> by backingContainer {
|
||||||
val project: Project
|
val project: Project
|
||||||
@@ -33,10 +32,15 @@ constructor(
|
|||||||
|
|
||||||
private val binaryNames = mutableSetOf<String>()
|
private val binaryNames = mutableSetOf<String>()
|
||||||
|
|
||||||
private val defaultCompilation: KotlinJsCompilation
|
private val defaultCompilation: KotlinJsIrCompilation
|
||||||
get() = target.compilations.getByName(KotlinCompilation.MAIN_COMPILATION_NAME)
|
get() = target.compilations.getByName(KotlinCompilation.MAIN_COMPILATION_NAME)
|
||||||
|
|
||||||
// For Groovy DSL
|
fun executable(
|
||||||
|
compilation: KotlinJsIrCompilation,
|
||||||
|
): List<JsBinary> {
|
||||||
|
return executable(compilation as KotlinJsCompilation)
|
||||||
|
}
|
||||||
|
|
||||||
@JvmOverloads
|
@JvmOverloads
|
||||||
fun executable(
|
fun executable(
|
||||||
compilation: KotlinJsCompilation = defaultCompilation,
|
compilation: KotlinJsCompilation = defaultCompilation,
|
||||||
@@ -54,13 +58,13 @@ constructor(
|
|||||||
(this as KotlinJsIrSubTarget).produceExecutable()
|
(this as KotlinJsIrSubTarget).produceExecutable()
|
||||||
}
|
}
|
||||||
|
|
||||||
return compilation.binaries.executableIrInternal(compilation)
|
return compilation.binaries.executableIrInternal(compilation as KotlinJsIrCompilation)
|
||||||
}
|
}
|
||||||
|
|
||||||
throw GradleException("Target should be KotlinJsIrTarget, but found $target")
|
throw GradleException("Target should be KotlinJsIrTarget, but found $target")
|
||||||
}
|
}
|
||||||
|
|
||||||
internal fun executableIrInternal(compilation: KotlinJsCompilation): List<JsBinary> = createBinaries(
|
internal fun executableIrInternal(compilation: KotlinJsIrCompilation): List<JsBinary> = createBinaries(
|
||||||
compilation = compilation,
|
compilation = compilation,
|
||||||
jsBinaryType = KotlinJsBinaryType.EXECUTABLE,
|
jsBinaryType = KotlinJsBinaryType.EXECUTABLE,
|
||||||
create = { compilation, name, mode ->
|
create = { compilation, name, mode ->
|
||||||
@@ -75,7 +79,7 @@ constructor(
|
|||||||
// For Groovy DSL
|
// For Groovy DSL
|
||||||
@JvmOverloads
|
@JvmOverloads
|
||||||
fun library(
|
fun library(
|
||||||
compilation: KotlinJsCompilation = defaultCompilation,
|
compilation: KotlinJsIrCompilation = defaultCompilation,
|
||||||
): List<JsBinary> {
|
): List<JsBinary> {
|
||||||
if (target is KotlinJsIrTarget) {
|
if (target is KotlinJsIrTarget) {
|
||||||
target.whenBrowserConfigured {
|
target.whenBrowserConfigured {
|
||||||
@@ -112,10 +116,10 @@ constructor(
|
|||||||
.matching { it.mode == mode }
|
.matching { it.mode == mode }
|
||||||
|
|
||||||
private fun <T : JsBinary> createBinaries(
|
private fun <T : JsBinary> createBinaries(
|
||||||
compilation: KotlinJsCompilation,
|
compilation: KotlinJsIrCompilation,
|
||||||
modes: Collection<KotlinJsBinaryMode> = listOf(PRODUCTION, DEVELOPMENT),
|
modes: Collection<KotlinJsBinaryMode> = listOf(PRODUCTION, DEVELOPMENT),
|
||||||
jsBinaryType: KotlinJsBinaryType,
|
jsBinaryType: KotlinJsBinaryType,
|
||||||
create: (compilation: KotlinJsCompilation, name: String, mode: KotlinJsBinaryMode) -> T,
|
create: (compilation: KotlinJsIrCompilation, name: String, mode: KotlinJsBinaryMode) -> T,
|
||||||
) =
|
) =
|
||||||
modes.map {
|
modes.map {
|
||||||
createBinary(
|
createBinary(
|
||||||
@@ -127,10 +131,10 @@ constructor(
|
|||||||
}
|
}
|
||||||
|
|
||||||
private fun <T : JsBinary> createBinary(
|
private fun <T : JsBinary> createBinary(
|
||||||
compilation: KotlinJsCompilation,
|
compilation: KotlinJsIrCompilation,
|
||||||
mode: KotlinJsBinaryMode,
|
mode: KotlinJsBinaryMode,
|
||||||
jsBinaryType: KotlinJsBinaryType,
|
jsBinaryType: KotlinJsBinaryType,
|
||||||
create: (compilation: KotlinJsCompilation, name: String, mode: KotlinJsBinaryMode) -> T,
|
create: (compilation: KotlinJsIrCompilation, name: String, mode: KotlinJsBinaryMode) -> T,
|
||||||
): JsBinary {
|
): JsBinary {
|
||||||
val name = generateBinaryName(
|
val name = generateBinaryName(
|
||||||
compilation,
|
compilation,
|
||||||
|
|||||||
+5
-2
@@ -6,6 +6,9 @@
|
|||||||
package org.jetbrains.kotlin.gradle.targets.js.ir
|
package org.jetbrains.kotlin.gradle.targets.js.ir
|
||||||
|
|
||||||
import org.jetbrains.kotlin.gradle.plugin.mpp.KotlinJsCompilation
|
import org.jetbrains.kotlin.gradle.plugin.mpp.KotlinJsCompilation
|
||||||
|
import org.jetbrains.kotlin.gradle.plugin.mpp.compilationImpl.KotlinCompilationImpl
|
||||||
|
import javax.inject.Inject
|
||||||
|
|
||||||
@Deprecated("Use KotlinJsCompilation instead")
|
open class KotlinJsIrCompilation @Inject internal constructor(
|
||||||
typealias KotlinJsIrCompilation = KotlinJsCompilation
|
compilation: KotlinCompilationImpl,
|
||||||
|
) : KotlinJsCompilation(compilation)
|
||||||
|
|||||||
+4
-5
@@ -7,7 +7,6 @@ package org.jetbrains.kotlin.gradle.targets.js.ir
|
|||||||
|
|
||||||
import org.jetbrains.kotlin.gradle.plugin.KotlinPlatformType
|
import org.jetbrains.kotlin.gradle.plugin.KotlinPlatformType
|
||||||
import org.jetbrains.kotlin.gradle.plugin.mpp.KotlinCompilationFactory
|
import org.jetbrains.kotlin.gradle.plugin.mpp.KotlinCompilationFactory
|
||||||
import org.jetbrains.kotlin.gradle.plugin.mpp.KotlinJsCompilation
|
|
||||||
import org.jetbrains.kotlin.gradle.plugin.mpp.compilationImpl.DefaultKotlinCompilationFriendPathsResolver
|
import org.jetbrains.kotlin.gradle.plugin.mpp.compilationImpl.DefaultKotlinCompilationFriendPathsResolver
|
||||||
import org.jetbrains.kotlin.gradle.plugin.mpp.compilationImpl.DefaultKotlinCompilationPreConfigure
|
import org.jetbrains.kotlin.gradle.plugin.mpp.compilationImpl.DefaultKotlinCompilationPreConfigure
|
||||||
import org.jetbrains.kotlin.gradle.plugin.mpp.compilationImpl.factory.*
|
import org.jetbrains.kotlin.gradle.plugin.mpp.compilationImpl.factory.*
|
||||||
@@ -19,9 +18,9 @@ import org.jetbrains.kotlin.gradle.plugin.mpp.compilationImpl.factory.KotlinJsCo
|
|||||||
|
|
||||||
class KotlinJsIrCompilationFactory internal constructor(
|
class KotlinJsIrCompilationFactory internal constructor(
|
||||||
override val target: KotlinJsIrTarget,
|
override val target: KotlinJsIrTarget,
|
||||||
) : KotlinCompilationFactory<KotlinJsCompilation> {
|
) : KotlinCompilationFactory<KotlinJsIrCompilation> {
|
||||||
override val itemClass: Class<KotlinJsCompilation>
|
override val itemClass: Class<KotlinJsIrCompilation>
|
||||||
get() = KotlinJsCompilation::class.java
|
get() = KotlinJsIrCompilation::class.java
|
||||||
|
|
||||||
private val compilationImplFactory: KotlinCompilationImplFactory = KotlinCompilationImplFactory(
|
private val compilationImplFactory: KotlinCompilationImplFactory = KotlinCompilationImplFactory(
|
||||||
compilerOptionsFactory = KotlinJsCompilerOptionsFactory,
|
compilerOptionsFactory = KotlinJsCompilerOptionsFactory,
|
||||||
@@ -39,7 +38,7 @@ class KotlinJsIrCompilationFactory internal constructor(
|
|||||||
},
|
},
|
||||||
)
|
)
|
||||||
|
|
||||||
override fun create(name: String): KotlinJsCompilation = target.project.objects.newInstance(
|
override fun create(name: String): KotlinJsIrCompilation = target.project.objects.newInstance(
|
||||||
itemClass, compilationImplFactory.create(target, name)
|
itemClass, compilationImplFactory.create(target, name)
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|||||||
+5
-6
@@ -15,7 +15,6 @@ import org.gradle.language.base.plugins.LifecycleBasePlugin
|
|||||||
import org.jetbrains.kotlin.gradle.plugin.AbstractKotlinTargetConfigurator
|
import org.jetbrains.kotlin.gradle.plugin.AbstractKotlinTargetConfigurator
|
||||||
import org.jetbrains.kotlin.gradle.plugin.KotlinCompilation
|
import org.jetbrains.kotlin.gradle.plugin.KotlinCompilation
|
||||||
import org.jetbrains.kotlin.gradle.plugin.KotlinTargetWithTests
|
import org.jetbrains.kotlin.gradle.plugin.KotlinTargetWithTests
|
||||||
import org.jetbrains.kotlin.gradle.plugin.mpp.KotlinJsCompilation
|
|
||||||
import org.jetbrains.kotlin.gradle.plugin.mpp.isMain
|
import org.jetbrains.kotlin.gradle.plugin.mpp.isMain
|
||||||
import org.jetbrains.kotlin.gradle.utils.whenEvaluated
|
import org.jetbrains.kotlin.gradle.utils.whenEvaluated
|
||||||
import org.jetbrains.kotlin.gradle.targets.js.KotlinJsPlatformTestRun
|
import org.jetbrains.kotlin.gradle.targets.js.KotlinJsPlatformTestRun
|
||||||
@@ -104,7 +103,7 @@ abstract class KotlinJsIrSubTarget(
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private fun configureTestsRun(testRun: KotlinJsPlatformTestRun, compilation: KotlinJsCompilation) {
|
private fun configureTestsRun(testRun: KotlinJsPlatformTestRun, compilation: KotlinJsIrCompilation) {
|
||||||
fun KotlinJsPlatformTestRun.subtargetTestTaskName(): String = disambiguateCamelCased(
|
fun KotlinJsPlatformTestRun.subtargetTestTaskName(): String = disambiguateCamelCased(
|
||||||
lowerCamelCaseName(
|
lowerCamelCaseName(
|
||||||
name.takeIf { it != KotlinTargetWithTests.DEFAULT_TEST_RUN_NAME },
|
name.takeIf { it != KotlinTargetWithTests.DEFAULT_TEST_RUN_NAME },
|
||||||
@@ -193,14 +192,14 @@ abstract class KotlinJsIrSubTarget(
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private fun configureMain(compilation: KotlinJsCompilation) {
|
private fun configureMain(compilation: KotlinJsIrCompilation) {
|
||||||
configureRun(compilation)
|
configureRun(compilation)
|
||||||
configureBuild(compilation)
|
configureBuild(compilation)
|
||||||
}
|
}
|
||||||
|
|
||||||
protected abstract fun configureRun(compilation: KotlinJsCompilation)
|
protected abstract fun configureRun(compilation: KotlinJsIrCompilation)
|
||||||
|
|
||||||
protected abstract fun configureBuild(compilation: KotlinJsCompilation)
|
protected abstract fun configureBuild(compilation: KotlinJsIrCompilation)
|
||||||
|
|
||||||
private fun configureLibrary() {
|
private fun configureLibrary() {
|
||||||
target.compilations.all { compilation ->
|
target.compilations.all { compilation ->
|
||||||
@@ -210,7 +209,7 @@ abstract class KotlinJsIrSubTarget(
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
protected open fun configureLibrary(compilation: KotlinJsCompilation) {
|
protected open fun configureLibrary(compilation: KotlinJsIrCompilation) {
|
||||||
val project = compilation.target.project
|
val project = compilation.target.project
|
||||||
|
|
||||||
val assembleTaskProvider = project.tasks.named(LifecycleBasePlugin.ASSEMBLE_TASK_NAME)
|
val assembleTaskProvider = project.tasks.named(LifecycleBasePlugin.ASSEMBLE_TASK_NAME)
|
||||||
|
|||||||
+3
-4
@@ -6,7 +6,6 @@
|
|||||||
package org.jetbrains.kotlin.gradle.targets.js.ir
|
package org.jetbrains.kotlin.gradle.targets.js.ir
|
||||||
|
|
||||||
import org.gradle.language.base.plugins.LifecycleBasePlugin
|
import org.gradle.language.base.plugins.LifecycleBasePlugin
|
||||||
import org.jetbrains.kotlin.gradle.plugin.mpp.KotlinJsCompilation
|
|
||||||
import org.jetbrains.kotlin.gradle.targets.js.dsl.KotlinJsBinaryMode
|
import org.jetbrains.kotlin.gradle.targets.js.dsl.KotlinJsBinaryMode
|
||||||
import org.jetbrains.kotlin.gradle.tasks.dependsOn
|
import org.jetbrains.kotlin.gradle.tasks.dependsOn
|
||||||
import org.jetbrains.kotlin.util.capitalizeDecapitalize.toLowerCaseAsciiOnly
|
import org.jetbrains.kotlin.util.capitalizeDecapitalize.toLowerCaseAsciiOnly
|
||||||
@@ -16,7 +15,7 @@ abstract class KotlinJsIrSubTargetBase(target: KotlinJsIrTarget, classifier: Str
|
|||||||
|
|
||||||
protected val runTaskName = disambiguateCamelCased("run")
|
protected val runTaskName = disambiguateCamelCased("run")
|
||||||
|
|
||||||
override fun configureRun(compilation: KotlinJsCompilation) {
|
override fun configureRun(compilation: KotlinJsIrCompilation) {
|
||||||
compilation.binaries
|
compilation.binaries
|
||||||
.withType(JsIrBinary::class.java)
|
.withType(JsIrBinary::class.java)
|
||||||
.matching { it is Executable }
|
.matching { it is Executable }
|
||||||
@@ -41,7 +40,7 @@ abstract class KotlinJsIrSubTargetBase(target: KotlinJsIrTarget, classifier: Str
|
|||||||
|
|
||||||
protected abstract fun locateOrRegisterRunTask(binary: JsIrBinary, name: String)
|
protected abstract fun locateOrRegisterRunTask(binary: JsIrBinary, name: String)
|
||||||
|
|
||||||
override fun configureBuild(compilation: KotlinJsCompilation) {
|
override fun configureBuild(compilation: KotlinJsIrCompilation) {
|
||||||
compilation.binaries
|
compilation.binaries
|
||||||
.getIrBinaries(KotlinJsBinaryMode.PRODUCTION)
|
.getIrBinaries(KotlinJsBinaryMode.PRODUCTION)
|
||||||
.matching { it is Executable }
|
.matching { it is Executable }
|
||||||
@@ -50,7 +49,7 @@ abstract class KotlinJsIrSubTargetBase(target: KotlinJsIrTarget, classifier: Str
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
override fun configureLibrary(compilation: KotlinJsCompilation) {
|
override fun configureLibrary(compilation: KotlinJsIrCompilation) {
|
||||||
super.configureLibrary(compilation)
|
super.configureLibrary(compilation)
|
||||||
|
|
||||||
compilation.binaries
|
compilation.binaries
|
||||||
|
|||||||
+2
-2
@@ -46,7 +46,7 @@ constructor(
|
|||||||
project: Project,
|
project: Project,
|
||||||
platformType: KotlinPlatformType,
|
platformType: KotlinPlatformType,
|
||||||
) :
|
) :
|
||||||
KotlinTargetWithBinaries<KotlinJsCompilation, KotlinJsBinaryContainer>(project, platformType),
|
KotlinTargetWithBinaries<KotlinJsIrCompilation, KotlinJsBinaryContainer>(project, platformType),
|
||||||
KotlinTargetWithTests<JsAggregatingExecutionSource, KotlinJsReportAggregatingTestRun>,
|
KotlinTargetWithTests<JsAggregatingExecutionSource, KotlinJsReportAggregatingTestRun>,
|
||||||
KotlinJsTargetDsl,
|
KotlinJsTargetDsl,
|
||||||
KotlinWasmJsTargetDsl,
|
KotlinWasmJsTargetDsl,
|
||||||
@@ -127,7 +127,7 @@ constructor(
|
|||||||
)
|
)
|
||||||
|
|
||||||
override val binaries: KotlinJsBinaryContainer
|
override val binaries: KotlinJsBinaryContainer
|
||||||
get() = compilations.withType(KotlinJsCompilation::class.java)
|
get() = compilations.withType(KotlinJsIrCompilation::class.java)
|
||||||
.named(MAIN_COMPILATION_NAME)
|
.named(MAIN_COMPILATION_NAME)
|
||||||
.map { it.binaries }
|
.map { it.binaries }
|
||||||
.get()
|
.get()
|
||||||
|
|||||||
+1
-2
@@ -10,10 +10,9 @@ import org.jetbrains.kotlin.gradle.dsl.JsSourceMapEmbedMode
|
|||||||
import org.jetbrains.kotlin.gradle.dsl.KotlinJsCompilerOptions
|
import org.jetbrains.kotlin.gradle.dsl.KotlinJsCompilerOptions
|
||||||
import org.jetbrains.kotlin.gradle.plugin.KotlinOnlyTargetConfigurator
|
import org.jetbrains.kotlin.gradle.plugin.KotlinOnlyTargetConfigurator
|
||||||
import org.jetbrains.kotlin.gradle.plugin.KotlinPlatformType
|
import org.jetbrains.kotlin.gradle.plugin.KotlinPlatformType
|
||||||
import org.jetbrains.kotlin.gradle.plugin.mpp.KotlinJsCompilation
|
|
||||||
|
|
||||||
open class KotlinJsIrTargetConfigurator :
|
open class KotlinJsIrTargetConfigurator :
|
||||||
KotlinOnlyTargetConfigurator<KotlinJsCompilation, KotlinJsIrTarget>(true) {
|
KotlinOnlyTargetConfigurator<KotlinJsIrCompilation, KotlinJsIrTarget>(true) {
|
||||||
|
|
||||||
override val runtimeIncludesCompilationOutputs: Boolean = false
|
override val runtimeIncludesCompilationOutputs: Boolean = false
|
||||||
|
|
||||||
|
|||||||
+4
-5
@@ -11,7 +11,6 @@ import org.jetbrains.kotlin.gradle.plugin.AbstractKotlinTargetConfigurator
|
|||||||
import org.jetbrains.kotlin.gradle.plugin.KotlinOnlyTargetConfigurator
|
import org.jetbrains.kotlin.gradle.plugin.KotlinOnlyTargetConfigurator
|
||||||
import org.jetbrains.kotlin.gradle.plugin.KotlinPlatformType
|
import org.jetbrains.kotlin.gradle.plugin.KotlinPlatformType
|
||||||
import org.jetbrains.kotlin.gradle.plugin.mpp.KotlinCompilationFactory
|
import org.jetbrains.kotlin.gradle.plugin.mpp.KotlinCompilationFactory
|
||||||
import org.jetbrains.kotlin.gradle.plugin.mpp.KotlinJsCompilation
|
|
||||||
import org.jetbrains.kotlin.gradle.plugin.mpp.KotlinOnlyTarget
|
import org.jetbrains.kotlin.gradle.plugin.mpp.KotlinOnlyTarget
|
||||||
import org.jetbrains.kotlin.gradle.plugin.mpp.KotlinOnlyTargetPreset
|
import org.jetbrains.kotlin.gradle.plugin.mpp.KotlinOnlyTargetPreset
|
||||||
import org.jetbrains.kotlin.gradle.plugin.statistics.KotlinBuildStatsService
|
import org.jetbrains.kotlin.gradle.plugin.statistics.KotlinBuildStatsService
|
||||||
@@ -21,7 +20,7 @@ import org.jetbrains.kotlin.statistics.metrics.StringMetrics
|
|||||||
@DeprecatedTargetPresetApi
|
@DeprecatedTargetPresetApi
|
||||||
open class KotlinJsIrTargetPreset(
|
open class KotlinJsIrTargetPreset(
|
||||||
project: Project,
|
project: Project,
|
||||||
) : KotlinOnlyTargetPreset<KotlinJsIrTarget, KotlinJsCompilation>(
|
) : KotlinOnlyTargetPreset<KotlinJsIrTarget, KotlinJsIrCompilation>(
|
||||||
project
|
project
|
||||||
) {
|
) {
|
||||||
open val isMpp: Boolean
|
open val isMpp: Boolean
|
||||||
@@ -54,7 +53,7 @@ open class KotlinJsIrTargetPreset(
|
|||||||
//TODO[Ilya Goncharov] remove public morozov
|
//TODO[Ilya Goncharov] remove public morozov
|
||||||
public override fun createCompilationFactory(
|
public override fun createCompilationFactory(
|
||||||
forTarget: KotlinJsIrTarget,
|
forTarget: KotlinJsIrTarget,
|
||||||
): KotlinCompilationFactory<KotlinJsCompilation> =
|
): KotlinCompilationFactory<KotlinJsIrCompilation> =
|
||||||
KotlinJsIrCompilationFactory(forTarget)
|
KotlinJsIrCompilationFactory(forTarget)
|
||||||
|
|
||||||
companion object {
|
companion object {
|
||||||
@@ -72,10 +71,10 @@ class KotlinJsIrSingleTargetPreset(
|
|||||||
get() = false
|
get() = false
|
||||||
|
|
||||||
// In a Kotlin/JS single-platform project, we don't need any disambiguation suffixes or prefixes in the names:
|
// In a Kotlin/JS single-platform project, we don't need any disambiguation suffixes or prefixes in the names:
|
||||||
override fun provideTargetDisambiguationClassifier(target: KotlinOnlyTarget<KotlinJsCompilation>): String? {
|
override fun provideTargetDisambiguationClassifier(target: KotlinOnlyTarget<KotlinJsIrCompilation>): String? {
|
||||||
return null
|
return null
|
||||||
}
|
}
|
||||||
|
|
||||||
override fun createKotlinTargetConfigurator(): KotlinOnlyTargetConfigurator<KotlinJsCompilation, KotlinJsIrTarget> =
|
override fun createKotlinTargetConfigurator(): KotlinOnlyTargetConfigurator<KotlinJsIrCompilation, KotlinJsIrTarget> =
|
||||||
KotlinJsIrTargetConfigurator()
|
KotlinJsIrTargetConfigurator()
|
||||||
}
|
}
|
||||||
|
|||||||
+2
-3
@@ -9,7 +9,6 @@ import org.gradle.api.Project
|
|||||||
import org.jetbrains.kotlin.gradle.DeprecatedTargetPresetApi
|
import org.jetbrains.kotlin.gradle.DeprecatedTargetPresetApi
|
||||||
import org.jetbrains.kotlin.gradle.plugin.*
|
import org.jetbrains.kotlin.gradle.plugin.*
|
||||||
import org.jetbrains.kotlin.gradle.plugin.mpp.KotlinCompilationFactory
|
import org.jetbrains.kotlin.gradle.plugin.mpp.KotlinCompilationFactory
|
||||||
import org.jetbrains.kotlin.gradle.plugin.mpp.KotlinJsCompilation
|
|
||||||
import org.jetbrains.kotlin.gradle.plugin.mpp.KotlinOnlyTargetPreset
|
import org.jetbrains.kotlin.gradle.plugin.mpp.KotlinOnlyTargetPreset
|
||||||
import org.jetbrains.kotlin.gradle.targets.js.KotlinWasmTargetType
|
import org.jetbrains.kotlin.gradle.targets.js.KotlinWasmTargetType
|
||||||
import org.jetbrains.kotlin.util.capitalizeDecapitalize.capitalizeAsciiOnly
|
import org.jetbrains.kotlin.util.capitalizeDecapitalize.capitalizeAsciiOnly
|
||||||
@@ -19,7 +18,7 @@ import org.jetbrains.kotlin.util.capitalizeDecapitalize.toLowerCaseAsciiOnly
|
|||||||
class KotlinWasmTargetPreset(
|
class KotlinWasmTargetPreset(
|
||||||
project: Project,
|
project: Project,
|
||||||
private val targetType: KotlinWasmTargetType
|
private val targetType: KotlinWasmTargetType
|
||||||
) : KotlinOnlyTargetPreset<KotlinJsIrTarget, KotlinJsCompilation>(project) {
|
) : KotlinOnlyTargetPreset<KotlinJsIrTarget, KotlinJsIrCompilation>(project) {
|
||||||
override val platformType: KotlinPlatformType = KotlinPlatformType.wasm
|
override val platformType: KotlinPlatformType = KotlinPlatformType.wasm
|
||||||
|
|
||||||
override fun instantiateTarget(name: String): KotlinJsIrTarget {
|
override fun instantiateTarget(name: String): KotlinJsIrTarget {
|
||||||
@@ -41,7 +40,7 @@ class KotlinWasmTargetPreset(
|
|||||||
|
|
||||||
public override fun createCompilationFactory(
|
public override fun createCompilationFactory(
|
||||||
forTarget: KotlinJsIrTarget
|
forTarget: KotlinJsIrTarget
|
||||||
): KotlinCompilationFactory<KotlinJsCompilation> =
|
): KotlinCompilationFactory<KotlinJsIrCompilation> =
|
||||||
KotlinJsIrCompilationFactory(forTarget)
|
KotlinJsIrCompilationFactory(forTarget)
|
||||||
|
|
||||||
companion object {
|
companion object {
|
||||||
|
|||||||
+3
-3
@@ -10,10 +10,10 @@ import org.gradle.api.tasks.*
|
|||||||
import org.gradle.work.DisableCachingByDefault
|
import org.gradle.work.DisableCachingByDefault
|
||||||
import org.gradle.work.NormalizeLineEndings
|
import org.gradle.work.NormalizeLineEndings
|
||||||
import org.jetbrains.kotlin.gradle.plugin.KotlinPlatformType
|
import org.jetbrains.kotlin.gradle.plugin.KotlinPlatformType
|
||||||
import org.jetbrains.kotlin.gradle.plugin.mpp.KotlinJsCompilation
|
|
||||||
import org.jetbrains.kotlin.gradle.targets.js.KotlinWasmTargetType
|
import org.jetbrains.kotlin.gradle.targets.js.KotlinWasmTargetType
|
||||||
import org.jetbrains.kotlin.gradle.targets.js.RequiredKotlinJsDependency
|
import org.jetbrains.kotlin.gradle.targets.js.RequiredKotlinJsDependency
|
||||||
import org.jetbrains.kotlin.gradle.targets.js.addWasmExperimentalArguments
|
import org.jetbrains.kotlin.gradle.targets.js.addWasmExperimentalArguments
|
||||||
|
import org.jetbrains.kotlin.gradle.targets.js.ir.KotlinJsIrCompilation
|
||||||
import org.jetbrains.kotlin.gradle.targets.js.ir.KotlinJsIrTarget
|
import org.jetbrains.kotlin.gradle.targets.js.ir.KotlinJsIrTarget
|
||||||
import org.jetbrains.kotlin.gradle.targets.js.nodejs.NodeJsRootPlugin.Companion.kotlinNodeJsExtension
|
import org.jetbrains.kotlin.gradle.targets.js.nodejs.NodeJsRootPlugin.Companion.kotlinNodeJsExtension
|
||||||
import org.jetbrains.kotlin.gradle.targets.js.npm.RequiresNpmDependencies
|
import org.jetbrains.kotlin.gradle.targets.js.npm.RequiresNpmDependencies
|
||||||
@@ -28,7 +28,7 @@ open class NodeJsExec
|
|||||||
constructor(
|
constructor(
|
||||||
@Internal
|
@Internal
|
||||||
@Transient
|
@Transient
|
||||||
override val compilation: KotlinJsCompilation,
|
override val compilation: KotlinJsIrCompilation,
|
||||||
) : AbstractExecTask<NodeJsExec>(NodeJsExec::class.java), RequiresNpmDependencies {
|
) : AbstractExecTask<NodeJsExec>(NodeJsExec::class.java), RequiresNpmDependencies {
|
||||||
@Transient
|
@Transient
|
||||||
@get:Internal
|
@get:Internal
|
||||||
@@ -91,7 +91,7 @@ constructor(
|
|||||||
|
|
||||||
companion object {
|
companion object {
|
||||||
fun create(
|
fun create(
|
||||||
compilation: KotlinJsCompilation,
|
compilation: KotlinJsIrCompilation,
|
||||||
name: String,
|
name: String,
|
||||||
configuration: NodeJsExec.() -> Unit = {}
|
configuration: NodeJsExec.() -> Unit = {}
|
||||||
): TaskProvider<NodeJsExec> {
|
): TaskProvider<NodeJsExec> {
|
||||||
|
|||||||
+7
-3
@@ -13,23 +13,27 @@ import org.jetbrains.kotlin.gradle.plugin.KotlinPlatformType
|
|||||||
import org.jetbrains.kotlin.gradle.plugin.mpp.KotlinJsCompilation
|
import org.jetbrains.kotlin.gradle.plugin.mpp.KotlinJsCompilation
|
||||||
import org.jetbrains.kotlin.gradle.plugin.mpp.disambiguateName
|
import org.jetbrains.kotlin.gradle.plugin.mpp.disambiguateName
|
||||||
import org.jetbrains.kotlin.gradle.targets.js.dsl.KotlinJsTargetDsl
|
import org.jetbrains.kotlin.gradle.targets.js.dsl.KotlinJsTargetDsl
|
||||||
import org.jetbrains.kotlin.gradle.targets.js.nodejs.NodeJsRootPlugin
|
import org.jetbrains.kotlin.gradle.targets.js.ir.KotlinJsIrCompilation
|
||||||
import org.jetbrains.kotlin.gradle.targets.js.nodejs.NodeJsRootPlugin.Companion.kotlinNodeJsExtension
|
import org.jetbrains.kotlin.gradle.targets.js.nodejs.NodeJsRootPlugin.Companion.kotlinNodeJsExtension
|
||||||
import org.jetbrains.kotlin.gradle.targets.js.npm.tasks.KotlinPackageJsonTask
|
import org.jetbrains.kotlin.gradle.targets.js.npm.tasks.KotlinPackageJsonTask
|
||||||
import org.jetbrains.kotlin.util.capitalizeDecapitalize.toLowerCaseAsciiOnly
|
import org.jetbrains.kotlin.util.capitalizeDecapitalize.toLowerCaseAsciiOnly
|
||||||
import java.io.File
|
import java.io.File
|
||||||
import java.io.Serializable
|
import java.io.Serializable
|
||||||
|
|
||||||
val KotlinJsCompilation.npmProject: NpmProject
|
val KotlinJsIrCompilation.npmProject: NpmProject
|
||||||
get() = NpmProject(this)
|
get() = NpmProject(this)
|
||||||
|
|
||||||
|
@Deprecated("Use npmProject for KotlinJsIrCompilation")
|
||||||
|
val KotlinJsCompilation.npmProject: NpmProject
|
||||||
|
get() = NpmProject(this as KotlinJsIrCompilation)
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Basic info for [NpmProject] created from [compilation].
|
* Basic info for [NpmProject] created from [compilation].
|
||||||
* This class contains only basic info.
|
* This class contains only basic info.
|
||||||
*
|
*
|
||||||
* More info can be obtained from [KotlinCompilationNpmResolution], which is available after project resolution (after [KotlinNpmInstallTask] execution).
|
* More info can be obtained from [KotlinCompilationNpmResolution], which is available after project resolution (after [KotlinNpmInstallTask] execution).
|
||||||
*/
|
*/
|
||||||
open class NpmProject(@Transient val compilation: KotlinJsCompilation) : Serializable {
|
open class NpmProject(@Transient val compilation: KotlinJsIrCompilation) : Serializable {
|
||||||
val compilationName = compilation.disambiguatedName
|
val compilationName = compilation.disambiguatedName
|
||||||
|
|
||||||
private val extension by lazy {
|
private val extension by lazy {
|
||||||
|
|||||||
+2
-2
@@ -6,11 +6,11 @@
|
|||||||
package org.jetbrains.kotlin.gradle.targets.js.npm
|
package org.jetbrains.kotlin.gradle.targets.js.npm
|
||||||
|
|
||||||
import org.gradle.api.tasks.Internal
|
import org.gradle.api.tasks.Internal
|
||||||
import org.jetbrains.kotlin.gradle.plugin.mpp.KotlinJsCompilation
|
|
||||||
import org.jetbrains.kotlin.gradle.targets.js.RequiredKotlinJsDependency
|
import org.jetbrains.kotlin.gradle.targets.js.RequiredKotlinJsDependency
|
||||||
|
import org.jetbrains.kotlin.gradle.targets.js.ir.KotlinJsIrCompilation
|
||||||
|
|
||||||
interface RequiresNpmDependencies {
|
interface RequiresNpmDependencies {
|
||||||
val compilation: KotlinJsCompilation
|
val compilation: KotlinJsIrCompilation
|
||||||
val requiredNpmDependencies: Set<RequiredKotlinJsDependency>
|
val requiredNpmDependencies: Set<RequiredKotlinJsDependency>
|
||||||
|
|
||||||
@Internal
|
@Internal
|
||||||
|
|||||||
+3
-3
@@ -19,13 +19,13 @@ import org.gradle.api.tasks.bundling.Zip
|
|||||||
import org.jetbrains.kotlin.gradle.dsl.JsModuleKind
|
import org.jetbrains.kotlin.gradle.dsl.JsModuleKind
|
||||||
import org.jetbrains.kotlin.gradle.plugin.KotlinCompilation
|
import org.jetbrains.kotlin.gradle.plugin.KotlinCompilation
|
||||||
import org.jetbrains.kotlin.gradle.plugin.categoryByName
|
import org.jetbrains.kotlin.gradle.plugin.categoryByName
|
||||||
import org.jetbrains.kotlin.gradle.plugin.mpp.KotlinJsCompilation
|
|
||||||
import org.jetbrains.kotlin.gradle.plugin.mpp.KotlinUsages
|
import org.jetbrains.kotlin.gradle.plugin.mpp.KotlinUsages
|
||||||
import org.jetbrains.kotlin.gradle.plugin.mpp.isMain
|
import org.jetbrains.kotlin.gradle.plugin.mpp.isMain
|
||||||
import org.jetbrains.kotlin.gradle.plugin.sources.KotlinDependencyScope
|
import org.jetbrains.kotlin.gradle.plugin.sources.KotlinDependencyScope
|
||||||
import org.jetbrains.kotlin.gradle.plugin.sources.compilationDependencyConfigurationByScope
|
import org.jetbrains.kotlin.gradle.plugin.sources.compilationDependencyConfigurationByScope
|
||||||
import org.jetbrains.kotlin.gradle.plugin.sources.sourceSetDependencyConfigurationByScope
|
import org.jetbrains.kotlin.gradle.plugin.sources.sourceSetDependencyConfigurationByScope
|
||||||
import org.jetbrains.kotlin.gradle.plugin.usesPlatformOf
|
import org.jetbrains.kotlin.gradle.plugin.usesPlatformOf
|
||||||
|
import org.jetbrains.kotlin.gradle.targets.js.ir.KotlinJsIrCompilation
|
||||||
import org.jetbrains.kotlin.gradle.targets.js.ir.KotlinJsIrTarget
|
import org.jetbrains.kotlin.gradle.targets.js.ir.KotlinJsIrTarget
|
||||||
import org.jetbrains.kotlin.gradle.targets.js.nodejs.NodeJsRootPlugin.Companion.kotlinNodeJsExtension
|
import org.jetbrains.kotlin.gradle.targets.js.nodejs.NodeJsRootPlugin.Companion.kotlinNodeJsExtension
|
||||||
import org.jetbrains.kotlin.gradle.targets.js.nodejs.NodeJsRootPlugin.Companion.kotlinNpmResolutionManager
|
import org.jetbrains.kotlin.gradle.targets.js.nodejs.NodeJsRootPlugin.Companion.kotlinNpmResolutionManager
|
||||||
@@ -42,7 +42,7 @@ import java.io.Serializable
|
|||||||
*/
|
*/
|
||||||
class KotlinCompilationNpmResolver(
|
class KotlinCompilationNpmResolver(
|
||||||
val projectResolver: KotlinProjectNpmResolver,
|
val projectResolver: KotlinProjectNpmResolver,
|
||||||
val compilation: KotlinJsCompilation,
|
val compilation: KotlinJsIrCompilation,
|
||||||
) : Serializable {
|
) : Serializable {
|
||||||
var rootResolver = projectResolver.resolver
|
var rootResolver = projectResolver.resolver
|
||||||
|
|
||||||
@@ -204,7 +204,7 @@ class KotlinCompilationNpmResolver(
|
|||||||
|
|
||||||
//TODO: rewrite when we get general way to have inter compilation dependencies
|
//TODO: rewrite when we get general way to have inter compilation dependencies
|
||||||
if (compilation.name == KotlinCompilation.TEST_COMPILATION_NAME) {
|
if (compilation.name == KotlinCompilation.TEST_COMPILATION_NAME) {
|
||||||
val main = compilation.target.compilations.findByName(KotlinCompilation.MAIN_COMPILATION_NAME) as KotlinJsCompilation
|
val main = compilation.target.compilations.findByName(KotlinCompilation.MAIN_COMPILATION_NAME) as KotlinJsIrCompilation
|
||||||
internalDependencies.add(
|
internalDependencies.add(
|
||||||
InternalDependency(
|
InternalDependency(
|
||||||
projectResolver.projectPath,
|
projectResolver.projectPath,
|
||||||
|
|||||||
+4
-4
@@ -13,7 +13,7 @@ import org.jetbrains.kotlin.gradle.dsl.KotlinSingleTargetExtension
|
|||||||
import org.jetbrains.kotlin.gradle.dsl.kotlinExtensionOrNull
|
import org.jetbrains.kotlin.gradle.dsl.kotlinExtensionOrNull
|
||||||
import org.jetbrains.kotlin.gradle.plugin.KotlinPlatformType
|
import org.jetbrains.kotlin.gradle.plugin.KotlinPlatformType
|
||||||
import org.jetbrains.kotlin.gradle.plugin.KotlinTarget
|
import org.jetbrains.kotlin.gradle.plugin.KotlinTarget
|
||||||
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.KotlinNpmResolutionManager
|
import org.jetbrains.kotlin.gradle.targets.js.npm.KotlinNpmResolutionManager
|
||||||
import org.jetbrains.kotlin.gradle.targets.js.npm.resolved.KotlinProjectNpmResolution
|
import org.jetbrains.kotlin.gradle.targets.js.npm.resolved.KotlinProjectNpmResolution
|
||||||
import java.io.Serializable
|
import java.io.Serializable
|
||||||
@@ -30,7 +30,7 @@ class KotlinProjectNpmResolver(
|
|||||||
|
|
||||||
private val byCompilation = mutableMapOf<String, KotlinCompilationNpmResolver>()
|
private val byCompilation = mutableMapOf<String, KotlinCompilationNpmResolver>()
|
||||||
|
|
||||||
operator fun get(compilation: KotlinJsCompilation): KotlinCompilationNpmResolver {
|
operator fun get(compilation: KotlinJsIrCompilation): KotlinCompilationNpmResolver {
|
||||||
return byCompilation[compilation.disambiguatedName] ?: error("$compilation was not registered in $this")
|
return byCompilation[compilation.disambiguatedName] ?: error("$compilation was not registered in $this")
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -67,7 +67,7 @@ class KotlinProjectNpmResolver(
|
|||||||
target.platformType == KotlinPlatformType.wasm
|
target.platformType == KotlinPlatformType.wasm
|
||||||
) {
|
) {
|
||||||
target.compilations.all { compilation ->
|
target.compilations.all { compilation ->
|
||||||
if (compilation is KotlinJsCompilation) {
|
if (compilation is KotlinJsIrCompilation) {
|
||||||
// compilation may be KotlinWithJavaTarget for old Kotlin2JsPlugin
|
// compilation may be KotlinWithJavaTarget for old Kotlin2JsPlugin
|
||||||
addCompilation(compilation)
|
addCompilation(compilation)
|
||||||
}
|
}
|
||||||
@@ -76,7 +76,7 @@ class KotlinProjectNpmResolver(
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Synchronized
|
@Synchronized
|
||||||
private fun addCompilation(compilation: KotlinJsCompilation) {
|
private fun addCompilation(compilation: KotlinJsIrCompilation) {
|
||||||
check(resolution == null) { resolver.alreadyResolvedMessage("add compilation $compilation") }
|
check(resolution == null) { resolver.alreadyResolvedMessage("add compilation $compilation") }
|
||||||
|
|
||||||
byCompilation[compilation.disambiguatedName] =
|
byCompilation[compilation.disambiguatedName] =
|
||||||
|
|||||||
+3
-3
@@ -7,10 +7,10 @@ package org.jetbrains.kotlin.gradle.targets.js.npm.resolver
|
|||||||
|
|
||||||
import org.gradle.api.Project
|
import org.gradle.api.Project
|
||||||
import org.jetbrains.kotlin.gradle.plugin.KotlinPlatformType
|
import org.jetbrains.kotlin.gradle.plugin.KotlinPlatformType
|
||||||
import org.jetbrains.kotlin.gradle.plugin.mpp.KotlinJsCompilation
|
|
||||||
import org.jetbrains.kotlin.gradle.plugin.mpp.isMain
|
import org.jetbrains.kotlin.gradle.plugin.mpp.isMain
|
||||||
import org.jetbrains.kotlin.gradle.targets.js.KotlinWasmTargetType
|
import org.jetbrains.kotlin.gradle.targets.js.KotlinWasmTargetType
|
||||||
import org.jetbrains.kotlin.gradle.targets.js.NpmVersions
|
import org.jetbrains.kotlin.gradle.targets.js.NpmVersions
|
||||||
|
import org.jetbrains.kotlin.gradle.targets.js.ir.KotlinJsIrCompilation
|
||||||
import org.jetbrains.kotlin.gradle.targets.js.ir.KotlinJsIrTarget
|
import org.jetbrains.kotlin.gradle.targets.js.ir.KotlinJsIrTarget
|
||||||
import org.jetbrains.kotlin.gradle.targets.js.nodejs.TasksRequirements
|
import org.jetbrains.kotlin.gradle.targets.js.nodejs.TasksRequirements
|
||||||
import org.jetbrains.kotlin.gradle.targets.js.npm.resolved.KotlinRootNpmResolution
|
import org.jetbrains.kotlin.gradle.targets.js.npm.resolved.KotlinRootNpmResolution
|
||||||
@@ -43,7 +43,7 @@ class KotlinRootNpmResolver internal constructor(
|
|||||||
internal operator fun get(projectPath: String) =
|
internal operator fun get(projectPath: String) =
|
||||||
projectResolvers[projectPath] ?: error("$projectPath is not configured for JS usage")
|
projectResolvers[projectPath] ?: error("$projectPath is not configured for JS usage")
|
||||||
|
|
||||||
val compilations: Collection<KotlinJsCompilation>
|
val compilations: Collection<KotlinJsIrCompilation>
|
||||||
get() = projectResolvers.values.flatMap { it.compilationResolvers.map { it.compilation } }
|
get() = projectResolvers.values.flatMap { it.compilationResolvers.map { it.compilation } }
|
||||||
|
|
||||||
internal fun findDependentResolver(src: Project, target: Project): List<KotlinCompilationNpmResolver>? {
|
internal fun findDependentResolver(src: Project, target: Project): List<KotlinCompilationNpmResolver>? {
|
||||||
@@ -67,7 +67,7 @@ class KotlinRootNpmResolver internal constructor(
|
|||||||
check(mainCompilations.size <= maxMainCompilationsCount) { errorMessage }
|
check(mainCompilations.size <= maxMainCompilationsCount) { errorMessage }
|
||||||
for (npmResolver in mainCompilations) {
|
for (npmResolver in mainCompilations) {
|
||||||
when (val compilation = npmResolver.compilation) {
|
when (val compilation = npmResolver.compilation) {
|
||||||
is KotlinJsCompilation -> {
|
is KotlinJsIrCompilation -> {
|
||||||
if (compilation.platformType == KotlinPlatformType.wasm) {
|
if (compilation.platformType == KotlinPlatformType.wasm) {
|
||||||
val jsTarget = compilation.target as KotlinJsIrTarget
|
val jsTarget = compilation.target as KotlinJsIrTarget
|
||||||
if (jsTarget.wasmTargetType == KotlinWasmTargetType.JS) {
|
if (jsTarget.wasmTargetType == KotlinWasmTargetType.JS) {
|
||||||
|
|||||||
+2
-2
@@ -14,7 +14,7 @@ import org.gradle.api.provider.Provider
|
|||||||
import org.gradle.api.tasks.*
|
import org.gradle.api.tasks.*
|
||||||
import org.gradle.work.DisableCachingByDefault
|
import org.gradle.work.DisableCachingByDefault
|
||||||
import org.gradle.work.NormalizeLineEndings
|
import org.gradle.work.NormalizeLineEndings
|
||||||
import org.jetbrains.kotlin.gradle.plugin.mpp.KotlinJsCompilation
|
import org.jetbrains.kotlin.gradle.targets.js.ir.KotlinJsIrCompilation
|
||||||
import org.jetbrains.kotlin.gradle.targets.js.nodejs.NodeJsRootExtension
|
import org.jetbrains.kotlin.gradle.targets.js.nodejs.NodeJsRootExtension
|
||||||
import org.jetbrains.kotlin.gradle.targets.js.nodejs.NodeJsRootPlugin
|
import org.jetbrains.kotlin.gradle.targets.js.nodejs.NodeJsRootPlugin
|
||||||
import org.jetbrains.kotlin.gradle.targets.js.nodejs.NodeJsRootPlugin.Companion.kotlinNodeJsExtension
|
import org.jetbrains.kotlin.gradle.targets.js.nodejs.NodeJsRootPlugin.Companion.kotlinNodeJsExtension
|
||||||
@@ -123,7 +123,7 @@ abstract class KotlinPackageJsonTask :
|
|||||||
}
|
}
|
||||||
|
|
||||||
companion object {
|
companion object {
|
||||||
fun create(compilation: KotlinJsCompilation): TaskProvider<KotlinPackageJsonTask> {
|
fun create(compilation: KotlinJsIrCompilation): TaskProvider<KotlinPackageJsonTask> {
|
||||||
val target = compilation.target
|
val target = compilation.target
|
||||||
val project = target.project
|
val project = target.project
|
||||||
val npmProject = compilation.npmProject
|
val npmProject = compilation.npmProject
|
||||||
|
|||||||
+2
-5
@@ -14,15 +14,12 @@ import org.gradle.process.internal.DefaultProcessForkOptions
|
|||||||
import org.gradle.work.DisableCachingByDefault
|
import org.gradle.work.DisableCachingByDefault
|
||||||
import org.gradle.work.NormalizeLineEndings
|
import org.gradle.work.NormalizeLineEndings
|
||||||
import org.jetbrains.kotlin.gradle.internal.testing.TCServiceMessagesTestExecutionSpec
|
import org.jetbrains.kotlin.gradle.internal.testing.TCServiceMessagesTestExecutionSpec
|
||||||
import org.jetbrains.kotlin.gradle.plugin.mpp.KotlinJsCompilation
|
|
||||||
import org.jetbrains.kotlin.gradle.targets.js.RequiredKotlinJsDependency
|
import org.jetbrains.kotlin.gradle.targets.js.RequiredKotlinJsDependency
|
||||||
|
import org.jetbrains.kotlin.gradle.targets.js.ir.KotlinJsIrCompilation
|
||||||
import org.jetbrains.kotlin.gradle.targets.js.nodejs.NodeJsRootPlugin.Companion.kotlinNodeJsExtension
|
import org.jetbrains.kotlin.gradle.targets.js.nodejs.NodeJsRootPlugin.Companion.kotlinNodeJsExtension
|
||||||
import org.jetbrains.kotlin.gradle.targets.js.npm.RequiresNpmDependencies
|
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.testing.karma.KotlinKarma
|
import org.jetbrains.kotlin.gradle.targets.js.testing.karma.KotlinKarma
|
||||||
import org.jetbrains.kotlin.gradle.targets.js.testing.mocha.KotlinMocha
|
import org.jetbrains.kotlin.gradle.targets.js.testing.mocha.KotlinMocha
|
||||||
import org.jetbrains.kotlin.gradle.targets.js.webpack.KotlinWebpack
|
|
||||||
import org.jetbrains.kotlin.gradle.targets.js.webpack.KotlinWebpackConfig
|
|
||||||
import org.jetbrains.kotlin.gradle.tasks.KotlinTest
|
import org.jetbrains.kotlin.gradle.tasks.KotlinTest
|
||||||
import org.jetbrains.kotlin.gradle.utils.getValue
|
import org.jetbrains.kotlin.gradle.utils.getValue
|
||||||
import org.jetbrains.kotlin.gradle.utils.newFileProperty
|
import org.jetbrains.kotlin.gradle.utils.newFileProperty
|
||||||
@@ -34,7 +31,7 @@ abstract class KotlinJsTest
|
|||||||
constructor(
|
constructor(
|
||||||
@Transient
|
@Transient
|
||||||
@Internal
|
@Internal
|
||||||
override var compilation: KotlinJsCompilation
|
override var compilation: KotlinJsIrCompilation
|
||||||
) : KotlinTest(),
|
) : KotlinTest(),
|
||||||
RequiresNpmDependencies {
|
RequiresNpmDependencies {
|
||||||
@Transient
|
@Transient
|
||||||
|
|||||||
+2
-2
@@ -10,11 +10,11 @@ import org.gradle.process.ProcessForkOptions
|
|||||||
import org.jetbrains.kotlin.gradle.internal.testing.TCServiceMessagesClientSettings
|
import org.jetbrains.kotlin.gradle.internal.testing.TCServiceMessagesClientSettings
|
||||||
import org.jetbrains.kotlin.gradle.internal.testing.TCServiceMessagesTestExecutionSpec
|
import org.jetbrains.kotlin.gradle.internal.testing.TCServiceMessagesTestExecutionSpec
|
||||||
import org.jetbrains.kotlin.gradle.internal.testing.TCServiceMessagesTestExecutor
|
import org.jetbrains.kotlin.gradle.internal.testing.TCServiceMessagesTestExecutor
|
||||||
import org.jetbrains.kotlin.gradle.plugin.mpp.KotlinJsCompilation
|
|
||||||
import org.jetbrains.kotlin.gradle.targets.js.RequiredKotlinJsDependency
|
import org.jetbrains.kotlin.gradle.targets.js.RequiredKotlinJsDependency
|
||||||
import org.jetbrains.kotlin.gradle.targets.js.addWasmExperimentalArguments
|
import org.jetbrains.kotlin.gradle.targets.js.addWasmExperimentalArguments
|
||||||
import org.jetbrains.kotlin.gradle.targets.js.d8.D8RootPlugin
|
import org.jetbrains.kotlin.gradle.targets.js.d8.D8RootPlugin
|
||||||
import org.jetbrains.kotlin.gradle.targets.js.internal.parseNodeJsStackTraceAsJvm
|
import org.jetbrains.kotlin.gradle.targets.js.internal.parseNodeJsStackTraceAsJvm
|
||||||
|
import org.jetbrains.kotlin.gradle.targets.js.ir.KotlinJsIrCompilation
|
||||||
import org.jetbrains.kotlin.gradle.targets.js.npm.npmProject
|
import org.jetbrains.kotlin.gradle.targets.js.npm.npmProject
|
||||||
import org.jetbrains.kotlin.gradle.targets.js.writeWasmUnitTestRunner
|
import org.jetbrains.kotlin.gradle.targets.js.writeWasmUnitTestRunner
|
||||||
import org.jetbrains.kotlin.gradle.utils.doNotTrackStateCompat
|
import org.jetbrains.kotlin.gradle.utils.doNotTrackStateCompat
|
||||||
@@ -24,7 +24,7 @@ import java.nio.file.Path
|
|||||||
internal class KotlinWasmD8(private val kotlinJsTest: KotlinJsTest) : KotlinJsTestFramework {
|
internal class KotlinWasmD8(private val kotlinJsTest: KotlinJsTest) : KotlinJsTestFramework {
|
||||||
override val settingsState: String = "KotlinWasmD8"
|
override val settingsState: String = "KotlinWasmD8"
|
||||||
@Transient
|
@Transient
|
||||||
override val compilation: KotlinJsCompilation = kotlinJsTest.compilation
|
override val compilation: KotlinJsIrCompilation = kotlinJsTest.compilation
|
||||||
@Transient
|
@Transient
|
||||||
private val project: Project = compilation.target.project
|
private val project: Project = compilation.target.project
|
||||||
|
|
||||||
|
|||||||
+2
-2
@@ -10,11 +10,11 @@ import org.gradle.process.ProcessForkOptions
|
|||||||
import org.jetbrains.kotlin.gradle.internal.testing.TCServiceMessagesClientSettings
|
import org.jetbrains.kotlin.gradle.internal.testing.TCServiceMessagesClientSettings
|
||||||
import org.jetbrains.kotlin.gradle.internal.testing.TCServiceMessagesTestExecutionSpec
|
import org.jetbrains.kotlin.gradle.internal.testing.TCServiceMessagesTestExecutionSpec
|
||||||
import org.jetbrains.kotlin.gradle.internal.testing.TCServiceMessagesTestExecutor
|
import org.jetbrains.kotlin.gradle.internal.testing.TCServiceMessagesTestExecutor
|
||||||
import org.jetbrains.kotlin.gradle.plugin.mpp.KotlinJsCompilation
|
|
||||||
import org.jetbrains.kotlin.gradle.targets.js.KotlinWasmTargetType
|
import org.jetbrains.kotlin.gradle.targets.js.KotlinWasmTargetType
|
||||||
import org.jetbrains.kotlin.gradle.targets.js.RequiredKotlinJsDependency
|
import org.jetbrains.kotlin.gradle.targets.js.RequiredKotlinJsDependency
|
||||||
import org.jetbrains.kotlin.gradle.targets.js.addWasmExperimentalArguments
|
import org.jetbrains.kotlin.gradle.targets.js.addWasmExperimentalArguments
|
||||||
import org.jetbrains.kotlin.gradle.targets.js.internal.parseNodeJsStackTraceAsJvm
|
import org.jetbrains.kotlin.gradle.targets.js.internal.parseNodeJsStackTraceAsJvm
|
||||||
|
import org.jetbrains.kotlin.gradle.targets.js.ir.KotlinJsIrCompilation
|
||||||
import org.jetbrains.kotlin.gradle.targets.js.ir.KotlinJsIrTarget
|
import org.jetbrains.kotlin.gradle.targets.js.ir.KotlinJsIrTarget
|
||||||
import org.jetbrains.kotlin.gradle.targets.js.npm.npmProject
|
import org.jetbrains.kotlin.gradle.targets.js.npm.npmProject
|
||||||
import org.jetbrains.kotlin.gradle.targets.js.writeWasmUnitTestRunner
|
import org.jetbrains.kotlin.gradle.targets.js.writeWasmUnitTestRunner
|
||||||
@@ -25,7 +25,7 @@ import java.nio.file.Path
|
|||||||
internal class KotlinWasmNode(private val kotlinJsTest: KotlinJsTest) : KotlinJsTestFramework {
|
internal class KotlinWasmNode(private val kotlinJsTest: KotlinJsTest) : KotlinJsTestFramework {
|
||||||
override val settingsState: String = "KotlinWasmNode"
|
override val settingsState: String = "KotlinWasmNode"
|
||||||
@Transient
|
@Transient
|
||||||
override val compilation: KotlinJsCompilation = kotlinJsTest.compilation
|
override val compilation: KotlinJsIrCompilation = kotlinJsTest.compilation
|
||||||
private val isTeamCity = compilation.target.project.providers.gradleProperty(TCServiceMessagesTestExecutor.TC_PROJECT_PROPERTY)
|
private val isTeamCity = compilation.target.project.providers.gradleProperty(TCServiceMessagesTestExecutor.TC_PROJECT_PROPERTY)
|
||||||
|
|
||||||
@Transient
|
@Transient
|
||||||
|
|||||||
+2
-2
@@ -23,12 +23,12 @@ import org.jetbrains.kotlin.gradle.internal.testing.TCServiceMessagesTestExecuto
|
|||||||
import org.jetbrains.kotlin.gradle.plugin.KotlinPlatformType
|
import org.jetbrains.kotlin.gradle.plugin.KotlinPlatformType
|
||||||
import org.jetbrains.kotlin.gradle.plugin.PropertiesProvider.Companion.kotlinPropertiesProvider
|
import org.jetbrains.kotlin.gradle.plugin.PropertiesProvider.Companion.kotlinPropertiesProvider
|
||||||
import org.jetbrains.kotlin.gradle.plugin.internal.MppTestReportHelper
|
import org.jetbrains.kotlin.gradle.plugin.internal.MppTestReportHelper
|
||||||
import org.jetbrains.kotlin.gradle.plugin.mpp.KotlinJsCompilation
|
|
||||||
import org.jetbrains.kotlin.gradle.targets.js.NpmPackageVersion
|
import org.jetbrains.kotlin.gradle.targets.js.NpmPackageVersion
|
||||||
import org.jetbrains.kotlin.gradle.targets.js.RequiredKotlinJsDependency
|
import org.jetbrains.kotlin.gradle.targets.js.RequiredKotlinJsDependency
|
||||||
import org.jetbrains.kotlin.gradle.targets.js.appendConfigsFromDir
|
import org.jetbrains.kotlin.gradle.targets.js.appendConfigsFromDir
|
||||||
import org.jetbrains.kotlin.gradle.targets.js.dsl.WebpackRulesDsl.Companion.webpackRulesContainer
|
import org.jetbrains.kotlin.gradle.targets.js.dsl.WebpackRulesDsl.Companion.webpackRulesContainer
|
||||||
import org.jetbrains.kotlin.gradle.targets.js.internal.parseNodeJsStackTraceAsJvm
|
import org.jetbrains.kotlin.gradle.targets.js.internal.parseNodeJsStackTraceAsJvm
|
||||||
|
import org.jetbrains.kotlin.gradle.targets.js.ir.KotlinJsIrCompilation
|
||||||
import org.jetbrains.kotlin.gradle.targets.js.jsQuoted
|
import org.jetbrains.kotlin.gradle.targets.js.jsQuoted
|
||||||
import org.jetbrains.kotlin.gradle.targets.js.nodejs.NodeJsRootPlugin.Companion.kotlinNodeJsExtension
|
import org.jetbrains.kotlin.gradle.targets.js.nodejs.NodeJsRootPlugin.Companion.kotlinNodeJsExtension
|
||||||
import org.jetbrains.kotlin.gradle.targets.js.npm.npmProject
|
import org.jetbrains.kotlin.gradle.targets.js.npm.npmProject
|
||||||
@@ -44,7 +44,7 @@ import java.io.File
|
|||||||
import java.nio.file.Path
|
import java.nio.file.Path
|
||||||
|
|
||||||
class KotlinKarma(
|
class KotlinKarma(
|
||||||
@Transient override val compilation: KotlinJsCompilation,
|
@Transient override val compilation: KotlinJsIrCompilation,
|
||||||
private val services: () -> ServiceRegistry,
|
private val services: () -> ServiceRegistry,
|
||||||
private val basePath: String,
|
private val basePath: String,
|
||||||
) : KotlinJsTestFramework {
|
) : KotlinJsTestFramework {
|
||||||
|
|||||||
+2
-3
@@ -11,10 +11,9 @@ import org.jetbrains.kotlin.gradle.internal.testing.TCServiceMessagesClientSetti
|
|||||||
import org.jetbrains.kotlin.gradle.internal.testing.TCServiceMessagesTestExecutionSpec
|
import org.jetbrains.kotlin.gradle.internal.testing.TCServiceMessagesTestExecutionSpec
|
||||||
import org.jetbrains.kotlin.gradle.internal.testing.TCServiceMessagesTestExecutor
|
import org.jetbrains.kotlin.gradle.internal.testing.TCServiceMessagesTestExecutor
|
||||||
import org.jetbrains.kotlin.gradle.plugin.KotlinPlatformType
|
import org.jetbrains.kotlin.gradle.plugin.KotlinPlatformType
|
||||||
import org.jetbrains.kotlin.gradle.plugin.mpp.KotlinJsCompilation
|
|
||||||
import org.jetbrains.kotlin.gradle.targets.js.RequiredKotlinJsDependency
|
import org.jetbrains.kotlin.gradle.targets.js.RequiredKotlinJsDependency
|
||||||
import org.jetbrains.kotlin.gradle.targets.js.internal.parseNodeJsStackTraceAsJvm
|
import org.jetbrains.kotlin.gradle.targets.js.internal.parseNodeJsStackTraceAsJvm
|
||||||
import org.jetbrains.kotlin.gradle.targets.js.nodejs.NodeJsRootPlugin
|
import org.jetbrains.kotlin.gradle.targets.js.ir.KotlinJsIrCompilation
|
||||||
import org.jetbrains.kotlin.gradle.targets.js.nodejs.NodeJsRootPlugin.Companion.kotlinNodeJsExtension
|
import org.jetbrains.kotlin.gradle.targets.js.nodejs.NodeJsRootPlugin.Companion.kotlinNodeJsExtension
|
||||||
import org.jetbrains.kotlin.gradle.targets.js.npm.npmProject
|
import org.jetbrains.kotlin.gradle.targets.js.npm.npmProject
|
||||||
import org.jetbrains.kotlin.gradle.targets.js.testing.KotlinJsTest
|
import org.jetbrains.kotlin.gradle.targets.js.testing.KotlinJsTest
|
||||||
@@ -23,7 +22,7 @@ import org.jetbrains.kotlin.gradle.targets.js.testing.KotlinTestRunnerCliArgs
|
|||||||
import org.jetbrains.kotlin.gradle.utils.getValue
|
import org.jetbrains.kotlin.gradle.utils.getValue
|
||||||
import java.nio.file.Path
|
import java.nio.file.Path
|
||||||
|
|
||||||
class KotlinMocha(@Transient override val compilation: KotlinJsCompilation, private val basePath: String) :
|
class KotlinMocha(@Transient override val compilation: KotlinJsIrCompilation, private val basePath: String) :
|
||||||
KotlinJsTestFramework {
|
KotlinJsTestFramework {
|
||||||
@Transient
|
@Transient
|
||||||
private val project: Project = compilation.target.project
|
private val project: Project = compilation.target.project
|
||||||
|
|||||||
+2
-2
@@ -12,9 +12,9 @@ import org.gradle.api.tasks.*
|
|||||||
import org.gradle.work.DisableCachingByDefault
|
import org.gradle.work.DisableCachingByDefault
|
||||||
import org.gradle.work.NormalizeLineEndings
|
import org.gradle.work.NormalizeLineEndings
|
||||||
import org.jetbrains.kotlin.gradle.internal.execWithProgress
|
import org.jetbrains.kotlin.gradle.internal.execWithProgress
|
||||||
import org.jetbrains.kotlin.gradle.plugin.mpp.KotlinJsCompilation
|
|
||||||
import org.jetbrains.kotlin.gradle.targets.js.RequiredKotlinJsDependency
|
import org.jetbrains.kotlin.gradle.targets.js.RequiredKotlinJsDependency
|
||||||
import org.jetbrains.kotlin.gradle.targets.js.ir.KotlinIrJsGeneratedTSValidationStrategy
|
import org.jetbrains.kotlin.gradle.targets.js.ir.KotlinIrJsGeneratedTSValidationStrategy
|
||||||
|
import org.jetbrains.kotlin.gradle.targets.js.ir.KotlinJsIrCompilation
|
||||||
import org.jetbrains.kotlin.gradle.targets.js.nodejs.NodeJsRootPlugin.Companion.kotlinNodeJsExtension
|
import org.jetbrains.kotlin.gradle.targets.js.nodejs.NodeJsRootPlugin.Companion.kotlinNodeJsExtension
|
||||||
import org.jetbrains.kotlin.gradle.targets.js.npm.RequiresNpmDependencies
|
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.npm.npmProject
|
||||||
@@ -26,7 +26,7 @@ abstract class TypeScriptValidationTask
|
|||||||
constructor(
|
constructor(
|
||||||
@Internal
|
@Internal
|
||||||
@Transient
|
@Transient
|
||||||
override val compilation: KotlinJsCompilation
|
override val compilation: KotlinJsIrCompilation
|
||||||
) : DefaultTask(), RequiresNpmDependencies {
|
) : DefaultTask(), RequiresNpmDependencies {
|
||||||
private val npmProject = compilation.npmProject
|
private val npmProject = compilation.npmProject
|
||||||
|
|
||||||
|
|||||||
+2
-2
@@ -24,13 +24,13 @@ import org.gradle.process.internal.ExecHandleFactory
|
|||||||
import org.gradle.work.NormalizeLineEndings
|
import org.gradle.work.NormalizeLineEndings
|
||||||
import org.jetbrains.kotlin.build.report.metrics.*
|
import org.jetbrains.kotlin.build.report.metrics.*
|
||||||
import org.jetbrains.kotlin.gradle.plugin.KotlinPlatformType
|
import org.jetbrains.kotlin.gradle.plugin.KotlinPlatformType
|
||||||
import org.jetbrains.kotlin.gradle.plugin.mpp.KotlinJsCompilation
|
|
||||||
import org.jetbrains.kotlin.gradle.utils.archivesName
|
import org.jetbrains.kotlin.gradle.utils.archivesName
|
||||||
import org.jetbrains.kotlin.gradle.report.UsesBuildMetricsService
|
import org.jetbrains.kotlin.gradle.report.UsesBuildMetricsService
|
||||||
import org.jetbrains.kotlin.gradle.targets.js.RequiredKotlinJsDependency
|
import org.jetbrains.kotlin.gradle.targets.js.RequiredKotlinJsDependency
|
||||||
import org.jetbrains.kotlin.gradle.targets.js.dsl.KotlinWebpackRulesContainer
|
import org.jetbrains.kotlin.gradle.targets.js.dsl.KotlinWebpackRulesContainer
|
||||||
import org.jetbrains.kotlin.gradle.targets.js.dsl.WebpackRulesDsl
|
import org.jetbrains.kotlin.gradle.targets.js.dsl.WebpackRulesDsl
|
||||||
import org.jetbrains.kotlin.gradle.targets.js.dsl.WebpackRulesDsl.Companion.webpackRulesContainer
|
import org.jetbrains.kotlin.gradle.targets.js.dsl.WebpackRulesDsl.Companion.webpackRulesContainer
|
||||||
|
import org.jetbrains.kotlin.gradle.targets.js.ir.KotlinJsIrCompilation
|
||||||
import org.jetbrains.kotlin.gradle.targets.js.nodejs.NodeJsRootPlugin.Companion.kotlinNodeJsExtension
|
import org.jetbrains.kotlin.gradle.targets.js.nodejs.NodeJsRootPlugin.Companion.kotlinNodeJsExtension
|
||||||
import org.jetbrains.kotlin.gradle.targets.js.npm.RequiresNpmDependencies
|
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.npm.npmProject
|
||||||
@@ -48,7 +48,7 @@ abstract class KotlinWebpack
|
|||||||
constructor(
|
constructor(
|
||||||
@Internal
|
@Internal
|
||||||
@Transient
|
@Transient
|
||||||
override val compilation: KotlinJsCompilation,
|
override val compilation: KotlinJsIrCompilation,
|
||||||
private val objects: ObjectFactory
|
private val objects: ObjectFactory
|
||||||
) : DefaultTask(), RequiresNpmDependencies, WebpackRulesDsl, UsesBuildMetricsService {
|
) : DefaultTask(), RequiresNpmDependencies, WebpackRulesDsl, UsesBuildMetricsService {
|
||||||
@Transient
|
@Transient
|
||||||
|
|||||||
+1
-2
@@ -9,7 +9,6 @@ import org.jetbrains.kotlin.compilerRunner.GradleCompilerRunner
|
|||||||
import org.jetbrains.kotlin.gradle.incremental.IncrementalModuleInfoBuildService
|
import org.jetbrains.kotlin.gradle.incremental.IncrementalModuleInfoBuildService
|
||||||
import org.jetbrains.kotlin.gradle.plugin.KotlinCompilationInfo
|
import org.jetbrains.kotlin.gradle.plugin.KotlinCompilationInfo
|
||||||
import org.jetbrains.kotlin.gradle.plugin.KotlinPlatformType
|
import org.jetbrains.kotlin.gradle.plugin.KotlinPlatformType
|
||||||
import org.jetbrains.kotlin.gradle.plugin.mpp.KotlinJsCompilation
|
|
||||||
import org.jetbrains.kotlin.gradle.plugin.mpp.KotlinWithJavaTarget
|
import org.jetbrains.kotlin.gradle.plugin.mpp.KotlinWithJavaTarget
|
||||||
import org.jetbrains.kotlin.gradle.plugin.tcs
|
import org.jetbrains.kotlin.gradle.plugin.tcs
|
||||||
import org.jetbrains.kotlin.gradle.targets.js.KotlinJsTarget
|
import org.jetbrains.kotlin.gradle.targets.js.KotlinJsTarget
|
||||||
@@ -129,7 +128,7 @@ internal open class BaseKotlin2JsCompileConfig<TASK : Kotlin2JsCompile>(
|
|||||||
|
|
||||||
if (compilation.platformType == KotlinPlatformType.wasm) {
|
if (compilation.platformType == KotlinPlatformType.wasm) {
|
||||||
add(WASM_BACKEND)
|
add(WASM_BACKEND)
|
||||||
val wasmTargetType = ((compilation.origin as KotlinJsCompilation).target as KotlinJsIrTarget).wasmTargetType!!
|
val wasmTargetType = ((compilation.origin as KotlinJsIrCompilation).target as KotlinJsIrTarget).wasmTargetType!!
|
||||||
val targetValue = if (wasmTargetType == KotlinWasmTargetType.WASI) "wasm-wasi" else "wasm-js"
|
val targetValue = if (wasmTargetType == KotlinWasmTargetType.WASI) "wasm-wasi" else "wasm-js"
|
||||||
add("$WASM_TARGET=$targetValue")
|
add("$WASM_TARGET=$targetValue")
|
||||||
}
|
}
|
||||||
|
|||||||
+1
-2
@@ -8,7 +8,6 @@ package org.jetbrains.kotlin.gradle.tasks.configuration
|
|||||||
import org.gradle.api.InvalidUserDataException
|
import org.gradle.api.InvalidUserDataException
|
||||||
import org.jetbrains.kotlin.gradle.plugin.KotlinCompilationInfo
|
import org.jetbrains.kotlin.gradle.plugin.KotlinCompilationInfo
|
||||||
import org.jetbrains.kotlin.gradle.plugin.KotlinPlatformType
|
import org.jetbrains.kotlin.gradle.plugin.KotlinPlatformType
|
||||||
import org.jetbrains.kotlin.gradle.plugin.mpp.KotlinJsCompilation
|
|
||||||
import org.jetbrains.kotlin.gradle.targets.js.KotlinWasmTargetType
|
import org.jetbrains.kotlin.gradle.targets.js.KotlinWasmTargetType
|
||||||
import org.jetbrains.kotlin.gradle.targets.js.dsl.KotlinJsBinaryMode
|
import org.jetbrains.kotlin.gradle.targets.js.dsl.KotlinJsBinaryMode
|
||||||
import org.jetbrains.kotlin.gradle.targets.js.ir.*
|
import org.jetbrains.kotlin.gradle.targets.js.ir.*
|
||||||
@@ -100,7 +99,7 @@ internal open class KotlinJsIrLinkConfig(
|
|||||||
|
|
||||||
if (compilation.platformType == KotlinPlatformType.wasm) {
|
if (compilation.platformType == KotlinPlatformType.wasm) {
|
||||||
add(WASM_BACKEND)
|
add(WASM_BACKEND)
|
||||||
val wasmTargetType = ((compilation.origin as KotlinJsCompilation).target as KotlinJsIrTarget).wasmTargetType!!
|
val wasmTargetType = ((compilation.origin as KotlinJsIrCompilation).target as KotlinJsIrTarget).wasmTargetType!!
|
||||||
val targetValue = if (wasmTargetType == KotlinWasmTargetType.WASI) "wasm-wasi" else "wasm-js"
|
val targetValue = if (wasmTargetType == KotlinWasmTargetType.WASI) "wasm-wasi" else "wasm-js"
|
||||||
add("$WASM_TARGET=$targetValue")
|
add("$WASM_TARGET=$targetValue")
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user