[Gradle] Deprecate org.jetbrains.kotlin.gradle.plugin.mpp.KotlinMultiplatformPlugin
... in favor of using Kotlin Gradle Plugin Extension Points KT-61634
This commit is contained in:
committed by
Space Team
parent
7650264de3
commit
f2a2c28ac9
+36
@@ -7,11 +7,47 @@ package org.jetbrains.kotlin.gradle.plugin.mpp
|
|||||||
|
|
||||||
import org.gradle.api.Plugin
|
import org.gradle.api.Plugin
|
||||||
import org.gradle.api.Project
|
import org.gradle.api.Project
|
||||||
|
import org.jetbrains.kotlin.gradle.plugin.KotlinProjectSetupAction
|
||||||
|
import org.jetbrains.kotlin.gradle.plugin.registerKotlinPluginExtensions
|
||||||
|
|
||||||
|
/**
|
||||||
|
* This class is not needed anymore;
|
||||||
|
*
|
||||||
|
* ### Previous Usage:
|
||||||
|
* Previously the Kotlin Gradle Plugin used to distinguish between two kinds of 'plugins'
|
||||||
|
* The 'wrapper' (see 'KotlinMultiplatformPluginWrapper') and the plugin.
|
||||||
|
*
|
||||||
|
* The Wrappers were the plugins that were actually applied to the project when users requested Kotlin:
|
||||||
|
* ```kotlin
|
||||||
|
* plugins {
|
||||||
|
* kotlin("multiplatform")
|
||||||
|
* }
|
||||||
|
* ```
|
||||||
|
*
|
||||||
|
* The code above would have applied the 'KotlinMultiplatformPluginWrapper'.
|
||||||
|
* Those 'wrapper plugins' then did run the 'main configuration code' and at some point created this 'wrapped' plugins manually
|
||||||
|
* and called the [apply] function.
|
||||||
|
*
|
||||||
|
* Its quite unfortunate that both entities implemented [Plugin] of [Project] and therefore the differentiation was not clear.
|
||||||
|
*
|
||||||
|
* ### Replaced by: Kotlin Gradle Plugin Extension Points:
|
||||||
|
* See [registerKotlinPluginExtensions]:
|
||||||
|
* Kotlin Multiplatform will register corresponding extension points to customise its behavior.
|
||||||
|
* At the time of writing this comment: We take heavy usage of the [KotlinProjectSetupAction.extensionPoint] to provide
|
||||||
|
* additional project configuration for multiplatform.
|
||||||
|
*/
|
||||||
|
@Deprecated("Scheduled for removal in Kotlin 2.1")
|
||||||
class KotlinMultiplatformPlugin : Plugin<Project> {
|
class KotlinMultiplatformPlugin : Plugin<Project> {
|
||||||
override fun apply(project: Project) = Unit
|
override fun apply(project: Project) = Unit
|
||||||
|
|
||||||
companion object {
|
companion object {
|
||||||
|
@Deprecated(
|
||||||
|
"Scheduled for removal in Kotlin 2.1",
|
||||||
|
replaceWith = ReplaceWith(
|
||||||
|
"KotlinMetadataTarget.METADATA_TARGET_NAME",
|
||||||
|
imports = ["org.jetbrains.kotlin.gradle.plugin.mpp.KotlinMetadataTarget"]
|
||||||
|
)
|
||||||
|
)
|
||||||
const val METADATA_TARGET_NAME = KotlinMetadataTarget.METADATA_TARGET_NAME
|
const val METADATA_TARGET_NAME = KotlinMetadataTarget.METADATA_TARGET_NAME
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user