From 770d6a4708055798da2f89bedcab4152e6c3f6ae Mon Sep 17 00:00:00 2001 From: Nikita Bobko Date: Tue, 24 Jan 2023 13:11:31 +0100 Subject: [PATCH] Bump KotlinAbiVersion for Enum.Entries ^KT-55808 Fixed Review: https://jetbrains.team/p/kt/reviews/8401 If I don't bump `versions.kotlin-native` then locally `kotlinx.coroutines` & `kotlinx.atomicfu` user projects compilation fails with message: ``` w: skipping /home/bobko/jb/kotlinx-atomicfu/atomicfu/build/classes/kotlin/metadata/commonMain. Incompatible abi version. The current default is '1.7.0', found '1.8.0'. The library produced by 1.8.255 compiler e: Could not find "/home/bobko/jb/kotlinx-atomicfu/atomicfu/build/classes/kotlin/metadata/commonMain" in [/home/bobko/jb/kotlinx-atomicfu, /home/bobko/.konan/klib, /home/bobko/.konan/kotlin-native-prebuilt-linux-x86_64-1.8.20-dev-5812/klib/common, /home/bobko/.konan/kotlin-native-prebuilt-linux-x86_64-1.8.20-dev-5812/klib/platform/linux_x64] ``` It worth noticing that we hardcoded "1.9.0-dev-693" on CI (kotlin-teamcity-build/6693cb229c7485e07241fbc28322344774bcc3e0) to workaround KTI-1107. 1.9.0-dev-693 also bumps KotlinAbiVersion --- build.gradle.kts | 3 ++- compiler/util-klib/KotlinAbiVersionBumpHistory.md | 8 ++++++-- .../src/org/jetbrains/kotlin/library/KotlinAbiVersion.kt | 2 +- 3 files changed, 9 insertions(+), 4 deletions(-) diff --git a/build.gradle.kts b/build.gradle.kts index 0f087815c7b..1d388ac5f60 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -108,7 +108,8 @@ rootProject.apply { IdeVersionConfigurator.setCurrentIde(project) if (!project.hasProperty("versions.kotlin-native")) { - extra["versions.kotlin-native"] = "1.9.0-dev-886" + // BEWARE! Bumping this version doesn't take an immediate effect on TeamCity: KTI-1107 + extra["versions.kotlin-native"] = "1.9.0-dev-920" } val irCompilerModules = arrayOf( diff --git a/compiler/util-klib/KotlinAbiVersionBumpHistory.md b/compiler/util-klib/KotlinAbiVersionBumpHistory.md index 24c4724166a..b8d0c78f018 100644 --- a/compiler/util-klib/KotlinAbiVersionBumpHistory.md +++ b/compiler/util-klib/KotlinAbiVersionBumpHistory.md @@ -1,8 +1,12 @@ # KotlinAbiVersion bump history -- Incompatible change in KotlinIr.proto +- Bump 1.7.0 -> 1.8.0 +- The bump is caused by incompatible change in KotlinIr.proto `1b6a43ba69a 2022-07-21 Vsevolod Tolstopyatov Update IR serialization to reflect changes in IrSyntheticBodyKind for enum entries` - but we can skip abi version bump because we check some other version in different place KT-53620. + Formally, the bump should have been done in Kotlin 1.8.0, but we did it only in Kotlin 1.9.0 because: + - We screwed up to do it in time [KT-55808](https://youtrack.jetbrains.com/issue/KT-55808) + - We got lucky because we had human-readable error anyway, so nobody cared + [KT-53620](https://youtrack.jetbrains.com/issue/KT-53620) - Bump 1.6.0 -> 1.7.0 `76da9df1021 2022-05-26 Pavel Kunyavskiy Bump klib ABI version` diff --git a/compiler/util-klib/src/org/jetbrains/kotlin/library/KotlinAbiVersion.kt b/compiler/util-klib/src/org/jetbrains/kotlin/library/KotlinAbiVersion.kt index 9211c3b6d73..6f67cf169f4 100644 --- a/compiler/util-klib/src/org/jetbrains/kotlin/library/KotlinAbiVersion.kt +++ b/compiler/util-klib/src/org/jetbrains/kotlin/library/KotlinAbiVersion.kt @@ -75,6 +75,6 @@ data class KotlinAbiVersion(val major: Int, val minor: Int, val patch: Int) { /** * See: [KotlinAbiVersion bump history](compiler/util-klib/KotlinAbiVersionBumpHistory.md) */ - val CURRENT = KotlinAbiVersion(1, 7, 0) + val CURRENT = KotlinAbiVersion(1, 8, 0) } }