From dbfa8d4c290c582e2da94ffd0510ffdc439b097c Mon Sep 17 00:00:00 2001 From: Sebastian Sellmair Date: Tue, 16 May 2023 11:50:56 +0200 Subject: [PATCH] [Gradle] Defer .awaitSourceSets to 'AfterFinaliseRefinesEdges' and awaitFinalValue to 'AfterFinaliseDsl' KT-58710 --- .../jetbrains/kotlin/gradle/dsl/KotlinProjectExtension.kt | 2 +- .../kotlin/gradle/plugin/KotlinPluginLifecycle.kt | 2 +- .../targets/native/internal/CInteropCommonizerTask.kt | 4 ++-- .../unitTests/LifecycleAwaitFinalPropertyValueTest.kt | 8 ++++---- 4 files changed, 8 insertions(+), 8 deletions(-) diff --git a/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/dsl/KotlinProjectExtension.kt b/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/dsl/KotlinProjectExtension.kt index 45beeed67d2..e3ae5d87289 100644 --- a/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/dsl/KotlinProjectExtension.kt +++ b/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/dsl/KotlinProjectExtension.kt @@ -177,7 +177,7 @@ open class KotlinProjectExtension @Inject constructor(project: Project) : Kotlin } internal suspend fun awaitSourceSets(): NamedDomainObjectContainer { - KotlinPluginLifecycle.Stage.AfterFinaliseDsl.await() + KotlinPluginLifecycle.Stage.AfterFinaliseRefinesEdges.await() return sourceSets } } diff --git a/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/plugin/KotlinPluginLifecycle.kt b/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/plugin/KotlinPluginLifecycle.kt index e85f517b1d9..c338eed9428 100644 --- a/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/plugin/KotlinPluginLifecycle.kt +++ b/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/plugin/KotlinPluginLifecycle.kt @@ -182,7 +182,7 @@ internal suspend fun Stage.await() { * final value. */ internal suspend fun Property.awaitFinalValue(): T? { - Stage.FinaliseDsl.await() + Stage.AfterFinaliseDsl.await() finalizeValue() return orNull } diff --git a/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/targets/native/internal/CInteropCommonizerTask.kt b/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/targets/native/internal/CInteropCommonizerTask.kt index 6648a1f1b13..33d500f929e 100644 --- a/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/targets/native/internal/CInteropCommonizerTask.kt +++ b/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/targets/native/internal/CInteropCommonizerTask.kt @@ -275,11 +275,11 @@ internal open class CInteropCommonizerTask .mapNotNull { compilation -> CInteropCommonizerDependent.from(compilation) } .toSet() - val fromSourceSets = multiplatformExtension.sourceSets + val fromSourceSets = multiplatformExtension.awaitSourceSets() .mapNotNull { sourceSet -> CInteropCommonizerDependent.from(sourceSet) } .toSet() - val fromSourceSetsAssociateCompilations = multiplatformExtension.sourceSets + val fromSourceSetsAssociateCompilations = multiplatformExtension.awaitSourceSets() .mapNotNull { sourceSet -> CInteropCommonizerDependent.fromAssociateCompilations(sourceSet) } .toSet() diff --git a/libraries/tools/kotlin-gradle-plugin/src/functionalTest/kotlin/org/jetbrains/kotlin/gradle/unitTests/LifecycleAwaitFinalPropertyValueTest.kt b/libraries/tools/kotlin-gradle-plugin/src/functionalTest/kotlin/org/jetbrains/kotlin/gradle/unitTests/LifecycleAwaitFinalPropertyValueTest.kt index 0815564767d..efab9501e86 100644 --- a/libraries/tools/kotlin-gradle-plugin/src/functionalTest/kotlin/org/jetbrains/kotlin/gradle/unitTests/LifecycleAwaitFinalPropertyValueTest.kt +++ b/libraries/tools/kotlin-gradle-plugin/src/functionalTest/kotlin/org/jetbrains/kotlin/gradle/unitTests/LifecycleAwaitFinalPropertyValueTest.kt @@ -7,9 +7,9 @@ package org.jetbrains.kotlin.gradle.unitTests +import org.jetbrains.kotlin.gradle.plugin.* import org.jetbrains.kotlin.gradle.plugin.KotlinPluginLifecycle -import org.jetbrains.kotlin.gradle.plugin.KotlinPluginLifecycle.Stage.EvaluateBuildscript -import org.jetbrains.kotlin.gradle.plugin.KotlinPluginLifecycle.Stage.FinaliseDsl +import org.jetbrains.kotlin.gradle.plugin.KotlinPluginLifecycle.Stage.* import org.jetbrains.kotlin.gradle.plugin.awaitFinalValue import org.jetbrains.kotlin.gradle.plugin.currentKotlinPluginLifecycle import org.jetbrains.kotlin.gradle.plugin.launchInStage @@ -40,7 +40,7 @@ class LifecycleAwaitFinalPropertyValueTest { assertEquals(EvaluateBuildscript, currentKotlinPluginLifecycle().stage) assertEquals(2, property.awaitFinalValue()) - assertEquals(FinaliseDsl, currentKotlinPluginLifecycle().stage) + assertEquals(AfterFinaliseDsl, currentKotlinPluginLifecycle().stage) } @Test @@ -48,7 +48,7 @@ class LifecycleAwaitFinalPropertyValueTest { val property = project.newProperty() property.set(1) - launchInStage(FinaliseDsl.previousOrThrow) { + launch { property.awaitFinalValue() }