Skip to content
Choose a tag to compare


@alexarchambault alexarchambault released this
· 921 commits to master since this release
Choose a tag to compare

Native launcher changes

  • Don't let native-image interpret the -D options passed to the native launcher, so that we can interpret those ourselves as normal options, like the JAR-based launcher does.
  • Have the launch command accept Java options via --java-opt / -J, that are passed to java when launching a JVM application from the native launcher, like cs launch -J -Xmx3g ammonite.

In progress changes

The changes below are meant to be described more extensively and documented in later releases, while being more tested in the mean time. These are mentioned here for the sake of comprehensiveness.

  • Major in-progress overhaul of the internals of the bootstrap and install commands.
  • Early support for pre-built native launchers for the install command.
  • Experimental java and java-home commands. java fetches and starts a custom JVM (like cs java --jvm graalvm@19.3+ -version), and java-home fetches and prints the home directory of a custom JVM (like cs java-home --jvm 11).
  • Add support for generating GraalVM native images to the bootstrap command. Use like cs bootstrap --native-image coursier -o custom-cs.
  • Add experimental setup command, installing a JVM if none is found locally, updating JAVA_HOME and PATH if needed, and installing a few applications via the install command (cs, ammonite, sbt, in particular).

Other changes

  • Add a --scala alias for --scala-version, in most CLI commands. Use like cs launch ammonite --scala 2.13.