[Gradle] Partially restore top-level compiler options DSL in MPP
To support configuring free compiler arguments for all shared source
sets (KT-61573), we restore 'compilerOptions { }' DSL in the
multiplatform extension.
To avoid user confusion on accidentally using 'compilerOptions {}'
inside Kotlin targets and Kotlin compilations DSL, similar methods with
ERROR deprecation level were added into `KotlinTarget` and
`KotlinCompilation` interfaces. Invoking these interfaces will throw
UnsupportedOperationException. Such an approach works both for Kotlin
and Groove Gradle scripts.
^KT-63491 Fixed
This commit is contained in:
committed by
Space Team
parent
f32fd314f8
commit
ffa6bfc95e
@@ -705,6 +705,8 @@ public abstract interface class org/jetbrains/kotlin/gradle/plugin/KotlinCompila
|
||||
public abstract fun associateWith (Lorg/jetbrains/kotlin/gradle/plugin/KotlinCompilation;)V
|
||||
public abstract fun attributes (Lkotlin/jvm/functions/Function1;)V
|
||||
public abstract fun attributes (Lorg/gradle/api/Action;)V
|
||||
public abstract fun compilerOptions (Lkotlin/jvm/functions/Function1;)V
|
||||
public abstract fun compilerOptions (Lorg/gradle/api/Action;)V
|
||||
public abstract fun defaultSourceSet (Lkotlin/jvm/functions/Function1;)V
|
||||
public abstract fun defaultSourceSet (Lorg/gradle/api/Action;)V
|
||||
public abstract fun getAllAssociatedCompilations ()Ljava/util/Set;
|
||||
@@ -745,6 +747,8 @@ public final class org/jetbrains/kotlin/gradle/plugin/KotlinCompilation$Companio
|
||||
public final class org/jetbrains/kotlin/gradle/plugin/KotlinCompilation$DefaultImpls {
|
||||
public static fun attributes (Lorg/jetbrains/kotlin/gradle/plugin/KotlinCompilation;Lkotlin/jvm/functions/Function1;)V
|
||||
public static fun attributes (Lorg/jetbrains/kotlin/gradle/plugin/KotlinCompilation;Lorg/gradle/api/Action;)V
|
||||
public static fun compilerOptions (Lorg/jetbrains/kotlin/gradle/plugin/KotlinCompilation;Lkotlin/jvm/functions/Function1;)V
|
||||
public static fun compilerOptions (Lorg/jetbrains/kotlin/gradle/plugin/KotlinCompilation;Lorg/gradle/api/Action;)V
|
||||
public static fun defaultSourceSet (Lorg/jetbrains/kotlin/gradle/plugin/KotlinCompilation;Lorg/gradle/api/Action;)V
|
||||
public static fun getAssociateWith (Lorg/jetbrains/kotlin/gradle/plugin/KotlinCompilation;)Ljava/util/List;
|
||||
public static fun getDefaultSourceSetName (Lorg/jetbrains/kotlin/gradle/plugin/KotlinCompilation;)Ljava/lang/String;
|
||||
@@ -776,6 +780,8 @@ public abstract interface class org/jetbrains/kotlin/gradle/plugin/KotlinCompila
|
||||
public final class org/jetbrains/kotlin/gradle/plugin/KotlinCompilationToRunnableFiles$DefaultImpls {
|
||||
public static fun attributes (Lorg/jetbrains/kotlin/gradle/plugin/KotlinCompilationToRunnableFiles;Lkotlin/jvm/functions/Function1;)V
|
||||
public static fun attributes (Lorg/jetbrains/kotlin/gradle/plugin/KotlinCompilationToRunnableFiles;Lorg/gradle/api/Action;)V
|
||||
public static fun compilerOptions (Lorg/jetbrains/kotlin/gradle/plugin/KotlinCompilationToRunnableFiles;Lkotlin/jvm/functions/Function1;)V
|
||||
public static fun compilerOptions (Lorg/jetbrains/kotlin/gradle/plugin/KotlinCompilationToRunnableFiles;Lorg/gradle/api/Action;)V
|
||||
public static fun defaultSourceSet (Lorg/jetbrains/kotlin/gradle/plugin/KotlinCompilationToRunnableFiles;Lorg/gradle/api/Action;)V
|
||||
public static fun getAssociateWith (Lorg/jetbrains/kotlin/gradle/plugin/KotlinCompilationToRunnableFiles;)Ljava/util/List;
|
||||
public static fun getDefaultSourceSetName (Lorg/jetbrains/kotlin/gradle/plugin/KotlinCompilationToRunnableFiles;)Ljava/lang/String;
|
||||
@@ -793,6 +799,8 @@ public abstract interface class org/jetbrains/kotlin/gradle/plugin/KotlinCompila
|
||||
public final class org/jetbrains/kotlin/gradle/plugin/KotlinCompilationWithResources$DefaultImpls {
|
||||
public static fun attributes (Lorg/jetbrains/kotlin/gradle/plugin/KotlinCompilationWithResources;Lkotlin/jvm/functions/Function1;)V
|
||||
public static fun attributes (Lorg/jetbrains/kotlin/gradle/plugin/KotlinCompilationWithResources;Lorg/gradle/api/Action;)V
|
||||
public static fun compilerOptions (Lorg/jetbrains/kotlin/gradle/plugin/KotlinCompilationWithResources;Lkotlin/jvm/functions/Function1;)V
|
||||
public static fun compilerOptions (Lorg/jetbrains/kotlin/gradle/plugin/KotlinCompilationWithResources;Lorg/gradle/api/Action;)V
|
||||
public static fun defaultSourceSet (Lorg/jetbrains/kotlin/gradle/plugin/KotlinCompilationWithResources;Lorg/gradle/api/Action;)V
|
||||
public static fun getAssociateWith (Lorg/jetbrains/kotlin/gradle/plugin/KotlinCompilationWithResources;)Ljava/util/List;
|
||||
public static fun getDefaultSourceSetName (Lorg/jetbrains/kotlin/gradle/plugin/KotlinCompilationWithResources;)Ljava/lang/String;
|
||||
@@ -1121,6 +1129,8 @@ public final class org/jetbrains/kotlin/gradle/plugin/KotlinSourceSetTree$Compan
|
||||
public abstract interface class org/jetbrains/kotlin/gradle/plugin/KotlinTarget : org/gradle/api/Named, org/gradle/api/attributes/HasAttributes, org/jetbrains/kotlin/gradle/plugin/HasProject, org/jetbrains/kotlin/tooling/core/HasMutableExtras {
|
||||
public abstract fun attributes (Lkotlin/jvm/functions/Function1;)V
|
||||
public abstract fun attributes (Lorg/gradle/api/Action;)V
|
||||
public abstract fun compilerOptions (Lkotlin/jvm/functions/Function1;)V
|
||||
public abstract fun compilerOptions (Lorg/gradle/api/Action;)V
|
||||
public abstract fun getApiElementsConfigurationName ()Ljava/lang/String;
|
||||
public abstract fun getArtifactsTaskName ()Ljava/lang/String;
|
||||
public abstract fun getCompilations ()Lorg/gradle/api/NamedDomainObjectContainer;
|
||||
@@ -1143,6 +1153,8 @@ public abstract interface class org/jetbrains/kotlin/gradle/plugin/KotlinTarget
|
||||
public final class org/jetbrains/kotlin/gradle/plugin/KotlinTarget$DefaultImpls {
|
||||
public static fun attributes (Lorg/jetbrains/kotlin/gradle/plugin/KotlinTarget;Lkotlin/jvm/functions/Function1;)V
|
||||
public static fun attributes (Lorg/jetbrains/kotlin/gradle/plugin/KotlinTarget;Lorg/gradle/api/Action;)V
|
||||
public static fun compilerOptions (Lorg/jetbrains/kotlin/gradle/plugin/KotlinTarget;Lkotlin/jvm/functions/Function1;)V
|
||||
public static fun compilerOptions (Lorg/jetbrains/kotlin/gradle/plugin/KotlinTarget;Lorg/gradle/api/Action;)V
|
||||
public static fun getDisambiguationClassifier (Lorg/jetbrains/kotlin/gradle/plugin/KotlinTarget;)Ljava/lang/String;
|
||||
public static fun getName (Lorg/jetbrains/kotlin/gradle/plugin/KotlinTarget;)Ljava/lang/String;
|
||||
public static fun mavenPublication (Lorg/jetbrains/kotlin/gradle/plugin/KotlinTarget;Lkotlin/jvm/functions/Function1;)V
|
||||
@@ -1201,6 +1213,8 @@ public final class org/jetbrains/kotlin/gradle/plugin/KotlinTargetWithTests$Comp
|
||||
public final class org/jetbrains/kotlin/gradle/plugin/KotlinTargetWithTests$DefaultImpls {
|
||||
public static fun attributes (Lorg/jetbrains/kotlin/gradle/plugin/KotlinTargetWithTests;Lkotlin/jvm/functions/Function1;)V
|
||||
public static fun attributes (Lorg/jetbrains/kotlin/gradle/plugin/KotlinTargetWithTests;Lorg/gradle/api/Action;)V
|
||||
public static fun compilerOptions (Lorg/jetbrains/kotlin/gradle/plugin/KotlinTargetWithTests;Lkotlin/jvm/functions/Function1;)V
|
||||
public static fun compilerOptions (Lorg/jetbrains/kotlin/gradle/plugin/KotlinTargetWithTests;Lorg/gradle/api/Action;)V
|
||||
public static fun getDisambiguationClassifier (Lorg/jetbrains/kotlin/gradle/plugin/KotlinTargetWithTests;)Ljava/lang/String;
|
||||
public static fun getName (Lorg/jetbrains/kotlin/gradle/plugin/KotlinTargetWithTests;)Ljava/lang/String;
|
||||
public static fun mavenPublication (Lorg/jetbrains/kotlin/gradle/plugin/KotlinTargetWithTests;Lkotlin/jvm/functions/Function1;)V
|
||||
|
||||
+16
@@ -15,6 +15,7 @@ import org.gradle.api.file.FileCollection
|
||||
import org.gradle.api.file.SourceDirectorySet
|
||||
import org.gradle.api.tasks.TaskProvider
|
||||
import org.jetbrains.kotlin.gradle.ExperimentalKotlinGradlePluginApi
|
||||
import org.jetbrains.kotlin.gradle.dsl.KotlinCommonCompilerOptions
|
||||
import org.jetbrains.kotlin.gradle.dsl.KotlinCommonOptionsDeprecated
|
||||
import org.jetbrains.kotlin.gradle.dsl.KotlinCompileDeprecated
|
||||
import org.jetbrains.kotlin.gradle.tasks.KotlinCompilationTask
|
||||
@@ -58,6 +59,21 @@ interface KotlinCompilation<out T : KotlinCommonOptionsDeprecated> : Named,
|
||||
|
||||
val compilerOptions: HasCompilerOptions<*>
|
||||
|
||||
@Deprecated(
|
||||
"Kotlin compilation level compiler options DSL is not available in this release!",
|
||||
level = DeprecationLevel.ERROR
|
||||
)
|
||||
fun compilerOptions(configure: KotlinCommonCompilerOptions.() -> Unit) {
|
||||
throw UnsupportedOperationException("Kotlin compilation level compiler options DSL is not available in this release!")
|
||||
}
|
||||
@Deprecated(
|
||||
"Kotlin compilation level compiler options DSL is not available in this release!",
|
||||
level = DeprecationLevel.ERROR
|
||||
)
|
||||
fun compilerOptions(configure: Action<KotlinCommonCompilerOptions>) {
|
||||
throw UnsupportedOperationException("Kotlin compilation level compiler options DSL is not available in this release!")
|
||||
}
|
||||
|
||||
@Deprecated(
|
||||
message = "Accessing task instance directly is deprecated",
|
||||
replaceWith = ReplaceWith("compileTaskProvider")
|
||||
|
||||
+15
@@ -64,6 +64,21 @@ interface KotlinTarget : Named, HasAttributes, HasProject, HasMutableExtras {
|
||||
val preset: KotlinTargetPreset<out KotlinTarget>?
|
||||
|
||||
override fun getName(): String = targetName
|
||||
|
||||
@Deprecated(
|
||||
"Kotlin target level compiler options DSL is not available in this release!",
|
||||
level = DeprecationLevel.ERROR
|
||||
)
|
||||
fun compilerOptions(configure: KotlinCommonCompilerOptions.() -> Unit) {
|
||||
throw UnsupportedOperationException("Kotlin target level compiler options DSL is not available in this release!")
|
||||
}
|
||||
@Deprecated(
|
||||
"Kotlin target level compiler options DSL is not available in this release!",
|
||||
level = DeprecationLevel.ERROR
|
||||
)
|
||||
fun compilerOptions(configure: Action<KotlinCommonCompilerOptions>) {
|
||||
throw UnsupportedOperationException("Kotlin target level compiler options DSL is not available in this release!")
|
||||
}
|
||||
}
|
||||
|
||||
interface KotlinTargetWithTests<E : KotlinExecution.ExecutionSource, T : KotlinTargetTestRun<E>> : KotlinTarget {
|
||||
|
||||
Reference in New Issue
Block a user