From 61c51d36501dc9ab0344bd97e9f05d81990534f8 Mon Sep 17 00:00:00 2001 From: devrimcavusoglu Date: Fri, 12 Jun 2026 00:47:15 +0300 Subject: [PATCH] Modernize workflows: Node 24 action majors + pin tool versions (#90) Bump all actions across the four workflow files to their latest majors, which run on Node 24 (Node 20 actions are deprecated; forced to Node 24 since June 2, 2026, removed from runners September 16, 2026): - actions/checkout v4 -> v6, actions/setup-go v5 -> v6 - actions/setup-node v4 -> v6 (explicit `cache: npm` unaffected by the v5/v6 automatic-caching changes) - golangci/golangci-lint-action v7 -> v9 - goreleaser/goreleaser-action v6 -> v7 - actions/configure-pages v4 -> v6 (v5 breaking change only affects `static_site_generator: next`, not used) - actions/upload-pages-artifact v3 -> v5 (v4 stops including dotfiles; the VitePress dist has none that matter, and deploy-pages does not run Jekyll so no .nojekyll is needed) - actions/deploy-pages v4 -> v5 Pin the two floating `version: latest` tool references: - golangci-lint pinned to v2.12.2 (action v8+ requires golangci-lint >= v2.1.0) - goreleaser pinned to v2.16.0 (config schema `version: 2` compatible) Co-Authored-By: Claude Fable 5 --- .github/workflows/ci.yml | 12 ++++++------ .github/workflows/docs-deploy.yml | 10 +++++----- .github/workflows/docs-pr-check.yml | 4 ++-- .github/workflows/release.yml | 8 ++++---- 4 files changed, 17 insertions(+), 17 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 485e2ee..0bdbe3d 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -17,9 +17,9 @@ jobs: run: shell: bash steps: - - uses: actions/checkout@v4 + - uses: actions/checkout@v6 - - uses: actions/setup-go@v5 + - uses: actions/setup-go@v6 with: go-version: "1.25" @@ -35,13 +35,13 @@ jobs: lint: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v4 + - uses: actions/checkout@v6 - - uses: actions/setup-go@v5 + - uses: actions/setup-go@v6 with: go-version: "1.25" - name: golangci-lint - uses: golangci/golangci-lint-action@v7 + uses: golangci/golangci-lint-action@v9 with: - version: latest + version: v2.12.2 diff --git a/.github/workflows/docs-deploy.yml b/.github/workflows/docs-deploy.yml index 2656052..85e6133 100644 --- a/.github/workflows/docs-deploy.yml +++ b/.github/workflows/docs-deploy.yml @@ -21,17 +21,17 @@ jobs: build: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v4 + - uses: actions/checkout@v6 with: fetch-depth: 0 - - uses: actions/setup-node@v4 + - uses: actions/setup-node@v6 with: node-version: 22 cache: npm cache-dependency-path: docs/package-lock.json - - uses: actions/configure-pages@v4 + - uses: actions/configure-pages@v6 - run: npm ci working-directory: docs @@ -39,7 +39,7 @@ jobs: - run: npm run docs:build working-directory: docs - - uses: actions/upload-pages-artifact@v3 + - uses: actions/upload-pages-artifact@v5 with: path: docs/.vitepress/dist @@ -51,4 +51,4 @@ jobs: runs-on: ubuntu-latest steps: - id: deployment - uses: actions/deploy-pages@v4 + uses: actions/deploy-pages@v5 diff --git a/.github/workflows/docs-pr-check.yml b/.github/workflows/docs-pr-check.yml index 2546259..a726100 100644 --- a/.github/workflows/docs-pr-check.yml +++ b/.github/workflows/docs-pr-check.yml @@ -8,7 +8,7 @@ jobs: docs-build: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v4 + - uses: actions/checkout@v6 with: fetch-depth: 0 @@ -23,7 +23,7 @@ jobs: echo "changed=false" >> "$GITHUB_OUTPUT" fi - - uses: actions/setup-node@v4 + - uses: actions/setup-node@v6 if: steps.docs_changes.outputs.changed == 'true' with: node-version: 22 diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 2e4f211..8ee9624 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -21,11 +21,11 @@ jobs: release: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v4 + - uses: actions/checkout@v6 with: fetch-depth: 0 - - uses: actions/setup-go@v5 + - uses: actions/setup-go@v6 with: go-version: "1.25" @@ -46,9 +46,9 @@ jobs: - name: Run GoReleaser if: steps.precheck.outputs.skip != 'true' - uses: goreleaser/goreleaser-action@v6 + uses: goreleaser/goreleaser-action@v7 with: - version: latest + version: v2.16.0 args: release --clean env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}