diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index ab1a30c..89cec55 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -23,51 +23,44 @@ jobs: strategy: matrix: os: [ubuntu-latest] - scala: [2.13.10, 2.12.17] + scala: [2.13.10, 2.12.20] java: [temurin@8, temurin@11] runs-on: ${{ matrix.os }} steps: - name: Checkout current branch (full) - uses: actions/checkout@v2 + uses: actions/checkout@v4 with: fetch-depth: 0 - name: Setup Java (temurin@8) if: matrix.java == 'temurin@8' - uses: actions/setup-java@v2 + uses: actions/setup-java@v4 with: distribution: temurin java-version: 8 + cache: sbt - name: Setup Java (temurin@11) if: matrix.java == 'temurin@11' - uses: actions/setup-java@v2 + uses: actions/setup-java@v4 with: distribution: temurin java-version: 11 + cache: sbt - - name: Cache sbt - uses: actions/cache@v2 - with: - path: | - ~/.sbt - ~/.ivy2/cache - ~/.coursier/cache/v1 - ~/.cache/coursier/v1 - ~/AppData/Local/Coursier/Cache/v1 - ~/Library/Caches/Coursier/v1 - key: ${{ runner.os }}-sbt-cache-v2-${{ hashFiles('**/*.sbt') }}-${{ hashFiles('project/build.properties') }} + - name: Setup sbt + uses: sbt/setup-sbt@v1 - name: Check that workflows are up to date - run: sbt ++${{ matrix.scala }} githubWorkflowCheck + run: sbt '++ ${{ matrix.scala }}' githubWorkflowCheck - - run: sbt ++${{ matrix.scala }} test doc + - run: sbt '++ ${{ matrix.scala }}' test doc - name: Compress target directories run: tar cf targets.tar target project/target - name: Upload target directories - uses: actions/upload-artifact@v2 + uses: actions/upload-artifact@v4 with: name: target-${{ matrix.os }}-${{ matrix.scala }}-${{ matrix.java }} path: targets.tar @@ -84,38 +77,31 @@ jobs: runs-on: ${{ matrix.os }} steps: - name: Checkout current branch (full) - uses: actions/checkout@v2 + uses: actions/checkout@v4 with: fetch-depth: 0 - name: Setup Java (temurin@8) if: matrix.java == 'temurin@8' - uses: actions/setup-java@v2 + uses: actions/setup-java@v4 with: distribution: temurin java-version: 8 + cache: sbt - name: Setup Java (temurin@11) if: matrix.java == 'temurin@11' - uses: actions/setup-java@v2 + uses: actions/setup-java@v4 with: distribution: temurin java-version: 11 + cache: sbt - - name: Cache sbt - uses: actions/cache@v2 - with: - path: | - ~/.sbt - ~/.ivy2/cache - ~/.coursier/cache/v1 - ~/.cache/coursier/v1 - ~/AppData/Local/Coursier/Cache/v1 - ~/Library/Caches/Coursier/v1 - key: ${{ runner.os }}-sbt-cache-v2-${{ hashFiles('**/*.sbt') }}-${{ hashFiles('project/build.properties') }} + - name: Setup sbt + uses: sbt/setup-sbt@v1 - name: Download target directories (2.13.10) - uses: actions/download-artifact@v2 + uses: actions/download-artifact@v4 with: name: target-${{ matrix.os }}-2.13.10-${{ matrix.java }} @@ -124,12 +110,12 @@ jobs: tar xf targets.tar rm targets.tar - - name: Download target directories (2.12.17) - uses: actions/download-artifact@v2 + - name: Download target directories (2.12.20) + uses: actions/download-artifact@v4 with: - name: target-${{ matrix.os }}-2.12.17-${{ matrix.java }} + name: target-${{ matrix.os }}-2.12.20-${{ matrix.java }} - - name: Inflate target directories (2.12.17) + - name: Inflate target directories (2.12.20) run: | tar xf targets.tar rm targets.tar @@ -139,4 +125,4 @@ jobs: PGP_SECRET: ${{ secrets.PGP_SECRET }} SONATYPE_PASSWORD: ${{ secrets.SONATYPE_PASSWORD }} SONATYPE_USERNAME: ${{ secrets.SONATYPE_USERNAME }} - run: sbt ++${{ matrix.scala }} ci-release + run: sbt ci-release diff --git a/.github/workflows/clean.yml b/.github/workflows/clean.yml index 547aaa4..bfc865d 100644 --- a/.github/workflows/clean.yml +++ b/.github/workflows/clean.yml @@ -17,6 +17,7 @@ jobs: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} steps: - name: Delete artifacts + shell: bash {0} run: | # Customize those three lines with your repository and credentials: REPO=${GITHUB_API_URL}/repos/${{ github.repository }} @@ -25,7 +26,7 @@ jobs: ghapi() { curl --silent --location --user _:$GITHUB_TOKEN "$@"; } # A temporary file which receives HTTP response headers. - TMPFILE=/tmp/tmp.$$ + TMPFILE=$(mktemp) # An associative array, key: artifact name, value: number of artifacts of that name. declare -A ARTCOUNT diff --git a/build.sbt b/build.sbt index 56347fe..e9a3afe 100644 --- a/build.sbt +++ b/build.sbt @@ -11,10 +11,10 @@ inThisBuild(List( url("https://dwolla.com") ), ), - crossScalaVersions := Seq("2.13.10", "2.12.17"), + crossScalaVersions := Seq("2.13.10", "2.12.20"), scalaVersion := crossScalaVersions.value.head, startYear := Option(2018), - addCompilerPlugin("org.typelevel" %% "kind-projector" % "0.13.2" cross CrossVersion.full), + addCompilerPlugin("org.typelevel" %% "kind-projector" % "0.13.3" cross CrossVersion.full), addCompilerPlugin("com.olegpy" %% "better-monadic-for" % "0.3.1"), githubWorkflowBuild := Seq(WorkflowStep.Sbt(List("test", "doc"))), diff --git a/project/plugins.sbt b/project/plugins.sbt index 08d2cbd..0848b82 100644 --- a/project/plugins.sbt +++ b/project/plugins.sbt @@ -1,3 +1,3 @@ addSbtPlugin("com.github.sbt" % "sbt-ci-release" % "1.6.1") addSbtPlugin("org.typelevel" % "sbt-tpolecat" % "0.5.0") -addSbtPlugin("com.codecommit" % "sbt-github-actions" % "0.14.2") +addSbtPlugin("com.github.sbt" % "sbt-github-actions" % "0.24.0")