From c86928f1dc736605a182e20528192eaed91bea62 Mon Sep 17 00:00:00 2001 From: Josh Suereth Date: Mon, 5 Dec 2011 14:55:16 -0500 Subject: *.properties files are now generated more often (on git SHA change *and* clean instead of just clean) --- project/Release.scala | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) (limited to 'project') diff --git a/project/Release.scala b/project/Release.scala index 38111c18a3..12461bee77 100644 --- a/project/Release.scala +++ b/project/Release.scala @@ -67,10 +67,18 @@ object Release { /** This generates a properties file, if it does not already exist, with the maximum lastmodified timestamp * of any source file. */ def generatePropertiesFile(name: String)(baseDirectory: File, version: String, dir: File, git: GitRunner): Seq[File] = { - val target = dir / name + // TODO - We can probably clean this up by moving caching bits elsewhere perhaps.... + val target = dir / name // TODO - Regenerate on triggers, like recompilation or something... - if (!target.exists) { - val fullVersion = makeFullVersionString(baseDirectory, version, git) + val fullVersion = makeFullVersionString(baseDirectory, version, git) + def hasSameVersion: Boolean = { + val props = new java.util.Properties + val in = new java.io.FileInputStream(target) + try props.load(in) finally in.close() + def withoutDate(s: String): String = s.reverse.dropWhile (_ != '.').reverse + withoutDate(fullVersion) == withoutDate(props getProperty "version.number") + } + if (!target.exists || !hasSameVersion) { makePropertiesFile(target, fullVersion) } target :: Nil -- cgit v1.2.3