2020-04-27 20:32:18 +08:00
|
|
|
/*
|
|
|
|
|
* Copyright (C) 2020 Lightbend Inc. <https://www.lightbend.com>
|
|
|
|
|
*/
|
|
|
|
|
|
|
|
|
|
package akka
|
|
|
|
|
|
|
|
|
|
import sbt.{AutoPlugin, PluginTrigger, Plugins, ScalafixSupport}
|
|
|
|
|
import scalafix.sbt.ScalafixPlugin
|
2020-05-11 17:47:33 +08:00
|
|
|
object ScalaFixForJdk9Plugin extends AutoPlugin with ScalafixSupport {
|
2020-04-27 20:32:18 +08:00
|
|
|
override def trigger: PluginTrigger = allRequirements
|
|
|
|
|
import Jdk9._
|
2020-05-11 17:47:33 +08:00
|
|
|
override def requires: Plugins = Jdk9
|
2020-04-27 20:32:18 +08:00
|
|
|
|
|
|
|
|
import ScalafixPlugin.autoImport.scalafixConfigSettings
|
|
|
|
|
import sbt._
|
2020-05-11 17:47:33 +08:00
|
|
|
|
|
|
|
|
lazy val scalafixIgnoredSetting: Seq[Setting[_]] = Seq(
|
|
|
|
|
ignore(TestJdk9)
|
|
|
|
|
)
|
|
|
|
|
|
|
|
|
|
override def projectSettings: Seq[Def.Setting[_]] =
|
|
|
|
|
Seq(CompileJdk9, TestJdk9).flatMap(c => inConfig(c)(scalafixConfigSettings(c))) ++
|
|
|
|
|
scalafixIgnoredSetting ++ Seq(
|
|
|
|
|
updateProjectCommands(
|
|
|
|
|
alias = "fixall",
|
|
|
|
|
value = ";scalafixEnable;compile:scalafix;test:scalafix;multi-jvm:scalafix;scalafmtAll;test:compile;multi-jvm:compile;reload"),
|
|
|
|
|
updateProjectCommands(
|
|
|
|
|
alias = "sortImports",
|
|
|
|
|
value = ";scalafixEnable;compile:scalafix SortImports;test:scalafix SortImports;CompileJdk9:scalafix SortImports;TestJdk9:scalafix SortImports;scalafmtAll")
|
|
|
|
|
)
|
2020-04-27 20:32:18 +08:00
|
|
|
}
|