From f051119c4bb1e4d1ef35d9c10d7aef0648b86df5 Mon Sep 17 00:00:00 2001 From: Vasily Levchenko Date: Thu, 11 Feb 2021 11:24:57 +0100 Subject: [PATCH] [tests][kotlin-gradle-plugin] workaround for old k/n artifacts --- .../gradle/native/NativePlatformLibsIT.kt | 3 +- .../native/NativeCompilerDownloader.kt | 66 +++++++++---------- 2 files changed, 35 insertions(+), 34 deletions(-) diff --git a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/native/NativePlatformLibsIT.kt b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/native/NativePlatformLibsIT.kt index 1176c08eeb2..3492d2c8692 100644 --- a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/native/NativePlatformLibsIT.kt +++ b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/native/NativePlatformLibsIT.kt @@ -12,6 +12,7 @@ import org.jetbrains.kotlin.gradle.native.GeneralNativeIT.Companion.extractNativ import org.jetbrains.kotlin.gradle.transformProjectWithPluginsDsl import org.jetbrains.kotlin.gradle.util.modify import org.jetbrains.kotlin.gradle.utils.NativeCompilerDownloader +import org.jetbrains.kotlin.gradle.utils.toStringPre1_5_20 import org.jetbrains.kotlin.konan.target.HostManager import org.jetbrains.kotlin.konan.target.KonanTarget import org.jetbrains.kotlin.konan.target.presetName @@ -54,7 +55,7 @@ class NativePlatformLibsIT : BaseGradleIT() { // Clean existing installation directories. val osName = HostManager.simpleOsName() val oldCompilerDir = DependencyDirectories.localKonanDir.resolve("kotlin-native-$osName-$oldCompilerVersion") - val currentCompilerDir = DependencyDirectories.localKonanDir.resolve("kotlin-native-$osName-$currentCompilerVersion") + val currentCompilerDir = DependencyDirectories.localKonanDir.resolve("kotlin-native-$osName-${currentCompilerVersion.toStringPre1_5_20()}") for (compilerDirectory in listOf(oldCompilerDir, currentCompilerDir)) { compilerDirectory.deleteRecursively() diff --git a/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/native/NativeCompilerDownloader.kt b/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/native/NativeCompilerDownloader.kt index c78e4153668..7eb036210db 100644 --- a/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/native/NativeCompilerDownloader.kt +++ b/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/native/NativeCompilerDownloader.kt @@ -56,38 +56,6 @@ class NativeCompilerDownloader( } } - /** - * Once we've decide to make K/N version like K one (with droppable maintenance 0), but this breaks old publications, - * when did merging kotlin with kotlin/native after 1.5.0 release. - * older 1.5.20? - */ - private fun CompilerVersion.toStringPre1_5_20(showMeta: Boolean, showBuild: Boolean) = buildString { - if (major > 1 - || minor > 5 - || maintenance > 20 - ) - return toString(showMeta, showBuild) - append(major) - append('.') - append(minor) - if (maintenance != 0) { - append('.') - append(maintenance) - } - if (milestone != -1) { - append("-M") - append(milestone) - } - if (showMeta) { - append('-') - append(meta.metaString) - } - if (showBuild && build != -1) { - append('-') - append(build) - } - } - val versionStringRepresentation = compilerVersion.toStringPre1_5_20( compilerVersion.meta != MetaVersion.RELEASE, compilerVersion.meta != MetaVersion.RELEASE @@ -179,4 +147,36 @@ class NativeCompilerDownloader( downloadAndExtract() } } -} \ No newline at end of file +} +/** + * Once we've decide to make K/N version like K one (with droppable maintenance 0), but this breaks old publications, + * when did merging kotlin with kotlin/native after 1.5.0 release. + * older 1.5.20? + */ +fun CompilerVersion.toStringPre1_5_20(showMeta: Boolean = meta != MetaVersion.RELEASE, showBuild: Boolean = meta != MetaVersion.RELEASE) = + buildString { + if (major > 1 + || minor > 5 + || maintenance > 20 + ) + return toString(showMeta, showBuild) + append(major) + append('.') + append(minor) + if (maintenance != 0) { + append('.') + append(maintenance) + } + if (milestone != -1) { + append("-M") + append(milestone) + } + if (showMeta) { + append('-') + append(meta.metaString) + } + if (showBuild && build != -1) { + append('-') + append(build) + } + }