From 47c8bab48e3b74229226f778dcf8aa2e14813477 Mon Sep 17 00:00:00 2001 From: Mikhail Glukhikh Date: Wed, 7 Jul 2021 15:41:04 +0300 Subject: [PATCH] Replace -Xuse-experimental with -Xopt-in in codebase --- .../kotlin/resolve/checkers/ExperimentalUsageChecker.kt | 4 ++-- kotlin-native/Interop/Runtime/build.gradle.kts | 3 +-- .../src/main/kotlin/kotlinx/cli/ExperimentalCli.kt | 2 +- libraries/kotlin.test/js-ir/build.gradle.kts | 5 ++--- libraries/stdlib/js-ir-minimal-for-test/build.gradle.kts | 5 ++--- libraries/stdlib/js-ir/build.gradle.kts | 5 ++--- libraries/stdlib/wasm/build.gradle.kts | 5 ++--- 7 files changed, 12 insertions(+), 17 deletions(-) diff --git a/compiler/frontend/src/org/jetbrains/kotlin/resolve/checkers/ExperimentalUsageChecker.kt b/compiler/frontend/src/org/jetbrains/kotlin/resolve/checkers/ExperimentalUsageChecker.kt index 49fc6552964..604332394f1 100644 --- a/compiler/frontend/src/org/jetbrains/kotlin/resolve/checkers/ExperimentalUsageChecker.kt +++ b/compiler/frontend/src/org/jetbrains/kotlin/resolve/checkers/ExperimentalUsageChecker.kt @@ -314,8 +314,8 @@ class ExperimentalUsageChecker(project: Project) : CallChecker { reportError: (String) -> Unit, reportWarning: (String) -> Unit ) { - // Ideally, we should run full resolution (with all classifier usage checkers) on classifiers used in "-Xexperimental" and - // "-Xuse-experimental" arguments. However, it's not easy to do this. This should be solved in the future with the support of + // Ideally, we should run full resolution (with all classifier usage checkers) on classifiers used in + // "-Xopt-in" arguments. However, it's not easy to do this. This should be solved in the future with the support of // module annotations. For now, we only check deprecations because this is needed to correctly retire unneeded compiler arguments. val deprecationResolver = DeprecationResolver( LockBasedStorageManager("ExperimentalUsageChecker"), diff --git a/kotlin-native/Interop/Runtime/build.gradle.kts b/kotlin-native/Interop/Runtime/build.gradle.kts index f6a47fc0fcf..5227573c869 100644 --- a/kotlin-native/Interop/Runtime/build.gradle.kts +++ b/kotlin-native/Interop/Runtime/build.gradle.kts @@ -72,8 +72,7 @@ sourceSets.main.get().java.srcDir("src/jvm/kotlin") tasks.withType().configureEach { kotlinOptions { - freeCompilerArgs = listOf("-Xuse-experimental=kotlin.ExperimentalUnsignedTypes", - "-Xuse-experimental=kotlin.Experimental", + freeCompilerArgs = listOf("-Xopt-in=kotlin.ExperimentalUnsignedTypes", "-Xopt-in=kotlin.RequiresOptIn", "-Xinline-classes", "-Xskip-prerelease-check") diff --git a/kotlin-native/endorsedLibraries/kotlinx.cli/src/main/kotlin/kotlinx/cli/ExperimentalCli.kt b/kotlin-native/endorsedLibraries/kotlinx.cli/src/main/kotlin/kotlinx/cli/ExperimentalCli.kt index 7f8f2e9fc14..a29f83199b0 100644 --- a/kotlin-native/endorsedLibraries/kotlinx.cli/src/main/kotlin/kotlinx/cli/ExperimentalCli.kt +++ b/kotlin-native/endorsedLibraries/kotlinx.cli/src/main/kotlin/kotlinx/cli/ExperimentalCli.kt @@ -15,7 +15,7 @@ import kotlin.annotation.AnnotationTarget.* * * Any usage of a declaration annotated with `@ExperimentalCli` must be accepted either by * annotating that usage with the [UseExperimental] annotation, e.g. `@UseExperimental(ExperimentalCli::class)`, - * or by using the compiler argument `-Xuse-experimental=kotlinx.cli.ExperimentalCli`. + * or by using the compiler argument `-Xopt-in=kotlinx.cli.ExperimentalCli`. */ @RequiresOptIn("This API is experimental. It may be changed in the future without notice.", RequiresOptIn.Level.WARNING) @Retention(AnnotationRetention.BINARY) diff --git a/libraries/kotlin.test/js-ir/build.gradle.kts b/libraries/kotlin.test/js-ir/build.gradle.kts index 6f8cd8bd9e5..693bb3086ba 100644 --- a/libraries/kotlin.test/js-ir/build.gradle.kts +++ b/libraries/kotlin.test/js-ir/build.gradle.kts @@ -50,9 +50,8 @@ tasks.withType>().configureEach { kotlinOptions.freeCompilerArgs += listOf( "-Xallow-kotlin-package", "-Xallow-result-return-type", - "-Xuse-experimental=kotlin.Experimental", - "-Xuse-experimental=kotlin.ExperimentalMultiplatform", - "-Xuse-experimental=kotlin.contracts.ExperimentalContracts", + "-Xopt-in=kotlin.ExperimentalMultiplatform", + "-Xopt-in=kotlin.contracts.ExperimentalContracts", "-Xinline-classes" ) } diff --git a/libraries/stdlib/js-ir-minimal-for-test/build.gradle.kts b/libraries/stdlib/js-ir-minimal-for-test/build.gradle.kts index e5e8a6ab070..e758510c2b4 100644 --- a/libraries/stdlib/js-ir-minimal-for-test/build.gradle.kts +++ b/libraries/stdlib/js-ir-minimal-for-test/build.gradle.kts @@ -122,9 +122,8 @@ tasks.withType> { kotlinOptions.freeCompilerArgs += listOf( "-Xallow-kotlin-package", "-Xallow-result-return-type", - "-Xuse-experimental=kotlin.Experimental", - "-Xuse-experimental=kotlin.ExperimentalMultiplatform", - "-Xuse-experimental=kotlin.contracts.ExperimentalContracts", + "-Xopt-in=kotlin.ExperimentalMultiplatform", + "-Xopt-in=kotlin.contracts.ExperimentalContracts", "-Xinline-classes", "-Xopt-in=kotlin.RequiresOptIn", "-Xopt-in=kotlin.ExperimentalUnsignedTypes", diff --git a/libraries/stdlib/js-ir/build.gradle.kts b/libraries/stdlib/js-ir/build.gradle.kts index ec554930a7a..30b08430b41 100644 --- a/libraries/stdlib/js-ir/build.gradle.kts +++ b/libraries/stdlib/js-ir/build.gradle.kts @@ -138,9 +138,8 @@ tasks.withType>().configureEach { kotlinOptions.freeCompilerArgs += listOf( "-Xallow-kotlin-package", "-Xallow-result-return-type", - "-Xuse-experimental=kotlin.Experimental", - "-Xuse-experimental=kotlin.ExperimentalMultiplatform", - "-Xuse-experimental=kotlin.contracts.ExperimentalContracts", + "-Xopt-in=kotlin.ExperimentalMultiplatform", + "-Xopt-in=kotlin.contracts.ExperimentalContracts", "-Xinline-classes", "-Xopt-in=kotlin.RequiresOptIn", "-Xopt-in=kotlin.ExperimentalUnsignedTypes", diff --git a/libraries/stdlib/wasm/build.gradle.kts b/libraries/stdlib/wasm/build.gradle.kts index 66bf701d60d..f037ed87e45 100644 --- a/libraries/stdlib/wasm/build.gradle.kts +++ b/libraries/stdlib/wasm/build.gradle.kts @@ -74,9 +74,8 @@ tasks.withType>().configureEach { kotlinOptions.freeCompilerArgs += listOf( "-Xallow-kotlin-package", "-Xallow-result-return-type", - "-Xuse-experimental=kotlin.Experimental", - "-Xuse-experimental=kotlin.ExperimentalMultiplatform", - "-Xuse-experimental=kotlin.contracts.ExperimentalContracts", + "-Xopt-in=kotlin.ExperimentalMultiplatform", + "-Xopt-in=kotlin.contracts.ExperimentalContracts", "-Xinline-classes", "-Xopt-in=kotlin.RequiresOptIn", "-Xopt-in=kotlin.ExperimentalUnsignedTypes",