From 336d61a1ec2c19ddf3a0f38f6d9a584ce9dc84d3 Mon Sep 17 00:00:00 2001 From: xuwei-k <6b656e6a69@gmail.com> Date: Tue, 14 Apr 2026 07:00:13 +0900 Subject: [PATCH] Update Java versions --- .github/workflows/ci.yml | 76 ++++++++++++++++++++-------------------- build.sbt | 6 +++- 2 files changed, 43 insertions(+), 39 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 611f3d2be..cca920166 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -29,13 +29,13 @@ jobs: matrix: os: [ubuntu-22.04] scala: [2.13, 3] - java: [temurin@8, temurin@21] + java: [temurin@11, temurin@25] project: [rootJS, rootJVM, rootNative] exclude: - project: rootJS - java: temurin@21 + java: temurin@25 - project: rootNative - java: temurin@21 + java: temurin@25 runs-on: ${{ matrix.os }} timeout-minutes: 60 steps: @@ -47,37 +47,37 @@ jobs: - name: Setup sbt uses: sbt/setup-sbt@v1 - - name: Setup Java (temurin@8) - id: setup-java-temurin-8 - if: matrix.java == 'temurin@8' + - name: Setup Java (temurin@11) + id: setup-java-temurin-11 + if: matrix.java == 'temurin@11' uses: actions/setup-java@v5 with: distribution: temurin - java-version: 8 + java-version: 11 cache: sbt - name: sbt update - if: matrix.java == 'temurin@8' && steps.setup-java-temurin-8.outputs.cache-hit == 'false' + if: matrix.java == 'temurin@11' && steps.setup-java-temurin-11.outputs.cache-hit == 'false' run: sbt +update - - name: Setup Java (temurin@21) - id: setup-java-temurin-21 - if: matrix.java == 'temurin@21' + - name: Setup Java (temurin@25) + id: setup-java-temurin-25 + if: matrix.java == 'temurin@25' uses: actions/setup-java@v5 with: distribution: temurin - java-version: 21 + java-version: 25 cache: sbt - name: sbt update - if: matrix.java == 'temurin@21' && steps.setup-java-temurin-21.outputs.cache-hit == 'false' + if: matrix.java == 'temurin@25' && steps.setup-java-temurin-25.outputs.cache-hit == 'false' run: sbt +update - name: Check that workflows are up to date run: sbt githubWorkflowCheck - name: Check formatting - if: matrix.java == 'temurin@8' && matrix.os == 'ubuntu-22.04' + if: matrix.java == 'temurin@11' && matrix.os == 'ubuntu-22.04' run: sbt 'project ${{ matrix.project }}' '++ ${{ matrix.scala }}' scalafmtCheckAll 'project /' scalafmtSbtCheck - name: scalaJSLink @@ -92,11 +92,11 @@ jobs: run: sbt 'project ${{ matrix.project }}' '++ ${{ matrix.scala }}' test - name: Check binary compatibility - if: matrix.java == 'temurin@8' && matrix.os == 'ubuntu-22.04' + if: matrix.java == 'temurin@11' && matrix.os == 'ubuntu-22.04' run: sbt 'project ${{ matrix.project }}' '++ ${{ matrix.scala }}' mimaReportBinaryIssues - name: Generate API documentation - if: matrix.java == 'temurin@8' && matrix.os == 'ubuntu-22.04' + if: matrix.java == 'temurin@11' && matrix.os == 'ubuntu-22.04' run: sbt 'project ${{ matrix.project }}' '++ ${{ matrix.scala }}' doc - name: Run documentation @@ -125,7 +125,7 @@ jobs: strategy: matrix: os: [ubuntu-22.04] - java: [temurin@8] + java: [temurin@11] runs-on: ${{ matrix.os }} steps: - name: Checkout current branch (full) @@ -136,30 +136,30 @@ jobs: - name: Setup sbt uses: sbt/setup-sbt@v1 - - name: Setup Java (temurin@8) - id: setup-java-temurin-8 - if: matrix.java == 'temurin@8' + - name: Setup Java (temurin@11) + id: setup-java-temurin-11 + if: matrix.java == 'temurin@11' uses: actions/setup-java@v5 with: distribution: temurin - java-version: 8 + java-version: 11 cache: sbt - name: sbt update - if: matrix.java == 'temurin@8' && steps.setup-java-temurin-8.outputs.cache-hit == 'false' + if: matrix.java == 'temurin@11' && steps.setup-java-temurin-11.outputs.cache-hit == 'false' run: sbt +update - - name: Setup Java (temurin@21) - id: setup-java-temurin-21 - if: matrix.java == 'temurin@21' + - name: Setup Java (temurin@25) + id: setup-java-temurin-25 + if: matrix.java == 'temurin@25' uses: actions/setup-java@v5 with: distribution: temurin - java-version: 21 + java-version: 25 cache: sbt - name: sbt update - if: matrix.java == 'temurin@21' && steps.setup-java-temurin-21.outputs.cache-hit == 'false' + if: matrix.java == 'temurin@25' && steps.setup-java-temurin-25.outputs.cache-hit == 'false' run: sbt +update - name: Download target directories (2.13, rootJS) @@ -257,7 +257,7 @@ jobs: strategy: matrix: os: [ubuntu-22.04] - java: [temurin@8] + java: [temurin@11] runs-on: ${{ matrix.os }} steps: - name: Checkout current branch (full) @@ -268,30 +268,30 @@ jobs: - name: Setup sbt uses: sbt/setup-sbt@v1 - - name: Setup Java (temurin@8) - id: setup-java-temurin-8 - if: matrix.java == 'temurin@8' + - name: Setup Java (temurin@11) + id: setup-java-temurin-11 + if: matrix.java == 'temurin@11' uses: actions/setup-java@v5 with: distribution: temurin - java-version: 8 + java-version: 11 cache: sbt - name: sbt update - if: matrix.java == 'temurin@8' && steps.setup-java-temurin-8.outputs.cache-hit == 'false' + if: matrix.java == 'temurin@11' && steps.setup-java-temurin-11.outputs.cache-hit == 'false' run: sbt +update - - name: Setup Java (temurin@21) - id: setup-java-temurin-21 - if: matrix.java == 'temurin@21' + - name: Setup Java (temurin@25) + id: setup-java-temurin-25 + if: matrix.java == 'temurin@25' uses: actions/setup-java@v5 with: distribution: temurin - java-version: 21 + java-version: 25 cache: sbt - name: sbt update - if: matrix.java == 'temurin@21' && steps.setup-java-temurin-21.outputs.cache-hit == 'false' + if: matrix.java == 'temurin@25' && steps.setup-java-temurin-25.outputs.cache-hit == 'false' run: sbt +update - name: Submit Dependencies diff --git a/build.sbt b/build.sbt index 07c686b74..d8c6b1545 100644 --- a/build.sbt +++ b/build.sbt @@ -27,7 +27,10 @@ inThisBuild( name = Some("Run documentation"), cond = Some(s"matrix.scala == '2.13' && matrix.project == 'rootJVM'") ), - githubWorkflowJavaVersions += JavaSpec.temurin("21"), + githubWorkflowJavaVersions := Seq( + JavaSpec.temurin("11"), + JavaSpec.temurin("25") + ), githubWorkflowPublishPostamble += WorkflowStep.Sbt( List("docs/docusaurusPublishGhpages"), name = Some("Publish website"), @@ -40,6 +43,7 @@ lazy val kindProjector = "org.typelevel" % "kind-projector" % "0.13.4" cross Cro lazy val buildSettings = Seq( scalacOptions ++= Seq( + "-release:8", "-encoding", "UTF-8", "-feature",