Change default Scala versions to 3.7.4 and 2.13.17
This Scala CLI version switches the default Scala versions:
- default Scala 3 to 3.7.4
- default Scala 2.13 to 2.13.17
scala-cli version
# Scala CLI version: 1.10.0
# Scala version (default): 3.7.4Added by @Gedochao in #3942 and #3895
Support for the new Scala 3.8 REPL
As per scala/scala3#24243, Scala 3 REPL has been extracted to a separate artifact in Scala 3.8, as a result of which the use of the REPL command with Scala 3.8.0-RC1-bin-20251101-389483e-NIGHTLY or newer will require upgrading Scala CLI at least to 1.10 to work.
scala-cli repl
# Welcome to Scala 3.8.0-RC1-bin-20251101-389483e-NIGHTLY (23.0.1, Java OpenJDK 64-Bit Server VM).
# Type in expressions for evaluation. Or try :help.
#
# scala> Support for adding extra directories to a Docker image
This feature adds the ability to include additional directories in Docker images. Users can now specify extra directories to be copied into a Docker image during the build process. The directories can be passed with the --docker-extra-directories command line option or //> using packaging.dockerExtraDirectories directive.
//> using packaging.dockerExtraDirectories path/to/directory1 path/to/directory2scala-cli --power package . --docker --docker-image-repository repo --docker-extra-directories path/to/directoryAdded by @btomala and @Gedochao in VirtusLab/scala-packager#250 and #3908
Deprecate support for building GraalVM native images with Scala pre-3.3
When building GraalVM native images with Scala CLI and Scala versions older than 3.3.0, the following warning will now be printed:
# [warning] building native images with Scala 3 older than 3.3.0 is deprecated.
# [warning] support will be dropped in a future Scala CLI version.
# [warning] it is advised to upgrade to a more recent Scala versionWhile the native images will still be built, the functionality will be removed in a future Scala CLI version. It is advised to migrate projects to Scala 3.3 or newer.
Additionally, the following modules have been dropped and will no longer be published:
scala3-runtimescala3-graalscala3-graal-processor
As they remain necessary for building native images for Scala pre-3.3 projects, their usage has been deprecated and frozen at respective version 1.9.1.
Stop publishing certain modules for Scala 2
While it is technically an internal change, it is worth noting certain Scala CLI modules will no longer be published for Scala 2.
Those include:
runnertest-runnertasty-libconfigspecification-level
From this point on, they will only be published for Scala 3.
Added by @Gedochao in #3911 and #3912
Features
- Bump
scala-packagerto 0.2.1 & enable adding extra directories to a docker image by @Gedochao & @btomala in #3908 - Add support for the new Scala 3.8 REPL by @Gedochao in #3936
Fixes
- Ensure non-self executable JVM launchers'
setup-ideproduces working BSP connection JSON by @Gedochao in #3876 - Fix test scope resources to not be added to the main scope by @Gedochao in #3898
Documentation changes
- Suggest using ivy2Local in the documentation by @przemek-pokrywka in #3902
Build and internal changes
- Run the default (Scala 3 Next) suite with the JVM bootstrapped launcher on the CI by @Gedochao in #3872
- Run JDK tests for Java 25 by @Gedochao in #3874
- Update MacOS CI by @Gedochao in #3885
- Add
.cursorto.gitignoreby @Gedochao in #3893 - Unify
climodule unit tests with consistent logging, timeouts and other settings by @Gedochao in #3896 - Cross compile the
runnerandtest-runnermodules against Scala 3 Next versions by @Gedochao in #3927 - Migrate integration tests to Scala 3 by @Gedochao in #3926
- Misc unit test fixes by @Gedochao in #3931
- Temporarily tag CLI docker image tests as flaky by @Gedochao in #3939
- Temporarily tag CLI docker image documentation tests as flaky by @Gedochao in #3940
- Temporarily disable some more flaky CLI docker image documentation tests by @Gedochao in #3941
- Drop Scala 2 in
runner,test-runnerandtasty-libmodules by @Gedochao in #3911 - Drop Scala 2 in
configandspecification-levelmodules & bumpjsoniter-scalato 2.38.2 (was 2.13.5.2) by @Gedochao in #3912 - NIT Fix miscellaneous warnings by @Gedochao in #3913
- NIT Fix more miscellaneous warnings by @Gedochao in #3920
- Drop
scala3-runtime,scala3-graal&scala3-graal-processor& deprecate pre-Scala-3.3 native images by @Gedochao in #3929
Updates
- Update scala-cli.sh launcher for 1.9.1 by @github-actions[bot] in #3871
- Bump sass from 1.92.1 to 1.93.0 in /website by @dependabot[bot] in #3878
- Bump Mill to 0.12.16 (was 0.12.15) by @Gedochao in #3881
- Bump Munit to 1.2.0 by @Gedochao in #3883
- Bump Scala 3 Next RC to 3.7.4-RC1 by @Gedochao in #3887
- Bump sass from 1.93.0 to 1.93.2 in /website by @dependabot[bot] in #3889
- Bump Scala 2.13 to 2.13.17 by @Gedochao in #3895
- Bump Node to 24 &
@docusaurus/*to 3.9.1 by @Gedochao in #3899 - Bump Scala 2.13 to 2.13.17 on the CI by @Gedochao in #3900
- Bump
coursierto 2.1.25-M19 by @Gedochao in #3884 - Bump internal Scala version to 3.3.7 by @Gedochao in #3906
- Bump Ammonite to 3.0.3 by @Gedochao in #3909
- Migrate from old
coursierAPIs by @Gedochao in #3910 - Bump actions/setup-node from 5 to 6 by @dependabot[bot] in #3915
- Bump
scala-packagerto 0.2.1 & enable adding extra directories to a docker image by @Gedochao & @btomala in #3908 - Bump Scala Native to 0.5.9 by @Gedochao in #3918
- Bump react from 19.1.1 to 19.2.0 in /website by @dependabot[bot] in #3904
- Bump
docusaurusto 3.9.2 (was 3.9.1) by @Gedochao in #3919 - Bump actions/download-artifact from 5 to 6 by @dependabot[bot] in #3924
- Bump actions/upload-artifact from 4 to 5 by @dependabot[bot] in #3925
- Bump Scala 3 Next RC to 3.7.4-RC3 by @Gedochao in #3928
- Bump
python-native-libsto 0.2.5 (was 0.2.4) by @Gedochao in #3932 - Bump Scala 3 Next to 3.7.4 by @Gedochao in #3942
- Bump expecty to 0.17.1 (was 0.17.0) by @Gedochao in #3938
- Bump sass from 1.93.2 to 1.93.3 in /website by @dependabot[bot] in #3935
New Contributors
- @przemek-pokrywka made their first contribution in #3902
Full Changelog: v1.9.1...v1.10.0