From 45a413c8924bdbf3261dd0d96aa4780638e89faf Mon Sep 17 00:00:00 2001 From: Ilya Matveev Date: Fri, 13 Sep 2019 14:39:55 +0700 Subject: [PATCH] Gradle, native: Minor fixes Fix ReplaceWith for compilation.extraOpts Simplify languageSettings access in compile tasks Use checkedReplace in binary integration tests --- .../kotlin/gradle/NewMultiplatformIT.kt | 2 +- .../targets/native/KotlinNativeCompilation.kt | 4 +-- .../targets/native/tasks/KotlinNativeTasks.kt | 30 +++++++++---------- 3 files changed, 18 insertions(+), 18 deletions(-) diff --git a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/NewMultiplatformIT.kt b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/NewMultiplatformIT.kt index c96ec7eda15..d9ac056848e 100644 --- a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/NewMultiplatformIT.kt +++ b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/NewMultiplatformIT.kt @@ -1110,7 +1110,7 @@ class NewMultiplatformIT : BaseGradleIT() { } projectDir.resolve("src/commonMain/kotlin/PackageMain.kt").modify { // Remove usages of the ":exported" dependency to be able to compile the sources. - it.replace("import com.example.exported", "").replace("val exp = exported()", "val exp = 42") + it.checkedReplace("import com.example.exported", "").checkedReplace("val exp = exported()", "val exp = 42") } build("linkReleaseFrameworkIos") { assertFailed() diff --git a/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/native/KotlinNativeCompilation.kt b/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/native/KotlinNativeCompilation.kt index 6cc1156c6b2..0425e22eb7c 100644 --- a/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/native/KotlinNativeCompilation.kt +++ b/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/native/KotlinNativeCompilation.kt @@ -71,11 +71,11 @@ class KotlinNativeCompilation( extraOptsNoWarn = value } - @Deprecated("Use kotlinOptions.freeCompilerArgs instead", ReplaceWith("kotlinOptions.freeCompilerArgs")) + @Deprecated("Use kotlinOptions.freeCompilerArgs instead", ReplaceWith("kotlinOptions.freeCompilerArgs += values as Array")) @Suppress("Deprecation") fun extraOpts(vararg values: Any) = extraOpts(values.toList()) - @Deprecated("Use kotlinOptions.freeCompilerArgs instead", ReplaceWith("kotlinOptions.freeCompilerArgs")) + @Deprecated("Use kotlinOptions.freeCompilerArgs instead", ReplaceWith("kotlinOptions.freeCompilerArgs += values as List")) @Suppress("Deprecation") fun extraOpts(values: List) { extraOpts.addAll(values.map { it.toString() }) diff --git a/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/native/tasks/KotlinNativeTasks.kt b/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/native/tasks/KotlinNativeTasks.kt index a32477a4da5..b912ab6edf6 100644 --- a/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/native/tasks/KotlinNativeTasks.kt +++ b/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/native/tasks/KotlinNativeTasks.kt @@ -131,12 +131,12 @@ abstract class AbstractKotlinNativeCompile : Abstra abstract val additionalCompilerOptions: Collection @get:Internal - val languageSettings: LanguageSettingsBuilder? - get() = project.kotlinExtension.sourceSets.findByName(compilation.defaultSourceSetName)?.languageSettings + val languageSettings: LanguageSettingsBuilder + get() = compilation.defaultSourceSet.languageSettings @get:Input val progressiveMode: Boolean - get() = languageSettings?.progressiveMode ?: false + get() = languageSettings.progressiveMode // endregion. val kotlinNativeVersion: String @@ -275,27 +275,27 @@ open class KotlinNativeCompile : AbstractKotlinNativeCompile - @Input get() = languageSettings?.enabledLanguageFeatures ?: emptySet() + @Input get() = languageSettings.enabledLanguageFeatures val experimentalAnnotationsInUse: Set - @Input get() = languageSettings?.experimentalAnnotationsInUse.orEmpty() + @Input get() = languageSettings.experimentalAnnotationsInUse // endregion. // region Kotlin options. private inner class NativeCompileOptions : KotlinCommonOptions { override var apiVersion: String? - get() = languageSettings?.apiVersion - set(value) { languageSettings!!.apiVersion = value } + get() = languageSettings.apiVersion + set(value) { languageSettings.apiVersion = value } override var languageVersion: String? get() = this@KotlinNativeCompile.languageVersion - set(value) { languageSettings!!.languageVersion = value } + set(value) { languageSettings.languageVersion = value } override var allWarningsAsErrors: Boolean = false override var suppressWarnings: Boolean = false @@ -437,22 +437,22 @@ open class KotlinNativeLink : AbstractKotlinNativeCompile? - get() = languageSettings?.enabledLanguageFeatures?.takeIf { linkFromSources } + get() = languageSettings.enabledLanguageFeatures.takeIf { linkFromSources } @get:Optional @get:Input val experimentalAnnotationsInUse: Set? - get() = languageSettings?.experimentalAnnotationsInUse?.takeIf { linkFromSources } + get() = languageSettings.experimentalAnnotationsInUse.takeIf { linkFromSources } // endregion. // Binary-specific options. @@ -515,7 +515,7 @@ open class KotlinNativeLink : AbstractKotlinNativeCompile