@@ -18,7 +18,7 @@ Global / excludeLintKeys += scmInfo
1818val Scala213 = " 2.13.8"
1919ThisBuild / spiewakMainBranches := Seq (" main" )
2020
21- ThisBuild / crossScalaVersions := Seq (Scala213 , " 3.1 .2" , " 2.12.14" )
21+ ThisBuild / crossScalaVersions := Seq (Scala213 , " 3.2 .2" , " 2.12.14" )
2222ThisBuild / scalaVersion := (ThisBuild / crossScalaVersions).value.head
2323ThisBuild / initialCommands := """
2424 |import cats._, data._, syntax.all._
@@ -34,27 +34,32 @@ ThisBuild / initialCommands := """
3434ThisBuild / testFrameworks += new TestFramework (" munit.Framework" )
3535ThisBuild / Test / parallelExecution := false
3636
37- def dep (org : String , prefix : String , version : String )(modules : String * )(testModules : String * ) =
38- modules.map(m => org %% (prefix ++ m) % version) ++
39- testModules.map(m => org %% (prefix ++ m) % version % Test )
37+ def dep (org : String , prefix : String , version : String )(
38+ modules : String *
39+ )(testModules : String * ) =
40+ Def .setting {
41+ modules.map(m => org %%% (prefix ++ m) % version) ++
42+ testModules.map(m => org %%% (prefix ++ m) % version % Test )
43+ }
4044
4145lazy val root = project
4246 .in(file(" ." ))
4347 .enablePlugins(NoPublishPlugin , SonatypeCiReleasePlugin )
44- .aggregate(core)
48+ .aggregate(core.jvm, core.js, core.native )
4549
46- lazy val core = project
50+ lazy val core = crossProject(JVMPlatform , JSPlatform , NativePlatform )
51+ .crossType(CrossType .Pure )
4752 .in(file(" modules/core" ))
4853 .settings(
4954 name := " upperbound" ,
5055 scalafmtOnCompile := true ,
5156 libraryDependencies ++=
52- dep(" org.typelevel" , " cats-" , " 2.7 .0" )(" core" )() ++
53- dep(" org.typelevel" , " cats-effect" , " 3.3.11 " )(" " )(" -laws" , " -testkit" ) ++
54- dep(" co.fs2" , " fs2-" , " 3.2.7 " )(" core" )() ++
55- dep(" org.scalameta" , " munit" , " 0.7.29 " )()(" " , " -scalacheck" ) ++
56- dep(" org.typelevel" , " " , " 1 .0.7 " )()(" munit-cats-effect-3 " ) ++
57- dep(" org.typelevel" , " scalacheck-effect" , " 1 .0.3 " )()(" " , " -munit" )
57+ dep(" org.typelevel" , " cats-" , " 2.9 .0" )(" core" )().value ++
58+ dep(" org.typelevel" , " cats-effect" , " 3.5.0 " )(" " )(" -laws" , " -testkit" ).value ++
59+ dep(" co.fs2" , " fs2-" , " 3.7.0 " )(" core" )().value ++
60+ dep(" org.scalameta" , " munit" , " 1.0.0-M7 " )()(" " , " -scalacheck" ).value ++
61+ dep(" org.typelevel" , " " , " 2 .0.0-M3 " )()(" munit-cats-effect" ).value ++
62+ dep(" org.typelevel" , " scalacheck-effect" , " 2 .0.0-M2 " )()(" " , " -munit" ).value
5863 )
5964
6065lazy val docs = project
@@ -71,7 +76,7 @@ lazy val docs = project
7176 githubWorkflowArtifactUpload := false ,
7277 fatalWarningsInCI := false
7378 )
74- .dependsOn(core)
79+ .dependsOn(core.jvm )
7580 .enablePlugins(MdocPlugin , NoPublishPlugin )
7681
7782ThisBuild / githubWorkflowBuildPostamble ++= List (
0 commit comments