[mpp] Mark Kotlin12XMppDeprecation as FATAL
Old MPP plugins are deprecated for a long time. It is time to report fatal error for such cases. Our stdlib still and kotlin-test still using them, so we cannot just completely remove them, but there is a way to suppress this error: kotlin.internal.mpp12x.deprecation.suppress=true Code for the old plugins (together with the remaining testsdata) will be completely removed once stdlib and kotlin-test migration completed. ETA: ~ 2.0-Mx #KT-60553 Verification Pending
This commit is contained in:
committed by
Space Team
parent
955520f69e
commit
ecbc40cf92
+20
-8
@@ -29,6 +29,7 @@ import org.jetbrains.kotlin.gradle.testbase.assertNoDiagnostic
|
||||
import org.jetbrains.kotlin.gradle.util.AGPVersion
|
||||
import org.jetbrains.kotlin.gradle.util.getFileByName
|
||||
import org.jetbrains.kotlin.gradle.util.modify
|
||||
import org.jetbrains.kotlin.gradle.util.replaceText
|
||||
import org.jetbrains.kotlin.test.util.KtTestUtil
|
||||
import org.junit.Test
|
||||
import java.io.File
|
||||
@@ -43,11 +44,29 @@ class MultiplatformGradleIT : BaseGradleIT() {
|
||||
fun testMultiplatformCompile() {
|
||||
val project = Project("multiplatformProject")
|
||||
|
||||
project.setupWorkingDir()
|
||||
|
||||
// remove the default suppression that was added for all other tests
|
||||
project.projectDir.resolve("gradle.properties").replaceText("kotlin.internal.mpp12x.deprecation.suppress=true", "")
|
||||
|
||||
project.build("build") {
|
||||
assertSuccessful()
|
||||
assertFailed()
|
||||
|
||||
assertHasDiagnostic(KotlinToolingDiagnostics.Kotlin12XMppDeprecation)
|
||||
|
||||
assertTasksNotExecuted(
|
||||
":lib:compileKotlinCommon",
|
||||
":lib:compileTestKotlinCommon",
|
||||
":libJvm:compileKotlin",
|
||||
":libJvm:compileTestKotlin",
|
||||
)
|
||||
}
|
||||
|
||||
project.projectDir.resolve("gradle.properties").appendText("\nkotlin.internal.mpp12x.deprecation.suppress=true")
|
||||
project.build("build") {
|
||||
assertSuccessful()
|
||||
|
||||
assertNoDiagnostic(KotlinToolingDiagnostics.Kotlin12XMppDeprecation)
|
||||
assertTasksExecuted(
|
||||
":lib:compileKotlinCommon",
|
||||
":lib:compileTestKotlinCommon",
|
||||
@@ -59,13 +78,6 @@ class MultiplatformGradleIT : BaseGradleIT() {
|
||||
assertFileExists("libJvm/build/classes/kotlin/main/foo/PlatformClass.class")
|
||||
assertFileExists("libJvm/build/classes/kotlin/test/foo/PlatformTest.class")
|
||||
}
|
||||
|
||||
project.projectDir.resolve("gradle.properties").appendText("\nkotlin.internal.mpp12x.deprecation.suppress=true")
|
||||
project.build {
|
||||
assertSuccessful()
|
||||
|
||||
assertNoDiagnostic(KotlinToolingDiagnostics.Kotlin12XMppDeprecation)
|
||||
}
|
||||
}
|
||||
|
||||
@Test
|
||||
|
||||
+1
@@ -0,0 +1 @@
|
||||
kotlin.internal.mpp12x.deprecation.suppress=true
|
||||
+1
@@ -0,0 +1 @@
|
||||
kotlin.internal.mpp12x.deprecation.suppress=true
|
||||
+1
@@ -0,0 +1 @@
|
||||
kotlin.internal.mpp12x.deprecation.suppress=true
|
||||
+1
@@ -0,0 +1 @@
|
||||
kotlin.internal.mpp12x.deprecation.suppress=true
|
||||
+1
@@ -0,0 +1 @@
|
||||
kotlin.internal.mpp12x.deprecation.suppress=true
|
||||
+1
@@ -0,0 +1 @@
|
||||
kotlin.internal.mpp12x.deprecation.suppress=true
|
||||
+1
@@ -0,0 +1 @@
|
||||
kotlin.internal.mpp12x.deprecation.suppress=true
|
||||
+1
@@ -0,0 +1 @@
|
||||
kotlin.internal.mpp12x.deprecation.suppress=true
|
||||
+1
@@ -0,0 +1 @@
|
||||
kotlin.internal.mpp12x.deprecation.suppress=true
|
||||
+2
-2
@@ -207,10 +207,10 @@ object KotlinToolingDiagnostics {
|
||||
)
|
||||
}
|
||||
|
||||
object Kotlin12XMppDeprecation : ToolingDiagnosticFactory(WARNING) {
|
||||
object Kotlin12XMppDeprecation : ToolingDiagnosticFactory(FATAL) {
|
||||
operator fun invoke() = build(
|
||||
"""
|
||||
The 'org.jetbrains.kotlin.platform.*' plugins are deprecated and are no longer available since Kotlin 1.4.
|
||||
The 'org.jetbrains.kotlin.platform.*' plugins are no longer available.
|
||||
Please migrate the project to the 'org.jetbrains.kotlin.multiplatform' plugin.
|
||||
See: https://kotlinlang.org/docs/reference/building-mpp-with-gradle.html
|
||||
""".trimIndent()
|
||||
|
||||
Reference in New Issue
Block a user