com-lihaoyi / mill

Mill is a fast JVM build tool that supports Java and Scala. 2-3x faster than Gradle and 5-10x faster than Maven for common workflows, Mill aims to make your project’s build process performant, maintainable, and flexible
https://mill-build.org/
MIT License
2.04k stars 331 forks source link

Integrate lefou/`millw` and `millw.bat` into Mill repository #2161

Open lefou opened 1 year ago

lefou commented 1 year ago

Goals:

JD557 commented 1 year ago

While I'm not qualified to help here, if the plan is to have a new windows .bat file, wouldn't it be better to just use a .ps1 file instead?

FWIW, Powershell comes installed in all windows versions since windows 7, and using that should avoid some of the legacy craft from batch.

lefou commented 1 year ago

I find it essential, that we support booting all older Mill versions, so that any old project can simply use the latest version of the script.

lihaoyi commented 2 months ago

@lefou I'd like to revisit this issue, in the run up to Mill 0.12/0.13

IIRC one point of contention was the globally installed mill executable parsing a project-specific ./mill script to try and find the version to use. I used to think this was important, but I've changed my mine and would be willing to give that up now. Since we're now recommending usage being of ./mill bootstrap scripts, the exact behavior when the global mill and local ./mill diverges seems less important now than it used to be

Do you recall if there were any other points of contention? Or what other major ways in which millw diverges from the existing mill script?