Skip to content

Commit 5d90b1a

Browse files
committed
Upgrade MiMa, configure @experimental & curtail filters
1 parent d5ae77e commit 5d90b1a

File tree

3 files changed

+8
-16
lines changed

3 files changed

+8
-16
lines changed

project/Build.scala

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -439,6 +439,8 @@ object Build {
439439
case CompatMode.BinaryCompatible => "backward"
440440
case CompatMode.SourceAndBinaryCompatible => "both"
441441
}),
442+
443+
mimaExcludeAnnotations += "scala.annotation.experimental",
442444
)
443445

444446
/** Projects -------------------------------------------------------------- */

project/MiMaFilters.scala

Lines changed: 5 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -3,28 +3,18 @@ import com.typesafe.tools.mima.core._
33

44
object MiMaFilters {
55
val Library: Seq[ProblemFilter] = Seq(
6+
ProblemFilters.exclude[Problem]("scala.runtime.*"), // KEEP: scala.runtime isn't public API
7+
68
// APIs that must be added in 3.2.0
79
ProblemFilters.exclude[ReversedMissingMethodProblem]("scala.quoted.runtime.QuoteUnpickler.unpickleExprV2"),
810
ProblemFilters.exclude[DirectMissingMethodProblem]("scala.quoted.runtime.QuoteUnpickler.unpickleExprV2"),
911
ProblemFilters.exclude[ReversedMissingMethodProblem]("scala.quoted.runtime.QuoteUnpickler.unpickleTypeV2"),
1012
ProblemFilters.exclude[DirectMissingMethodProblem]("scala.quoted.runtime.QuoteUnpickler.unpickleTypeV2"),
1113

12-
// Experimental APIs that can be added in 3.2.0
13-
ProblemFilters.exclude[DirectMissingMethodProblem]("scala.runtime.Tuples.append"),
14-
ProblemFilters.exclude[ReversedMissingMethodProblem]("scala.quoted.Quotes#reflectModule#SymbolMethods.asQuotes"),
15-
ProblemFilters.exclude[ReversedMissingMethodProblem]("scala.quoted.Quotes#reflectModule#ClassDefModule.apply"),
16-
ProblemFilters.exclude[ReversedMissingMethodProblem]("scala.quoted.Quotes#reflectModule#SymbolModule.newClass"),
17-
ProblemFilters.exclude[ReversedMissingMethodProblem]("scala.quoted.Quotes#reflectModule#SymbolMethods.typeRef"),
18-
ProblemFilters.exclude[ReversedMissingMethodProblem]("scala.quoted.Quotes#reflectModule#SymbolMethods.termRef"),
19-
ProblemFilters.exclude[ReversedMissingMethodProblem]("scala.quoted.Quotes#reflectModule#TypeTreeModule.ref"),
20-
ProblemFilters.exclude[ReversedMissingMethodProblem]("scala.quoted.Quotes#reflectModule#AppliedTypeModule.apply"),
21-
2214
// Experimental `MainAnnotation` APIs. Can be added in 3.3.0 or later.
23-
ProblemFilters.exclude[MissingClassProblem]("scala.annotation.MainAnnotation"),
24-
ProblemFilters.exclude[MissingClassProblem]("scala.annotation.MainAnnotation$"),
25-
ProblemFilters.exclude[MissingClassProblem]("scala.annotation.MainAnnotation$Command"),
26-
ProblemFilters.exclude[MissingClassProblem]("scala.annotation.MainAnnotation$CommandInfo"),
27-
ProblemFilters.exclude[MissingClassProblem]("scala.annotation.MainAnnotation$ParameterInfo"),
15+
// MiMa bug: classes nested in an experimental object should be ignored
16+
ProblemFilters.exclude[MissingClassProblem]("scala.annotation.MainAnnotation$Info"),
17+
ProblemFilters.exclude[MissingClassProblem]("scala.annotation.MainAnnotation$Parameter"),
2818
ProblemFilters.exclude[MissingClassProblem]("scala.annotation.MainAnnotation$ParameterAnnotation"),
2919
)
3020
}

project/plugins.sbt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,4 +14,4 @@ addSbtPlugin("pl.project13.scala" % "sbt-jmh" % "0.3.2")
1414

1515
addSbtPlugin("com.eed3si9n" % "sbt-buildinfo" % "0.9.0")
1616

17-
addSbtPlugin("com.typesafe" % "sbt-mima-plugin" % "0.9.0")
17+
addSbtPlugin("com.typesafe" % "sbt-mima-plugin" % "1.1.0")

0 commit comments

Comments
 (0)