From 4652312c5e4cb07e28731958a1cd84a52fb709e3 Mon Sep 17 00:00:00 2001 From: Dmitriy Novozhilov Date: Tue, 29 Dec 2020 13:47:21 +0300 Subject: [PATCH] [IDE] Propagate KotlinFacetSettings version and completely drop isReleaseCoroutines flag Also this commit removes number of tests related to support experimental coroutines Original commit: af94bcebeac2b1641d2dfd6448beeb7f7930edca --- .../org/jetbrains/kotlin/config/KotlinFacetSettings.kt | 2 +- .../org/jetbrains/kotlin/config/facetSerialization.kt | 10 +++++++++- 2 files changed, 10 insertions(+), 2 deletions(-) diff --git a/jps/jps-common/src/org/jetbrains/kotlin/config/KotlinFacetSettings.kt b/jps/jps-common/src/org/jetbrains/kotlin/config/KotlinFacetSettings.kt index 6360f251c18..3d0094627a2 100644 --- a/jps/jps-common/src/org/jetbrains/kotlin/config/KotlinFacetSettings.kt +++ b/jps/jps-common/src/org/jetbrains/kotlin/config/KotlinFacetSettings.kt @@ -160,7 +160,7 @@ data class ExternalSystemNativeMainRunTask( class KotlinFacetSettings { companion object { // Increment this when making serialization-incompatible changes to configuration data - val CURRENT_VERSION = 3 + val CURRENT_VERSION = 4 val DEFAULT_VERSION = 0 } diff --git a/jps/jps-common/src/org/jetbrains/kotlin/config/facetSerialization.kt b/jps/jps-common/src/org/jetbrains/kotlin/config/facetSerialization.kt index 40b90f2071a..7412c7a016f 100644 --- a/jps/jps-common/src/org/jetbrains/kotlin/config/facetSerialization.kt +++ b/jps/jps-common/src/org/jetbrains/kotlin/config/facetSerialization.kt @@ -194,6 +194,10 @@ private fun readElementsList(element: Element, rootElementName: String, elementN return null } +private fun readV3Config(element: Element): KotlinFacetSettings { + return readV2AndLaterConfig(element) +} + private fun readV2Config(element: Element): KotlinFacetSettings { return readV2AndLaterConfig(element) } @@ -211,6 +215,7 @@ fun deserializeFacetSettings(element: Element): KotlinFacetSettings { return when (version) { 1 -> readV1Config(element) 2 -> readV2Config(element) + 3 -> readV3Config(element) KotlinFacetSettings.CURRENT_VERSION -> readLatestConfig(element) else -> return KotlinFacetSettings() // Reset facet configuration if versions don't match }.apply { this.version = version } @@ -397,7 +402,10 @@ fun Element.dropVersionsIfNecessary(settings: CommonCompilerArguments) { } fun KotlinFacetSettings.serializeFacetSettings(element: Element) { - val versionToWrite = if (version == 2) version else KotlinFacetSettings.CURRENT_VERSION + val versionToWrite = when (version) { + 2, 3 -> version + else -> KotlinFacetSettings.CURRENT_VERSION + } element.setAttribute("version", versionToWrite.toString()) writeLatestConfig(element) }