SBT plugin to share common settings for Scala projects at Faculty.
Currently, this plugin automatically applies these settings:
- git versioning setup (links sbt artifact versions to
- integration tests (enables integration tests under
- sets options for
scalaccompiler (to e.g. print specific warnings)
scalafmtrules and enables
sbttasks for autoformatting
- configures and enables
- sets configuration for unit tests
This plugin requires sbt 1.0.0+
Add this to
addSbtPlugin("ai.faculty" % "sbt-houserules" % "<plugin version>")
Scalafmt sbt tasks
To check that all main, test, integration test and SBT sources are correctly formatted, run:
sbt -batch scalafmtSbtCheck scalafmtCheckAll test
scalafmtCheckAll checks formatting of all
.scala sources (including
.sbt files is done separately by
sbt scripted for sbt scripted tests.
Do the rules apply to this project (itself)?
No. While it would be possible and nice to apply the same rules (e.g. formatting) to this project, I believe it might lead to confusion and make it more difficult to debug.