Skip to content

Commit 134382a

Browse files
committed
Adjust LTS Scala downgrade logic for when default Ammonite does not support it
1 parent 6fd2e8f commit 134382a

File tree

1 file changed

+10
-10
lines changed
  • modules/cli/src/main/scala/scala/cli/commands/repl

1 file changed

+10
-10
lines changed

modules/cli/src/main/scala/scala/cli/commands/repl/Repl.scala

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -75,18 +75,18 @@ object Repl extends ScalaCommand[ReplOptions] with BuildCommandHelpers {
7575
val maybeDowngradedScalaVersion = {
7676
val isDefaultAmmonite = ammonite.contains(true) && ammoniteVersionOpt.isEmpty
7777
extension (s: MaybeScalaVersion)
78-
private def isLts: Boolean = s.versionOpt
79-
.exists(v =>
80-
v.startsWith(Constants.scala3LtsPrefix) ||
81-
ScalaVersionUtil.scala3Lts.contains(v.toLowerCase)
82-
)
78+
private def isLtsAlias: Boolean =
79+
s.versionOpt.exists(v => ScalaVersionUtil.scala3Lts.contains(v.toLowerCase))
80+
private def isLts: Boolean =
81+
s.versionOpt.exists(_.startsWith(Constants.scala3LtsPrefix)) || isLtsAlias
8382
baseOptions.scalaOptions.scalaVersion match
8483
case Some(s)
85-
if isDefaultAmmonite && s.isLts && s.versionOpt
86-
.exists(_.coursierVersion > maxAmmoniteScalaLtsVer.coursierVersion) =>
87-
logger.message(
88-
s"Scala ${s.versionOpt.getOrElse(Constants.scala3Lts)} is not yet supported with this version of Ammonite"
89-
)
84+
if isDefaultAmmonite && s.isLts &&
85+
(s.versionOpt
86+
.exists(_.coursierVersion > maxAmmoniteScalaLtsVer.coursierVersion) ||
87+
s.isLtsAlias) =>
88+
val versionString = s.versionOpt.filter(_ => !s.isLtsAlias).getOrElse(Constants.scala3Lts)
89+
logger.message(s"Scala $versionString is not yet supported with this version of Ammonite")
9090
logger.message(s"Defaulting to Scala $maxAmmoniteScalaLtsVer")
9191
Some(MaybeScalaVersion(maxAmmoniteScalaLtsVer))
9292
case None

0 commit comments

Comments
 (0)