From c25262d4904a22f3bb2f01cc5341e64edf773691 Mon Sep 17 00:00:00 2001 From: Konstantin Tskhovrebov Date: Fri, 19 Apr 2024 13:41:23 +0200 Subject: [PATCH] [gradle] Explicit ignore empty resource dirs More info: https://docs.gradle.org/current/userguide/upgrading_version_7.html#gradle_does_not_ignore_empty_directories_for_file_trees_with_skipwhenempty --- .../jetbrains/compose/resources/PrepareComposeResources.kt | 4 ++++ .../jetbrains/compose/test/tests/integration/ResourcesTest.kt | 4 ++-- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/gradle-plugins/compose/src/main/kotlin/org/jetbrains/compose/resources/PrepareComposeResources.kt b/gradle-plugins/compose/src/main/kotlin/org/jetbrains/compose/resources/PrepareComposeResources.kt index e4327cd82e..a6e5460ab0 100644 --- a/gradle-plugins/compose/src/main/kotlin/org/jetbrains/compose/resources/PrepareComposeResources.kt +++ b/gradle-plugins/compose/src/main/kotlin/org/jetbrains/compose/resources/PrepareComposeResources.kt @@ -69,6 +69,7 @@ internal abstract class CopyNonXmlValueResourcesTask : DefaultTask() { @get:InputFiles @get:SkipWhenEmpty + @get:IgnoreEmptyDirectories val realInputFiles = originalResourcesDir.map { dir -> dir.asFileTree.matching { it.exclude("values*/*.xml") } } @@ -97,10 +98,12 @@ internal abstract class CopyNonXmlValueResourcesTask : DefaultTask() { internal abstract class PrepareComposeResourcesTask : DefaultTask() { @get:InputFiles @get:SkipWhenEmpty + @get:IgnoreEmptyDirectories abstract val convertedXmls: Property @get:InputFiles @get:SkipWhenEmpty + @get:IgnoreEmptyDirectories abstract val copiedNonXmls: Property @get:OutputDirectory @@ -146,6 +149,7 @@ internal abstract class XmlValuesConverterTask : DefaultTask() { @get:InputFiles @get:SkipWhenEmpty + @get:IgnoreEmptyDirectories val realInputFiles = originalResourcesDir.map { dir -> dir.asFileTree.matching { it.include("values*/*.xml") } } diff --git a/gradle-plugins/compose/src/test/kotlin/org/jetbrains/compose/test/tests/integration/ResourcesTest.kt b/gradle-plugins/compose/src/test/kotlin/org/jetbrains/compose/test/tests/integration/ResourcesTest.kt index 0628ff6ea3..91de2bbb88 100644 --- a/gradle-plugins/compose/src/test/kotlin/org/jetbrains/compose/test/tests/integration/ResourcesTest.kt +++ b/gradle-plugins/compose/src/test/kotlin/org/jetbrains/compose/test/tests/integration/ResourcesTest.kt @@ -584,7 +584,7 @@ class ResourcesTest : GradlePluginTestBase() { check.taskSkipped(":syncPodComposeResourcesForIos") } gradle(":syncPodComposeResourcesForIos").checks { - check.taskSuccessful(":convertXmlValueResourcesForCommonMain") + check.taskNoSource(":convertXmlValueResourcesForCommonMain") check.taskSuccessful(":copyNonXmlValueResourcesForCommonMain") check.taskSuccessful(":prepareComposeResourcesTaskForCommonMain") check.taskSkipped(":generateResourceAccessorsForCommonMain") @@ -599,7 +599,7 @@ class ResourcesTest : GradlePluginTestBase() { check.taskNoSource(":prepareComposeResourcesTaskForAppleMain") check.taskSkipped(":generateResourceAccessorsForAppleMain") - check.taskSuccessful(":convertXmlValueResourcesForIosMain") + check.taskNoSource(":convertXmlValueResourcesForIosMain") check.taskSuccessful(":copyNonXmlValueResourcesForIosMain") check.taskSuccessful(":prepareComposeResourcesTaskForIosMain") check.taskSkipped(":generateResourceAccessorsForIosMain")