Skip to content

Conversation

@ajrnz
Copy link

@ajrnz ajrnz commented Mar 25, 2022

This updates mill to use the prebuilt launcher (script from github release).

This means that -i or --repl will now work without a separate app for mill-interactive.

It seems to work for me.

"MILL_VERSION": "${mill-dev.version}"
}
"name": "mill",
"prebuilt": "https://github.com/com-lihaoyi/mill/releases/download/${version}/${version}"
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'd rather not use a prebuilt JAR here. If it were a binary, it would make sense, but as it's a JAR, we can just have coursier pull the right class path.

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This isn't a jar, it is the standard mill startup shell script which only changes very seldom (except for the embedded version number).

This is all that is required to bootstrap mill and removes the need for the mill-interactive config. Maybe there is a better way of doing this in coursier - I've only examined this configuration from a cursory perspective.

I'll like to be able to install / update mill from cs as it a great way to get the whole ecosystem up and running, however the current configuration doesn't work correctly as it doesn't use the standard startup script and @lefou et al. refuse to look at mill bugs installed from coursier as mill -i etc doesn't work etc, which is understandable.

I understood that the recent changes meant that the standard scripts for sbt could now be used. Can the same be done for mill?

@alexarchambault
Copy link
Member

@ajrnz I think I'd be fine adding this, but alongside the existing mill app descriptor. So that could be added under a different name, like mill-launcher.

@ckipp01
Copy link
Collaborator

ckipp01 commented Sep 5, 2022

I actually came to dig into the mill stuff because I noticed there was a mill-interactive and a mill. If what @ajrnz has outlined works, then I'd totally be in favor of this since it'd just use the mill launcher to correctly launch Mill exactly how Mill intends it. I'd actually recommend not calling it mill-launcher, but instead just calling it mill since in theory this is how Mill is meant to be used. What's the status of this?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants