Summary
Cross-compile the SoftPayment project for both Scala 2.12.20 and 2.13.16, and upgrade from JDK 8 to JDK 17.
Changes
- Add
crossScalaVersions and moduleSettings to build.sbt
- Bump version from
0.8.3.1 to 0.9.0
- Upgrade JDK target from 8 to 17 (javacOptions, Docker base image, CI/CD)
- Migrate
scala.collection.JavaConverters → scala.jdk.CollectionConverters
- Migrate
configs.Configs → configs.ConfigReader API
- Fix
.complete() call syntax for Scala 2.13 compatibility
- Add
base-url kebab-case aliases in reference.conf files
- Upgrade dependencies: generic-persistence, scheduler, notification, account, sbt plugins, scalapb-extensions, scoverage, scala-parser-combinators
- Add
scala-collection-compat for cross-version compatibility
- Add explicit
slf4j-api and logback-classic dependencies
- Update GitHub Actions workflows (checkout v4, setup-java v4, JDK 17, cross-compile step, coverage)
- Add JVM
--add-opens flags for Java 17 module system
- Fork tests (
Test / fork := true)
Story
Story 5.10-pre-2-d: Cross-Compile SoftPayment (2.12 + 2.13) + Java 17
Summary
Cross-compile the SoftPayment project for both Scala 2.12.20 and 2.13.16, and upgrade from JDK 8 to JDK 17.
Changes
crossScalaVersionsandmoduleSettingstobuild.sbt0.8.3.1to0.9.0scala.collection.JavaConverters→scala.jdk.CollectionConvertersconfigs.Configs→configs.ConfigReaderAPI.complete()call syntax for Scala 2.13 compatibilitybase-urlkebab-case aliases in reference.conf filesscala-collection-compatfor cross-version compatibilityslf4j-apiandlogback-classicdependencies--add-opensflags for Java 17 module systemTest / fork := true)Story
Story 5.10-pre-2-d: Cross-Compile SoftPayment (2.12 + 2.13) + Java 17