diff --git a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/HierarchicalMppIT.kt b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/HierarchicalMppIT.kt index 5300f2cd86d..45dd0697bd5 100644 --- a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/HierarchicalMppIT.kt +++ b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/HierarchicalMppIT.kt @@ -240,7 +240,10 @@ open class HierarchicalMppIT : KGPBaseTest() { ).run { build("publish") { assertEquals( - setOf("third-party-lib-metadata-1.0.jar"), + setOf( + "third-party-lib-metadata-1.0.jar", + "kotlin-stdlib-${buildOptions.kotlinVersion}-all.jar", + ), transformedArtifacts() ) } @@ -256,7 +259,8 @@ open class HierarchicalMppIT : KGPBaseTest() { assertEquals( setOf( "my-lib-foo-metadata-1.0-all.jar", - "third-party-lib-metadata-1.0.jar" + "third-party-lib-metadata-1.0.jar", + "kotlin-stdlib-${buildOptions.kotlinVersion}-all.jar", ), transformedArtifacts() ) diff --git a/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/internal/stdlibDependencyManagement.kt b/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/internal/stdlibDependencyManagement.kt index bd59a0bd72a..cdf56c79195 100644 --- a/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/internal/stdlibDependencyManagement.kt +++ b/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/internal/stdlibDependencyManagement.kt @@ -35,7 +35,7 @@ internal const val KOTLIN_STDLIB_JDK7_MODULE_NAME = "kotlin-stdlib-jdk7" internal const val KOTLIN_STDLIB_JDK8_MODULE_NAME = "kotlin-stdlib-jdk8" internal const val KOTLIN_STDLIB_JS_MODULE_NAME = "kotlin-stdlib-js" internal const val KOTLIN_STDLIB_WASM_MODULE_NAME = "kotlin-stdlib-wasm" -internal const val KOTLIN_ANDROID_JVM_STDLIB_MODULE_NAME = KOTLIN_STDLIB_JDK8_MODULE_NAME +internal const val KOTLIN_ANDROID_JVM_STDLIB_MODULE_NAME = KOTLIN_STDLIB_MODULE_NAME internal fun Project.configureStdlibDefaultDependency( topLevelExtension: KotlinTopLevelExtension, @@ -111,18 +111,18 @@ private fun addStdlibToKpmProject( project.pm20Extension.modules.named(GradleKpmModule.MAIN_MODULE_NAME) { main -> main.fragments.named(GradleKpmFragment.COMMON_FRAGMENT_NAME) { common -> common.dependencies { - api(project.dependencies.kotlinDependency(KOTLIN_STDLIB_COMMON_MODULE_NAME, coreLibrariesVersion.get())) + api(project.dependencies.kotlinDependency(KOTLIN_STDLIB_MODULE_NAME, coreLibrariesVersion.get())) } } main.variants.configureEach { variant -> val dependencyHandler = project.dependencies val stdlibModule = when (variant.platformType) { KotlinPlatformType.common -> error("variants are not expected to be common") - KotlinPlatformType.jvm -> KOTLIN_STDLIB_JDK8_MODULE_NAME - KotlinPlatformType.js -> KOTLIN_STDLIB_JS_MODULE_NAME + KotlinPlatformType.jvm -> KOTLIN_STDLIB_MODULE_NAME + KotlinPlatformType.js -> KOTLIN_STDLIB_MODULE_NAME KotlinPlatformType.wasm -> KOTLIN_STDLIB_WASM_MODULE_NAME KotlinPlatformType.androidJvm -> null // TODO: expect support on the AGP side? - KotlinPlatformType.native -> null + KotlinPlatformType.native -> KOTLIN_STDLIB_MODULE_NAME } if (stdlibModule != null) { variant.dependencies { @@ -203,7 +203,7 @@ internal fun KotlinPlatformType.stdlibPlatformType( kotlinTarget: KotlinTarget, kotlinSourceSet: KotlinSourceSet ): String? = when (this) { - KotlinPlatformType.jvm -> KOTLIN_STDLIB_JDK8_MODULE_NAME + KotlinPlatformType.jvm -> KOTLIN_STDLIB_MODULE_NAME KotlinPlatformType.androidJvm -> { if (kotlinTarget is KotlinAndroidTarget && kotlinSourceSet.androidSourceSetInfoOrNull?.androidSourceSetName == AndroidBaseSourceSetName.Main.name @@ -214,11 +214,11 @@ internal fun KotlinPlatformType.stdlibPlatformType( } } - KotlinPlatformType.js -> KOTLIN_STDLIB_JS_MODULE_NAME + KotlinPlatformType.js -> KOTLIN_STDLIB_MODULE_NAME KotlinPlatformType.wasm -> KOTLIN_STDLIB_WASM_MODULE_NAME KotlinPlatformType.native -> null KotlinPlatformType.common -> // there's no platform compilation that the source set is default for - KOTLIN_STDLIB_COMMON_MODULE_NAME + KOTLIN_STDLIB_MODULE_NAME } private val androidTestVariants = setOf(AndroidVariantType.UnitTest, AndroidVariantType.InstrumentedTest) diff --git a/libraries/tools/kotlin-gradle-plugin/src/functionalTest/kotlin/org/jetbrains/kotlin/gradle/dependencyResolutionTests/tcs/IdeStdlibResolutionTest.kt b/libraries/tools/kotlin-gradle-plugin/src/functionalTest/kotlin/org/jetbrains/kotlin/gradle/dependencyResolutionTests/tcs/IdeStdlibResolutionTest.kt index ac1e8d16d4e..536fb0f8558 100644 --- a/libraries/tools/kotlin-gradle-plugin/src/functionalTest/kotlin/org/jetbrains/kotlin/gradle/dependencyResolutionTests/tcs/IdeStdlibResolutionTest.kt +++ b/libraries/tools/kotlin-gradle-plugin/src/functionalTest/kotlin/org/jetbrains/kotlin/gradle/dependencyResolutionTests/tcs/IdeStdlibResolutionTest.kt @@ -36,8 +36,8 @@ class IdeStdlibResolutionTest { project.evaluate() - project.assertStdlibDependencies(kotlin.sourceSets.getByName("commonMain"), jvmStdlibDependencies(kotlin)) - project.assertStdlibDependencies(kotlin.sourceSets.getByName("commonTest"), jvmStdlibDependencies(kotlin)) + project.assertStdlibDependencies(kotlin.sourceSets.getByName("commonMain"), jvmStdlibDependencies(kotlin) + commonStdlibDependency(kotlin)) + project.assertStdlibDependencies(kotlin.sourceSets.getByName("commonTest"), jvmStdlibDependencies(kotlin) + commonStdlibDependency(kotlin)) project.assertStdlibDependencies(kotlin.sourceSets.getByName("jvmMain"), jvmStdlibDependencies(kotlin)) project.assertStdlibDependencies(kotlin.sourceSets.getByName("jvmTest"), jvmStdlibDependencies(kotlin)) } @@ -66,8 +66,8 @@ class IdeStdlibResolutionTest { project.evaluate() - project.assertStdlibDependencies(kotlin.sourceSets.getByName("commonMain"), jsStdlibDependency(kotlin)) - project.assertStdlibDependencies(kotlin.sourceSets.getByName("commonTest"), jsStdlibDependency(kotlin)) + project.assertStdlibDependencies(kotlin.sourceSets.getByName("commonMain"), listOf(commonStdlibDependency(kotlin), jsStdlibDependency(kotlin))) + project.assertStdlibDependencies(kotlin.sourceSets.getByName("commonTest"), listOf(commonStdlibDependency(kotlin), jsStdlibDependency(kotlin))) project.assertStdlibDependencies(kotlin.sourceSets.getByName("jsMain"), jsStdlibDependency(kotlin)) project.assertStdlibDependencies(kotlin.sourceSets.getByName("jsTest"), jsStdlibDependency(kotlin)) } @@ -116,8 +116,8 @@ class IdeStdlibResolutionTest { project.assertStdlibDependencies(commonMain, commonStdlibDependency(kotlin)) project.assertStdlibDependencies(commonTest, commonStdlibDependency(kotlin)) - project.assertStdlibDependencies(jvmIntermediateMain, jvmStdlibDependencies(kotlin)) - project.assertStdlibDependencies(jvmIntermediateTest, jvmStdlibDependencies(kotlin)) + project.assertStdlibDependencies(jvmIntermediateMain, jvmStdlibDependencies(kotlin) + commonStdlibDependency(kotlin)) + project.assertStdlibDependencies(jvmIntermediateTest, jvmStdlibDependencies(kotlin) + commonStdlibDependency(kotlin)) } @Test @@ -235,11 +235,11 @@ class IdeStdlibResolutionTest { } private fun commonStdlibDependency(kotlin: KotlinMultiplatformExtension) = - binaryCoordinates("org.jetbrains.kotlin:kotlin-stdlib-common:${kotlin.coreLibrariesVersion}") + binaryCoordinates("org.jetbrains.kotlin:kotlin-stdlib:${kotlin.coreLibrariesVersion}:commonMain") private fun jvmStdlibDependencies(kotlin: KotlinMultiplatformExtension) = listOf( - binaryCoordinates("org.jetbrains.kotlin:kotlin-stdlib-jdk8:${kotlin.coreLibrariesVersion}"), - binaryCoordinates("org.jetbrains.kotlin:kotlin-stdlib-jdk7:${kotlin.coreLibrariesVersion}"), +// binaryCoordinates("org.jetbrains.kotlin:kotlin-stdlib-jdk8:${kotlin.coreLibrariesVersion}"), +// binaryCoordinates("org.jetbrains.kotlin:kotlin-stdlib-jdk7:${kotlin.coreLibrariesVersion}"), binaryCoordinates("org.jetbrains.kotlin:kotlin-stdlib:${kotlin.coreLibrariesVersion}"), )