diff --git a/main/src/main/scala/sbt/Defaults.scala b/main/src/main/scala/sbt/Defaults.scala index 8a77d5a9e..fd8c6111c 100644 --- a/main/src/main/scala/sbt/Defaults.scala +++ b/main/src/main/scala/sbt/Defaults.scala @@ -2107,7 +2107,11 @@ object Defaults extends BuildCommon { val projectName = name.value if (ScalaArtifacts.isScala3(sv)) { val project = if (config == Compile) projectName else s"$projectName-$config" - compileOptions ++ Seq("-project", project) + if (scalaVersion.value.startsWith("3.0.0")) { + Seq("-project", project) + } else { + compileOptions ++ Seq("-project", project) + } } else compileOptions }, (TaskZero / key) := { diff --git a/sbt-app/src/sbt-test/plugins/doc-scala3-js/build.sbt b/sbt-app/src/sbt-test/plugins/doc-scala3-js/build.sbt new file mode 100644 index 000000000..af0c70797 --- /dev/null +++ b/sbt-app/src/sbt-test/plugins/doc-scala3-js/build.sbt @@ -0,0 +1,12 @@ +val scala3Version = "3.0.1-RC1-bin-20210525-8f3fdf5-NIGHTLY" + +enablePlugins(ScalaJSPlugin) + +lazy val root = project + .in(file(".")) + .settings( + name := "scala3-simple", + version := "0.1.0", + + scalaVersion := scala3Version, + ) diff --git a/sbt-app/src/sbt-test/plugins/doc-scala3-js/project/plugins.sbt b/sbt-app/src/sbt-test/plugins/doc-scala3-js/project/plugins.sbt new file mode 100644 index 000000000..c16aefc53 --- /dev/null +++ b/sbt-app/src/sbt-test/plugins/doc-scala3-js/project/plugins.sbt @@ -0,0 +1 @@ +addSbtPlugin("org.scala-js" % "sbt-scalajs" % "1.5.1") \ No newline at end of file diff --git a/sbt-app/src/sbt-test/plugins/doc-scala3-js/src/main/scala/test.scala b/sbt-app/src/sbt-test/plugins/doc-scala3-js/src/main/scala/test.scala new file mode 100644 index 000000000..dd119a269 --- /dev/null +++ b/sbt-app/src/sbt-test/plugins/doc-scala3-js/src/main/scala/test.scala @@ -0,0 +1,21 @@ +package test + +import scala.scalajs.js + +final case class RouteLocation(loc: String, state: js.UndefOr[js.Any]) + + +object RouteLocation: + def apply(loc: String): RouteLocation = RouteLocation(loc, js.undefined) + +/** + * ```scala sc:compile + * import scala.scalajs.js + * final case class RouteLocation(loc: String, state: js.UndefOr[js.Any]) + * + * + * object RouteLocation: + * def apply(loc: String): RouteLocation = RouteLocation(loc, js.undefined) + * ``` + */ +case class Test(s: String) \ No newline at end of file diff --git a/sbt-app/src/sbt-test/plugins/doc-scala3-js/test b/sbt-app/src/sbt-test/plugins/doc-scala3-js/test new file mode 100644 index 000000000..fd7163dc6 --- /dev/null +++ b/sbt-app/src/sbt-test/plugins/doc-scala3-js/test @@ -0,0 +1 @@ +> doc \ No newline at end of file