import mill._, scalalib._, publish._ import $ivy.`io.github.davidgregory084::mill-tpolecat:0.1.4` import io.github.davidgregory084.TpolecatModule object core extends TpolecatModule with PublishModule { override def scalaVersion = "2.13.3" override def artifactName = "fancade-core" override def publishVersion = "2.0.0" override def pomSettings = PomSettings( description = "A library for representing and transforming Fancade scripts", organization = "tf.bug", url = "https://gitdab.com/s/fancadescala", licenses = Seq(License.MIT), versionControl = VersionControl( browsableRepository = Some("https://gitdab.com/s/fancadescala"), connection = Some(VersionControlConnection.gitGit("gitdab.com", "s/fancadescala.git")), developerConnection = Some(VersionControlConnection.gitSsh("ssh.gitdab.com", ":s/fancadescala.git", username = Some("git"))), tag = None, ), developers = Seq( Developer("sorenbug", "Soren", "https://gitdab.com/s"), ), ) override def ivyDeps = Agg( ivy"org.typelevel::cats-core:2.2.0", ivy"io.higherkindness::droste-core:0.8.0", ivy"org.scala-graph::graph-core:1.13.2", ) } object tagless extends TpolecatModule with PublishModule { override def scalaVersion = "2.13.3" override def artifactName = "fancade-tagless" override def publishVersion = "2.0.0" override def pomSettings = PomSettings( description = "A tagless DSL for building Fancade scripts", organization = "tf.bug", url = "https://gitdab.com/s/fancadescala", licenses = Seq(License.MIT), versionControl = VersionControl( browsableRepository = Some("https://gitdab.com/s/fancadescala"), connection = Some(VersionControlConnection.gitGit("gitdab.com", "s/fancadescala.git")), developerConnection = Some(VersionControlConnection.gitSsh("ssh.gitdab.com", ":s/fancadescala.git", username = Some("git"))), tag = None, ), developers = Seq( Developer("sorenbug", "Soren", "https://gitdab.com/s"), ), ) override def ivyDeps = Agg( ivy"org.typelevel::cats-tagless-macros:0.11", ) override def moduleDeps = Seq(core) override def scalacPluginIvyDeps = Agg(ivy"org.typelevel:::kind-projector:0.11.0", ivy"com.olegpy::better-monadic-for:0.3.1") } object scodec extends TpolecatModule with PublishModule { override def scalaVersion = "2.13.3" override def artifactName = "fancade-scodec" override def publishVersion = "2.0.0" override def pomSettings = PomSettings( description = "A library for reading and writing the Fancade level format", organization = "tf.bug", url = "https://gitdab.com/s/fancadescala", licenses = Seq(License.MIT), versionControl = VersionControl( browsableRepository = Some("https://gitdab.com/s/fancadescala"), connection = Some(VersionControlConnection.gitGit("gitdab.com", "s/fancadescala.git")), developerConnection = Some(VersionControlConnection.gitSsh("ssh.gitdab.com", ":s/fancadescala.git", username = Some("git"))), tag = None, ), developers = Seq( Developer("sorenbug", "Soren", "https://gitdab.com/s"), ), ) override def moduleDeps = Seq(core) } object recipe extends TpolecatModule with PublishModule { override def scalaVersion = "2.13.3" override def artifactName = "fancade-recipe" override def publishVersion = "2.0.0" override def pomSettings = PomSettings( description = "An application that creates Fancade levels from other data", organization = "tf.bug", url = "https://gitdab.com/s/fancadescala", licenses = Seq(License.MIT), versionControl = VersionControl( browsableRepository = Some("https://gitdab.com/s/fancadescala"), connection = Some(VersionControlConnection.gitGit("gitdab.com", "s/fancadescala.git")), developerConnection = Some(VersionControlConnection.gitSsh("ssh.gitdab.com", ":s/fancadescala.git", username = Some("git"))), tag = None, ), developers = Seq( Developer("sorenbug", "Soren", "https://gitdab.com/s"), ), ) override def ivyDeps = Agg( ivy"org.typelevel::cats-effect:2.2.0", ivy"co.fs2::fs2-core:2.4.3", ivy"co.fs2::fs2-io:2.4.3", ivy"com.monovore::decline:1.3.0", ivy"com.monovore::decline-effect:1.3.0", ) override def moduleDeps = Seq(tagless, scodec) override def scalacPluginIvyDeps = Agg(ivy"org.typelevel:::kind-projector:0.11.0", ivy"com.olegpy::better-monadic-for:0.3.1") }