diff --git a/sbt/src/sbt-test/actions/cross-multiproject/build.sbt b/sbt/src/sbt-test/actions/cross-multiproject/build.sbt index d0eff709c..c39cdf83a 100644 --- a/sbt/src/sbt-test/actions/cross-multiproject/build.sbt +++ b/sbt/src/sbt-test/actions/cross-multiproject/build.sbt @@ -1,31 +1,29 @@ -inThisBuild(List( - crossScalaVersions := Seq("2.12.1", "2.11.8") -)) +lazy val scala212 = "2.12.8" +lazy val scala213 = "2.13.0-M5" + +ThisBuild / crossScalaVersions := Seq(scala212, scala213) +ThisBuild / scalaVersion := scala212 lazy val rootProj = (project in file(".")) .aggregate(libProj, fooPlugin) .settings( - scalaVersion := "2.12.1" + crossScalaVersions := Nil, + addCommandAlias("build", "compile") ) lazy val libProj = (project in file("lib")) .settings( - name := "foo-lib", - scalaVersion := "2.12.1", - crossScalaVersions := Seq("2.12.1", "2.11.8") + name := "foo-lib" ) lazy val fooPlugin = (project in file("sbt-foo")) + .enablePlugins(SbtPlugin) .settings( name := "sbt-foo", - sbtPlugin := true, - scalaVersion := "2.12.1", - crossScalaVersions := Seq("2.12.1") + crossScalaVersions := Seq(scala212) ) lazy val extrasProj = (project in file("extras")) .settings( name := "foo-extras", ) - -addCommandAlias("build", "compile") diff --git a/sbt/src/sbt-test/actions/cross-multiproject/test b/sbt/src/sbt-test/actions/cross-multiproject/test index 5458dcaf6..ba4263197 100644 --- a/sbt/src/sbt-test/actions/cross-multiproject/test +++ b/sbt/src/sbt-test/actions/cross-multiproject/test @@ -1,55 +1,43 @@ > + compile - $ exists lib/target/scala-2.12 -$ exists lib/target/scala-2.11 +$ exists lib/target/scala-2.13.0-M5 $ exists sbt-foo/target/scala-2.12 --$ exists sbt-foo/target/scala-2.11 +-$ exists sbt-foo/target/scala-2.13.0-M5 > clean > + libProj/compile - $ exists lib/target/scala-2.12 -$ exists lib/target/scala-2.11 +$ exists lib/target/scala-2.13.0-M5 -$ exists sbt-foo/target/scala-2.12 --$ exists sbt-foo/target/scala-2.11 +-$ exists sbt-foo/target/scala-2.13.0-M5 +# test safe switching > clean -> ++ 2.12.1 compile - +> ++ 2.12.8 -v compile $ exists lib/target/scala-2.12 --$ exists lib/target/scala-2.11 +-$ exists lib/target/scala-2.13.0-M5 $ exists sbt-foo/target/scala-2.12 --$ exists sbt-foo/target/scala-2.11 +-$ exists sbt-foo/target/scala-2.13.0-M5 +# Test legacy cross build with command support +# > clean +# > + build +# $ exists lib/target/scala-2.12 +# $ exists lib/target/scala-2.13.0-M5 +# $ exists sbt-foo/target/scala-2.12 +# -$ exists sbt-foo/target/scala-2.13.0-M5 + +# Test ++ leaves crossScalaVersions unchanged > clean -> ++ 2.11.8 -v compile +> ++2.12.8 +> +extrasProj/compile +$ exists extras/target/scala-2.13.0-M5 +$ exists extras/target/scala-2.12 -$ exists lib/target/scala-2.11 +# test safe switching +> clean +> ++ 2.13.0-M5 -v compile +$ exists lib/target/scala-2.13.0-M5 -$ exists lib/target/scala-2.12 # -$ exists sbt-foo/target/scala-2.12 --$ exists sbt-foo/target/scala-2.11 - -# > clean -# > ++ 2.11.8! compile - -# $ exists lib/target/scala-2.11 -# -$ exists lib/target/scala-2.12 -# -$ exists sbt-foo/target/scala-2.12 -# $ exists sbt-foo/target/scala-2.11 - -> clean -# Test legacy cross build with command support -> + build - -# Uses the root project scala version config, which is only configured to build for Scala 2.12 -$ exists lib/target/scala-2.12 --$ exists lib/target/scala-2.11 -$ exists sbt-foo/target/scala-2.12 --$ exists sbt-foo/target/scala-2.11 - -> clean -# Test ++ leaves crossScalaVersions unchanged -> ++2.12.1 -> +extrasProj/compile -$ exists extras/target/scala-2.11 -$ exists extras/target/scala-2.12 +-$ exists sbt-foo/target/scala-2.13.0-M5