Skip to content

Commit 63f9391

Browse files
authored
Merge pull request #2988 from lefou/support-config-mill-version
Support updating `.config/mill-version`
2 parents 2a9f96c + 6343f73 commit 63f9391

File tree

4 files changed

+17
-6
lines changed

4 files changed

+17
-6
lines changed

modules/core/src/main/scala/org/scalasteward/core/buildtool/mill/MillAlg.scala

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -71,7 +71,12 @@ final class MillAlg[F[_]](implicit
7171
private def getMillVersion(buildRootDir: File): F[Option[Version]] =
7272
for {
7373
millVersionFileContent <- fileAlg.readFile(buildRootDir / millVersionName)
74-
version = millVersionFileContent.flatMap(parser.parseMillVersion)
74+
millVersionFileInConfigContent <- fileAlg.readFile(
75+
buildRootDir / ".config" / millVersionNameInConfig
76+
)
77+
version = millVersionFileContent
78+
.orElse(millVersionFileInConfigContent)
79+
.flatMap(parser.parseMillVersion)
7580
} yield version
7681

7782
private def getMillPluginDeps(
@@ -119,4 +124,5 @@ object MillAlg {
119124
update.artifactIds.exists(_.name === millMainArtifactId.name)
120125

121126
val millVersionName = ".mill-version"
127+
val millVersionNameInConfig = "mill-version"
122128
}

modules/core/src/main/scala/org/scalasteward/core/edit/update/Selector.scala

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ package org.scalasteward.core.edit.update
1919
import cats.Foldable
2020
import cats.syntax.all._
2121
import java.util.regex.Pattern
22-
import org.scalasteward.core.buildtool.mill.MillAlg.{isMillMainUpdate, millVersionName}
22+
import org.scalasteward.core.buildtool.mill.MillAlg
2323
import org.scalasteward.core.buildtool.sbt.{buildPropertiesName, isSbtUpdate}
2424
import org.scalasteward.core.data.{Dependency, Update}
2525
import org.scalasteward.core.edit.update.data.VersionPosition._
@@ -169,8 +169,11 @@ object Selector {
169169
update: Update.Single,
170170
versionPositions: List[VersionPosition]
171171
): List[VersionPosition] =
172-
if (isMillMainUpdate(update))
173-
versionPositions.filter(_.version.path.endsWith(millVersionName))
172+
if (MillAlg.isMillMainUpdate(update))
173+
versionPositions.filter(f =>
174+
f.version.path.endsWith(MillAlg.millVersionNameInConfig) ||
175+
f.version.path.endsWith(MillAlg.millVersionName)
176+
)
174177
else List.empty
175178

176179
private def sbtVersionPositions(

modules/core/src/main/scala/org/scalasteward/core/repoconfig/UpdatesConfig.scala

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ import io.circe.generic.extras.semiauto._
2424
import io.circe.refined._
2525
import io.circe.{Codec, Decoder}
2626
import org.scalasteward.core.buildtool.maven.pomXmlName
27-
import org.scalasteward.core.buildtool.mill.MillAlg.millVersionName
27+
import org.scalasteward.core.buildtool.mill.MillAlg
2828
import org.scalasteward.core.buildtool.sbt.buildPropertiesName
2929
import org.scalasteward.core.data.{GroupId, Update}
3030
import org.scalasteward.core.scalafmt.scalafmtConfName
@@ -90,7 +90,8 @@ final case class UpdatesConfig(
9090
object UpdatesConfig {
9191
private val defaultFileExtensions: Set[String] =
9292
Set(
93-
millVersionName,
93+
MillAlg.millVersionName,
94+
MillAlg.millVersionNameInConfig,
9495
".sbt",
9596
".sbt.shared",
9697
".sc",

modules/core/src/test/scala/org/scalasteward/core/buildtool/mill/MillAlgTest.scala

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,7 @@ class MillAlgTest extends FunSuite {
3434
val expected = initial.copy(
3535
trace = Vector(
3636
Cmd("read", s"$repoDir/.mill-version"),
37+
Cmd("read", s"$repoDir/.config/mill-version"),
3738
Cmd("write", predef),
3839
Cmd(repoDir.toString :: millCmd),
3940
Cmd("rm", "-rf", predef)

0 commit comments

Comments
 (0)