@@ -45,20 +45,23 @@ final class MillAlg[F[_]](defaultResolver: Resolver)(implicit
45
45
.map(_.nonEmpty)
46
46
)
47
47
48
- private def runMill (buildRootDir : File ) = {
49
- val options =
50
- List (" --no-server" , " --ticker=false" , " --import" , cliPluginCoordinate, " show" , extractDeps)
51
- val command = Nel (" mill" , options)
52
- processAlg.execSandboxed(command, buildRootDir)
53
- }
54
- private def runMillUnder011 (buildRootDir : File , millBuildVersion : Option [Version ]) = {
55
- val predef = buildRootDir / " scala-steward.sc"
56
- val predefContent = content(millBuildVersion)
57
- val command = Nel (" mill" , List (" -i" , " -p" , predef.toString, " show" , extractDeps))
58
- fileAlg.createTemporarily(predef, predefContent).surround {
59
- processAlg.execSandboxed(command, buildRootDir)
48
+ private def runMill (buildRootDir : File , millBuildVersion : Option [Version ]): F [List [String ]] =
49
+ millBuildVersion match {
50
+ case Some (v) if v >= Version (" 0.11" ) =>
51
+ val noTicker =
52
+ if (v >= Version (" 0.12" )) List (" --ticker" , " false" ) else List (" --disable-ticker" )
53
+ val options =
54
+ " --no-server" :: noTicker ++ List (" --import" , cliPluginCoordinate, " show" , extractDeps)
55
+ val command = Nel (" mill" , options)
56
+ processAlg.execSandboxed(command, buildRootDir)
57
+ case _ =>
58
+ val predef = buildRootDir / " scala-steward.sc"
59
+ val predefContent = content(millBuildVersion)
60
+ val command = Nel (" mill" , List (" -i" , " -p" , predef.toString, " show" , extractDeps))
61
+ fileAlg.createTemporarily(predef, predefContent).surround {
62
+ processAlg.execSandboxed(command, buildRootDir)
63
+ }
60
64
}
61
- }
62
65
63
66
override def getDependencies (buildRoot : BuildRoot ): F [List [Scope .Dependencies ]] =
64
67
for {
@@ -79,9 +82,7 @@ final class MillAlg[F[_]](defaultResolver: Resolver)(implicit
79
82
millBuildVersion : Option [Version ]
80
83
): F [List [Scope .Dependencies ]] =
81
84
for {
82
- extracted <-
83
- if (isMillVersionGreaterOrEqual011(millBuildVersion)) runMill(buildRootDir)
84
- else runMillUnder011(buildRootDir, millBuildVersion)
85
+ extracted <- runMill(buildRootDir, millBuildVersion)
85
86
parsed <- F .fromEither(
86
87
parser.parseModules(extracted.dropWhile(! _.startsWith(" {" )).mkString(" \n " ))
87
88
)
@@ -110,9 +111,6 @@ final class MillAlg[F[_]](defaultResolver: Resolver)(implicit
110
111
}
111
112
112
113
object MillAlg {
113
- private [mill] def isMillVersionGreaterOrEqual011 (millVersion : Option [Version ]): Boolean =
114
- millMinVersion(millVersion).flatMap(_.toIntOption).exists(_ >= 11 )
115
-
116
114
private [mill] def millMinVersion (millVersion : Option [Version ]): Option [String ] =
117
115
millVersion.flatMap(_.value.trim.split(" [.]" , 3 ).take(2 ).lastOption)
118
116
0 commit comments