From 9382fc99b7d9b710e97d181c8056b2cf74e62425 Mon Sep 17 00:00:00 2001 From: Adrien Piquerez Date: Sat, 2 Nov 2024 12:46:23 +0100 Subject: [PATCH] Use caching in Project.transform --- main-settings/src/main/scala/sbt/Project.scala | 11 +++-------- sbt-app/src/main/scala/package.scala | 1 - 2 files changed, 3 insertions(+), 9 deletions(-) diff --git a/main-settings/src/main/scala/sbt/Project.scala b/main-settings/src/main/scala/sbt/Project.scala index 2e5b14a7d..3a6a60815 100644 --- a/main-settings/src/main/scala/sbt/Project.scala +++ b/main-settings/src/main/scala/sbt/Project.scala @@ -16,6 +16,7 @@ import sbt.internal.util.complete.Parser import sbt.internal.util.complete.DefaultParsers import Scope.ThisScope import sbt.Scope.ThisBuildScope +import sbt.internal.util.Util sealed trait ProjectDefinition[PR <: ProjectReference] { @@ -336,14 +337,8 @@ object Project: [a] => (k: ScopedKey[a]) => ScopedKey(f(k.scope), k.key) def transform(g: Scope => Scope, ss: Seq[Def.Setting[?]]): Seq[Def.Setting[?]] = - val f = mapScope(g) - ss.map { setting => - setting.mapKey(f).mapReferenced(f) - } - - def transformRef(g: Scope => Scope, ss: Seq[Def.Setting[?]]): Seq[Def.Setting[?]] = - val f = mapScope(g) - ss.map(_.mapReferenced(f)) + val f = mapScope(Util.withCaching(g)) + ss.map(_.mapKey(f).mapReferenced(f)) def inThisBuild(ss: Seq[Setting[?]]): Seq[Setting[?]] = inScope(ThisBuildScope)(ss) diff --git a/sbt-app/src/main/scala/package.scala b/sbt-app/src/main/scala/package.scala index 2408e465b..1d26d38b8 100644 --- a/sbt-app/src/main/scala/package.scala +++ b/sbt-app/src/main/scala/package.scala @@ -33,7 +33,6 @@ package object sbt fillTaskAxis, mapScope, transform, - transformRef, inThisBuild, inScope, normalizeModuleID