-
Notifications
You must be signed in to change notification settings - Fork 2
/
Copy pathbuild.sbt
110 lines (94 loc) · 3.32 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
101
102
103
104
105
106
107
108
109
110
val Scala213 = "2.13.16"
val Scala3 = "3.6.3"
ThisBuild / scalaVersion := Scala213
ThisBuild / crossScalaVersions := Seq(Scala213, Scala3)
ThisBuild / organization := "me.wojnowski"
ThisBuild / versionScheme := Some("early-semver")
inThisBuild(
List(
organization := "me.wojnowski",
homepage := Some(url("https://github.com/jwojnowski/oidc4s")),
licenses := List("MIT License" -> url("https://opensource.org/licenses/MIT")),
developers := List(
Developer(
"jwojnowski",
"Jakub Wojnowski",
url("https://github.com/jwojnowski")
)
),
sonatypeCredentialHost := "s01.oss.sonatype.org",
sonatypeRepository := "https://s01.oss.sonatype.org/service/local"
)
)
val commonSettings = Seq(
makePom / publishArtifact := true,
// mimaPreviousArtifacts := previousStableVersion.value.map(organization.value %% moduleName.value % _).toSet
mimaPreviousArtifacts := Set.empty
)
lazy val Versions = new {
val cats = new {
val core = "2.13.0"
val effect = "3.5.7"
}
val circe = "0.14.10"
val sttp = "3.10.2"
val jwtScala = "9.4.4"
val mUnit = "1.1.0"
val mUnitCatsEffect = "2.0.0"
val mUnitScalacheck = "1.0.0"
}
lazy val core = (project in file("core")).settings(
commonSettings ++ Seq(
name := "oidc4s-core",
libraryDependencies += "org.typelevel" %% "cats-core" % Versions.cats.core,
libraryDependencies += "org.typelevel" %% "cats-effect" % Versions.cats.effect,
libraryDependencies += "org.scalameta" %% "munit" % Versions.mUnit % Test,
libraryDependencies += "org.typelevel" %% "munit-cats-effect" % Versions.mUnitCatsEffect % Test,
libraryDependencies += "org.typelevel" %% "cats-effect-testkit" % Versions.cats.effect % Test,
libraryDependencies += "org.scalameta" %% "munit-scalacheck" % Versions.mUnitScalacheck % Test,
libraryDependencies += "org.typelevel" %% "scalacheck-effect-munit" % "2.0.0-M2" % Test,
libraryDependencies += "com.github.jwt-scala" %% "jwt-core" % "10.0.1" % Test
)
)
lazy val circe = (project in file("circe"))
.settings(
commonSettings ++ Seq(
name := "oidc4s-circe",
libraryDependencies += "io.circe" %% "circe-core" % Versions.circe,
libraryDependencies += "io.circe" %% "circe-parser" % Versions.circe,
libraryDependencies += "org.typelevel" %% "jawn-parser" % "1.6.0" // CVE-2022-21653
)
)
.dependsOn(core % "compile->compile;test->test")
lazy val sttp = (project in file("sttp"))
.settings(
commonSettings ++ Seq(
name := "oidc4s-sttp",
libraryDependencies += "com.softwaremill.sttp.client3" %% "core" % Versions.sttp
)
)
.dependsOn(core % "compile->compile;test->test")
lazy val testkit = (project in file("testkit"))
.settings(
commonSettings ++ Seq(
name := "oidc4s-testkit",
libraryDependencies ++= Seq(
"org.scalameta" %% "munit" % Versions.mUnit % Test
)
)
)
.dependsOn(core, circe % "test->compile")
lazy val quickSttpCirce = (project in file("quick-sttp-circe"))
.settings(
commonSettings ++ Seq(
name := "oidc4s-quick-sttp-circe"
)
)
.dependsOn(core, circe, sttp)
lazy val root = (project in file("."))
.settings(
publish / skip := true,
mimaFailOnNoPrevious := false
)
.aggregate(core, circe, sttp, quickSttpCirce, testkit)