mirror of https://github.com/sbt/sbt.git
The use of the persistent file stamp cache between watch runs didn't seem to cause any issues, but there was some chance for inconsistency between the file stamp cache and the file system so it makes sense to put it behind the turbo flag. After changing the default, the watch/on-change scripted test started failing. It turns out that the reason is that the file stamp cache managed by the watch process was not pre-filled by task evaluation. For this reason, the first time a source file was modified, it was treated as a creation regardless of whether or not it actually was. To fix this, I add logic to pre-fill the watch file stamp cache if we are _not_ persisting the file stamps between runs. I ran a before and after with the scala build performance benchmark tool and setting the watchPersistFileStamps key to true reduced the median run time by about 200ms in the non-turbo case. |
||
|---|---|---|
| .. | ||
| src | ||
| NOTICE | ||