From 663af97e79dc396ad2f22668b3102ff654d38915 Mon Sep 17 00:00:00 2001 From: Matthias Kurz Date: Sun, 16 Jun 2024 12:51:25 +0200 Subject: [PATCH 1/2] Rename disableExportAssets to disableExportedProducts + refactor --- .../scala/com/typesafe/sbt/web/SbtWeb.scala | 26 +++++++++++-------- 1 file changed, 15 insertions(+), 11 deletions(-) diff --git a/src/main/scala/com/typesafe/sbt/web/SbtWeb.scala b/src/main/scala/com/typesafe/sbt/web/SbtWeb.scala index 25331e0..13986df 100644 --- a/src/main/scala/com/typesafe/sbt/web/SbtWeb.scala +++ b/src/main/scala/com/typesafe/sbt/web/SbtWeb.scala @@ -102,9 +102,9 @@ object Import { ) val stagingDirectory = SettingKey[File]("web-staging-directory", "Directory where we stage distributions/releases.") - val disableExportAssets = AttributeKey[Boolean]( - "disableExportAssets", - "If added to the state and set to true, the assets will not be exported" + val disableExportedProducts = AttributeKey[Boolean]( + "disableExportedProducts", + "If added to the state and set to true, assets will not be exported via exportedProducts" ) } @@ -334,13 +334,9 @@ object SbtWeb extends AutoPlugin { exportedAssets := syncExportedAssets(TrackLevel.TrackAlways).value, exportedAssetsIfMissing := syncExportedAssets(TrackLevel.TrackIfMissing).value, exportedAssetsNoTracking := syncExportedAssets(TrackLevel.NoTracking).value, - exportedProducts := Seq(Attributed.blank(exportedAssets.value).put(webModulesLib.key, moduleName.value)), - exportedProductsIfMissing := Seq( - Attributed.blank(exportedAssetsIfMissing.value).put(webModulesLib.key, moduleName.value) - ), - exportedProductsNoTracking := Seq( - Attributed.blank(exportedAssetsNoTracking.value).put(webModulesLib.key, moduleName.value) - ) + exportedProducts := exportProducts(exportedAssets).value, + exportedProductsIfMissing := exportProducts(exportedAssetsIfMissing).value, + exportedProductsNoTracking := exportProducts(exportedAssetsNoTracking).value ) val nodeModulesSettings = Seq( @@ -412,7 +408,7 @@ object SbtWeb extends AutoPlugin { exportConf: Configuration, track: TrackLevel ): Def.Initialize[Task[Classpath]] = Def.taskDyn { - if ((exportConf / exportJars).value || state.value.get(disableExportAssets).getOrElse(false)) Def.task { + if ((exportConf / exportJars).value) Def.task { Seq.empty } else { @@ -427,6 +423,14 @@ object SbtWeb extends AutoPlugin { } } + def exportProducts(exportTask: TaskKey[File]): Def.Initialize[Task[Classpath]] = Def.taskDyn { + if (state.value.get(disableExportedProducts).getOrElse(false)) { + Def.task[Classpath] { Seq.empty } + } else { + Def.task { Seq(Attributed.blank(exportTask.value).put(webModulesLib.key, moduleName.value)) } + } + } + def packageSettings: Seq[Setting[_]] = inConfig(Assets)( Defaults.packageTaskSettings(packageBin, packageAssetsMappings) ++ Seq( packagePrefix := "", From 408bf920a630fd24be56503357b9c2bcad6638ee Mon Sep 17 00:00:00 2001 From: Matthias Kurz Date: Sun, 16 Jun 2024 12:52:32 +0200 Subject: [PATCH 2/2] No need for taskDyn here currently (yet) --- src/main/scala/com/typesafe/sbt/web/SbtWeb.scala | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/main/scala/com/typesafe/sbt/web/SbtWeb.scala b/src/main/scala/com/typesafe/sbt/web/SbtWeb.scala index 13986df..3b012e4 100644 --- a/src/main/scala/com/typesafe/sbt/web/SbtWeb.scala +++ b/src/main/scala/com/typesafe/sbt/web/SbtWeb.scala @@ -423,11 +423,11 @@ object SbtWeb extends AutoPlugin { } } - def exportProducts(exportTask: TaskKey[File]): Def.Initialize[Task[Classpath]] = Def.taskDyn { + def exportProducts(exportTask: TaskKey[File]): Def.Initialize[Task[Classpath]] = Def.task { if (state.value.get(disableExportedProducts).getOrElse(false)) { - Def.task[Classpath] { Seq.empty } + Seq.empty } else { - Def.task { Seq(Attributed.blank(exportTask.value).put(webModulesLib.key, moduleName.value)) } + Seq(Attributed.blank(exportTask.value).put(webModulesLib.key, moduleName.value)) } }