forked from typelevel/typelevel-scalafix
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathbuild.sbt
85 lines (76 loc) · 2.67 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
ThisBuild / tlBaseVersion := "0.4"
ThisBuild / crossScalaVersions := Seq(V.scala213, V.scala212)
ThisBuild / scalaVersion := (ThisBuild / crossScalaVersions).value.head
lazy val CatsVersion = "2.12.0"
lazy val CatsEffectVersion = "3.5.7"
lazy val Fs2Version = "3.11.0"
lazy val Http4sVersion = "0.23.30"
ThisBuild / startYear := Some(2022)
ThisBuild / developers ++= List(
tlGitHubDev("DavidGregory084", "David Gregory")
)
ThisBuild / semanticdbEnabled := true
ThisBuild / semanticdbVersion := scalafixSemanticdb.revision
ThisBuild / scalafixScalaBinaryVersion := CrossVersion.binaryScalaVersion(scalaVersion.value)
lazy val `typelevel-scalafix` = project
.in(file("."))
.aggregate(`typelevel-scalafix-rules`, cats.all, catsEffect.all, fs2.all, http4s.all)
.enablePlugins(NoPublishPlugin)
lazy val `typelevel-scalafix-rules` = project
.in(file("target/rules-aggregate"))
.dependsOn(cats.rules, catsEffect.rules, fs2.rules, http4s.rules)
.settings(
moduleName := "typelevel-scalafix",
tlVersionIntroduced ++= List("2.12", "2.13").map(_ -> "0.1.2").toMap,
// TODO: Should be removed if/when https://github.com/lightbend/mima/issues/702 is fixed
mimaPreviousArtifacts := Set.empty
)
// typelevel/cats Scalafix rules
lazy val cats = scalafixProject("cats")
.inputSettings(
libraryDependencies ++= Seq(
"org.typelevel" %% "cats-core" % CatsVersion
)
)
// typelevel/cats-effect Scalafix rules
lazy val catsEffect = scalafixProject("cats-effect")
.inputSettings(
libraryDependencies ++= Seq(
"org.typelevel" %% "cats-core" % CatsVersion,
"org.typelevel" %% "cats-effect" % CatsEffectVersion
)
)
.outputSettings(
libraryDependencies ++= Seq(
"org.typelevel" %% "cats-core" % CatsVersion,
"org.typelevel" %% "cats-effect" % CatsEffectVersion
)
)
// typelevel/fs2 Scalafix rules
lazy val fs2 = scalafixProject("fs2")
.rulesSettings(
tlVersionIntroduced ++= List("2.12", "2.13").map(_ -> "0.1.5").toMap
)
.inputSettings(
semanticdbOptions += "-P:semanticdb:synthetics:on",
libraryDependencies ++= Seq(
"org.typelevel" %% "cats-core" % CatsVersion,
"org.typelevel" %% "cats-effect" % CatsEffectVersion,
"co.fs2" %% "fs2-core" % Fs2Version
)
)
// http4s/http4s Scalafix rules
lazy val http4s = scalafixProject("http4s")
.rulesSettings(
tlVersionIntroduced ++= List("2.12", "2.13").map(_ -> "0.1.5").toMap
)
.inputSettings(
libraryDependencies ++= Seq(
"org.http4s" %% "http4s-core" % Http4sVersion
)
)
.outputSettings(
libraryDependencies ++= Seq(
"org.http4s" %% "http4s-core" % Http4sVersion
)
)