This repository has been archived by the owner on Sep 29, 2023. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathbuild.sbt
83 lines (77 loc) · 2.87 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
import sbt.url
import sbt.Keys.version
import sbt.Keys.licenses
lazy val root = project
.in(file("."))
.settings(
commonSettings,
libraryDependencies ++= Seq(
"org.typelevel" %% "cats-laws" % "1.0.0-MF" % Test,
"org.typelevel" %% "cats-testkit" % "1.0.0-MF" % Test,
"com.github.alexarchambault" %% "scalacheck-shapeless_1.13" % "1.1.6" % Test,
"org.scalacheck" %% "scalacheck" % "1.13.4" % Test,
"org.scalatest" %% "scalatest" % "3.0.1" % Test
)
)
.aggregate(sync, async)
.dependsOn(sync, async)
lazy val sync = project.settings(
commonSettings,
name := "scala-parser-combinators-completion"
)
lazy val async = project
.dependsOn(sync)
.settings(
commonSettings,
name := "scala-parser-combinators-completion-async",
// cats & monix
libraryDependencies ++= Seq(
"io.monix" %% "monix-eval" % "2.3.0",
"io.monix" %% "monix-cats" % "2.3.0"
)
)
lazy val commonSettings = Seq(
organization := "com.nexthink",
licenses += ("BSD-3", url("https://opensource.org/licenses/bsd-3-clause")),
version := "1.1.1",
scalaVersion := "2.12.2",
homepage := Some(url("https://github.com/nexthink/scala-parser-combinators-completion")),
scmInfo := Some(
ScmInfo(url("https://github.com/nexthink/scala-parser-combinators-completion"), "[email protected]:nexthink/scala-parser-combinators-completions.git")),
developers := List(
Developer(
id = "jchapuis",
name = "Jonas Chapuis",
email = "[email protected]",
url = url("https://jonaschapuis.com")
)),
// Add sonatype repository settings
isSnapshot := version.value endsWith "SNAPSHOT",
publishTo := Some(
if (isSnapshot.value)
Opts.resolver.sonatypeSnapshots
else
Opts.resolver.sonatypeStaging
),
// Sonatype credentials
credentials += Credentials("Sonatype Nexus Repository Manager",
"oss.sonatype.org",
sys.env.getOrElse("SONATYPE_USER", ""),
sys.env.getOrElse("SONATYPE_PASSWORD", "")),
libraryDependencies ++= Seq(
"org.scala-lang.modules" %% "scala-parser-combinators" % "1.0.6",
"org.json4s" %% "json4s-native" % "3.5.3"
)
)
// PGP signing
useGpg := false // built-in implementation,
usePgpKeyHex("EDB397ECD91C486D")
pgpPublicRing := baseDirectory.value / "project" / ".gnupg" / "pubring.gpg"
pgpSecretRing := baseDirectory.value / "project" / ".gnupg" / "secring.gpg"
pgpPassphrase := sys.env.get("PGP_PASS").map(_.toArray)
addCommandAlias(
"ci-all",
";clean ;compile ;coverage ;test ;package ;sync/coverageReport ;async/coverageReport ;coverageAggregate ;codacyCoverage"
)
addCommandAlias("release", ";+publishSigned ;sonatypeRelease")
scalacOptions += "-Ypartial-unification"