diff --git a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/Kotlin2JsGradlePluginIT.kt b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/Kotlin2JsGradlePluginIT.kt index 8ace11002e2..5987b1fd371 100644 --- a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/Kotlin2JsGradlePluginIT.kt +++ b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/Kotlin2JsGradlePluginIT.kt @@ -1193,14 +1193,13 @@ abstract class AbstractKotlin2JsGradlePluginIT(protected val irBackend: Boolean) | api(project(":base")) | implementation(project(":base")) | compileOnly(project(":base")) - | runtimeOnly(project(":base")) | } | } | } | |task("printMetadataFiles") { | doFirst { - | listOf("api", "implementation", "compileOnly", "runtimeOnly").forEach { kind -> + | listOf("api", "implementation", "compileOnly").forEach { kind -> | val configuration = configurations.getByName(kind + "DependenciesMetadata") | configuration.files.forEach { println("$pathPrefix" + configuration.name + "->" + it.name) } | } @@ -1223,7 +1222,7 @@ abstract class AbstractKotlin2JsGradlePluginIT(protected val irBackend: Boolean) .toSet() assertEquals( - listOf("api", "implementation", "compileOnly", "runtimeOnly").map { + listOf("api", "implementation", "compileOnly").map { "$it$METADATA_CONFIGURATION_NAME_SUFFIX" to expectedFileName }.toSet(), paths diff --git a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/NewMultiplatformIT.kt b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/NewMultiplatformIT.kt index ce06ebd4f4e..434af4a4976 100644 --- a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/NewMultiplatformIT.kt +++ b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/NewMultiplatformIT.kt @@ -919,14 +919,13 @@ class NewMultiplatformIT : BaseGradleIT() { // add these dependencies to check that they are resolved to metadata api 'com.example:sample-lib:1.0' compileOnly 'com.example:sample-lib:1.0' - runtimeOnly 'com.example:sample-lib:1.0' } } } task('printMetadataFiles') { doFirst { - ['Api', 'Implementation', 'CompileOnly', 'RuntimeOnly'].each { kind -> + ['Api', 'Implementation', 'CompileOnly'].each { kind -> def configuration = configurations.getByName("commonMain${'$'}kind" + '$METADATA_CONFIGURATION_NAME_SUFFIX') configuration.files.each { println '$pathPrefix' + configuration.name + '->' + it.name } } @@ -947,7 +946,7 @@ class NewMultiplatformIT : BaseGradleIT() { .toSet() Assert.assertEquals( - listOf("Api", "Implementation", "CompileOnly", "RuntimeOnly").map { + listOf("Api", "Implementation", "CompileOnly").map { "commonMain$it$METADATA_CONFIGURATION_NAME_SUFFIX" to expectedFileName }.toSet(), paths @@ -999,14 +998,13 @@ class NewMultiplatformIT : BaseGradleIT() { api 'com.example:sample-lib-nodejs:1.0' implementation 'com.example:sample-lib-nodejs:1.0' compileOnly 'com.example:sample-lib-nodejs:1.0' - runtimeOnly 'com.example:sample-lib-nodejs:1.0' } } } task('printMetadataFiles') { doFirst { - ['Api', 'Implementation', 'CompileOnly', 'RuntimeOnly'].each { kind -> + ['Api', 'Implementation', 'CompileOnly'].each { kind -> def configuration = configurations.getByName("nodeJsMain${'$'}kind" + '$METADATA_CONFIGURATION_NAME_SUFFIX') configuration.files.each { println '$pathPrefix' + configuration.name + '->' + it.name } } @@ -1030,7 +1028,7 @@ class NewMultiplatformIT : BaseGradleIT() { .toSet() Assert.assertEquals( - listOf("Api", "Implementation", "CompileOnly", "RuntimeOnly").map { + listOf("Api", "Implementation", "CompileOnly").map { "nodeJsMain$it$METADATA_CONFIGURATION_NAME_SUFFIX" to expectedFileName }.toSet(), paths @@ -1541,10 +1539,10 @@ class NewMultiplatformIT : BaseGradleIT() { .count() ) + // All scoped DependenciesMetadata should resolve consistently into the same version assertContains(">> :app:testExplicitKotlinVersionApiDependenciesMetadata --> kotlin-reflect-1.3.0.jar") - assertContains(">> :app:testExplicitKotlinVersionImplementationDependenciesMetadata --> kotlin-reflect-1.2.71.jar") - assertContains(">> :app:testExplicitKotlinVersionCompileOnlyDependenciesMetadata --> kotlin-reflect-1.2.70.jar") - assertContains(">> :app:testExplicitKotlinVersionRuntimeOnlyDependenciesMetadata --> kotlin-reflect-1.2.60.jar") + assertContains(">> :app:testExplicitKotlinVersionImplementationDependenciesMetadata --> kotlin-reflect-1.3.0.jar") + assertContains(">> :app:testExplicitKotlinVersionCompileOnlyDependenciesMetadata --> kotlin-reflect-1.3.0.jar") assertContains(">> :app:testProjectWithConfigurationApiDependenciesMetadata --> output.txt") } diff --git a/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/plugin/sources/DefaultKotlinSourceSet.kt b/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/plugin/sources/DefaultKotlinSourceSet.kt index d6c9678d1c2..a3609345632 100644 --- a/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/plugin/sources/DefaultKotlinSourceSet.kt +++ b/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/plugin/sources/DefaultKotlinSourceSet.kt @@ -162,7 +162,7 @@ abstract class DefaultKotlinSourceSet @Inject constructor( fun getAdditionalVisibleSourceSets(): List = getVisibleSourceSetsFromAssociateCompilations(this) - private fun getDependenciesTransformation(): Iterable { + internal fun getDependenciesTransformation(): Iterable { val metadataDependencyResolutionByModule = compileDependenciesTransformation.metadataDependencyResolutions .associateBy { ModuleIds.fromComponent(project, it.dependency) } diff --git a/libraries/tools/kotlin-gradle-plugin/src/functionalTest/kotlin/org/jetbrains/kotlin/gradle/ConfigurationsTest.kt b/libraries/tools/kotlin-gradle-plugin/src/functionalTest/kotlin/org/jetbrains/kotlin/gradle/ConfigurationsTest.kt index 6a2ada4602b..39e805e9659 100644 --- a/libraries/tools/kotlin-gradle-plugin/src/functionalTest/kotlin/org/jetbrains/kotlin/gradle/ConfigurationsTest.kt +++ b/libraries/tools/kotlin-gradle-plugin/src/functionalTest/kotlin/org/jetbrains/kotlin/gradle/ConfigurationsTest.kt @@ -76,12 +76,10 @@ class ConfigurationsTest : MultiplatformExtensionTest() { "MainApiDependenciesMetadata", "MainCompileOnlyDependenciesMetadata", "MainImplementationDependenciesMetadata", - "MainRuntimeOnlyDependenciesMetadata", "TestApiDependenciesMetadata", "TestCompileOnlyDependenciesMetadata", "TestImplementationDependenciesMetadata", - "TestRuntimeOnlyDependenciesMetadata", ) // WASM @@ -99,7 +97,6 @@ class ConfigurationsTest : MultiplatformExtensionTest() { "ApiDependenciesMetadata", "CompileOnlyDependenciesMetadata", "ImplementationDependenciesMetadata", - "RuntimeOnlyDependenciesMetadata", ) // allJs diff --git a/libraries/tools/kotlin-gradle-plugin/src/functionalTest/kotlin/org/jetbrains/kotlin/gradle/KT46273JvmTargetAndOrphanTestSourceSetTest.kt b/libraries/tools/kotlin-gradle-plugin/src/functionalTest/kotlin/org/jetbrains/kotlin/gradle/KT46273JvmTargetAndOrphanTestSourceSetTest.kt index 83a5133501f..4ccc08313bc 100644 --- a/libraries/tools/kotlin-gradle-plugin/src/functionalTest/kotlin/org/jetbrains/kotlin/gradle/KT46273JvmTargetAndOrphanTestSourceSetTest.kt +++ b/libraries/tools/kotlin-gradle-plugin/src/functionalTest/kotlin/org/jetbrains/kotlin/gradle/KT46273JvmTargetAndOrphanTestSourceSetTest.kt @@ -41,8 +41,6 @@ class KT46273JvmTargetAndOrphanTestSourceSetTest : MultiplatformExtensionTest() The dependencies' transformation will be called by the IDE during import. */ - KotlinDependencyScope.values().forEach { scope -> - orphanTestSourceSet.getDependenciesTransformation(scope) - } + orphanTestSourceSet.getDependenciesTransformation() } }