diff --git a/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/plugin/AbstractKotlinPlugin.kt b/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/plugin/AbstractKotlinPlugin.kt index b36300bf6b9..7f62e975963 100644 --- a/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/plugin/AbstractKotlinPlugin.kt +++ b/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/plugin/AbstractKotlinPlugin.kt @@ -194,6 +194,7 @@ internal abstract class AbstractKotlinPlugin( javaSourceSet.resources.setSrcDirs( listOf { kotlinSourceSet.resources.sourceDirectories } ) + @Suppress("DEPRECATION") kotlinCompilation.addSourceSet(kotlinSourceSet) project.compatibilityConventionRegistrar.addConvention(javaSourceSet, kotlinSourceSetDslName, kotlinSourceSet) javaSourceSet.addExtension(kotlinSourceSetDslName, kotlinSourceSet.kotlin) @@ -204,6 +205,7 @@ internal abstract class AbstractKotlinPlugin( } kotlinTarget.compilations.all { kotlinCompilation -> + @Suppress("DEPRECATION") kotlinCompilation.addSourceSet(kotlinCompilation.defaultSourceSet) } diff --git a/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/plugin/KotlinTargetConfigurator.kt b/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/plugin/KotlinTargetConfigurator.kt index 0ce71b00674..08c2c8a03be 100644 --- a/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/plugin/KotlinTargetConfigurator.kt +++ b/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/plugin/KotlinTargetConfigurator.kt @@ -100,6 +100,7 @@ abstract class AbstractKotlinTargetConfigurator override fun configureSourceSet(target: KotlinTargetType) { target.compilations.all { compilation -> + @Suppress("DEPRECATION") compilation.addSourceSet(compilation.defaultSourceSet) // also adds dependencies, requires the configurations for target and source set to exist at this point } } diff --git a/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/plugin/mpp/InternalKotlinCompilation.kt b/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/plugin/mpp/InternalKotlinCompilation.kt index c48790c5382..0fd9d42ff9f 100644 --- a/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/plugin/mpp/InternalKotlinCompilation.kt +++ b/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/plugin/mpp/InternalKotlinCompilation.kt @@ -6,16 +6,17 @@ package org.jetbrains.kotlin.gradle.plugin.mpp import org.gradle.api.file.FileCollection +import org.jetbrains.kotlin.gradle.InternalKotlinGradlePluginApi import org.jetbrains.kotlin.gradle.dsl.KotlinCommonOptions import org.jetbrains.kotlin.gradle.plugin.KotlinCompilation import org.jetbrains.kotlin.gradle.plugin.KotlinPluginLifecycle import org.jetbrains.kotlin.gradle.plugin.KotlinSourceSet import org.jetbrains.kotlin.gradle.plugin.await import org.jetbrains.kotlin.gradle.plugin.mpp.compilationImpl.KotlinCompilationConfigurationsContainer -import org.jetbrains.kotlin.gradle.plugin.mpp.compilationImpl.KotlinCompilationSourceSetsContainer import org.jetbrains.kotlin.gradle.utils.ObservableSet import org.jetbrains.kotlin.tooling.core.HasMutableExtras +@InternalKotlinGradlePluginApi internal interface InternalKotlinCompilation : KotlinCompilation, HasMutableExtras { override val kotlinSourceSets: ObservableSet override val allKotlinSourceSets: ObservableSet @@ -23,7 +24,6 @@ internal interface InternalKotlinCompilation : Kotl val configurations: KotlinCompilationConfigurationsContainer val friendPaths: Iterable val processResourcesTaskName: String? - val sourceSets: KotlinCompilationSourceSetsContainer } internal val KotlinCompilation.internal: InternalKotlinCompilation @@ -36,5 +36,7 @@ internal suspend fun InternalKotlinCompilation<*>.awaitAllKotlinSourceSets(): Se return allKotlinSourceSets } -internal fun KotlinCompilation<*>.addSourceSet(kotlinSourceSet: KotlinSourceSet) = - internal.sourceSets.source(kotlinSourceSet) \ No newline at end of file +@Deprecated("KT-58234: Adding source sets to Compilation is not recommended. Please consider using dependsOn.") +internal fun KotlinCompilation<*>.addSourceSet(kotlinSourceSet: KotlinSourceSet) { + internal.decoratedInstance.compilation.sourceSets.source(kotlinSourceSet) +} \ No newline at end of file diff --git a/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/plugin/mpp/compilationImpl/KotlinCompilationImpl.kt b/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/plugin/mpp/compilationImpl/KotlinCompilationImpl.kt index b0e889e87a6..29a87098774 100644 --- a/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/plugin/mpp/compilationImpl/KotlinCompilationImpl.kt +++ b/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/plugin/mpp/compilationImpl/KotlinCompilationImpl.kt @@ -59,7 +59,7 @@ internal class KotlinCompilationImpl constructor( override val extras: MutableExtras = mutableExtrasOf() - override val sourceSets get() = params.sourceSets + val sourceSets get() = params.sourceSets override val configurations: KotlinCompilationConfigurationsContainer get() = params.dependencyConfigurations diff --git a/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/targets/android/AndroidProjectHandler.kt b/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/targets/android/AndroidProjectHandler.kt index c0f248c534f..809ab73bcab 100644 --- a/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/targets/android/AndroidProjectHandler.kt +++ b/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/targets/android/AndroidProjectHandler.kt @@ -206,9 +206,11 @@ internal class AndroidProjectHandler( } // Register the source only after the task is created, because the task is required for that: + @Suppress("DEPRECATION") compilation.addSourceSet(defaultSourceSet) compilation.androidVariant.forEachKotlinSourceSet(project) { kotlinSourceSet -> + @Suppress("DEPRECATION") compilation.addSourceSet(kotlinSourceSet) } } diff --git a/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/targets/js/KotlinJsTargetConfigurator.kt b/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/targets/js/KotlinJsTargetConfigurator.kt index bb88646e98b..cc7e64bbde4 100644 --- a/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/targets/js/KotlinJsTargetConfigurator.kt +++ b/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/targets/js/KotlinJsTargetConfigurator.kt @@ -62,6 +62,7 @@ open class KotlinJsTargetConfigurator : val project = target.project target.compilations.all { compilation -> + @Suppress("DEPRECATION") compilation.addSourceSet(compilation.defaultSourceSet) configureResourceProcessing( 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 67b55fc6521..17e06b91ed4 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 @@ -79,6 +79,7 @@ class KotlinMetadataTargetConfigurator : // it isn't necessary for KLib compilations // see [KotlinCompilationSourceSetInclusion.AddSourcesWithoutDependsOnClosure] defaultSourceSet.internal.dependsOnClosure.forAll { + @Suppress("DEPRECATION") addSourceSet(it) } } else { diff --git a/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/targets/metadata/KotlinMetadataTargetPreset.kt b/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/targets/metadata/KotlinMetadataTargetPreset.kt index ad902cf205d..03d31f7e3af 100644 --- a/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/targets/metadata/KotlinMetadataTargetPreset.kt +++ b/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/targets/metadata/KotlinMetadataTargetPreset.kt @@ -54,6 +54,7 @@ class KotlinMetadataTargetPreset( val mainCompilation = compilations.getByName(KotlinCompilation.MAIN_COMPILATION_NAME) val commonMainSourceSet = project.kotlinExtension.sourceSets.getByName(KotlinSourceSet.COMMON_MAIN_SOURCE_SET_NAME) + @Suppress("DEPRECATION") mainCompilation.addSourceSet(commonMainSourceSet) project.whenEvaluated {