From 1891b524720287b08d04bbcbd8b6e5bc24b0334b Mon Sep 17 00:00:00 2001 From: Eugene Yokota Date: Tue, 10 Mar 2015 05:12:17 -0400 Subject: [PATCH] Roll back the use of sbt/serialization for update caching --- cache/tracking/src/main/scala/sbt/Tracked.scala | 3 ++- main/src/main/scala/sbt/Defaults.scala | 4 ++-- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/cache/tracking/src/main/scala/sbt/Tracked.scala b/cache/tracking/src/main/scala/sbt/Tracked.scala index 5965fc135..0de466686 100644 --- a/cache/tracking/src/main/scala/sbt/Tracked.scala +++ b/cache/tracking/src/main/scala/sbt/Tracked.scala @@ -38,7 +38,8 @@ object Tracked { toFile(next)(cacheFile) next } - private[sbt] def lastOuputWithJson[I, O: Pickler: Unpickler](cacheFile: File)(f: (I, Option[O]) => O): I => O = in => + // Todo: This function needs more testing. + private[sbt] def lastOutputWithJson[I, O: Pickler: Unpickler](cacheFile: File)(f: (I, Option[O]) => O): I => O = in => { val previous: Option[O] = try { fromJsonFile[O](cacheFile).toOption diff --git a/main/src/main/scala/sbt/Defaults.scala b/main/src/main/scala/sbt/Defaults.scala index bb12ba97b..44b4062c5 100755 --- a/main/src/main/scala/sbt/Defaults.scala +++ b/main/src/main/scala/sbt/Defaults.scala @@ -1388,13 +1388,13 @@ object Classpaths { val outCacheFile = cacheFile / "output" def skipWork: In => UpdateReport = - Tracked.lastOuputWithJson[In, UpdateReport](outCacheFile) { + Tracked.lastOutput[In, UpdateReport](outCacheFile) { case (_, Some(out)) => out case _ => sys.error("Skipping update requested, but update has not previously run successfully.") } def doWork: In => UpdateReport = Tracked.inputChanged(cacheFile / "inputs") { (inChanged: Boolean, in: In) => - val outCache = Tracked.lastOuputWithJson[In, UpdateReport](outCacheFile) { + val outCache = Tracked.lastOutput[In, UpdateReport](outCacheFile) { case (_, Some(out)) if uptodate(inChanged, out) => out case _ => work(in) }