mirror of https://github.com/sbt/sbt.git
Merge pull request #5358 from dwijnand/cleanup/Deps
build: Cleanup Dependencies
This commit is contained in:
commit
cfa410cbd7
22
build.sbt
22
build.sbt
|
|
@ -426,7 +426,7 @@ lazy val utilScripted = (project in file("internal") / "util-scripted")
|
||||||
.settings(
|
.settings(
|
||||||
utilCommonSettings,
|
utilCommonSettings,
|
||||||
name := "Util Scripted",
|
name := "Util Scripted",
|
||||||
libraryDependencies ++= scalaParsers.value,
|
libraryDependencies += scalaParsers,
|
||||||
utilMimaSettings,
|
utilMimaSettings,
|
||||||
)
|
)
|
||||||
.configure(addSbtIO)
|
.configure(addSbtIO)
|
||||||
|
|
@ -439,7 +439,8 @@ lazy val testingProj = (project in file("testing"))
|
||||||
.settings(
|
.settings(
|
||||||
baseSettings,
|
baseSettings,
|
||||||
name := "Testing",
|
name := "Testing",
|
||||||
libraryDependencies ++= scalaXml.value ++ Seq(
|
libraryDependencies ++= Seq(
|
||||||
|
scalaXml,
|
||||||
testInterface,
|
testInterface,
|
||||||
launcherInterface,
|
launcherInterface,
|
||||||
sjsonNewScalaJson.value
|
sjsonNewScalaJson.value
|
||||||
|
|
@ -862,19 +863,12 @@ lazy val mainProj = (project in file("main"))
|
||||||
name := "Main",
|
name := "Main",
|
||||||
checkPluginCross := {
|
checkPluginCross := {
|
||||||
val sv = scalaVersion.value
|
val sv = scalaVersion.value
|
||||||
val xs =
|
val f = baseDirectory.value / "src" / "main" / "scala" / "sbt" / "PluginCross.scala"
|
||||||
IO.readLines(baseDirectory.value / "src" / "main" / "scala" / "sbt" / "PluginCross.scala")
|
if (!IO.readLines(f).exists(_.contains(s""""$sv"""")))
|
||||||
if (xs exists { s =>
|
sys.error(s"PluginCross.scala does not match up with the scalaVersion $sv")
|
||||||
s.contains(s""""$sv"""")
|
|
||||||
}) ()
|
|
||||||
else sys.error("PluginCross.scala does not match up with the scalaVersion " + sv)
|
|
||||||
},
|
|
||||||
libraryDependencies ++= {
|
|
||||||
scalaXml.value ++
|
|
||||||
Seq(launcherInterface) ++
|
|
||||||
log4jDependencies ++
|
|
||||||
Seq(scalaCacheCaffeine, lmCoursierShaded)
|
|
||||||
},
|
},
|
||||||
|
libraryDependencies ++=
|
||||||
|
(Seq(scalaXml, launcherInterface, scalaCacheCaffeine, lmCoursierShaded) ++ log4jModules),
|
||||||
libraryDependencies ++= (scalaVersion.value match {
|
libraryDependencies ++= (scalaVersion.value match {
|
||||||
case v if v.startsWith("2.12.") => List(compilerPlugin(silencerPlugin))
|
case v if v.startsWith("2.12.") => List(compilerPlugin(silencerPlugin))
|
||||||
case _ => List()
|
case _ => List()
|
||||||
|
|
|
||||||
|
|
@ -6,17 +6,14 @@ object Dependencies {
|
||||||
// WARNING: Please Scala update versions in PluginCross.scala too
|
// WARNING: Please Scala update versions in PluginCross.scala too
|
||||||
val scala212 = "2.12.10"
|
val scala212 = "2.12.10"
|
||||||
val scala213 = "2.13.1"
|
val scala213 = "2.13.1"
|
||||||
lazy val checkPluginCross = settingKey[Unit]("Make sure scalaVersion match up")
|
val checkPluginCross = settingKey[Unit]("Make sure scalaVersion match up")
|
||||||
val baseScalaVersion = scala212
|
val baseScalaVersion = scala212
|
||||||
def nightlyVersion: Option[String] = sys.props.get("sbt.build.version")
|
def nightlyVersion = sys.props.get("sbt.build.version")
|
||||||
|
|
||||||
// sbt modules
|
// sbt modules
|
||||||
private val ioVersion = nightlyVersion.getOrElse("1.4.0-M2")
|
private val ioVersion = nightlyVersion.getOrElse("1.4.0-M2")
|
||||||
private val lmVersion =
|
private val lmVersion =
|
||||||
sys.props.get("sbt.build.lm.version") match {
|
sys.props.get("sbt.build.lm.version").orElse(nightlyVersion).getOrElse("1.3.0")
|
||||||
case Some(version) => version
|
|
||||||
case _ => nightlyVersion.getOrElse("1.3.0")
|
|
||||||
}
|
|
||||||
val zincVersion = nightlyVersion.getOrElse("1.3.1")
|
val zincVersion = nightlyVersion.getOrElse("1.3.1")
|
||||||
|
|
||||||
private val sbtIO = "org.scala-sbt" %% "io" % ioVersion
|
private val sbtIO = "org.scala-sbt" %% "io" % ioVersion
|
||||||
|
|
@ -38,67 +35,52 @@ object Dependencies {
|
||||||
private val zincCompile = "org.scala-sbt" %% "zinc-compile" % zincVersion
|
private val zincCompile = "org.scala-sbt" %% "zinc-compile" % zincVersion
|
||||||
private val zincCompileCore = "org.scala-sbt" %% "zinc-compile-core" % zincVersion
|
private val zincCompileCore = "org.scala-sbt" %% "zinc-compile-core" % zincVersion
|
||||||
|
|
||||||
def getSbtModulePath(key: String, name: String) = {
|
def getSbtModulePath(key: String) = {
|
||||||
val localProps = new java.util.Properties()
|
val localProps = new java.util.Properties()
|
||||||
IO.load(localProps, file("project/local.properties"))
|
IO.load(localProps, file("project/local.properties"))
|
||||||
val path = Option(localProps getProperty key) orElse (sys.props get key)
|
val path = Option(localProps.getProperty(key)).orElse(sys.props.get(key))
|
||||||
path foreach (f => println(s"Using $name from $f"))
|
path.foreach(f => println(s"Using $key=$f"))
|
||||||
path
|
path
|
||||||
}
|
}
|
||||||
|
|
||||||
lazy val sbtIoPath = getSbtModulePath("sbtio.path", "sbt/io")
|
lazy val sbtIoPath = getSbtModulePath("sbtio.path")
|
||||||
lazy val sbtUtilPath = getSbtModulePath("sbtutil.path", "sbt/util")
|
lazy val sbtUtilPath = getSbtModulePath("sbtutil.path")
|
||||||
lazy val sbtLmPath = getSbtModulePath("sbtlm.path", "sbt/lm")
|
lazy val sbtLmPath = getSbtModulePath("sbtlm.path")
|
||||||
lazy val sbtZincPath = getSbtModulePath("sbtzinc.path", "sbt/zinc")
|
lazy val sbtZincPath = getSbtModulePath("sbtzinc.path")
|
||||||
|
|
||||||
def addSbtModule(
|
def addSbtModule(
|
||||||
p: Project,
|
|
||||||
path: Option[String],
|
path: Option[String],
|
||||||
projectName: String,
|
projectName: String,
|
||||||
moduleId: ModuleID,
|
moduleId: ModuleID,
|
||||||
c: Option[Configuration] = None
|
c: Option[Configuration] = None
|
||||||
) = {
|
) = (p: Project) => {
|
||||||
val m = moduleId.withConfigurations(c.map(_.name))
|
val m = moduleId.withConfigurations(c.map(_.name))
|
||||||
path match {
|
path match {
|
||||||
case Some(f) =>
|
case Some(f) =>
|
||||||
p dependsOn ClasspathDependency(ProjectRef(file(f), projectName), c.map(_.name))
|
p.dependsOn(ClasspathDependency(ProjectRef(file(f), projectName), c.map(_.name)))
|
||||||
case None => p settings (libraryDependencies += m, dependencyOverrides += m)
|
case None => p.settings(libraryDependencies += m, dependencyOverrides += m)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
def addSbtIO(p: Project): Project = addSbtModule(p, sbtIoPath, "io", sbtIO)
|
def addSbtIO = addSbtModule(sbtIoPath, "io", sbtIO)
|
||||||
|
|
||||||
def addSbtLmCore(p: Project): Project =
|
def addSbtLmCore = addSbtModule(sbtLmPath, "lmCore", libraryManagementCore)
|
||||||
addSbtModule(p, sbtLmPath, "lmCore", libraryManagementCore)
|
def addSbtLmIvy = addSbtModule(sbtLmPath, "lmIvy", libraryManagementIvy)
|
||||||
def addSbtLmIvy(p: Project): Project =
|
def addSbtLmIvyTest = addSbtModule(sbtLmPath, "lmIvy", libraryManagementIvy, Some(Test))
|
||||||
addSbtModule(p, sbtLmPath, "lmIvy", libraryManagementIvy)
|
|
||||||
def addSbtLmIvyTest(p: Project): Project =
|
|
||||||
addSbtModule(p, sbtLmPath, "lmIvy", libraryManagementIvy, Some(Test))
|
|
||||||
|
|
||||||
def addSbtCompilerInterface(p: Project): Project =
|
def addSbtCompilerInterface = addSbtModule(sbtZincPath, "compilerInterface212", compilerInterface)
|
||||||
addSbtModule(p, sbtZincPath, "compilerInterface212", compilerInterface)
|
def addSbtCompilerClasspath = addSbtModule(sbtZincPath, "zincClasspath212", compilerClasspath)
|
||||||
def addSbtCompilerClasspath(p: Project): Project =
|
def addSbtCompilerApiInfo = addSbtModule(sbtZincPath, "zincApiInfo212", compilerApiInfo)
|
||||||
addSbtModule(p, sbtZincPath, "zincClasspath212", compilerClasspath)
|
def addSbtCompilerBridge = addSbtModule(sbtZincPath, "compilerBridge212", compilerBridge)
|
||||||
def addSbtCompilerApiInfo(p: Project): Project =
|
def addSbtZinc = addSbtModule(sbtZincPath, "zinc", zinc)
|
||||||
addSbtModule(p, sbtZincPath, "zincApiInfo212", compilerApiInfo)
|
def addSbtZincCompile = addSbtModule(sbtZincPath, "zincCompile", zincCompile)
|
||||||
def addSbtCompilerBridge(p: Project): Project =
|
def addSbtZincCompileCore = addSbtModule(sbtZincPath, "zincCompileCore", zincCompileCore)
|
||||||
addSbtModule(p, sbtZincPath, "compilerBridge212", compilerBridge)
|
|
||||||
def addSbtZinc(p: Project): Project = addSbtModule(p, sbtZincPath, "zinc", zinc)
|
|
||||||
def addSbtZincCompile(p: Project): Project =
|
|
||||||
addSbtModule(p, sbtZincPath, "zincCompile", zincCompile)
|
|
||||||
def addSbtZincCompileCore(p: Project): Project =
|
|
||||||
addSbtModule(p, sbtZincPath, "zincCompileCore", zincCompileCore)
|
|
||||||
|
|
||||||
val lmCoursierVersion = "2.0.0-RC5-3"
|
val lmCoursierShaded = "io.get-coursier" %% "lm-coursier-shaded" % "2.0.0-RC5-3"
|
||||||
val lmCoursierShaded = "io.get-coursier" %% "lm-coursier-shaded" % lmCoursierVersion
|
|
||||||
|
|
||||||
val sjsonNewScalaJson = Def.setting {
|
def sjsonNew(n: String) = Def.setting("com.eed3si9n" %% n % contrabandSjsonNewVersion.value)
|
||||||
"com.eed3si9n" %% "sjson-new-scalajson" % contrabandSjsonNewVersion.value
|
val sjsonNewScalaJson = sjsonNew("sjson-new-scalajson")
|
||||||
}
|
val sjsonNewMurmurhash = sjsonNew("sjson-new-murmurhash")
|
||||||
|
|
||||||
val sjsonNewMurmurhash = Def.setting {
|
|
||||||
"com.eed3si9n" %% "sjson-new-murmurhash" % contrabandSjsonNewVersion.value
|
|
||||||
}
|
|
||||||
|
|
||||||
val jline = "jline" % "jline" % "2.14.6"
|
val jline = "jline" % "jline" % "2.14.6"
|
||||||
val scalatest = "org.scalatest" %% "scalatest" % "3.0.8"
|
val scalatest = "org.scalatest" %% "scalatest" % "3.0.8"
|
||||||
|
|
@ -107,20 +89,16 @@ object Dependencies {
|
||||||
val junit = "junit" % "junit" % "4.11"
|
val junit = "junit" % "junit" % "4.11"
|
||||||
val templateResolverApi = "org.scala-sbt" % "template-resolver" % "0.1"
|
val templateResolverApi = "org.scala-sbt" % "template-resolver" % "0.1"
|
||||||
|
|
||||||
private def scala212Module(name: String, moduleVersion: String) = Def setting (
|
val scalaXml = "org.scala-lang.modules" %% "scala-xml" % "1.2.0"
|
||||||
("org.scala-lang.modules" %% name % moduleVersion) :: Nil
|
val scalaParsers = "org.scala-lang.modules" %% "scala-parser-combinators" % "1.1.2"
|
||||||
)
|
val scalaReflect = Def.setting("org.scala-lang" % "scala-reflect" % scalaVersion.value)
|
||||||
|
|
||||||
val scalaXml = scala212Module("scala-xml", "1.2.0")
|
|
||||||
val scalaParsers = scala212Module("scala-parser-combinators", "1.1.2")
|
|
||||||
val scalaReflect = Def.setting { "org.scala-lang" % "scala-reflect" % scalaVersion.value }
|
|
||||||
|
|
||||||
def log4jVersion = "2.11.2"
|
|
||||||
val log4jApi = "org.apache.logging.log4j" % "log4j-api" % log4jVersion
|
|
||||||
val log4jCore = "org.apache.logging.log4j" % "log4j-core" % log4jVersion
|
|
||||||
val log4jSlf4jImpl = "org.apache.logging.log4j" % "log4j-slf4j-impl" % log4jVersion
|
|
||||||
// specify all of log4j modules to prevent misalignment
|
// specify all of log4j modules to prevent misalignment
|
||||||
val log4jDependencies = Vector(log4jApi, log4jCore, log4jSlf4jImpl)
|
def log4jModule = (n: String) => "org.apache.logging.log4j" % n % "2.11.2"
|
||||||
|
val log4jApi = log4jModule("log4j-api")
|
||||||
|
val log4jCore = log4jModule("log4j-core")
|
||||||
|
val log4jSlf4jImpl = log4jModule("log4j-slf4j-impl")
|
||||||
|
val log4jModules = Vector(log4jApi, log4jCore, log4jSlf4jImpl)
|
||||||
|
|
||||||
val scalaCacheCaffeine = "com.github.cb372" %% "scalacache-caffeine" % "0.20.0"
|
val scalaCacheCaffeine = "com.github.cb372" %% "scalacache-caffeine" % "0.20.0"
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue