Make the TaskLinterDSL warn by default

I am generally of the opinion that a linter should not abort progress by
default. I do, however, think that it should be on by default, making
warn a happy compromise.
This commit is contained in:
Ethan Atkins 2018-12-11 18:16:10 -08:00
parent 32792f2b9d
commit d42b3ee2fd
2 changed files with 28 additions and 14 deletions

View File

@ -40,29 +40,29 @@ package sbt.dsl
* }
* }}}
* To make this work, the instances are all defined as implicit case objects. Moreover, the
* the [[LinterLevel.Abort]] setting is made default by placing [[LinterLevel.Warn]] and
* the [[LinterLevel.Warn]] setting is made default by placing [[LinterLevel.Abort]] and
* [[LinterLevel.Ignore]] in the [[LinterLevelLowPriority]] trait that the [[LinterLevel]]
* companion object extends.
*/
sealed trait LinterLevel
object LinterLevel extends LinterLevelLowPriority {
/**
* Abort the macro expansion if any linter check fails.
*/
implicit case object Abort extends LinterLevel
}
private[dsl] trait LinterLevelLowPriority {
/**
* Do not perform any linting.
*/
implicit case object Ignore extends LinterLevel
/**
* Apply the linter but print warnings instead of aborting macro expansion when linter violations
* are found.
*/
implicit case object Warn extends LinterLevel
}
private[dsl] trait LinterLevelLowPriority {
/**
* Abort the macro expansion if any linter check fails.
*/
implicit case object Abort extends LinterLevel
/**
* Do not perform any linting.
*/
implicit case object Ignore extends LinterLevel
}

View File

@ -39,6 +39,7 @@ class TaskNegSpec extends FunSuite {
"""
|import sbt._
|import sbt.Def._
|import sbt.dsl.LinterLevel.Abort
|
|val fooNeg = taskKey[String]("")
|val barNeg = taskKey[String]("")
@ -59,6 +60,7 @@ class TaskNegSpec extends FunSuite {
"""
|import sbt._
|import sbt.Def._
|import sbt.dsl.LinterLevel.Abort
|
|val fooNeg = taskKey[String]("")
|val barNeg = taskKey[String]("")
@ -78,6 +80,7 @@ class TaskNegSpec extends FunSuite {
"""
|import sbt._
|import sbt.Def._
|import sbt.dsl.LinterLevel.Abort
|
|val fooNeg = taskKey[String]("")
|val barNeg = taskKey[String]("")
@ -103,6 +106,7 @@ class TaskNegSpec extends FunSuite {
"""
|import sbt._
|import sbt.Def._
|import sbt.dsl.LinterLevel.Abort
|
|val fooNeg = taskKey[String]("")
|val barNeg = taskKey[String]("")
@ -132,6 +136,7 @@ class TaskNegSpec extends FunSuite {
"""
|import sbt._
|import sbt.Def._
|import sbt.dsl.LinterLevel.Abort
|
|val fooNeg = taskKey[String]("")
|val barNeg = taskKey[String]("")
@ -155,6 +160,7 @@ class TaskNegSpec extends FunSuite {
"""
|import sbt._
|import sbt.Def._
|import sbt.dsl.LinterLevel.Abort
|
|val fooNeg = taskKey[String]("")
|val barNeg = taskKey[String]("")
@ -176,6 +182,7 @@ class TaskNegSpec extends FunSuite {
"""
|import sbt._
|import sbt.Def._
|import sbt.dsl.LinterLevel.Abort
|
|val fooNeg = taskKey[String]("")
|val barNeg = taskKey[String]("")
@ -196,6 +203,7 @@ class TaskNegSpec extends FunSuite {
"""
|import sbt._
|import sbt.Def._
|import sbt.dsl.LinterLevel.Abort
|
|val fooNeg = taskKey[String]("")
|var condition = true
@ -215,6 +223,7 @@ class TaskNegSpec extends FunSuite {
"""
|import sbt._
|import sbt.Def._
|import sbt.dsl.LinterLevel.Abort
|
|val fooNeg = taskKey[String]("")
|val barNeg = taskKey[String]("")
@ -235,6 +244,7 @@ class TaskNegSpec extends FunSuite {
"""
|import sbt._
|import sbt.Def._
|import sbt.dsl.LinterLevel.Abort
|
|val fooNeg = taskKey[String]("")
|
@ -252,6 +262,7 @@ class TaskNegSpec extends FunSuite {
"""
|import sbt._
|import sbt.Def._
|import sbt.dsl.LinterLevel.Abort
|
|val fooNeg2 = taskKey[String]("")
|
@ -269,6 +280,7 @@ class TaskNegSpec extends FunSuite {
"""
|import sbt._
|import sbt.Def._
|import sbt.dsl.LinterLevel.Abort
|
|val fooNeg2 = taskKey[String]("")
|
@ -289,6 +301,7 @@ class TaskNegSpec extends FunSuite {
"""
|import sbt._
|import sbt.Def._
|import sbt.dsl.LinterLevel.Abort
|
|val fooNeg3 = taskKey[String]("")
|def avoidDCE = {println(""); ""}
@ -308,6 +321,7 @@ class TaskNegSpec extends FunSuite {
"""
|import sbt._
|import sbt.Def._
|import sbt.dsl.LinterLevel.Abort
|
|val fooNeg4 = taskKey[String]("")
|