-
Notifications
You must be signed in to change notification settings - Fork 2
/
build.sbt
100 lines (88 loc) · 3.57 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
98
99
100
val Scala3 = "3.3.0"
val Scala213 = "2.13.8"
val catsVersion = "2.9.0"
val ceVersion = "3.5.0"
val fs2Version = "3.7.0"
val munitVersion = "1.0.0-M8"
val munitCEVersion = "1.0.7"
val munitCheckEffVersion = "1.0.0-M7"
val googleProtoVersion = "3.19.1"
val circeVersion = "0.14.5"
val monocleVersion = "3.2.0"
val scodecVersion = "1.1.37"
val junitVersion = "0.11"
val refinedVersion = "0.9.27"
Global / onChangedBuildSource := ReloadOnSourceChanges
ThisBuild / scalaVersion := Scala3
ThisBuild / version := "0.1.10"
ThisBuild / organization := "dev.mn8"
ThisBuild / organizationName := "MN8 Technology ÖU"
ThisBuild / organizationHomepage := Some(url("https://mn8.dev"))
ThisBuild / scmInfo := Some(
ScmInfo(
url("https://github.com/iandebeer/castanet"),
"scm:[email protected]/castanet.git"
)
)
ThisBuild / developers := List(
Developer(
id = "iandebeer",
name = "Ian de Beer",
email = "[email protected]",
url = url("https://mn8.dev")
)
)
ThisBuild / description := "Coloured Petri for Scala3"
ThisBuild / licenses := List(
"MIT License" -> new URL("https://tldrlegal.com/license/mit-license#summary")
)
ThisBuild / homepage := Some(url("https://github.com/iandebeer/castanet"))
// Remove all additional repository other than Maven Central from POM
ThisBuild / pomIncludeRepository := { _ => false }
/*ThisBuild / publishTo := {
val nexus = "https://s01.oss.sonatype.org/"
if (isSnapshot.value) Some("snapshots" at nexus + "content/repositories/snapshots")
else Some("releases" at nexus + "service/local/staging/deploy/maven2")
}*/
/*ThisBuild / githubOwner := "iandebeer"
ThisBuild /githubRepository := "castanet"
ThisBuild / githubTokenSource := TokenSource.GitConfig("github.token") || TokenSource.Environment("GITHUB_TOKEN")
*/
ThisBuild / publishMavenStyle := true
ThisBuild / versionScheme := Some("early-semver")
lazy val root = project
.in(file("."))
.aggregate(core)
.settings(
publish / skip := true,
publishConfiguration := publishConfiguration.value.withOverwrite(true),
publishLocalConfiguration := publishLocalConfiguration.value.withOverwrite(true)
)
lazy val core = project
.in(file("modules/core"))
.settings(
name := "castanet",
publishConfiguration := publishConfiguration.value.withOverwrite(true),
publishLocalConfiguration := publishLocalConfiguration.value.withOverwrite(true),
resolvers += "Local Maven Repository" at "file://" + Path.userHome.absolutePath + "/.m2/repository",
resolvers += Resolver.githubPackages("OWNER"),
libraryDependencies ++= Seq(
"org.typelevel" %% "cats-core" % catsVersion,
"co.fs2" %% "fs2-core" % fs2Version,
"co.fs2" %% "fs2-io" % fs2Version,
"org.typelevel" %% "cats-effect" % ceVersion,
"dev.optics" %% "monocle-core" % monocleVersion,
"org.scodec" %% "scodec-bits" % scodecVersion,
"org.scala-lang" %% "scala3-staging" % Scala3,
"io.circe" %% "circe-yaml" % "0.14.2",
"org.scalameta" %% "munit" % munitVersion % Test,
"org.scalameta" %% "munit-scalacheck" % munitVersion % Test,
"org.typelevel" %% "munit-cats-effect-3" % munitCEVersion % Test
),
libraryDependencies ++= Seq(
// "io.circe" %% "circe-yaml",
"io.circe" %% "circe-core",
"io.circe" %% "circe-generic",
"io.circe" %% "circe-parser"
).map(_ % circeVersion)
)