diff --git a/.github/dependabot.yaml b/.github/dependabot.yaml new file mode 100644 index 0000000000..5af48738c5 --- /dev/null +++ b/.github/dependabot.yaml @@ -0,0 +1,14 @@ +# Set update schedule for GitHub Actions + +version: 2 +updates: + + - package-ecosystem: "github-actions" + directory: "/" + schedule: + # Check for updates to GitHub Actions every week + interval: "weekly" + # Raise all pull requests with labels + labels: + - "dependency" + - "automerge" \ No newline at end of file diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 68f0f7bdfe..a0002ac09d 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -15,7 +15,7 @@ jobs: github.event_name == 'push' || github.event.pull_request.head.repo.full_name != github.repository || github.event.pull_request.user.login == 'softwaremill-ci' - runs-on: ubuntu-22.04 + runs-on: ubuntu-24.04 strategy: fail-fast: false matrix: @@ -34,6 +34,7 @@ jobs: steps: - name: Checkout uses: actions/checkout@v4 + - uses: sbt/setup-sbt@v1 - name: Set up JDK uses: actions/setup-java@v4 with: @@ -82,14 +83,14 @@ jobs: run: sbt $SBT_JAVA_OPTS -v "project examples3" verifyExamplesCompileUsingScalaCli - name: Test if: matrix.target-platform == 'JVM' && matrix.scala-version == '2.12' - uses: nick-fields/retry@v2 + uses: nick-fields/retry@v3 with: timeout_minutes: 15 max_attempts: 4 command: sbt $SBT_JAVA_OPTS -v "testScoped ${{ matrix.scala-version }} ${{ matrix.target-platform }}; openapiCodegenSbt2_12/scripted" - name: Test if: matrix.target-platform != 'JS' && !(matrix.target-platform == 'JVM' && matrix.scala-version == '2.12') - uses: nick-fields/retry@v2 + uses: nick-fields/retry@v3 with: timeout_minutes: 15 max_attempts: 4 @@ -129,12 +130,13 @@ jobs: github.event_name == 'push' || github.event.pull_request.head.repo.full_name != github.repository || github.event.pull_request.user.login == 'softwaremill-ci' - runs-on: ubuntu-22.04 + runs-on: ubuntu-24.04 steps: - name: Checkout uses: actions/checkout@v4 with: fetch-depth: 0 # checkout tags so that dynver works properly (we need the version for MiMa) + - uses: sbt/setup-sbt@v1 - name: Set up JDK 21 uses: actions/setup-java@v4 with: @@ -148,13 +150,14 @@ jobs: name: Publish release needs: [ci] if: github.event_name != 'pull_request' && (startsWith(github.ref, 'refs/tags/v')) - runs-on: ubuntu-22.04 + runs-on: ubuntu-24.04 strategy: matrix: java: [ "11", "21" ] steps: - name: Checkout uses: actions/checkout@v4 + - uses: sbt/setup-sbt@v1 - name: Set up JDK uses: actions/setup-java@v4 with: @@ -207,7 +210,7 @@ jobs: name: Attach automerge label # only for PRs by softwaremill-ci if: github.event.pull_request.user.login == 'softwaremill-ci' - runs-on: ubuntu-22.04 + runs-on: ubuntu-24.04 steps: - uses: actions/checkout@v4 with: @@ -222,11 +225,11 @@ jobs: # only for PRs by softwaremill-ci if: github.event.pull_request.user.login == 'softwaremill-ci' needs: [ ci, mima, label ] - runs-on: ubuntu-22.04 + runs-on: ubuntu-24.04 steps: - id: automerge name: automerge - uses: "pascalgn/automerge-action@v0.15.6" + uses: "pascalgn/automerge-action@v0.16.4" env: GITHUB_TOKEN: "${{ secrets.GITHUB_TOKEN }}" MERGE_METHOD: "squash" diff --git a/.github/workflows/dependency-graph.yml b/.github/workflows/dependency-graph.yml index dd1c249835..45aebb57f9 100644 --- a/.github/workflows/dependency-graph.yml +++ b/.github/workflows/dependency-graph.yml @@ -9,8 +9,8 @@ on: jobs: update-graph: name: Update Dependency Graph - runs-on: ubuntu-latest + runs-on: ubuntu-24.04 steps: - uses: actions/checkout@v4 - uses: sbt/setup-sbt@v1 - - uses: scalacenter/sbt-dependency-submission@v2 + - uses: scalacenter/sbt-dependency-submission@v3 diff --git a/.github/workflows/rebase-cmd-dispatch.yml b/.github/workflows/rebase-cmd-dispatch.yml index fa7aa7d980..f77b455229 100644 --- a/.github/workflows/rebase-cmd-dispatch.yml +++ b/.github/workflows/rebase-cmd-dispatch.yml @@ -8,7 +8,7 @@ jobs: slashCommandDispatch: # to fast-skip for typical, non-rebase comments if: contains(github.event.comment.body, '/rebase') - runs-on: ubuntu-latest + runs-on: ubuntu-24.04 steps: - name: Slash Command Dispatch uses: peter-evans/slash-command-dispatch@v4 diff --git a/.github/workflows/rebase-cmd.yml b/.github/workflows/rebase-cmd.yml index 773b6c5464..9388cebcad 100644 --- a/.github/workflows/rebase-cmd.yml +++ b/.github/workflows/rebase-cmd.yml @@ -4,7 +4,7 @@ on: types: [rebase-command] jobs: rebase: - runs-on: ubuntu-latest + runs-on: ubuntu-24.04 steps: - uses: peter-evans/rebase@v3 id: rebase @@ -13,7 +13,7 @@ jobs: head: ${{ github.event.client_payload.pull_request.head.label }} - name: Add reaction if: steps.rebase.outputs.rebased-count == 1 - uses: peter-evans/create-or-update-comment@v1 + uses: peter-evans/create-or-update-comment@v4 with: token: ${{ secrets.GITHUB_TOKEN }} repository: ${{ github.event.client_payload.github.payload.repository.full_name }} diff --git a/.github/workflows/scala-steward.yml b/.github/workflows/scala-steward.yml index 81dbec79a3..6c0d1fa4b0 100644 --- a/.github/workflows/scala-steward.yml +++ b/.github/workflows/scala-steward.yml @@ -8,7 +8,7 @@ on: jobs: scala-steward: - runs-on: ubuntu-22.04 + runs-on: ubuntu-24.04 steps: - name: Checkout uses: actions/checkout@v4 diff --git a/.github/workflows/test-report.yml b/.github/workflows/test-report.yml index bc9970f660..7da45fa814 100644 --- a/.github/workflows/test-report.yml +++ b/.github/workflows/test-report.yml @@ -12,7 +12,7 @@ permissions: jobs: report: - runs-on: ubuntu-latest + runs-on: ubuntu-24.04 # If the workflow run was skipped or cancelled this action would fail, generating a test report is unnecessary. if: ${{ github.event.workflow_run.conclusion == 'success' || github.event.workflow_run.conclusion == 'failure' }} steps: diff --git a/core/src/main/scala-3/sttp/tapir/internal/ComplietimeErrors.scala b/core/src/main/scala-3/sttp/tapir/internal/CompileTimeErrors.scala similarity index 94% rename from core/src/main/scala-3/sttp/tapir/internal/ComplietimeErrors.scala rename to core/src/main/scala-3/sttp/tapir/internal/CompileTimeErrors.scala index eaa8e8fa0f..35e8dd9440 100644 --- a/core/src/main/scala-3/sttp/tapir/internal/ComplietimeErrors.scala +++ b/core/src/main/scala-3/sttp/tapir/internal/CompileTimeErrors.scala @@ -2,7 +2,7 @@ package sttp.tapir.internal import scala.quoted.* -private[tapir] object ComplietimeErrors { +private[tapir] object CompileTimeErrors { inline def reportIncorrectMapping[SOURCE, TARGET] = ${ reportIncorrectMappingImpl[SOURCE, TARGET] } private def reportIncorrectMappingImpl[SOURCE: Type, TARGET: Type](using Quotes): Expr[Unit] = { diff --git a/core/src/main/scala-3/sttp/tapir/internal/MappingMacros.scala b/core/src/main/scala-3/sttp/tapir/internal/MappingMacros.scala index 813da76e01..f02417befb 100644 --- a/core/src/main/scala-3/sttp/tapir/internal/MappingMacros.scala +++ b/core/src/main/scala-3/sttp/tapir/internal/MappingMacros.scala @@ -27,6 +27,6 @@ private[tapir] object MappingMacros { case _: (EmptyTuple, Unit) => () case _: (B *: EmptyTuple, B) => () case _: (B, B) => () - case e => ComplietimeErrors.reportIncorrectMapping[B, A] + case e => CompileTimeErrors.reportIncorrectMapping[B, A] } } diff --git a/project/plugins.sbt b/project/plugins.sbt index 84376caeed..fd63461dfd 100644 --- a/project/plugins.sbt +++ b/project/plugins.sbt @@ -11,7 +11,7 @@ addSbtPlugin("org.playframework.twirl" % "sbt-twirl" % "2.0.7") addSbtPlugin("org.scalameta" % "sbt-mdoc" % "2.6.2") addSbtPlugin("com.eed3si9n" % "sbt-projectmatrix" % "0.10.1") addSbtPlugin("org.jetbrains.scala" % "sbt-ide-settings" % "1.1.2") -addSbtPlugin("org.scala-js" % "sbt-scalajs" % "1.17.0") +addSbtPlugin("org.scala-js" % "sbt-scalajs" % "1.18.1") addSbtPlugin("io.spray" % "sbt-revolver" % "0.10.0") addSbtPlugin("com.eed3si9n" % "sbt-assembly" % "2.3.0") addSbtPlugin("io.gatling" % "gatling-sbt" % "4.11.1")