From 3bc4e291ffbdc61cd4ddb20a76aa25a9d8722c31 Mon Sep 17 00:00:00 2001 From: Sebastian Sellmair Date: Wed, 5 Oct 2022 10:23:01 +0200 Subject: [PATCH] [Gradle] JsKotlinDependencyConfigurationsFactory: Fix compileClasspath and runtimeClasspath ^KT-54312 Verification Pending --- .../plugin/mpp/InternalKotlinCompilation.kt | 2 ++ .../compilationImpl/KotlinCompilationImpl.kt | 22 +++++++++---------- ...pilationDependencyConfigurationsFactory.kt | 11 +++++++--- 3 files changed, 21 insertions(+), 14 deletions(-) diff --git a/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/plugin/mpp/InternalKotlinCompilation.kt b/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/plugin/mpp/InternalKotlinCompilation.kt index 1c6f3bbd8f5..ada2770fbc3 100644 --- a/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/plugin/mpp/InternalKotlinCompilation.kt +++ b/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/plugin/mpp/InternalKotlinCompilation.kt @@ -9,6 +9,7 @@ import org.gradle.api.file.FileCollection import org.jetbrains.kotlin.gradle.dsl.KotlinCommonOptions import org.jetbrains.kotlin.gradle.plugin.KotlinCompilation import org.jetbrains.kotlin.gradle.plugin.KotlinSourceSet +import org.jetbrains.kotlin.gradle.plugin.mpp.compilationImpl.KotlinCompilationDependencyConfigurationsContainer import org.jetbrains.kotlin.gradle.plugin.mpp.compilationImpl.KotlinCompilationModuleManager import org.jetbrains.kotlin.gradle.utils.ObservableSet import org.jetbrains.kotlin.tooling.core.MutableExtras @@ -19,6 +20,7 @@ internal interface InternalKotlinCompilation : Kotl override val kotlinSourceSets: ObservableSet override val allKotlinSourceSets: ObservableSet + val configurations: KotlinCompilationDependencyConfigurationsContainer val friendPaths: Iterable val compilationModule: KotlinCompilationModuleManager.CompilationModule val processResourcesTaskName: String? diff --git a/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/plugin/mpp/compilationImpl/KotlinCompilationImpl.kt b/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/plugin/mpp/compilationImpl/KotlinCompilationImpl.kt index 743f3aee658..9e92fa54326 100644 --- a/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/plugin/mpp/compilationImpl/KotlinCompilationImpl.kt +++ b/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/plugin/mpp/compilationImpl/KotlinCompilationImpl.kt @@ -61,7 +61,7 @@ internal class KotlinCompilationImpl @Inject constructor( val sourceSets get() = params.sourceSets - val dependencyConfigurations: KotlinCompilationDependencyConfigurationsContainer + override val configurations: KotlinCompilationDependencyConfigurationsContainer get() = params.dependencyConfigurations override val compilationName: String @@ -106,26 +106,26 @@ internal class KotlinCompilationImpl @Inject constructor( //region Dependency Configuration Management override val apiConfigurationName: String - get() = dependencyConfigurations.apiConfiguration.name + get() = configurations.apiConfiguration.name override val implementationConfigurationName: String - get() = dependencyConfigurations.implementationConfiguration.name + get() = configurations.implementationConfiguration.name override val compileOnlyConfigurationName: String - get() = dependencyConfigurations.compileOnlyConfiguration.name + get() = configurations.compileOnlyConfiguration.name override val runtimeOnlyConfigurationName: String - get() = dependencyConfigurations.runtimeOnlyConfiguration.name + get() = configurations.runtimeOnlyConfiguration.name override val compileDependencyConfigurationName: String - get() = dependencyConfigurations.compileDependencyConfiguration.name + get() = configurations.compileDependencyConfiguration.name override val runtimeDependencyConfigurationName: String? - get() = dependencyConfigurations.runtimeDependencyConfiguration?.name + get() = configurations.runtimeDependencyConfiguration?.name - override var compileDependencyFiles: FileCollection = dependencyConfigurations.compileDependencyConfiguration + override var compileDependencyFiles: FileCollection = configurations.compileDependencyConfiguration - override var runtimeDependencyFiles: FileCollection? = dependencyConfigurations.runtimeDependencyConfiguration + override var runtimeDependencyFiles: FileCollection? = configurations.runtimeDependencyConfiguration override val relatedConfigurationNames: List = listOfNotNull( apiConfigurationName, @@ -137,11 +137,11 @@ internal class KotlinCompilationImpl @Inject constructor( ) override fun dependencies(configure: KotlinDependencyHandler.() -> Unit) { - HasKotlinDependencies(project, dependencyConfigurations).dependencies(configure) + HasKotlinDependencies(project, configurations).dependencies(configure) } override fun dependencies(configure: Action) { - HasKotlinDependencies(project, dependencyConfigurations).dependencies(configure) + HasKotlinDependencies(project, configurations).dependencies(configure) } //endregion diff --git a/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/plugin/mpp/compilationImpl/factory/DefaultKotlinCompilationDependencyConfigurationsFactory.kt b/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/plugin/mpp/compilationImpl/factory/DefaultKotlinCompilationDependencyConfigurationsFactory.kt index ce496cbac4d..43690585eb1 100644 --- a/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/plugin/mpp/compilationImpl/factory/DefaultKotlinCompilationDependencyConfigurationsFactory.kt +++ b/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/plugin/mpp/compilationImpl/factory/DefaultKotlinCompilationDependencyConfigurationsFactory.kt @@ -52,9 +52,12 @@ internal object JsKotlinCompilationDependencyConfigurationsFactory : KotlinCompilationImplFactory.KotlinCompilationDependencyConfigurationsFactory { override fun create(target: KotlinTarget, compilationName: String): KotlinCompilationDependencyConfigurationsContainer { + val defaultNaming = ConfigurationNaming.Default(target, compilationName) return KotlinCompilationDependencyConfigurationsContainer( target, compilationName, withRuntime = true, - naming = ConfigurationNaming.Js(target, compilationName) + naming = ConfigurationNaming.Js(target, compilationName), + compileClasspathConfigurationName = defaultNaming.name(compileClasspath), + runtimeClasspathConfigurationName = defaultNaming.name(runtimeClasspath) ) } } @@ -105,6 +108,8 @@ private fun interface ConfigurationNaming { } private const val compilation = "compilation" +private const val compileClasspath = "compileClasspath" +private const val runtimeClasspath = "runtimeClasspath" private fun KotlinCompilationDependencyConfigurationsContainer( target: KotlinTarget, compilationName: String, withRuntime: Boolean, @@ -113,8 +118,8 @@ private fun KotlinCompilationDependencyConfigurationsContainer( implementationConfigurationName: String = naming.name(compilation, IMPLEMENTATION), compileOnlyConfigurationName: String = naming.name(compilation, COMPILE_ONLY), runtimeOnlyConfigurationName: String = naming.name(compilation, RUNTIME_ONLY), - compileClasspathConfigurationName: String = naming.name("compileClasspath"), - runtimeClasspathConfigurationName: String = naming.name("runtimeClasspath") + compileClasspathConfigurationName: String = naming.name(compileClasspath), + runtimeClasspathConfigurationName: String = naming.name(runtimeClasspath) ): KotlinCompilationDependencyConfigurationsContainer { val compilationCoordinates = "${target.disambiguationClassifier}/$compilationName"