Commit Graph

13 Commits

Author SHA1 Message Date
Ethan Atkins 6565618a15 Cache compiled map during build load
The continuous command recompiles the setting graph into a CompiledMap
data structure so that it can determine which files it needs to
transitively monitor during watch. Generating the CompiledMap can be
very slow for large projects (5 seconds or so on my computer in the sbt
project) and this startup cost is paid every time the user enters a
watch with `~`. To avoid this, we can cache the compile map that is
generated during the initial settings evaluation.

The only real drawback I can see is that the compiled map is guaranteed
to remain in memory so long as the BuildStructure instance that holds it
is alive. Given the performance benefit, this seems like a worthwhile
tradeoff.
2020-07-03 14:08:26 -07:00
Eugene Yokota 1e157b991a apply formatting 2019-04-20 03:23:54 -04:00
Eugene Yokota 4ff4f6e45e Update header 2018-09-14 04:53:36 -04:00
Dale Wijnand a41727fb17
Add, configure & enforce file headers 2017-10-05 09:03:40 +01:00
Dale Wijnand dc2d4d613f
Format in-sourced util modules 2017-07-07 12:12:59 +01:00
Eugene Yokota 73b24681c5
Implements registerStringCodec
Uses TypeTag to recover the full name of type parameter, which is calculated by StringTypeTag. This is sent along in ObjectEvent.
On the other end, we can lookup typeclass instances using the tag key.
2017-07-07 09:50:32 +01:00
Eugene Yokota cfc5efe798
Work around Scala 2.12 init deadlock (SI-9824) 2017-07-07 09:50:30 +01:00
Dale Wijnand 8cc4a54c40
Add -Ywarn-unused & -Ywarn-unused-import, & fix warnings 2017-07-07 09:50:21 +01:00
Eugene Yokota 2cefe315f2
New house rules 2017-07-07 09:50:08 +01:00
Eugene Yokota 3bb53ae4fc
sbt.util.internal -> sbt.internal.util package 2017-07-07 09:50:05 +01:00
Eugene Yokota 53e719656f
Move util into sbt.util.internal package 2017-07-07 09:50:03 +01:00
Martin Duhem c0f55127db
Add sbt-houserules, formatting. 2017-07-07 09:49:59 +01:00
Eugene Yokota 7f57853f23
move modules around. 2017-07-07 09:49:58 +01:00