forked from Kanaka-io/play-monadic-actions
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathbuild.sbt
89 lines (67 loc) · 2.89 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
scalaVersion in ThisBuild := "2.12.3"
organization in ThisBuild := "io.kanaka"
description := "Mini DSL to allow the writing of Play! actions using for-comprehensions"
licenses in ThisBuild += ("Apache2", url("http://www.apache.org/licenses/LICENSE-2.0.txt"))
homepage in ThisBuild := Some(url("https://github.com/Kanaka-io/play-monadic-actions"))
scalacOptions in ThisBuild ++= Seq(
"-unchecked",
"-deprecation",
"-feature",
"-encoding", "utf8",
"-Xfatal-warnings"
)
crossScalaVersions := Seq("2.11.11", "2.12.3")
val commonSettings = Seq (
resolvers += "scalaz-bintray" at "http://dl.bintray.com/scalaz/releases",
libraryDependencies ++= Seq(
"com.typesafe.play" %% "play" % "2.6.2" % "provided",
"com.typesafe.play" %% "play-test" % "2.6.2" % "test",
"org.scalacheck" %% "scalacheck" % "1.13.5" % "test",
"org.specs2" %% "specs2-core" % "3.9.4" % "test",
"org.specs2" %% "specs2-scalacheck" % "3.9.4" % "test",
"com.typesafe.play" %% "play-specs2" % "2.6.2" % "test"
)
)
def scalazCompatModuleSettings(moduleName: String, base: String, scalazVersion: String) = commonSettings ++ Seq(
name := moduleName,
libraryDependencies ++= Seq("org.scalaz" %% "scalaz-core" % scalazVersion),
target := baseDirectory.value / ".." / base / "target"
)
def scalazCompatModule(id: String, moduleName: String, scalazVersion: String) = Project(id = id, base = file("scalaz"))
.settings(scalazCompatModuleSettings(moduleName, id, scalazVersion):_*)
.dependsOn(core % "compile->compile;test->test")
lazy val core = (project in file("core"))
.settings(commonSettings:_*)
.settings(name := "play-monadic-actions")
lazy val scalaz71 = scalazCompatModule(id = "scalaz71", moduleName = "play-monadic-actions-scalaz_7.1", scalazVersion = "7.1.14")
lazy val scalaz72 = scalazCompatModule(id = "scalaz72", moduleName = "play-monadic-actions-scalaz_7.2", scalazVersion = "7.2.14")
lazy val cats = (project in file("cats"))
.settings(commonSettings:_*)
.settings(
name := "play-monadic-actions-cats",
libraryDependencies ++= Seq(
"org.typelevel" %% "cats" % "0.9.0" % "provided"
)
)
.dependsOn(core % "compile->compile;test->test")
publishMavenStyle in ThisBuild := true
pomExtra in ThisBuild := <scm>
<url>git@github.com:Kanaka-io/play-monadic-actions.git</url>
<connection>scm:git:git@github.com:Kanaka-io/play-monadic-actions.git</connection>
</scm>
<developers>
<developer>
<id>vkasas</id>
<name>Valentin Kasas</name>
<url>https://twitter.com/ValentinKasas</url>
</developer>
</developers>
publishArtifact in Test := false
publishTo in ThisBuild := {
val nexus = "https://oss.sonatype.org/"
if (isSnapshot.value)
Some("snapshots" at nexus + "content/repositories/snapshots")
else
Some("releases" at nexus + "service/local/staging/deploy/maven2")
}
releasePublishArtifactsAction := com.typesafe.sbt.pgp.PgpKeys.publishSigned.value