sbt/project/Mima.scala

43 lines
1.1 KiB
Scala

import com.typesafe.tools.mima.plugin.MimaPlugin
import com.typesafe.tools.mima.plugin.MimaKeys.*
import sbt.*
import sbt.Keys.*
import sys.process.*
object Mima {
private def stable(ver: String): Boolean =
ver.exists(c => c != '0' && c != '.') &&
ver
.replace("-RC", "-")
.forall(c => c == '.' || c == '-' || c.isDigit)
def binaryCompatibilityVersions: Set[String] =
Seq("git", "tag", "--merged", "HEAD^", "--contains", "v2.0.0-RC3-6").!!.linesIterator
.map(_.trim)
.filter(_.startsWith("v"))
.map(_.stripPrefix("v"))
.filter(stable)
.toSet
def settings: Seq[Setting[?]] = Seq(
MimaPlugin.autoImport.mimaPreviousArtifacts := Set.empty,
// MimaPlugin.autoImport.mimaPreviousArtifacts := {
// binaryCompatibilityVersions.map { ver =>
// (organization.value % moduleName.value % ver).cross(crossVersion.value)
// }
// }
)
lazy val lmCoursierFilters = {
mimaBinaryIssueFilters ++= Seq(
)
}
lazy val lmCoursierShadedFilters = {
mimaBinaryIssueFilters ++= Seq(
)
}
}