mirror of https://github.com/sbt/sbt.git
We want to check the build sources before any command runs, not just tasks. To achieve this, I moved the logic for checking for build source changes to CommandProcess.processCommand. Also, @smarter had noticed that if a user modified a build file and then ran reload, a warning would be displayed about changed build sources even though they had just ran reload. This was because running reload didn't update the previous cache for checkBuildSources / fileInputStamps. I fixed that bug by running 'checkBuildSources / changedInputFiles' instead of 'checkBuildSources' when the user runs reload. I verified that after this change: - If I changed a build file and ran 'show version' a warning was printed before it displayed the version. If I also set global / onChangedBuildSource := ReloadOnSourceChanges, it automatically reloaded before displaying the version. - If I changed a build source and ran 'reload', followed by 'show version', no warnings were ever displayed. As an implementation detail, I had to add the Aggregation.suppressShow attribute key. We set this key to true before checking the build sources. Without this, log.success is called whenever we check the build sources which is both confusing and noisy. |
||
|---|---|---|
| .github | ||
| core-macros/src/main/scala/sbt/internal/util/appmacro | ||
| internal | ||
| launch | ||
| licenses | ||
| main | ||
| main-actions/src | ||
| main-command/src | ||
| main-settings/src | ||
| notes | ||
| project | ||
| protocol/src/main | ||
| run | ||
| sbt/src | ||
| scripted-plugin/src/main/scala/sbt | ||
| scripted-sbt-old/src/main/scala/sbt/test | ||
| scripted-sbt-redux | ||
| src/main/conscript | ||
| tasks | ||
| tasks-standard | ||
| testing | ||
| vscode-sbt-scala | ||
| zinc-lm-integration/src | ||
| .appveyor.yml | ||
| .gitattributes | ||
| .gitignore | ||
| .java-version | ||
| .sbtopts | ||
| .scalafmt.conf | ||
| .travis.yml | ||
| CONTRIBUTING.md | ||
| LICENSE | ||
| NOTICE | ||
| PROFILING.md | ||
| README.md | ||
| SUPPORT.md | ||
| build.sbt | ||
| reset.sh | ||
| sbt-allsources.sh | ||
| server.md | ||
README.md
sbt
sbt is a build tool for Scala, Java, and more.
For general documentation, see http://www.scala-sbt.org/.
sbt 1.x
This is the 1.x series of sbt. The source code of sbt is split across several Github repositories, including this one.
- sbt/io hosts
sbt.iomodule. - sbt/util hosts a collection of internally used modules.
- sbt/librarymanagement hosts
sbt.librarymanagementmodule that wraps Ivy. - sbt/zinc hosts Zinc, an incremental compiler for Scala.
- sbt/sbt, this repository hosts modules that implements the build tool.
Other links
- Setup: Describes getting started with the latest binary release.
- FAQ: Explains how to get help and more.
- sbt/sbt-zero-seven: hosts sbt 0.7.7 and earlier versions
Issues and Pull Requests
Please read CONTRIBUTING carefully before opening a GitHub Issue.
The short version: try searching or asking on StackOverflow.
license
See LICENSE.