Commit Graph

11969 Commits

Author SHA1 Message Date
Ethan Atkins e536c4ac39 Remove unused local variable 2019-03-20 11:22:21 -07:00
eugene yokota e8a011bf5f
Merge pull request #4561 from eed3si9n/wip/progress
open up ExecuteProgress, and adds a few keys
2019-03-20 11:06:03 -04:00
Eugene Yokota 86abe3ed60 open up ExecuteProgress, and adds a few keys
Fixes #4461

This opens up ExecuteProgress API that's been around under private[sbt].
Since the state passing mechanism hasn't been used, I got rid of it.

The build user can configure the build using two keys Boolean `taskProgress` and `State => Seq[TaskProgress]` `progressReports`. `useSuperShell` is lightweight key on/off switch for the super shell that can be used as follows:

```scala
Global / SettingKey[Boolean]("useSuperShell") := false
```
2019-03-19 00:42:46 -04:00
eugene yokota 7e3327bff5
Merge pull request #4560 from eatkins/unseal-parser
Unseal Parser
2019-03-17 21:19:13 -04:00
Eugene Yokota c61773af03 Skip Scala 2.10 and Scala 2.11 components for JDK 11
Scala 2.10 and Scala 2.11 do not support JDK 11.
2019-03-15 15:59:32 -04:00
Ethan Atkins 9040e57932 Unseal Parser
Although this is technically in the internal package, it is exposed to
users when they write a custom input task. I do not think that we should
prevent users/plugin authors from writing their own parser
implementations if there is a different library they prefer. By my
count, there are 21 implementations of this interface in sbt, so it's
unlikely that there is much benefit from a pattern matching perspective.
2019-03-15 11:11:25 -07:00
eugene yokota 354f85cecb
Merge pull request #4556 from eed3si9n/wip/progress
Make sure progress thread gets shutdown
2019-03-08 20:41:41 -05:00
Eugene Yokota cd1d2e0994 Util 1.3.0-M5 2019-03-08 19:18:53 -05:00
eugene yokota 48574c2041
Merge pull request #194 from eed3si9n/wip/plugins
switch to official sbt-scalafmt
2019-03-07 19:19:11 -05:00
Eugene Yokota e4612c858c switch to official sbt-scalafmt 2019-03-07 18:19:12 -05:00
eugene yokota 3572868cac
Merge pull request #193 from eed3si9n/wip/terminal
Account for log line longer than the terminal width
2019-03-07 17:35:53 -05:00
Eugene Yokota d496a5dff5 Make showProgress configurable 2019-03-07 16:49:54 -05:00
Eugene Yokota 8215026bc3 Account for log line longer than the terminal width
widthHolder will hold on to the terminal width if supplied by sbt.
This avoids adding dependencies to JLine.
2019-03-07 16:42:10 -05:00
Eugene Yokota 8c85744d67 Use IO.Newline for stack trace 2019-03-07 16:39:47 -05:00
Eugene Yokota 3cd8cc4e86 Make sure progress thread gets shutdown 2019-02-26 05:10:18 -05:00
eugene yokota 15ea0109b8
Merge pull request #192 from eed3si9n/wip/bump
log4j 2.11.2
2019-02-23 14:36:46 -05:00
Eugene Yokota 3a6aa57747 log4j 2.11.2 2019-02-23 14:21:07 -05:00
eugene yokota 8a641690f3
Merge pull request #4551 from eed3si9n/wip/bumpsbt
sbt 1.2.8
2019-02-23 06:27:20 -05:00
Eugene Yokota 1d09a15cb3 sbt 1.2.8 2019-02-23 04:36:06 -05:00
eugene yokota 57ab435306
Merge pull request #257 from eed3si9n/wip/commandline
Default to -Dfile.encoding=UTF-8, and also fix -mem problem
2019-02-23 01:50:00 -05:00
Eugene Yokota 6088e1980a Staging is required before the test 2019-02-23 00:02:48 -05:00
Eugene Yokota b5cb8b4657 Let -mem take higher precedence
Fixes #256

JAVA_OPTS and SBT_OPTS are now read into an array first.
If `-mem` is passed, it will evict all memory related options,
and use the calculated memory options instead.
2019-02-22 22:39:18 -05:00
Eugene Yokota 88b8386d15 Update integration test 2019-02-22 22:39:18 -05:00
Eugene Yokota 3f9e91aa4f Default to -Dfile.encoding=UTF-8
Fixes #236
2019-02-22 22:39:18 -05:00
Eugene Yokota 4d772b4745 Concatenate bin/sbt-launch-lib.bash and bin/sbt 2019-02-22 22:39:18 -05:00
eugene yokota 9f37eb8b30
Merge pull request #251 from sbt/wip/gzip
gzip deb so we can publish to Bintray
2019-02-22 22:25:18 -05:00
eugene yokota cb564a077d
Merge pull request #255 from swachter/disable-on-error-exit
unset immediatly exit flag (set +e) in launch script
2019-02-22 22:24:24 -05:00
eugene yokota f99289a797
Merge pull request #4550 from eed3si9n/wip/jsbump
Bump node modules for security fixes
2019-02-22 10:55:05 -05:00
Eugene Yokota ddd5abc37b Bump node modules for security fixes 2019-02-22 10:51:54 -05:00
eugene yokota b747309fb5
Merge pull request #4549 from retronym/topic/currun
Avoid NPE on Run.<init>
2019-02-21 21:11:50 -05:00
Jason Zaugg 3cbbe93c6e Avoid NPE on Run.<init> 2019-02-22 10:26:10 +10:00
Ethan Atkins 45f5019ee0
Merge pull request #4544 from eatkins/gc-on-idle
Run gc when idle
2019-02-15 10:58:41 -08:00
Ethan Atkins fcd24ba7cd Reduce command polling period
The only thing this function does is poll a queue and check a deadline.
There is no need to put such a large sleep duration in.
2019-02-14 21:13:07 -08:00
Ethan Atkins c37f2607f1 Lint CommandExchange.scala
Clears out intellij warnings.
2019-02-14 21:09:44 -08:00
Ethan Atkins faf6348a16 Run gc when idle
I often find that when I run a command it takes a long time to start up
because sbt triggers a full gc. To improve the ux, I update the command
exchange to run full gc only once while it's waiting for a command to
run and only after the user has been idle for at least one minute.

Bonus: optimize imports
2019-02-14 21:09:17 -08:00
eugene yokota 55c46c6ba8
Merge pull request #4542 from smarter/less-dotty
Remove Dotty handling in scalaInstance
2019-02-13 19:12:08 -05:00
Guillaume Martres 85f91e76ca Remove Dotty handling in scalaInstance
sbt-dotty 0.3.0 (https://github.com/lampepfl/dotty/pull/5835) sets
`managedScalaInstance := false` and does everything by itself, so this
isn't needed anymore.
2019-02-12 23:30:45 +01:00
Dale Wijnand 8df2807cd1
Merge pull request #4533 from eatkins/kind-projector
Add meaningful toString to values in TypeFunctions
2019-02-06 21:44:36 +01:00
eugene yokota 62471c6215
Merge pull request #191 from eatkins/avoid-io
Add file FileInfo factory applys without io
2019-02-06 14:52:39 -05:00
Stefan Wachter 9780c6218f unset immediatly exit flag (set +e) in launch script 2019-02-06 17:48:39 +01:00
Ethan Atkins 5b198b20be Add file FileInfo factory applys without io
It may be the case that the file property is already known and we can
avoid performing additional io by just passing in the value directly.
2019-02-05 10:00:27 -08:00
eugene yokota b28d203910
Merge pull request #254 from er1c/fix-253
Simplify the debug in execRunner and fix the $java_args[@] expansion fixes #253
2019-02-05 00:02:00 -05:00
Eric Peters 2d21c0fd2a Simplify the debug in execRunner and fix the $java_args[@] expansion, fixes #253 2019-02-04 20:38:10 -08:00
eugene yokota fbadfabfe2
Merge pull request #4538 from eatkins/compiler-cache
Clear compiler cache in clearCaches
2019-02-04 10:27:14 -05:00
eugene yokota e73d1fb7c6
Merge pull request #4537 from eatkins/allow-watch-loops
Allow watch loops
2019-02-04 10:25:11 -05:00
eugene yokota 7b61fcb44f
Merge pull request #4535 from eatkins/stamped-file
Stamped file
2019-02-04 10:18:11 -05:00
Ethan Atkins e8af828c73 Add FileCacheEntry
Previously, we were leaking the internal details of incremental
compilation to users by defining FileTree(DataView|Repository)[Stamp].
To avoid this, I introduce the new class FileCacheEntry that is quite
similar to Stamp except defined using scala Options rather than java
Optionals. The implementation class just delegates to an actual Stamp
and I provided a private[sbt] ops class that adds a
method `stamp` to FileCacheEntry. This will usually just extract the
stamp from the implementation class. This allows us to use
FileCacheEntry almost interchangeably with Stamp while still avoiding
exposing users to Stamp.
2019-02-02 16:03:59 -08:00
Ethan Atkins ba0494df14 Stop Stamped from inheriting File and TypedPath
In the FileTreeDataView use case, we were previously working with
FileTreeDataView[Stamped], which actually contained a lot of redundant
information because FileTreeDataView.Entry[_] has a toTypedPath method
that could be used to read the path related fields in Stamped. Instead,
we can just return the Stamp itself in FileTreeDataView.list* methods
and convert to Stamped.File where needed (i.e. in ExternalHooks).

Also move BasicKeys.globalFileTreeView to Keys since it isn't actually
used in the main-command project.
2019-02-02 12:22:57 -08:00
Ethan Atkins 0bdc30b60b Rename StampedFile to Stamped 2019-02-02 12:22:57 -08:00
Ethan Atkins d39bb96c41 Move StampedFile into its own file 2019-02-02 12:22:57 -08:00