diff --git a/project/Build.scala b/project/Build.scala index 249c37efd98d..bc8a6157803d 100644 --- a/project/Build.scala +++ b/project/Build.scala @@ -439,6 +439,8 @@ object Build { case CompatMode.BinaryCompatible => "backward" case CompatMode.SourceAndBinaryCompatible => "both" }), + + mimaExcludeAnnotations += "scala.annotation.experimental", ) /** Projects -------------------------------------------------------------- */ diff --git a/project/MiMaFilters.scala b/project/MiMaFilters.scala index 6c68ce216685..ef450919d806 100644 --- a/project/MiMaFilters.scala +++ b/project/MiMaFilters.scala @@ -9,22 +9,10 @@ object MiMaFilters { ProblemFilters.exclude[ReversedMissingMethodProblem]("scala.quoted.runtime.QuoteUnpickler.unpickleTypeV2"), ProblemFilters.exclude[DirectMissingMethodProblem]("scala.quoted.runtime.QuoteUnpickler.unpickleTypeV2"), - // Experimental APIs that can be added in 3.2.0 - ProblemFilters.exclude[DirectMissingMethodProblem]("scala.runtime.Tuples.append"), - ProblemFilters.exclude[ReversedMissingMethodProblem]("scala.quoted.Quotes#reflectModule#SymbolMethods.asQuotes"), - ProblemFilters.exclude[ReversedMissingMethodProblem]("scala.quoted.Quotes#reflectModule#ClassDefModule.apply"), - ProblemFilters.exclude[ReversedMissingMethodProblem]("scala.quoted.Quotes#reflectModule#SymbolModule.newClass"), - ProblemFilters.exclude[ReversedMissingMethodProblem]("scala.quoted.Quotes#reflectModule#SymbolMethods.typeRef"), - ProblemFilters.exclude[ReversedMissingMethodProblem]("scala.quoted.Quotes#reflectModule#SymbolMethods.termRef"), - ProblemFilters.exclude[ReversedMissingMethodProblem]("scala.quoted.Quotes#reflectModule#TypeTreeModule.ref"), - ProblemFilters.exclude[ReversedMissingMethodProblem]("scala.quoted.Quotes#reflectModule#AppliedTypeModule.apply"), - // Experimental `MainAnnotation` APIs. Can be added in 3.3.0 or later. - ProblemFilters.exclude[MissingClassProblem]("scala.annotation.MainAnnotation"), - ProblemFilters.exclude[MissingClassProblem]("scala.annotation.MainAnnotation$"), - ProblemFilters.exclude[MissingClassProblem]("scala.annotation.MainAnnotation$Command"), - ProblemFilters.exclude[MissingClassProblem]("scala.annotation.MainAnnotation$CommandInfo"), - ProblemFilters.exclude[MissingClassProblem]("scala.annotation.MainAnnotation$ParameterInfo"), + // MiMa bug: classes nested in an experimental object should be ignored + ProblemFilters.exclude[MissingClassProblem]("scala.annotation.MainAnnotation$Info"), + ProblemFilters.exclude[MissingClassProblem]("scala.annotation.MainAnnotation$Parameter"), ProblemFilters.exclude[MissingClassProblem]("scala.annotation.MainAnnotation$ParameterAnnotation"), ) } diff --git a/project/plugins.sbt b/project/plugins.sbt index 9d743cec8252..f0b13c6cb7c4 100644 --- a/project/plugins.sbt +++ b/project/plugins.sbt @@ -14,4 +14,4 @@ addSbtPlugin("pl.project13.scala" % "sbt-jmh" % "0.3.2") addSbtPlugin("com.eed3si9n" % "sbt-buildinfo" % "0.9.0") -addSbtPlugin("com.typesafe" % "sbt-mima-plugin" % "0.9.0") +addSbtPlugin("com.typesafe" % "sbt-mima-plugin" % "1.1.0")