blob: 8c2064e852226599cc84438b359f75670221b261 [file] [log] [blame]
/*
* Licensed to the Apache Software Foundation (ASF) under one or more
* contributor license agreements. See the NOTICE file distributed with
* this work for additional information regarding copyright ownership.
* The ASF licenses this file to You under the Apache License, Version 2.0
* (the "License"); you may not use this file except in compliance with
* the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License
*/
import sbt._
import sbt.Keys._
import scala.util.Properties
object Dependencies {
// Libraries
val akkaActor = "com.typesafe.akka" %% "akka-actor" % "2.4.20" // Apache v2
val akkaSlf4j = "com.typesafe.akka" %% "akka-slf4j" % "2.4.20" // Apache v2
val akkaTestkit = "com.typesafe.akka" %% "akka-testkit" % "2.4.20" // Apache v2
val clapper = "org.clapper" %% "classutil" % "1.0.12" // BSD 3-clause license, used for detecting plugins
val commonsExec = "org.apache.commons" % "commons-exec" % "1.3" // Apache v2
val config = "com.typesafe" % "config" % "1.3.0" // Apache v2
val coursierVersion = "1.0.0-RC10"
val coursier = "io.get-coursier" %% "coursier" % coursierVersion // Apache v2
val coursierCache = "io.get-coursier" %% "coursier-cache" % coursierVersion // Apache v2
val ivy = "org.apache.ivy" % "ivy" % "2.4.0" // Apache v2
// use the same jackson version in test than the one provided at runtime by Spark 2.0.0
val jacksonDatabind = "com.fasterxml.jackson.core" % "jackson-databind" % "2.6.5" // Apache v2
val jeroMq = "org.zeromq" % "jeromq" % "0.3.6" // MPL v2
val joptSimple = "net.sf.jopt-simple" % "jopt-simple" % "4.9" // MIT
val mockito = "org.mockito" % "mockito-all" % "1.10.19" // MIT
val playJson = "com.typesafe.play" %% "play-json" % "2.3.10" // Apache v2
val scalaCompiler = Def.setting{ "org.scala-lang" % "scala-compiler" % scalaVersion.value } // BSD 3-clause
val scalaLibrary = Def.setting{ "org.scala-lang" % "scala-library" % scalaVersion.value } // BSD 3-clause
val scalaReflect = Def.setting{ "org.scala-lang" % "scala-reflect" % scalaVersion.value } // BSD 3-clause
val scalaTest = "org.scalatest" %% "scalatest" % "2.2.6" // Apache v2
val slf4jApi = "org.slf4j" % "slf4j-api" % "1.7.21" // MIT
val sparkVersion = settingKey[String]("Version of Apache Spark to use in Toree") // defined in root build
val sparkCore = Def.setting{ "org.apache.spark" %% "spark-core" % sparkVersion.value } // Apache v2
val sparkGraphX = Def.setting{ "org.apache.spark" %% "spark-graphx" % sparkVersion.value } // Apache v2
val sparkMllib = Def.setting{ "org.apache.spark" %% "spark-mllib" % sparkVersion.value } // Apache v2
val sparkRepl = Def.setting{ "org.apache.spark" %% "spark-repl" % sparkVersion.value } // Apache v2
val sparkSql = Def.setting{ "org.apache.spark" %% "spark-sql" % sparkVersion.value } // Apache v2
val sparkStreaming = Def.setting{ "org.apache.spark" %% "spark-streaming" % sparkVersion.value } // Apache v2
val springCore = "org.springframework" % "spring-core" % "4.1.1.RELEASE"// Apache v2
val guava = "com.google.guava" % "guava" % "14.0.1" // Apache v2
// Projects
val sparkAll = Def.setting{
Seq(
sparkCore.value % "provided" excludeAll(
// Exclude netty (org.jboss.netty is for 3.2.2.Final only)
ExclusionRule(
organization = "org.jboss.netty",
name = "netty"
)
),
sparkGraphX.value % "provided",
sparkMllib.value % "provided",
sparkRepl.value % "provided",
sparkSql.value % "provided",
sparkStreaming.value % "provided"
)
}
}