blob: b7fc5857ad5077e3faec5a4547faa8b99a3e12b4 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
|
package xyz.driver.sbt
import sbt.{Def, _}
import sbt.Keys._
import xsbti.compile.CompileAnalysis
import scala.collection.JavaConverters._
object FatalWarnings extends AutoPlugin {
override def requires = plugins.JvmPlugin
override def trigger = allRequirements
override def projectSettings: Seq[Def.Setting[_]] = Seq(
compile in Compile := {
val compiled: CompileAnalysis = (compile in Compile).value
val problems = compiled.readSourceInfos().getAllSourceInfos.asScala.flatMap {
case (_, info) =>
info.getReportedProblems
}
val deprecationsOnly = problems.forall { problem =>
problem.message().contains("is deprecated")
}
if (!deprecationsOnly) sys.error("Fatal warnings: some warnings other than deprecations were found.")
compiled
}
)
}
|