2025-02-27 18:45:46 +01:00
|
|
|
// scalafmt: { runner.dialect = scala213 }
|
|
|
|
|
package build
|
|
|
|
|
import mill._, scalalib._
|
2025-03-03 00:24:13 +01:00
|
|
|
import coursier.maven.MavenRepository
|
|
|
|
|
|
|
|
|
|
val sonatypeSnapshots = Seq(
|
|
|
|
|
MavenRepository("https://oss.sonatype.org/content/repositories/snapshots")
|
|
|
|
|
)
|
2025-02-27 18:45:46 +01:00
|
|
|
|
|
|
|
|
object Versions {
|
|
|
|
|
val zio = "2.1.15"
|
|
|
|
|
val zioJson = "0.7.33"
|
|
|
|
|
val zioSchema = "1.6.3"
|
2025-10-06 18:30:22 +02:00
|
|
|
val zioHttp = "3.1.0"
|
2025-02-27 18:45:46 +01:00
|
|
|
val zioPrelude = "1.0.0-RC39"
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
trait CommonModule extends ScalaModule {
|
|
|
|
|
def scalaVersion = "3.6.3"
|
|
|
|
|
def ivyDeps = Agg(
|
|
|
|
|
ivy"dev.zio::zio:${Versions.zio}",
|
2025-10-06 18:30:22 +02:00
|
|
|
ivy"dev.zio::zio-json:${Versions.zioJson}",
|
|
|
|
|
ivy"dev.zio::zio-schema-json:${Versions.zioSchema}",
|
2025-02-27 18:45:46 +01:00
|
|
|
ivy"dev.zio::zio-schema:${Versions.zioSchema}",
|
|
|
|
|
ivy"dev.zio::zio-schema-derivation:${Versions.zioSchema}",
|
|
|
|
|
ivy"dev.zio::zio-prelude:${Versions.zioPrelude}"
|
|
|
|
|
)
|
2025-03-03 00:24:13 +01:00
|
|
|
def repositoriesTask = Task.Anon {
|
|
|
|
|
super.repositoriesTask() ++ sonatypeSnapshots
|
|
|
|
|
}
|
2025-02-27 18:45:46 +01:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
object model extends CommonModule
|
|
|
|
|
|
|
|
|
|
object core extends CommonModule {
|
|
|
|
|
def moduleDeps = Seq(model)
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
object api extends CommonModule {
|
|
|
|
|
def moduleDeps = Seq(core)
|
|
|
|
|
def ivyDeps = Agg(
|
|
|
|
|
ivy"dev.zio::zio:${Versions.zio}",
|
2025-10-06 18:30:22 +02:00
|
|
|
ivy"dev.zio::zio-http:${Versions.zioHttp}"
|
2025-02-27 18:45:46 +01:00
|
|
|
)
|
|
|
|
|
}
|