sbt/project/Mima.scala

61 lines
1.8 KiB
Scala
Raw Normal View History

2017-04-02 21:51:11 +02:00
import sbt._
import sbt.Keys._
import com.typesafe.tools.mima.plugin.MimaKeys._
import org.scalajs.sbtplugin.ScalaJSPlugin.autoImport._
2017-04-02 21:51:11 +02:00
object Mima {
// Important: the line with the "binary compatibility versions" comment below is matched during releases
def binaryCompatibilityVersions = Set(
"1.0.0-RC1",
"1.0.0-RC2",
"1.0.0-RC3",
2017-06-18 19:53:58 +02:00
"1.0.0-RC4",
"" // binary compatibility versions
)
2017-04-02 21:51:11 +02:00
lazy val previousArtifacts = Seq(
mimaPreviousArtifacts := {
binaryCompatibilityVersions.collect {
case ver if ver.nonEmpty =>
organization.value %%% moduleName.value % ver
}
2017-04-02 21:51:11 +02:00
}
)
lazy val coreFilters = {
mimaBinaryIssueFilters ++= {
import com.typesafe.tools.mima.core._
2017-04-02 21:51:11 +02:00
Seq(
// ignore shaded-stuff related errors
(pb: Problem) => pb.matchName.forall(!_.startsWith("coursier.shaded.")),
// was private, now removed
ProblemFilters.exclude[MissingClassProblem]("coursier.ivy.PropertiesPattern$Parser$"),
// made private so that the shaded fastparse stuff doesn't leak
ProblemFilters.exclude[DirectMissingMethodProblem]("coursier.ivy.PropertiesPattern.parser")
2017-04-02 21:51:11 +02:00
)
}
}
lazy val cacheFilters = {
mimaBinaryIssueFilters ++= {
import com.typesafe.tools.mima.core._
Seq(
// these are private, don't know why they end-up appearing here
// (probably related to https://github.com/typesafehub/migration-manager/issues/34)
(pb: Problem) => pb.matchName.forall(!_.startsWith("coursier.TermDisplay#DownloadInfo")),
(pb: Problem) => pb.matchName.forall(!_.startsWith("coursier.TermDisplay$DownloadInfo")),
(pb: Problem) => pb.matchName.forall(!_.startsWith("coursier.TermDisplay#CheckUpdateInfo")),
(pb: Problem) => pb.matchName.forall(!_.startsWith("coursier.TermDisplay#Info"))
)
2017-04-02 21:51:11 +02:00
}
}
}