diff --git a/gradle/verification-metadata.xml b/gradle/verification-metadata.xml
index 403bf7cd817..2aed87f3833 100644
--- a/gradle/verification-metadata.xml
+++ b/gradle/verification-metadata.xml
@@ -65,6 +65,7 @@
+
diff --git a/prepare/compiler/build.gradle.kts b/prepare/compiler/build.gradle.kts
index 656a7e6e970..9a8da36da27 100644
--- a/prepare/compiler/build.gradle.kts
+++ b/prepare/compiler/build.gradle.kts
@@ -9,6 +9,8 @@ plugins {
// HACK: java plugin makes idea import dependencies on this project as source (with empty sources however),
// this prevents reindexing of kotlin-compiler.jar after build on every change in compiler modules
`java-library`
+ // required to disambiguate attributes of non-jvm Kotlin libraries
+ kotlin("jvm")
}
@@ -50,6 +52,9 @@ val libraries by configurations.creating {
val librariesStripVersion by configurations.creating
+// for sbom only
+val librariesKotlinTest by configurations.creating
+
// Compiler plugins should be copied without `kotlin-` prefix
val compilerPlugins by configurations.creating {
exclude("org.jetbrains.kotlin", "kotlin-stdlib-common")
@@ -105,10 +110,6 @@ val distLibraryProjects = listOfNotNull(
":kotlin-scripting-compiler-impl",
":kotlin-scripting-jvm",
":js:js.engines",
- ":kotlin-test:kotlin-test-junit",
- ":kotlin-test:kotlin-test-junit5",
- ":kotlin-test:kotlin-test-jvm",
- ":kotlin-test:kotlin-test-testng",
":libraries:tools:mutability-annotations-compat",
":plugins:android-extensions-compiler",
":plugins:jvm-abi-gen"
@@ -133,9 +134,6 @@ val distCompilerPluginProjectsCompat = listOf(
val distSourcesProjects = listOfNotNull(
":kotlin-annotations-jvm",
":kotlin-script-runtime",
- ":kotlin-test:kotlin-test-junit",
- ":kotlin-test:kotlin-test-junit5",
- ":kotlin-test:kotlin-test-testng"
)
configurations.all {
@@ -162,10 +160,10 @@ dependencies {
}
libraries(kotlinStdlib("jdk8"))
+ librariesKotlinTest(kotlinTest("junit"))
if (!kotlinBuildProperties.isInJpsBuildIdeaSync) {
libraries(kotlinStdlib(classifier = "distJsJar"))
libraries(kotlinStdlib(classifier = "distJsKlib"))
- libraries(project(":kotlin-test:kotlin-test-js-ir", configuration = "jsRuntimeElements"))
}
librariesStripVersion(commonDependency("org.jetbrains.kotlinx", "kotlinx-coroutines-core")) { isTransitive = false }
@@ -205,8 +203,6 @@ dependencies {
sources(project(":kotlin-stdlib", configuration = "distSources"))
sources(project(":kotlin-stdlib", configuration = "distJsSourcesJar"))
sources(project(":kotlin-reflect", configuration = "sources"))
- sources(project(":kotlin-test", "combinedJvmSourcesJar"))
- sources(project(":kotlin-test:kotlin-test-js-ir", configuration = "jsSourcesElements"))
distStdlibMinimalForTests(project(":kotlin-stdlib-jvm-minimal-for-test"))
@@ -248,13 +244,21 @@ dependencies {
fatJarContentsStripVersions(commonDependency("one.util:streamex")) { isTransitive = false }
}
+val librariesKotlinTestFiles = files(
+ listOf(null, "junit", "junit5", "testng", "js").map { suffix ->
+ listOf(null, "sources").map { classifier ->
+ configurations.detachedConfiguration(dependencies.create(kotlinTest(suffix, classifier))).apply { isTransitive = false }
+ }
+ }
+)
+
publish()
// sbom for dist
val distSbomTask = configureSbom(
target = "Dist",
documentName = "Kotlin Compiler Distribution",
- setOf(configurations.runtimeClasspath.name, libraries.name, librariesStripVersion.name, compilerPlugins.name)
+ setOf(configurations.runtimeClasspath.name, libraries.name, librariesKotlinTest.name, librariesStripVersion.name, compilerPlugins.name)
)
val packCompiler by task {
@@ -397,6 +401,7 @@ val distKotlinc = distTask("distKotlinc") {
into("lib") {
from(jarFiles) { rename { "$compilerBaseName.jar" } }
from(librariesFiles)
+ from(librariesKotlinTestFiles)
from(librariesStripVersionFiles) {
rename {
it.replace(Regex("-\\d.*\\.jar\$"), ".jar")
diff --git a/repo/artifacts-tests/src/test/resources/org/jetbrains/kotlin/kotlin-compiler/kotlin-compiler.pom b/repo/artifacts-tests/src/test/resources/org/jetbrains/kotlin/kotlin-compiler/kotlin-compiler.pom
index c30184ec43d..7bcc8ce8637 100644
--- a/repo/artifacts-tests/src/test/resources/org/jetbrains/kotlin/kotlin-compiler/kotlin-compiler.pom
+++ b/repo/artifacts-tests/src/test/resources/org/jetbrains/kotlin/kotlin-compiler/kotlin-compiler.pom
@@ -1,6 +1,5 @@
-
+
4.0.0
org.jetbrains.kotlin
kotlin-compiler
@@ -59,7 +58,7 @@
org.jetbrains.kotlinx
- kotlinx-coroutines-core
+ kotlinx-coroutines-core-jvm
1.5.0
compile
diff --git a/repo/gradle-build-conventions/buildsrc-compat/src/main/kotlin/repoDependencies.kt b/repo/gradle-build-conventions/buildsrc-compat/src/main/kotlin/repoDependencies.kt
index 1fff13bbd0c..317e2575eba 100644
--- a/repo/gradle-build-conventions/buildsrc-compat/src/main/kotlin/repoDependencies.kt
+++ b/repo/gradle-build-conventions/buildsrc-compat/src/main/kotlin/repoDependencies.kt
@@ -74,7 +74,7 @@ fun Project.kotlinStdlib(suffix: String? = null, classifier: String? = null): An
*/
@JvmOverloads
fun Project.kotlinTest(suffix: String? = null, classifier: String? = null): Any {
- return if (kotlinBuildProperties.isJpsBuildEnabled) {
+ return if (kotlinBuildProperties.isInJpsBuildIdeaSync) {
kotlinDep(listOfNotNull("test", suffix?.lowercase()).joinToString("-"), bootstrapKotlinVersion, classifier)
} else {
val elementsType = when (classifier) {