From 6a2c607862c296bc6a563ddd8e5352f883140ef1 Mon Sep 17 00:00:00 2001 From: Nikolay Krasko Date: Thu, 18 Nov 2021 16:09:09 +0300 Subject: [PATCH] Return source and javadoc publication for kotlin-test-wasm Setting packaging to klib didn't work because it was overwritten below. ^KTI-692 Fixed --- .../kotlin/plugins/KotlinBuildPublishingPlugin.kt | 4 ++-- libraries/kotlin.test/build.gradle.kts | 5 +++-- libraries/kotlin.test/wasm/build.gradle.kts | 11 ++++++++++- 3 files changed, 15 insertions(+), 5 deletions(-) diff --git a/buildSrc/src/main/kotlin/plugins/KotlinBuildPublishingPlugin.kt b/buildSrc/src/main/kotlin/plugins/KotlinBuildPublishingPlugin.kt index 255710e927d..ab69e3cbcc1 100644 --- a/buildSrc/src/main/kotlin/plugins/KotlinBuildPublishingPlugin.kt +++ b/buildSrc/src/main/kotlin/plugins/KotlinBuildPublishingPlugin.kt @@ -103,10 +103,10 @@ var Project.mainPublicationName: String private fun humanReadableName(name: String) = name.split("-").joinToString(separator = " ") { it.capitalize(Locale.ROOT) } -fun MavenPublication.configureKotlinPomAttributes(project: Project, explicitDescription: String? = null) { +fun MavenPublication.configureKotlinPomAttributes(project: Project, explicitDescription: String? = null, packaging: String = "jar") { val publication = this pom { - packaging = "jar" + this.packaging = packaging name.set(humanReadableName(publication.artifactId)) description.set(explicitDescription ?: project.description ?: humanReadableName(publication.artifactId)) url.set("https://kotlinlang.org/") diff --git a/libraries/kotlin.test/build.gradle.kts b/libraries/kotlin.test/build.gradle.kts index a355639c46f..2ffadcf97c0 100644 --- a/libraries/kotlin.test/build.gradle.kts +++ b/libraries/kotlin.test/build.gradle.kts @@ -368,10 +368,11 @@ publishing { configureKotlinPomAttributes(project, "Kotlin Test for JS") } create("wasm", MavenPublication::class) { - pom.packaging = "klib" artifactId = "kotlin-test-wasm" from(wasmComponent) - configureKotlinPomAttributes(project, "Kotlin Test for WASM") + artifact(tasks.getByPath(":kotlin-test:kotlin-test-wasm:sourcesJar") as Jar) + artifact(emptyJavadocJar) + configureKotlinPomAttributes(project, "Kotlin Test for WASM", packaging = "klib") } create("common", MavenPublication::class) { artifactId = "kotlin-test-common" diff --git a/libraries/kotlin.test/wasm/build.gradle.kts b/libraries/kotlin.test/wasm/build.gradle.kts index a1f5dd85f18..fa42886cd12 100644 --- a/libraries/kotlin.test/wasm/build.gradle.kts +++ b/libraries/kotlin.test/wasm/build.gradle.kts @@ -17,13 +17,15 @@ kotlin { nodejs() } + @Suppress("UNUSED_VARIABLE") sourceSets { - val commonMain by getting { + val commonMain by getting { dependencies { api(project(":kotlin-stdlib-wasm")) } kotlin.srcDir(commonMainSources.get().destinationDir) } + val wasmMain by getting { dependencies { api(project(":kotlin-stdlib-wasm")) @@ -45,3 +47,10 @@ tasks.named("compileKotlinWasm") { (this as KotlinCompile<*>).kotlinOptions.freeCompilerArgs += "-Xir-module-name=kotlin-test" dependsOn(commonMainSources) } + +tasks.register("sourcesJar") { + dependsOn(commonMainSources) + archiveClassifier.set("sources") + from(kotlin.sourceSets["commonMain"].kotlin) + from(kotlin.sourceSets["wasmMain"].kotlin) +}