diff --git a/.github/workflows/scala.yml b/.github/workflows/scala.yml index 3c3301b..d1e8fa7 100644 --- a/.github/workflows/scala.yml +++ b/.github/workflows/scala.yml @@ -21,7 +21,7 @@ jobs: - os: ubuntu-latest java: 21 - os: ubuntu-latest - java: 24 + java: 25 runs-on: ${{ matrix.os }} steps: diff --git a/.scalafix.conf b/.scalafix.conf index 7b1e65a..07ce3ba 100644 --- a/.scalafix.conf +++ b/.scalafix.conf @@ -5,3 +5,5 @@ rules = [ RedundantSyntax ] ExplicitResultTypes.memberVisibility = [Public] +# Needed for support of Scala versions not yet officially supported by Scalafix +ExplicitResultTypes.fetchScala3CompilerArtifactsOnVersionMismatch = true diff --git a/.scalafmt.conf b/.scalafmt.conf index c5e69d1..2b00356 100644 --- a/.scalafmt.conf +++ b/.scalafmt.conf @@ -1,5 +1,5 @@ -version = 3.10.3 -runner.dialect = scala36 +version = 3.10.4 +runner.dialect = Scala3Future maxColumn = 100 align.preset=none rewrite.trailingCommas.style = always diff --git a/build.sbt b/build.sbt index 0064977..49587e5 100644 --- a/build.sbt +++ b/build.sbt @@ -1,5 +1,5 @@ ThisBuild / semanticdbEnabled := true -lazy val scalaV = "3.7.4" +lazy val scalaV = "3.8.1" ThisBuild / scalaVersion := scalaV resolvers += @@ -17,15 +17,18 @@ def isDevBuild: Boolean = sys.env.get("DEV_BUILD").exists(s => s != "0" && s != "false") lazy val graalOptions = Seq( - // If running on Scala <3.8 and JDK >=24, we need to allow unsafe memory access. - // Otherwise, we get annoying warnings on startup. - // https://github.com/scala/scala3/issues/9013 - // Remove this after moving to Scala 3.8 - if (scalaV.split('.')(1).toInt < 8) Seq("-J--sun-misc-unsafe-memory-access=allow") else Nil, // Do a fast build if it's a dev build // For the release build, optimize for speed and make a build report if (isDevBuild) Seq("-Ob") else Seq("-O3", "--emit build-report"), ).flatten ++ Seq( + // If using dependencies on Scala <3.8 and JDK >=24, we need to allow unsafe memory access. + // Otherwise, we get annoying warnings on startup. + // https://github.com/scala/scala3/issues/9013 + // Remove this after dependency upgrades to Scala 3.8+ + // See this thread for an explanation of why this requires also updates in dependencies: + // https://github.com/scala/scala3/pull/24109#issuecomment-3786629196 + "-J--sun-misc-unsafe-memory-access=allow", + // Custom Graal features "--features=eu.neverblink.jelly.cli.graal.ProtobufFeature," + "eu.neverblink.jelly.cli.graal.JenaInternalsFeature," + "eu.neverblink.jelly.cli.graal.LargeXmlFeature", diff --git a/src/main/scala/eu/neverblink/jelly/cli/command/Version.scala b/src/main/scala/eu/neverblink/jelly/cli/command/Version.scala index 66c2e14..bbe129c 100644 --- a/src/main/scala/eu/neverblink/jelly/cli/command/Version.scala +++ b/src/main/scala/eu/neverblink/jelly/cli/command/Version.scala @@ -36,6 +36,7 @@ object Version extends JellyCommand[VersionOptions]: |Jelly-JVM $jellyV |Apache Jena $jenaV |JVM ${System.getProperty("java.vm.name")} ${System.getProperty("java.vm.version")} + |Scala ${BuildInfo.scalaVersion} |------------------------------------------------------------- |""".stripMargin.trim) // Print feature support info