From 9c5f59d2a0728080949c19c8fc5bdd7909a3b1d4 Mon Sep 17 00:00:00 2001 From: Allan Renucci Date: Fri, 3 Aug 2018 09:25:09 +0200 Subject: [PATCH] Fix scripted/source-dependencies/restore-classes TastyFileManager should delete TASTY files and not class files --- .../source-dependencies/restore-classes/{pending => test} | 0 sbt-dotty/src/dotty/tools/sbtplugin/TastyFileManager.scala | 5 +++-- 2 files changed, 3 insertions(+), 2 deletions(-) rename sbt-dotty/sbt-test/source-dependencies/restore-classes/{pending => test} (100%) diff --git a/sbt-dotty/sbt-test/source-dependencies/restore-classes/pending b/sbt-dotty/sbt-test/source-dependencies/restore-classes/test similarity index 100% rename from sbt-dotty/sbt-test/source-dependencies/restore-classes/pending rename to sbt-dotty/sbt-test/source-dependencies/restore-classes/test diff --git a/sbt-dotty/src/dotty/tools/sbtplugin/TastyFileManager.scala b/sbt-dotty/src/dotty/tools/sbtplugin/TastyFileManager.scala index e6688e95cd05..b51465480fc3 100644 --- a/sbt-dotty/src/dotty/tools/sbtplugin/TastyFileManager.scala +++ b/sbt-dotty/src/dotty/tools/sbtplugin/TastyFileManager.scala @@ -26,11 +26,12 @@ final class TastyFileManager extends ClassFileManager { private[this] val movedTastyFiles = new mutable.HashMap[File, File] override def delete(classes: Array[File]): Unit = { - val toBeBackedUp = tastyFiles(classes) + val tasties = tastyFiles(classes) + val toBeBackedUp = tasties .filter(t => t.exists && !movedTastyFiles.contains(t) && !generatedTastyFiles(t)) for (c <- toBeBackedUp) movedTastyFiles.put(c, move(c)) - IO.deleteFilesEmptyDirs(classes) + IO.deleteFilesEmptyDirs(tasties) } override def generated(classes: Array[File]): Unit =