-
Notifications
You must be signed in to change notification settings - Fork 4
Expand file tree
/
Copy pathbuild.mill
More file actions
88 lines (73 loc) · 2.56 KB
/
build.mill
File metadata and controls
88 lines (73 loc) · 2.56 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
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
//| mill-version: 1.1.0-RC4
//| mill-jvm-version: 25
//| mvnDeps:
//| - io.github.quafadas:millSite_mill1_3.8:0.0.56
//| - com.goyeau::mill-scalafix::0.6.0
//| - com.lihaoyi::mill-contrib-buildinfo:$MILL_VERSION
// mill mill.scalalib.scalafmt/scalafmt
package build
import mill.*
import mill.scalalib.*
import mill.scalalib.scalafmt.ScalafmtModule
import mill.scalalib.publish.*
import mill.scalajslib.*
import mill.scalajslib.api.*
import io.github.quafadas.millSite.*
import mill.util.VcsVersion
import mill.javalib.dependency.Format
object Config:
val oslib = mvn"com.lihaoyi::os-lib:0.11.3"
val cask = mvn"com.lihaoyi::cask:0.9.7"
val requests = mvn"com.lihaoyi::requests:0.9.0"
val jsoup = mvn"org.jsoup:jsoup:1.18.3"
val upickle = mvn"com.lihaoyi::upickle::4.1.0"
val munit = "1.1.1"
val jsDom = mvn"org.scala-js::scalajs-dom::2.8.0"
val secRand = mvn"org.scala-js::scalajs-java-securerandom:1.0.0"
val playwright = "1.51.0"
val circeVersion = "0.14.15"
val circeOptics = "0.15.1"
val laminar = mvn"com.raquo::laminar::17.2.0"
val mdocVersion = "2.8.2"
val scalaVersion = "3.7.0"
val scalaJSVersion = "1.20.1"
end Config
trait Common extends ScalaModule with ScalafmtModule:
override def scalaVersion = Config.scalaVersion
def mvnDeps = super.mvnDeps() ++ Seq(
Config.upickle,
mvn"com.lihaoyi::scalatags::0.13.1",
mvn"org.ekrich::sconfig::1.8.1"
)
end Common
trait SharedMunitTest extends TestModule.Munit:
override def mvnDeps = super.mvnDeps() ++
Seq(
mvn"org.scalameta::munit::${Config.munit}"
)
end SharedMunitTest
trait CommonJs extends Common with ScalaJSModule:
def scalaJSVersion = Config.scalaJSVersion
override def mvnDeps = super.mvnDeps() ++
Seq(
mvn"org.scala-js::scalajs-dom::2.8.0",
mvn"org.scala-js::scalajs-java-securerandom::1.0.0".withDottyCompat(scalaVersion())
)
end CommonJs
trait PublishModule extends mill.scalalib.PublishModule:
override def artifactName = "dedav4s"
def publishVersion = mill.util.VcsVersion.vcsState().format()
def pomSettings = PomSettings(
description = "Declarative data viz for scala",
organization = "io.github.quafadas",
url = "https://github.com/quafadas/dedav4s",
licenses = Seq(License.`Apache-2.0`),
versionControl = VersionControl.github("quafadas", "dedav4s"),
developers = Seq(
Developer("quafadas", "Simon Parten", "https://github.com/quafadas")
)
)
end PublishModule
trait ShareCompileResources extends ScalaModule:
override def compileResources = super.compileResources() ++ resources()
end ShareCompileResources