New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
support mix of launcherType in version overrides #2975
support mix of launcherType in version overrides #2975
Conversation
Everyone involved, I added a field to AppDescriptor so I guess we should have a new minor release I put 2.2.0 in the since annotation, but is that right? |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
CI only fails due to macOS runner being arm64 - #2974 |
modules/install/src/main/scala/coursier/install/RawAppDescriptor.scala
Outdated
Show resolved
Hide resolved
modules/install/src/main/scala/coursier/install/VersionOverride.scala
Outdated
Show resolved
Hide resolved
Precisely, the |
16c6684
to
0538b94
Compare
// for a prebuilt launcher, we expect the path of the launcher to appear somewhere in the script | ||
val scala3path = { | ||
val original = "github.com/scala/scala3/releases/download/3.3.3/scala3-3.3.3.zip/scala3-3.3.3/bin/scala" | ||
if (currentOs == "windows") original.replace('/', '\\') |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I use currentOs
here because if ran from e.g. macOS then the Mac-formatted path will actually be in the launcher.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM from me, since it's needed for Scala CLI as Scala I am going to merge it and work on a release. Hopefully, this is not an issue @alexarchambault ?
Thanks @bishabosha !
needed for scala/scala3#20098 and VirtusLab/scala-cli#2838
enable a mixture of launcherType in version overrides, this allows to have a prebuilt scala launcher for 3.5.0+, and then bootstrap launcher for anything below to preserve backwards compatibility.
here is the proposed new
scala.json
app descriptor:we would actually have to update this app descriptor again when we want a true native launcher built by graalvm - but version overrides support that already.
cc/ @adpi2 @tgodzik @kasiaMarek @Gedochao @hamzaremmal