val scala3: String = "3.4.1" externalResolvers := Seq( "Garrity Software Mirror" at "https://maven.garrity.co/releases", "Garrity Software Releases" at "https://maven.garrity.co/gs" ) ThisBuild / scalaVersion := scala3 ThisBuild / versionScheme := Some("semver-spec") ThisBuild / gsProjectName := "gs-log" val noPublishSettings = Seq( publish := {} ) val sharedSettings = Seq( scalaVersion := scala3, version := semVerSelected.value, coverageFailOnMinimum := true /* coverageMinimumStmtTotal := 100, coverageMinimumBranchTotal := 100 */ ) lazy val testSettings = Seq( libraryDependencies ++= Seq( "org.scalameta" %% "munit" % "1.0.0-M10" % Test ) ) lazy val `gs-log` = project .in(file(".")) .aggregate(api) .settings(noPublishSettings) .settings(name := s"${gsProjectName.value}-v${semVerMajor.value}") lazy val api = project .in(file("modules/api")) .settings(sharedSettings) .settings(testSettings) .settings(name := s"${gsProjectName.value}-api-v${semVerMajor.value}")