-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathbuild.sbt
More file actions
59 lines (54 loc) · 2 KB
/
build.sbt
File metadata and controls
59 lines (54 loc) · 2 KB
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
val Version = new {
val CaseInsensitive = "1.5.0"
val Cats = "2.13.0"
val DisciplineMunit = "2.0.0"
val Mapping = "0.7.0"
val Scala = "3.3.7"
val Skunk = "1.0.0"
}
def module(identifier: Option[String]): Project = {
Project(identifier.getOrElse("root"), file(identifier.fold(".")("modules/" + _))).settings(
Compile / scalacOptions ++= "-source:future" :: "-rewrite" :: "-new-syntax" :: "-Wunused:all" :: Nil,
name := "sql-ext" + identifier.fold("")("-" + _)
)
}
inThisBuild(
Def.settings(
developers := List(Developer("taig", "Niklas Klein", "mail@taig.io", url("https://taig.io/"))),
dynverVTagPrefix := false,
homepage := Some(url("https://github.com/taig/sql-ext/")),
licenses := List("MIT" -> url("https://raw.githubusercontent.com/taig/sql-ext/main/LICENSE")),
scalaVersion := Version.Scala,
versionScheme := Some("early-semver")
)
)
lazy val root = module(identifier = None)
.enablePlugins(BlowoutYamlPlugin)
.settings(noPublishSettings)
.settings(
blowoutGenerators ++= {
val workflows = file(".github") / "workflows"
BlowoutYamlGenerator.lzy(workflows / "main.yml", GitHubActionsGenerator.main) ::
BlowoutYamlGenerator.lzy(workflows / "pull-request.yml", GitHubActionsGenerator.pullRequest) ::
BlowoutYamlGenerator.lzy(workflows / "tag.yml", GitHubActionsGenerator.tag) ::
Nil
}
)
.aggregate(core, skunk)
lazy val core = module(identifier = Some("core"))
.settings(
libraryDependencies ++=
"org.typelevel" %% "cats-core" % Version.Cats ::
"org.typelevel" %% "cats-laws" % Version.Cats % "test" ::
"org.typelevel" %% "discipline-munit" % Version.DisciplineMunit % "test" ::
Nil
)
lazy val skunk = module(identifier = Some("skunk"))
.settings(
libraryDependencies ++=
"io.taig" %% "mapping-core" % Version.Mapping ::
"org.tpolecat" %% "skunk-core" % Version.Skunk ::
"org.typelevel" %% "case-insensitive" % Version.CaseInsensitive ::
Nil
)
.dependsOn(core)