This repository has been archived by the owner on Jan 31, 2022. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 0
/
build.sbt
97 lines (80 loc) · 2.39 KB
/
build.sbt
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
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
import sbt.Keys.resolvers
name := "communicate"
scalaVersion := "2.12.2"
val doNotPublishSettings = Seq(publish := {})
// Only publish to bintray as a snapshot currently
val publishSettings =
Seq(
publishTo := Some("Artifactory Realm" at "http://oss.jfrog.org/artifactory/oss-snapshot-local"),
bintrayReleaseOnPublish := false,
credentials := List(Path.userHome / ".bintray" / ".artifactory")
.filter(_.exists)
.map(Credentials(_))
)
lazy val gitterDependencies =
Seq(
dependencyOverrides += "com.squareup.okio" % "okio" % "1.11.0",
libraryDependencies += "com.github.amatkivskiy" % "gitter.sdk.async" % "1.6.0",
libraryDependencies += "com.github.amatkivskiy" % "gitter.sdk.sync" % "1.6.0"
)
lazy val cacheDependencies =
Seq(
libraryDependencies += "com.google.guava" % "guava" % "22.0"
)
lazy val testDependencies =
Seq(
libraryDependencies += "org.scalactic" %% "scalactic" % "3.0.1",
libraryDependencies += "org.scalatest" %% "scalatest" % "3.0.1" % "test"
)
lazy val loggerDependencies =
Seq(
libraryDependencies += "org.slf4j" % "slf4j-simple" % "1.7.10"
)
lazy val asyncDependencies =
Seq(
libraryDependencies += "io.monix" %% "monix" % "2.3.0"
)
lazy val scalaCompilerDependencies =
Seq(
libraryDependencies += "org.scala-lang" % "scala-compiler" % scalaVersion.value,
libraryDependencies += "org.scala-lang" % "scala-reflect" % scalaVersion.value,
resolvers += Resolver.typesafeRepo("release")
)
val commonSettings = Defaults.coreDefaultSettings ++ Seq(
version := "0.1.0-SNAPSHOT",
scalaVersion := "2.12.2",
scalacOptions ++= Seq("-unchecked", "-deprecation", "-feature"),
coverageEnabled := true,
resolvers += Resolver.jcenterRepo)
lazy val coreInterpreter =
project.in(file("interpreters/core"))
.settings(
commonSettings,
asyncDependencies,
cacheDependencies,
doNotPublishSettings
)
lazy val coreApi =
project.in(file("api/core"))
.settings(
commonSettings,
testDependencies,
doNotPublishSettings
)
lazy val gitterApi =
project.in(file("api/gitter"))
.settings(
commonSettings,
gitterDependencies,
cacheDependencies,
testDependencies,
loggerDependencies,
doNotPublishSettings)
.dependsOn(
coreInterpreter,
coreApi)
lazy val root =
aggregateProjects(
coreInterpreter,
gitterApi
)