diff --git a/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/plugin/mpp/CompilationDetails.kt b/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/plugin/mpp/CompilationDetails.kt index 49a6d304bc8..ac85c445ed5 100644 --- a/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/plugin/mpp/CompilationDetails.kt +++ b/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/plugin/mpp/CompilationDetails.kt @@ -21,8 +21,8 @@ import org.jetbrains.kotlin.gradle.plugin.mpp.pm20.* import org.jetbrains.kotlin.gradle.plugin.mpp.pm20.util.* import org.jetbrains.kotlin.gradle.plugin.sources.android.kotlinAndroidSourceSetLayout import org.jetbrains.kotlin.gradle.plugin.sources.defaultSourceSetLanguageSettingsChecker -import org.jetbrains.kotlin.gradle.plugin.sources.dependsOnClosure import org.jetbrains.kotlin.gradle.plugin.sources.getVisibleSourceSetsFromAssociateCompilations +import org.jetbrains.kotlin.gradle.plugin.sources.internal import org.jetbrains.kotlin.gradle.plugin.sources.kpm.FragmentMappedKotlinSourceSet import org.jetbrains.kotlin.gradle.plugin.sources.withDependsOnClosure import org.jetbrains.kotlin.gradle.targets.js.KotlinJsTarget @@ -267,7 +267,7 @@ open class DefaultCompilationDetails( override fun source(sourceSet: KotlinSourceSet) { if (directlyIncludedKotlinSourceSets.add(sourceSet)) { target.project.whenEvaluated { - addExactSourceSetsEagerly(sourceSet.withDependsOnClosure) + addExactSourceSetsEagerly(sourceSet.internal.withDependsOnClosure) } } } @@ -388,7 +388,7 @@ internal open class SharedNativeCompilationDetails( val friendSourceSets = getVisibleSourceSetsFromAssociateCompilations(project, defaultSourceSet).toMutableSet().apply { // TODO: implement proper dependsOn/refines compiler args for Kotlin/Native and pass the dependsOn klibs separately; // But for now, those dependencies don't have any special semantics, so passing all them as friends works, too - addAll(defaultSourceSet.dependsOnClosure) + addAll(defaultSourceSet.internal.dependsOnClosure) } project.files(friendSourceSets.mapNotNull { project.getMetadataCompilationForSourceSet(it)?.output?.classesDirs }) }) diff --git a/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/plugin/mpp/TransformKotlinGranularMetadata.kt b/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/plugin/mpp/TransformKotlinGranularMetadata.kt index d7a07419a09..ad052ad2562 100644 --- a/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/plugin/mpp/TransformKotlinGranularMetadata.kt +++ b/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/plugin/mpp/TransformKotlinGranularMetadata.kt @@ -13,6 +13,7 @@ import org.jetbrains.kotlin.gradle.dsl.kotlinExtension import org.jetbrains.kotlin.gradle.plugin.KotlinCompilation import org.jetbrains.kotlin.gradle.plugin.KotlinSourceSet import org.jetbrains.kotlin.gradle.plugin.sources.KotlinDependencyScope.* +import org.jetbrains.kotlin.gradle.plugin.sources.internal import org.jetbrains.kotlin.gradle.plugin.sources.withDependsOnClosure import org.jetbrains.kotlin.gradle.targets.metadata.ALL_COMPILE_METADATA_CONFIGURATION_NAME import org.jetbrains.kotlin.gradle.targets.metadata.KotlinMetadataTargetConfigurator @@ -49,7 +50,7 @@ open class TransformKotlinGranularMetadata } private val participatingSourceSets: Set - get() = transformation.kotlinSourceSet.withDependsOnClosure.toMutableSet().apply { + get() = transformation.kotlinSourceSet.internal.withDependsOnClosure.toMutableSet().apply { if (any { it.name == KotlinSourceSet.COMMON_MAIN_SOURCE_SET_NAME }) add(project.kotlinExtension.sourceSets.getByName(KotlinSourceSet.COMMON_MAIN_SOURCE_SET_NAME)) } 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 a5ce18fb6b7..739887e144e 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 @@ -222,12 +222,16 @@ internal fun KotlinSourceSet.disambiguateName(simpleName: String): String { internal fun createDefaultSourceDirectorySet(project: Project, name: String?): SourceDirectorySet = project.objects.sourceDirectorySet(name!!, name) -@Deprecated("Use InternalKotlinSourceSet.dependsOnClosure instead") +@Suppress("Unused") // Still part of public API +@Deprecated("Use InternalKotlinSourceSet.dependsOnClosure instead. Will be removed in Kotlin 1.9") val KotlinSourceSet.dependsOnClosure: Set get() = this.internal.dependsOnClosure -@Deprecated("Use InternalKotlinSourceSet.withDependsOnClosure instead") +@Suppress("Unused") // Still part of public API +@Deprecated("Use InternalKotlinSourceSet.withDependsOnClosure instead. Will be removed in Kotlin 1.9") val KotlinSourceSet.withDependsOnClosure: Set get() = this.internal.withDependsOnClosure +@Suppress("Unused") // Still part of public API +@Deprecated("Use InternalKotlinSourceSet.withDependsOnClosure instead. Will be removed in Kotlin 1.9") val Iterable.dependsOnClosure: Set get() = flatMap { it.internal.dependsOnClosure }.toSet() - this.toSet() diff --git a/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/plugin/sources/SourceSetsVisibilityInference.kt b/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/plugin/sources/SourceSetsVisibilityInference.kt index fe01e5303db..7423824cc4a 100644 --- a/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/plugin/sources/SourceSetsVisibilityInference.kt +++ b/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/plugin/sources/SourceSetsVisibilityInference.kt @@ -140,7 +140,7 @@ internal fun checkSourceSetVisibilityRequirements( val inferredVisibility = getVisibleSourceSetsFromAssociateCompilations(compilationsBySourceSet[sourceSet].orEmpty()) - val requiredButNotVisible = requiredVisibility - inferredVisibility - sourceSet.withDependsOnClosure + val requiredButNotVisible = requiredVisibility - inferredVisibility - sourceSet.internal.withDependsOnClosure if (requiredButNotVisible.isNotEmpty()) { val compilations = compilationsBySourceSet.getValue(sourceSet) diff --git a/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/targets/metadata/KotlinMetadataTargetConfigurator.kt b/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/targets/metadata/KotlinMetadataTargetConfigurator.kt index b0e046b4dac..9c0dc80bec8 100644 --- a/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/targets/metadata/KotlinMetadataTargetConfigurator.kt +++ b/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/targets/metadata/KotlinMetadataTargetConfigurator.kt @@ -263,7 +263,7 @@ class KotlinMetadataTargetConfigurator : * See also: [buildKotlinProjectStructureMetadata], where these dependencies must be included into the source set exported deps. */ if (isSharedNativeCompilation) { - sourceSet.withDependsOnClosure.forEach { hierarchySourceSet -> + sourceSet.internal.withDependsOnClosure.forEach { hierarchySourceSet -> apiElementsConfiguration.extendsFrom( configurations.sourceSetDependencyConfigurationByScope( hierarchySourceSet, @@ -447,7 +447,7 @@ class KotlinMetadataTargetConfigurator : val sourceSet = compilation.defaultSourceSet val dependsOnCompilationOutputs = lazy { - sourceSet.withDependsOnClosure.mapNotNull { hierarchySourceSet -> + sourceSet.internal.withDependsOnClosure.mapNotNull { hierarchySourceSet -> val dependencyCompilation = project.getMetadataCompilationForSourceSet(hierarchySourceSet) dependencyCompilation?.output?.classesDirs.takeIf { hierarchySourceSet != sourceSet } } @@ -574,7 +574,7 @@ internal fun isSharedNativeSourceSet(project: Project, sourceSet: KotlinSourceSe } internal fun dependsOnClosureWithInterCompilationDependencies(project: Project, sourceSet: KotlinSourceSet): Set = - sourceSet.dependsOnClosure.toMutableSet().apply { + sourceSet.internal.dependsOnClosure.toMutableSet().apply { addAll(getVisibleSourceSetsFromAssociateCompilations(project, sourceSet)) } diff --git a/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/targets/native/internal/CInteropMetadataDependencyTransformationTask.kt b/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/targets/native/internal/CInteropMetadataDependencyTransformationTask.kt index 2d31c96d8f0..8d4b7df5ed4 100644 --- a/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/targets/native/internal/CInteropMetadataDependencyTransformationTask.kt +++ b/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/targets/native/internal/CInteropMetadataDependencyTransformationTask.kt @@ -23,7 +23,6 @@ import org.jetbrains.kotlin.gradle.plugin.mpp.MetadataDependencyResolution.Choos import org.jetbrains.kotlin.gradle.plugin.mpp.pm20.toKpmModuleIdentifiers import org.jetbrains.kotlin.gradle.plugin.sources.DefaultKotlinSourceSet import org.jetbrains.kotlin.gradle.plugin.sources.SourceSetMetadataStorageForIde -import org.jetbrains.kotlin.gradle.plugin.sources.dependsOnClosure import org.jetbrains.kotlin.gradle.tasks.dependsOn import org.jetbrains.kotlin.gradle.tasks.locateOrRegisterTask import org.jetbrains.kotlin.gradle.tasks.withType diff --git a/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/tasks/configuration/KotlinCompileCommonConfig.kt b/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/tasks/configuration/KotlinCompileCommonConfig.kt index fdcc2ddd805..fe03024e05a 100644 --- a/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/tasks/configuration/KotlinCompileCommonConfig.kt +++ b/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/tasks/configuration/KotlinCompileCommonConfig.kt @@ -14,7 +14,7 @@ import org.jetbrains.kotlin.gradle.plugin.mpp.KotlinCommonCompilation import org.jetbrains.kotlin.gradle.plugin.mpp.pm20.AbstractKotlinFragmentMetadataCompilationData import org.jetbrains.kotlin.gradle.plugin.mpp.pm20.KotlinCompilationData import org.jetbrains.kotlin.gradle.plugin.mpp.pm20.KotlinMetadataCompilationData -import org.jetbrains.kotlin.gradle.plugin.sources.dependsOnClosure +import org.jetbrains.kotlin.gradle.plugin.sources.internal import org.jetbrains.kotlin.gradle.tasks.KotlinCompileCommon import java.io.File @@ -38,7 +38,7 @@ internal class KotlinCompileCommonConfig( is KotlinCompilation<*> -> { val defaultKotlinSourceSet: KotlinSourceSet = compilation.defaultSourceSet val metadataTarget = compilation.owner as KotlinTarget - defaultKotlinSourceSet.dependsOnClosure + defaultKotlinSourceSet.internal.dependsOnClosure .mapNotNull { sourceSet -> metadataTarget.compilations.findByName(sourceSet.name)?.output?.classesDirs } .flatten() } diff --git a/libraries/tools/kotlin-gradle-plugin/src/functionalTest/kotlin/org/jetbrains/kotlin/gradle/ResolveKotlinSourceSetsTest.kt b/libraries/tools/kotlin-gradle-plugin/src/functionalTest/kotlin/org/jetbrains/kotlin/gradle/ResolveKotlinSourceSetsTest.kt index f4334d84362..c2a9db29990 100644 --- a/libraries/tools/kotlin-gradle-plugin/src/functionalTest/kotlin/org/jetbrains/kotlin/gradle/ResolveKotlinSourceSetsTest.kt +++ b/libraries/tools/kotlin-gradle-plugin/src/functionalTest/kotlin/org/jetbrains/kotlin/gradle/ResolveKotlinSourceSetsTest.kt @@ -11,8 +11,8 @@ package org.jetbrains.kotlin.gradle import org.gradle.api.Project import org.gradle.testfixtures.ProjectBuilder import org.jetbrains.kotlin.gradle.dsl.KotlinMultiplatformExtension -import org.jetbrains.kotlin.gradle.plugin.sources.dependsOnClosure import org.jetbrains.kotlin.gradle.plugin.sources.findSourceSetsDependingOn +import org.jetbrains.kotlin.gradle.plugin.sources.internal import org.junit.Test import kotlin.test.BeforeTest import kotlin.test.assertEquals @@ -72,19 +72,19 @@ class ResolveKotlinSourceSetsTest { macosMain.dependsOn(nativeMain) assertEquals( - setOf(nativeMain, commonMain), linuxMain.dependsOnClosure + setOf(nativeMain, commonMain), linuxMain.internal.dependsOnClosure ) assertEquals( - setOf(commonMain), nativeMain.dependsOnClosure + setOf(commonMain), nativeMain.internal.dependsOnClosure ) assertEquals( - emptySet(), commonMain.dependsOnClosure + emptySet(), commonMain.internal.dependsOnClosure ) assertEquals( - setOf(commonMain), jvmMain.dependsOnClosure + setOf(commonMain), jvmMain.internal.dependsOnClosure ) } }