|
1 | 1 | name := "scala-repl-pp-root"
|
| 2 | +ThisBuild/organization := "com.michaelpollmeier" |
2 | 3 | publish/skip := true
|
3 | 4 |
|
4 |
| -ThisBuild / organization := "com.michaelpollmeier" |
5 |
| -ThisBuild / scalaVersion := "3.6.4" |
6 |
| -lazy val ScalaTestVersion = "3.2.18" |
| 5 | +lazy val scalaVersions = Seq("3.5.2", "3.6.4") |
| 6 | +ThisBuild/scalaVersion := scalaVersions.max |
7 | 7 | lazy val Slf4jVersion = "2.0.16"
|
8 | 8 |
|
9 |
| -lazy val core = project.in(file("core")) |
| 9 | +lazy val core_364 = Build |
| 10 | + .newProject("core", "3.6.4", "scala-repl-pp") |
10 | 11 | .dependsOn(shadedLibs)
|
11 | 12 | .enablePlugins(JavaAppPackaging)
|
12 |
| - .settings( |
13 |
| - name := "scala-repl-pp", |
14 |
| - Compile/mainClass := Some("replpp.Main"), |
15 |
| - executableScriptName := "srp", |
16 |
| - libraryDependencies ++= Seq( |
17 |
| - "org.scala-lang" %% "scala3-compiler" % scalaVersion.value, |
18 |
| - "org.slf4j" % "slf4j-simple" % Slf4jVersion % Optional, |
19 |
| - ), |
20 |
| - commonSettings, |
21 |
| - ) |
| 13 | + .settings(coreSettings) |
22 | 14 |
|
23 |
| -lazy val shadedLibs = project.in(file("shaded-libs")) |
24 |
| - .settings( |
25 |
| - name := "scala-repl-pp-shaded-libs", |
26 |
| - Compile/compile/scalacOptions ++= Seq( |
27 |
| - "-language:implicitConversions", |
28 |
| - "-Wconf:any:silent", // silence warnings from shaded libraries |
29 |
| - "-explain" |
30 |
| - ), |
31 |
| - Compile/doc/scalacOptions += "-nowarn", |
32 |
| - commonSettings, |
33 |
| - ) |
| 15 | +lazy val core_352 = Build |
| 16 | + .newProject("core", "3.5.2", "scala-repl-pp") |
| 17 | + .dependsOn(shadedLibs) |
| 18 | + .enablePlugins(JavaAppPackaging) |
| 19 | + .settings(coreSettings) |
| 20 | + |
| 21 | +lazy val coreSettings = commonSettings ++ Seq( |
| 22 | + Compile/mainClass := Some("replpp.Main"), |
| 23 | + executableScriptName := "srp", |
| 24 | + libraryDependencies ++= Seq( |
| 25 | + "org.scala-lang" %% "scala3-compiler" % scalaVersion.value, |
| 26 | + "org.slf4j" % "slf4j-simple" % Slf4jVersion % Optional, |
| 27 | + ), |
| 28 | +) |
| 29 | + |
| 30 | +lazy val shadedLibs = project.in(file("shaded-libs")).settings( |
| 31 | + name := "scala-repl-pp-shaded-libs", |
| 32 | + scalaVersion := scalaVersions.min, |
| 33 | + Compile/compile/scalacOptions ++= Seq( |
| 34 | + "-language:implicitConversions", |
| 35 | + "-Wconf:any:silent", // silence warnings from shaded libraries |
| 36 | + "-explain" |
| 37 | + ), |
| 38 | + Compile/doc/scalacOptions += "-nowarn", |
| 39 | + commonSettings, |
| 40 | +) |
34 | 41 |
|
35 |
| -lazy val server = project.in(file("server")) |
36 |
| - .dependsOn(core) |
| 42 | +lazy val server_364 = Build |
| 43 | + .newProject("server", "3.6.4", "scala-repl-pp-server") |
| 44 | + .dependsOn(core_364) |
37 | 45 | .enablePlugins(JavaAppPackaging)
|
38 |
| - .settings( |
39 |
| - name := "scala-repl-pp-server", |
40 |
| - executableScriptName := "srp-server", |
41 |
| - Compile/mainClass := Some("replpp.server.Main"), |
42 |
| - fork := true, // important: otherwise we run into classloader issues |
43 |
| - libraryDependencies ++= Seq( |
44 |
| - "com.lihaoyi" %% "cask" % "0.9.5", |
45 |
| - "org.slf4j" % "slf4j-simple" % Slf4jVersion % Optional, |
46 |
| - "com.lihaoyi" %% "requests" % "0.8.2" % Test, |
47 |
| - ), |
48 |
| - commonSettings, |
49 |
| - ) |
| 46 | + .settings(serverSettings) |
| 47 | + |
| 48 | +lazy val server_352 = Build |
| 49 | + .newProject("server", "3.5.2", "scala-repl-pp-server") |
| 50 | + .dependsOn(core_352) |
| 51 | + .enablePlugins(JavaAppPackaging) |
| 52 | + .settings(serverSettings) |
| 53 | + |
| 54 | +lazy val serverSettings = commonSettings ++ Seq( |
| 55 | + Compile/mainClass := Some("replpp.server.Main"), |
| 56 | + libraryDependencies ++= Seq( |
| 57 | + "com.lihaoyi" %% "cask" % "0.9.5", |
| 58 | + "org.slf4j" % "slf4j-simple" % Slf4jVersion % Optional, |
| 59 | + "com.lihaoyi" %% "requests" % "0.8.2" % Test, |
| 60 | + ), |
| 61 | + executableScriptName := "srp-server", |
| 62 | + fork := true, // important: otherwise we run into classloader issues |
| 63 | +) |
50 | 64 |
|
51 | 65 | lazy val integrationTests = project.in(file("integration-tests"))
|
52 |
| - .dependsOn(server) |
| 66 | + .dependsOn(server_364) |
53 | 67 | .settings(
|
54 | 68 | name := "integration-tests",
|
55 | 69 | fork := true, // important: otherwise we run into classloader issues
|
56 |
| - libraryDependencies ++= Seq( |
57 |
| - "org.slf4j" % "slf4j-simple" % Slf4jVersion % Optional, |
58 |
| - "org.scalatest" %% "scalatest" % ScalaTestVersion % Test, |
59 |
| - ), |
| 70 | + libraryDependencies += "org.slf4j" % "slf4j-simple" % Slf4jVersion % Optional, |
60 | 71 | publish/skip := true
|
61 | 72 | )
|
62 | 73 |
|
63 |
| -val commonSettings = Seq( |
64 |
| - crossVersion := CrossVersion.full, |
65 |
| - maintainer.withRank( KeyRanks. Invisible) := "[email protected]", |
66 |
| -) |
| 74 | +lazy val commonSettings = Seq(maintainer.withRank( KeyRanks. Invisible) := "[email protected]") |
67 | 75 |
|
68 |
| -ThisBuild / libraryDependencies ++= Seq( |
69 |
| - "org.scalatest" %% "scalatest" % ScalaTestVersion % Test, |
| 76 | +ThisBuild/libraryDependencies ++= Seq( |
| 77 | + "org.scalatest" %% "scalatest" % "3.2.19" % Test, |
70 | 78 | "com.lihaoyi" %% "os-lib" % "0.9.1" % Test,
|
71 | 79 | )
|
72 | 80 |
|
73 |
| -ThisBuild / versionScheme := Some("strict") |
| 81 | +ThisBuild/versionScheme := Some("strict") |
74 | 82 |
|
75 |
| -ThisBuild / javacOptions ++= Seq( |
| 83 | +ThisBuild/javacOptions ++= Seq( |
76 | 84 | "-g", //debug symbols
|
77 | 85 | "--release", "11"
|
78 | 86 | )
|
79 | 87 |
|
80 |
| -ThisBuild / scalacOptions ++= Seq( |
| 88 | +ThisBuild/scalacOptions ++= Seq( |
81 | 89 | "-release", "11",
|
82 | 90 | "-deprecation",
|
83 | 91 | "-feature",
|
|
0 commit comments