diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 55bd48aa..994e983c 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -23,8 +23,6 @@ jobs: { version: '2.12.19' }, { version: '2.12.18' }, { version: '2.13.16' }, - { version: '2.13.15' }, - { version: '2.13.14' } ] steps: - name: checkout the repo diff --git a/build.sbt b/build.sbt index 114d51a0..37d36e9b 100644 --- a/build.sbt +++ b/build.sbt @@ -1,11 +1,11 @@ import sbtcrossproject.CrossProject import sbtcrossproject.CrossType -lazy val munitVersion = "1.1.1" +lazy val latestMunitVersion = "1.2.1" lazy val scalametaVersion = "4.9.9" lazy val defaultScala212 = "2.12.20" lazy val defaultScala213 = "2.13.16" -lazy val defaultScala3 = "3.3.0" +lazy val defaultScala3 = "3.3.6" lazy val bin212 = Seq( defaultScala212, @@ -16,12 +16,7 @@ lazy val bin212 = ) lazy val bin213 = Seq( - defaultScala213, - "2.13.15", - "2.13.14", - "2.13.13", - "2.13.12", - "2.13.11" + defaultScala213 ) inThisBuild( @@ -78,7 +73,13 @@ lazy val sharedSettings = List( scalacOptions.value } }, - libraryDependencies += "org.scalameta" %%% "munit" % munitVersion % Test + libraryDependencies += { + val munitVersion = scalaVersion.value match { + case "2.13.16" => "1.2.0" + case _ => latestMunitVersion + } + "org.scalameta" %%% "munit" % munitVersion % Test + } ) lazy val root = Project("scalac-scoverage", file(".")) @@ -107,9 +108,12 @@ lazy val runtime = CrossProject( .withoutSuffixFor(JVMPlatform) .settings( name := "scalac-scoverage-runtime", - crossScalaVersions := Seq(defaultScala212, defaultScala213), + crossScalaVersions := bin212 ++ bin213, crossTarget := target.value / s"scala-${scalaVersion.value}", - sharedSettings + sharedSettings, + publish / skip := !List(defaultScala212, defaultScala213) + .contains(scalaVersion.value), + publishLocal / skip := (publish / skip).value ) .jvmSettings( Test / fork := true @@ -139,7 +143,9 @@ lazy val plugin = crossScalaVersions := bin212 ++ bin213, crossVersion := CrossVersion.full, libraryDependencies += "org.scala-lang" % "scala-compiler" % scalaVersion.value % Provided, - sharedSettings + sharedSettings, + buildInfoPackage := "scoverage", + buildInfoKeys := Seq[BuildInfoKey](scalaVersion) ) .settings( Test / unmanagedSourceDirectories += (Test / sourceDirectory).value / "scala-2.12+", diff --git a/plugin/src/test/scala/scoverage/ScoverageCompiler.scala b/plugin/src/test/scala/scoverage/ScoverageCompiler.scala index 09b41e85..0f766474 100644 --- a/plugin/src/test/scala/scoverage/ScoverageCompiler.scala +++ b/plugin/src/test/scala/scoverage/ScoverageCompiler.scala @@ -16,7 +16,7 @@ import scoverage.reporter.IOUtils private[scoverage] object ScoverageCompiler { - val ScalaVersion: String = scala.util.Properties.versionNumberString + val ScalaVersion: String = BuildInfo.scalaVersion val ShortScalaVersion: String = (ScalaVersion split "[.]").toList match { case init :+ last if last forall (_.isDigit) => init mkString "." case _ => ScalaVersion diff --git a/project/build.properties b/project/build.properties index c8fcab54..5e6884d3 100644 --- a/project/build.properties +++ b/project/build.properties @@ -1 +1 @@ -sbt.version=1.6.2 +sbt.version=1.11.6 diff --git a/project/plugins.sbt b/project/plugins.sbt index f7c4b4b7..e44ed774 100644 --- a/project/plugins.sbt +++ b/project/plugins.sbt @@ -1,10 +1,10 @@ -addSbtPlugin("org.scala-js" % "sbt-scalajs" % "1.19.0") +addSbtPlugin("org.scala-js" % "sbt-scalajs" % "1.20.1") addSbtPlugin("org.portable-scala" % "sbt-scalajs-crossproject" % "1.3.2") -addSbtPlugin("org.scala-native" % "sbt-scala-native" % "0.5.7") +addSbtPlugin("org.scala-native" % "sbt-scala-native" % "0.5.8") addSbtPlugin("org.portable-scala" % "sbt-scala-native-crossproject" % "1.3.2") -addSbtPlugin("com.github.sbt" % "sbt-ci-release" % "1.9.3") +addSbtPlugin("com.github.sbt" % "sbt-ci-release" % "1.11.2") addSbtPlugin("org.scalameta" % "sbt-scalafmt" % "2.5.4")