[MPP] Deprecate preset APIs

^KT-59321
This commit is contained in:
Timofey Solonin
2023-07-21 10:19:53 +02:00
committed by Space Team
parent a580d4e5aa
commit 969deb639c
32 changed files with 338 additions and 39 deletions
@@ -10,11 +10,13 @@ package org.jetbrains.kotlin.gradle.plugin
import org.gradle.api.Action
import org.gradle.api.Named
import org.gradle.api.NamedDomainObjectContainer
import org.gradle.api.Project
import org.gradle.api.attributes.AttributeContainer
import org.gradle.api.attributes.HasAttributes
import org.gradle.api.component.SoftwareComponent
import org.gradle.api.publish.maven.MavenPublication
import org.jetbrains.kotlin.gradle.PRESETS_API_IS_DEPRECATED_MESSAGE
import org.jetbrains.kotlin.gradle.DeprecatedTargetPresetApi
import org.jetbrains.kotlin.gradle.InternalKotlinGradlePluginApi
import org.jetbrains.kotlin.gradle.dsl.KotlinCommonOptionsDeprecated
import org.jetbrains.kotlin.tooling.core.HasMutableExtras
@@ -52,8 +54,16 @@ interface KotlinTarget : Named, HasAttributes, HasProject, HasMutableExtras {
fun attributes(configure: AttributeContainer.() -> Unit) = attributes.configure()
fun attributes(configure: Action<AttributeContainer>) = attributes { configure.execute(this) }
@OptIn(DeprecatedTargetPresetApi::class, InternalKotlinGradlePluginApi::class)
@Deprecated(
PRESETS_API_IS_DEPRECATED_MESSAGE,
level = DeprecationLevel.WARNING,
)
val preset: KotlinTargetPreset<out KotlinTarget>?
@InternalKotlinGradlePluginApi
fun warnAboutCreationOfTargetFromPreset()
override fun getName(): String = targetName
}
@@ -6,7 +6,16 @@
package org.jetbrains.kotlin.gradle.plugin
import org.gradle.api.Named
import org.jetbrains.kotlin.gradle.PRESETS_DEPRECATION_MESSAGE_SUFFIX
import org.jetbrains.kotlin.gradle.DeprecatedTargetPresetApi
import org.jetbrains.kotlin.gradle.InternalKotlinGradlePluginApi
@OptIn(InternalKotlinGradlePluginApi::class)
@DeprecatedTargetPresetApi
interface KotlinTargetPreset<T: KotlinTarget> : Named {
@Deprecated(
"The KotlinTargetPreset.createTarget() $PRESETS_DEPRECATION_MESSAGE_SUFFIX",
level = DeprecationLevel.WARNING,
)
fun createTarget(name: String): T
}
@@ -7,13 +7,22 @@ package org.jetbrains.kotlin.gradle.plugin
import org.gradle.api.NamedDomainObjectCollection
import org.gradle.api.NamedDomainObjectContainer
import org.jetbrains.kotlin.gradle.PRESETS_API_IS_DEPRECATED_MESSAGE
import org.jetbrains.kotlin.gradle.DeprecatedTargetPresetApi
import org.jetbrains.kotlin.gradle.InternalKotlinGradlePluginApi
@KotlinTargetsDsl
interface KotlinTargetsContainer {
val targets: NamedDomainObjectCollection<KotlinTarget>
}
@OptIn(InternalKotlinGradlePluginApi::class)
@DeprecatedTargetPresetApi
interface KotlinTargetsContainerWithPresets : KotlinTargetsContainer {
@Deprecated(
PRESETS_API_IS_DEPRECATED_MESSAGE,
level = DeprecationLevel.WARNING,
)
val presets: NamedDomainObjectCollection<KotlinTargetPreset<*>>
}