[KT-61127] chore: remove obsolete DependencyMetadata configurations
diff --git a/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/plugin/mpp/resolvableMetadataConfiguration.kt b/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/plugin/mpp/resolvableMetadataConfiguration.kt index ccc06c0..cfdef24 100644 --- a/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/plugin/mpp/resolvableMetadataConfiguration.kt +++ b/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/plugin/mpp/resolvableMetadataConfiguration.kt
@@ -36,8 +36,6 @@ addDependsOnClosureConfigurationsTo(configuration) - // needed for old IDEs - configureLegacyMetadataDependenciesConfigurations(configuration) configuration } @@ -78,18 +76,6 @@ the intransitiveMetadataConfigurationName will not extend this mechanism, since it only relies on dependencies being added explicitly by the Kotlin Gradle Plugin */ -private fun InternalKotlinSourceSet.configureLegacyMetadataDependenciesConfigurations(resolvableMetadataConfiguration: Configuration) { - @Suppress("DEPRECATION_ERROR") - listOf( - apiMetadataConfigurationName, - implementationMetadataConfigurationName, - compileOnlyMetadataConfigurationName - ).forEach { configurationName -> - val configuration = project.configurations.getByName(configurationName) - configuration.extendsFrom(resolvableMetadataConfiguration) - configuration.shouldResolveConsistentlyWith(resolvableMetadataConfiguration) - } -} internal fun Configuration.configureMetadataDependenciesAttribute(project: Project): Configuration = apply { if (project.multiplatformExtensionOrNull != null) { @@ -105,35 +91,3 @@ * Ensure a consistent dependencies resolution result between common source sets and actual * See [ResolvableMetadataConfigurationTest] for the cases where dependencies should resolve consistently */ -internal val SetupConsistentMetadataDependenciesResolution = KotlinProjectSetupCoroutine { - KotlinPluginLifecycle.Stage.AfterFinaliseRefinesEdges.await() - - val sourceSets = multiplatformExtension.awaitSourceSets() - val sourceSetsBySourceSetTree = mutableMapOf<KotlinSourceSetTree?, MutableSet<KotlinSourceSet>>() - for (sourceSet in sourceSets) { - val trees = sourceSet.internal.compilations.map { KotlinSourceSetTree.orNull(it) } - trees.forEach { tree -> sourceSetsBySourceSetTree.getOrPut(tree) { mutableSetOf() }.add(sourceSet) } - } - - for ((sourceSetTree, sourceSetsOfTree) in sourceSetsBySourceSetTree) { - val configurationName = when (sourceSetTree) { - null -> continue // for unknown trees there should be no relation between source sets, so just skip - KotlinSourceSetTree.main -> "allSourceSetsCompileDependenciesMetadata" - else -> lowerCamelCaseName("all", sourceSetTree.name, "SourceSetsCompileDependenciesMetadata") - } - - configureConsistentDependencyResolution(sourceSetsOfTree, configurationName) - } -} - -private fun Project.configureConsistentDependencyResolution(groupOfSourceSets: Collection<KotlinSourceSet>, configurationName: String) { - if (groupOfSourceSets.isEmpty()) return - val configuration = configurations.createResolvable(configurationName) - configuration.configureMetadataDependenciesAttribute(project) - val allVisibleSourceSets = groupOfSourceSets + groupOfSourceSets.flatMap { getVisibleSourceSetsFromAssociateCompilations(it) } - val extenders = allVisibleSourceSets.flatMap { it.internal.compileDependenciesConfigurations } - configuration.extendsFrom(*extenders.toTypedArray()) - groupOfSourceSets.forEach { it.internal.resolvableMetadataConfiguration.shouldResolveConsistentlyWith(configuration) } - - // FIXME: KT-66375 Make actual compilation classpaths/libraries configurations to have the same consistent dependencies -} \ No newline at end of file
diff --git a/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/plugin/registerKotlinPluginExtensions.kt b/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/plugin/registerKotlinPluginExtensions.kt index d27101e..2e6e68f 100644 --- a/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/plugin/registerKotlinPluginExtensions.kt +++ b/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/plugin/registerKotlinPluginExtensions.kt
@@ -63,7 +63,6 @@ register(project, UserDefinedAttributesSetupAction) register(project, CustomizeKotlinDependenciesSetupAction) register(project, AddKotlinPlatformIntegersSupportLibrary) - register(project, SetupKotlinNativeStdlibAndPlatformDependenciesImport) register(project, FinalizeConfigurationFusMetricAction) if (isAbiValidationEnabled) { @@ -95,7 +94,6 @@ register(project, IdeMultiplatformImportActionSetupAction) register(project, KotlinLLDBScriptSetupAction) register(project, SetupKotlinNativePlatformDependenciesAndStdlib) - register(project, SetupConsistentMetadataDependenciesResolution) register(project, RegisterMultiplatformResourcesPublicationExtensionAction) register(project, SetUpMultiplatformJvmResourcesPublicationAction) register(project, SetUpMultiplatformAndroidAssetsAndResourcesPublicationAction)
diff --git a/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/plugin/sources/KotlinSourceSetFactory.kt b/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/plugin/sources/KotlinSourceSetFactory.kt index 3021407..9ec652b 100644 --- a/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/plugin/sources/KotlinSourceSetFactory.kt +++ b/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/plugin/sources/KotlinSourceSetFactory.kt
@@ -81,28 +81,6 @@ super.setUpSourceSetDefaults(sourceSet) sourceSet.resources.srcDir(defaultSourceFolder(project, sourceSet.name, SOURCE_SET_TYPE_RESOURCES)) - val dependencyConfigurationWithMetadata = with(sourceSet) { - @Suppress("DEPRECATION") - listOf( - apiConfigurationName to apiMetadataConfigurationName, - implementationConfigurationName to implementationMetadataConfigurationName, - compileOnlyConfigurationName to compileOnlyMetadataConfigurationName, - null to intransitiveMetadataConfigurationName - ) - } - - dependencyConfigurationWithMetadata.forEach { (configurationName, metadataName) -> - project.configurations.maybeCreateResolvable(metadataName).apply { - attributes.attribute(KotlinPlatformType.attribute, KotlinPlatformType.common) - attributes.attribute(Usage.USAGE_ATTRIBUTE, project.usageByName(KotlinUsages.KOTLIN_METADATA)) - attributes.attribute(Category.CATEGORY_ATTRIBUTE, project.categoryByName(Category.LIBRARY)) - isVisible = false - - if (configurationName != null) { - extendsFrom(project.configurations.maybeCreateDependencyScope(configurationName)) - } - } - } } override fun doCreateSourceSet(name: String): DefaultKotlinSourceSet =
diff --git a/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/plugin/sources/KotlinSourceSetMetadataTransformation.kt b/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/plugin/sources/KotlinSourceSetMetadataTransformation.kt index 7087b4f..8e79842 100644 --- a/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/plugin/sources/KotlinSourceSetMetadataTransformation.kt +++ b/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/plugin/sources/KotlinSourceSetMetadataTransformation.kt
@@ -47,14 +47,6 @@ the intransitiveMetadataConfigurationName will not extend this mechanism, since it only relies on dependencies being added explicitly by the Kotlin Gradle Plugin */ - listOf( - apiMetadataConfigurationName, - implementationMetadataConfigurationName, - compileOnlyMetadataConfigurationName - ).forEach { configurationName -> - val configuration = project.configurations.getByName(configurationName) - project.applyTransformationToLegacyDependenciesMetadataConfiguration(configuration, granularMetadataTransformation) - } granularMetadataTransformation }