1- import $ivy.`com.goyeau::mill-git::0.2.6`
2- import $ivy.`com.goyeau::mill-scalafix::0.4.2`
1+ import $repo.`https://oss.sonatype.org/content/repositories/snapshots`
2+ import $ivy.`com.goyeau::mill-git::0.2.7-8-118f733-SNAPSHOT`
3+ import $ivy.`com.goyeau::mill-scalafix::0.5.1-1-e3aa1ee-SNAPSHOT`
34import $ivy.`org.typelevel::scalac-options:0.1.7`
45import com.goyeau.mill.git.{GitVersionModule, GitVersionedPublishModule}
56import com.goyeau.mill.scalafix.StyleModule
6- import mill._
7+ import mill.*
78import mill.Task.dest
8- import mill.scalalib._
9+ import mill.define.Cross
10+ import mill.scalalib.*
911import mill.scalalib.publish.{Developer, License, PomSettings, VersionControl}
10- import org.typelevel.scalacoptions.ScalacOptions._
12+ import org.typelevel.scalacoptions.ScalacOptions.*
1113import org.typelevel.scalacoptions.{ScalaVersion, ScalacOptions}
1214
1315object `mill-git` extends Cross[MillGitCross]("0.12.0", "0.13.0-M0-93-a6992e")
14- trait MillGitCross extends Cross.Module[String] with StyleModule with GitVersionedPublishModule {
15- val millVersion = crossValue
16- override def scalaVersion = millVersion match {
16+ trait MillGitCross extends Cross.Module[String] with StyleModule with GitVersionedPublishModule:
17+ val millVersion = crossValue
18+ override def scalaVersion = millVersion match
1719 case millVersion if millVersion.startsWith("0.12") => "2.13.16"
1820 case millVersion if millVersion.startsWith("0.13") => "3.6.3"
19- }
2021 override def scalacOptions = super.scalacOptions() ++ ScalacOptions.tokensForVersion(
2122 ScalaVersion.unsafeFromString(scalaVersion()),
2223 ScalacOptions.default + source3 ++ fatalWarningOptions
@@ -29,24 +30,22 @@ trait MillGitCross extends Cross.Module[String] with StyleModule with GitVersion
2930 )
3031 override def ivyDeps = super.ivyDeps() ++ Agg(ivy"org.eclipse.jgit:org.eclipse.jgit:7.1.0.202411261347-r")
3132
32- object test extends ScalaTests with TestModule.Munit {
33+ object test extends ScalaTests with TestModule.Munit:
3334 override def ivyDeps = Agg(
3435 ivy"org.scalameta::munit::1.1.0",
3536 ivy"com.lihaoyi::mill-testkit:$millVersion"
3637 )
3738 override def forkEnv = Map("MILL_EXECUTABLE_PATH" -> millExecutable.assembly().path.toString)
3839
3940 // Create a Mill executable configured for testing our plugin
40- object millExecutable extends JavaModule {
41+ object millExecutable extends JavaModule:
4142 override def ivyDeps = Agg(ivy"com.lihaoyi:mill-dist:$millVersion")
4243 override def mainClass = Some("mill.runner.client.MillClientMain")
43- override def resources = T {
44+ override def resources = Task:
4445 val p = dest / MillGitCross.this.artifactId()
4546 os.write(p, MillGitCross.this.localClasspath().map(_.path).mkString("\n"), createFolders = true)
4647 Seq(PathRef(dest))
47- }
48- }
49- }
48+ end test
5049
5150 override def artifactName = s"mill-git_mill${millBinaryVersion(millVersion)}"
5251 override def publishVersion = GitVersionModule.version(withSnapshotSuffix = true)()
@@ -58,10 +57,9 @@ trait MillGitCross extends Cross.Module[String] with StyleModule with GitVersion
5857 versionControl = VersionControl.github("joan38", "mill-git"),
5958 developers = Seq(Developer("joan38", "Joan Goyeau", "https://github.com/joan38"))
6059 )
61- }
60+ end MillGitCross
6261
63- def millBinaryVersion(millVersion: String) = millVersion match {
62+ def millBinaryVersion(millVersion: String) = millVersion match
6463 case version if version.startsWith("0.12") => "0.11" // 0.12.x is binary compatible with 0.11.x
6564 case version if version.startsWith("0.13") => "0.13.0-M0"
6665 case _ => throw new IllegalArgumentException(s"Unsupported Mill version: $millVersion")
67- }
0 commit comments