/
depends.scala
63 lines (46 loc) · 2.71 KB
/
depends.scala
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
import sbt._
import Keys._
object depends {
lazy val scalazVersion = settingKey[String]("defines the current scalaz version")
lazy val classycle = Seq("org.specs2" % "classycle" % "1.4.3")
def compiler(scalaVersion: String) = Seq("org.scala-lang" % "scala-compiler" % scalaVersion)
def reflect(scalaVersion: String) = Seq("org.scala-lang" % "scala-reflect" % scalaVersion)
def scalaz(scalazVersion: String, scalaVersion: String) =
Seq("org.scalaz" %% "scalaz-core",
"org.scalaz" %% "scalaz-effect",
"org.scalaz" %% "scalaz-concurrent").map(_ % scalazVersion) ++
(if (scalaVersion.startsWith("2.12"))
(if (List("7.1", "7.2").exists(scalazVersion.startsWith))
Seq("org.scalaz.stream" % "scalaz-stream_2.12.0-M2" % "0.8" excludeAll(ExclusionRule(organization = "org.scalaz")))
else
Seq("org.scalaz.stream" % "scalaz-stream_2.12.0-M2" % "0.7.3" excludeAll(ExclusionRule(organization = "org.scalaz"))))
else
(if (List("7.1", "7.2").exists(scalazVersion.startsWith))
Seq("org.scalaz.stream" %% "scalaz-stream" % "0.8" excludeAll(ExclusionRule(organization = "org.scalaz")))
else
Seq("org.scalaz.stream" %% "scalaz-stream" % "0.7.3" excludeAll(ExclusionRule(organization = "org.scalaz"))))
)
lazy val kindp = Seq("org.spire-math" % "kind-projector" % "0.7.1" cross CrossVersion.binary)
lazy val scalacheck = Seq("org.scalacheck" %% "scalacheck" % "1.13.0")
lazy val mockito = Seq("org.mockito" % "mockito-core" % "1.9.5")
lazy val junit = Seq("junit" % "junit" % "4.12")
lazy val hamcrest = Seq("org.hamcrest" % "hamcrest-core" % "1.3")
def shapeless(scalaVersion: String) =
Seq("com.chuusai" %% "shapeless" % "2.2.5")
lazy val pegdown = Seq("org.pegdown" % "pegdown" % "1.2.1")
lazy val testInterface = Seq("org.scala-sbt" % "test-interface" % "1.0")
lazy val tagsoup = "org.ccil.cowan.tagsoup" % "tagsoup" % "1.2"
def paradise(scalaVersion: String) =
if (scalaVersion.startsWith("2.11") || scalaVersion.startsWith("2.12")) Nil
else Seq(compilerPlugin("org.scalamacros" %% "paradise" % "2.0.1" cross CrossVersion.full),
"org.scalamacros" %% "quasiquotes" % "2.0.1")
lazy val resolvers =
Seq(updateOptions := updateOptions.value.withCachedResolution(true)) ++ {
sbt.Keys.resolvers ++=
Seq(
Resolver.sonatypeRepo("releases"),
Resolver.sonatypeRepo("snapshots"),
Resolver.typesafeIvyRepo("releases"),
"scalaz-bintray" at "https://dl.bintray.com/scalaz/releases")
}
}