From 193c6e38c6f1f8a1e8a9d65d782a71439871ec60 Mon Sep 17 00:00:00 2001 From: Max Ghenis Date: Sun, 26 Apr 2026 07:41:47 -0400 Subject: [PATCH 1/4] Update GitHub Actions for Node 24 runtime --- .github/workflows/local_area_promote.yaml | 4 +-- .github/workflows/local_area_publish.yaml | 12 +++---- .github/workflows/pr.yaml | 44 +++++++++++------------ .github/workflows/push.yaml | 30 ++++++++-------- 4 files changed, 45 insertions(+), 45 deletions(-) diff --git a/.github/workflows/local_area_promote.yaml b/.github/workflows/local_area_promote.yaml index b4422ea5a..e549f4609 100644 --- a/.github/workflows/local_area_promote.yaml +++ b/.github/workflows/local_area_promote.yaml @@ -25,10 +25,10 @@ jobs: steps: - name: Checkout repo - uses: actions/checkout@v4 + uses: actions/checkout@v6 - name: Set up Python - uses: actions/setup-python@v5 + uses: actions/setup-python@v6 with: python-version: '3.14' diff --git a/.github/workflows/local_area_publish.yaml b/.github/workflows/local_area_publish.yaml index 201dd1210..20db04ac5 100644 --- a/.github/workflows/local_area_publish.yaml +++ b/.github/workflows/local_area_publish.yaml @@ -40,10 +40,10 @@ jobs: steps: - name: Checkout repo - uses: actions/checkout@v4 + uses: actions/checkout@v6 - name: Set up Python - uses: actions/setup-python@v5 + uses: actions/setup-python@v6 with: python-version: '3.14' @@ -82,15 +82,15 @@ jobs: HUGGING_FACE_TOKEN: ${{ secrets.HUGGING_FACE_TOKEN }} steps: - name: Checkout repo - uses: actions/checkout@v4 + uses: actions/checkout@v6 - name: Set up Python - uses: actions/setup-python@v5 + uses: actions/setup-python@v6 with: python-version: '3.14' - name: Set up uv - uses: astral-sh/setup-uv@v5 + uses: astral-sh/setup-uv@v8.1.0 - name: Install dependencies run: uv sync @@ -123,7 +123,7 @@ jobs: fi - name: Upload validation artifact - uses: actions/upload-artifact@v4 + uses: actions/upload-artifact@v7 with: name: validation-results path: validation_results.csv diff --git a/.github/workflows/pr.yaml b/.github/workflows/pr.yaml index 797ca19b0..603787e41 100644 --- a/.github/workflows/pr.yaml +++ b/.github/workflows/pr.yaml @@ -23,11 +23,11 @@ jobs: runs-on: ubuntu-latest needs: check-fork steps: - - uses: actions/checkout@v4 - - uses: actions/setup-python@v5 + - uses: actions/checkout@v6 + - uses: actions/setup-python@v6 with: python-version: "3.14" - - uses: astral-sh/setup-uv@v5 + - uses: astral-sh/setup-uv@v8.1.0 - name: Check lock file is up-to-date run: | uv lock --locked || { @@ -39,7 +39,7 @@ jobs: runs-on: ubuntu-latest needs: check-fork steps: - - uses: actions/checkout@v4 + - uses: actions/checkout@v6 - run: pip install ruff>=0.9.0 - run: ruff format --check . @@ -47,13 +47,13 @@ jobs: runs-on: ubuntu-latest needs: check-fork steps: - - uses: actions/checkout@v4 + - uses: actions/checkout@v6 with: fetch-depth: 0 - - uses: actions/setup-python@v5 + - uses: actions/setup-python@v6 with: python-version: "3.14" - - uses: astral-sh/setup-uv@v5 + - uses: astral-sh/setup-uv@v8.1.0 - run: uv sync --dev - name: Check for changelog fragment run: uv run towncrier check --compare-with origin/main @@ -62,11 +62,11 @@ jobs: runs-on: ubuntu-latest needs: [check-fork, lint] steps: - - uses: actions/checkout@v4 - - uses: actions/setup-python@v5 + - uses: actions/checkout@v6 + - uses: actions/setup-python@v6 with: python-version: "3.14" - - uses: astral-sh/setup-uv@v5 + - uses: astral-sh/setup-uv@v8.1.0 - run: uv sync --dev - name: Run unit tests with coverage env: @@ -78,7 +78,7 @@ jobs: -v - name: Upload coverage to Codecov if: always() - uses: codecov/codecov-action@v4 + uses: codecov/codecov-action@v6 with: file: coverage.xml flags: unit @@ -109,8 +109,8 @@ jobs: MODAL_H5_TEST_HARNESS_APP_NAME: policyengine-us-data-h5-test-harness name: Optimized integration tests (PR staging) steps: - - uses: actions/checkout@v4 - - uses: actions/setup-python@v5 + - uses: actions/checkout@v6 + - uses: actions/setup-python@v6 with: python-version: "3.14" - name: Install optimized test deps @@ -135,8 +135,8 @@ jobs: runs-on: ubuntu-latest needs: [check-fork, lint] steps: - - uses: actions/checkout@v4 - - uses: actions/setup-python@v5 + - uses: actions/checkout@v6 + - uses: actions/setup-python@v6 with: python-version: "3.14" - run: python -m pip install . @@ -147,14 +147,14 @@ jobs: runs-on: ubuntu-latest needs: [check-fork] steps: - - uses: actions/checkout@v4 - - uses: actions/setup-python@v5 + - uses: actions/checkout@v6 + - uses: actions/setup-python@v6 with: python-version: "3.14" - - uses: actions/setup-node@v4 + - uses: actions/setup-node@v6 with: node-version: "24" - - uses: astral-sh/setup-uv@v5 + - uses: astral-sh/setup-uv@v8.1.0 - run: uv sync --dev - name: Test documentation builds run: uv run make documentation @@ -165,7 +165,7 @@ jobs: outputs: run_integration: ${{ steps.check.outputs.run_integration }} steps: - - uses: actions/checkout@v4 + - uses: actions/checkout@v6 with: fetch-depth: 0 - name: Check changed files for integration scope @@ -188,10 +188,10 @@ jobs: MODAL_ENVIRONMENT: main HUGGING_FACE_TOKEN: ${{ secrets.HUGGING_FACE_TOKEN }} steps: - - uses: actions/checkout@v4 + - uses: actions/checkout@v6 with: fetch-depth: 0 - - uses: actions/setup-python@v5 + - uses: actions/setup-python@v6 with: python-version: "3.14" - run: pip install modal diff --git a/.github/workflows/push.yaml b/.github/workflows/push.yaml index 4a0cec793..3d3a25fe2 100644 --- a/.github/workflows/push.yaml +++ b/.github/workflows/push.yaml @@ -8,7 +8,7 @@ jobs: lint: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v4 + - uses: actions/checkout@v6 - run: pip install ruff>=0.9.0 - run: ruff format --check . @@ -24,8 +24,8 @@ jobs: MODAL_ENVIRONMENT: main HUGGING_FACE_TOKEN: ${{ secrets.HUGGING_FACE_TOKEN }} steps: - - uses: actions/checkout@v4 - - uses: actions/setup-python@v5 + - uses: actions/checkout@v6 + - uses: actions/setup-python@v6 with: python-version: "3.14" - run: pip install modal @@ -43,14 +43,14 @@ jobs: permissions: contents: write steps: - - uses: actions/checkout@v4 - - uses: actions/setup-python@v5 + - uses: actions/checkout@v6 + - uses: actions/setup-python@v6 with: python-version: "3.14" - - uses: actions/setup-node@v4 + - uses: actions/setup-node@v6 with: node-version: "24" - - uses: astral-sh/setup-uv@v5 + - uses: astral-sh/setup-uv@v8.1.0 - run: uv sync --dev - name: Build documentation run: uv run make documentation @@ -71,18 +71,18 @@ jobs: steps: - name: Generate GitHub App token id: app-token - uses: actions/create-github-app-token@v1 + uses: actions/create-github-app-token@v3 with: app-id: ${{ secrets.APP_ID }} private-key: ${{ secrets.APP_PRIVATE_KEY }} - - uses: actions/checkout@v4 + - uses: actions/checkout@v6 with: token: ${{ steps.app-token.outputs.token }} fetch-depth: 0 - - uses: actions/setup-python@v5 + - uses: actions/setup-python@v6 with: python-version: "3.14" - - uses: astral-sh/setup-uv@v5 + - uses: astral-sh/setup-uv@v8.1.0 - run: pip install towncrier - name: Bump version and build changelog run: | @@ -91,7 +91,7 @@ jobs: - name: Update lockfile run: uv lock - name: Update changelog - uses: EndBug/add-and-commit@v9 + uses: EndBug/add-and-commit@v10 with: add: "." message: Update package version @@ -102,11 +102,11 @@ jobs: needs: lint if: github.event.head_commit.message == 'Update package version' steps: - - uses: actions/checkout@v4 - - uses: actions/setup-python@v5 + - uses: actions/checkout@v6 + - uses: actions/setup-python@v6 with: python-version: "3.14" - - uses: astral-sh/setup-uv@v5 + - uses: astral-sh/setup-uv@v8.1.0 - run: uv sync --dev - run: uv run python -m build - name: Publish to PyPI From a05223435a0558acb8c7ab29a741f5a2042ed9c5 Mon Sep 17 00:00:00 2001 From: Max Ghenis Date: Sun, 26 Apr 2026 08:15:28 -0400 Subject: [PATCH 2/4] Update remaining GitHub Actions refs for Node 24 --- .github/workflows/pipeline.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/pipeline.yaml b/.github/workflows/pipeline.yaml index 3ef2f57c8..4554d1527 100644 --- a/.github/workflows/pipeline.yaml +++ b/.github/workflows/pipeline.yaml @@ -45,9 +45,9 @@ jobs: github.event_name == 'workflow_dispatch' || github.event.head_commit.message == 'Update package version' steps: - - uses: actions/checkout@v4 + - uses: actions/checkout@v6 - - uses: actions/setup-python@v5 + - uses: actions/setup-python@v6 with: python-version: "3.14" From 8f7acabed37d63422725c25cf04e8d6e8c6fc4ef Mon Sep 17 00:00:00 2001 From: Max Ghenis Date: Sun, 26 Apr 2026 10:13:20 -0400 Subject: [PATCH 3/4] Fix CI warnings and changelog checks --- .github/workflows/pr.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/pr.yaml b/.github/workflows/pr.yaml index 603787e41..27f575ce7 100644 --- a/.github/workflows/pr.yaml +++ b/.github/workflows/pr.yaml @@ -80,7 +80,7 @@ jobs: if: always() uses: codecov/codecov-action@v6 with: - file: coverage.xml + files: coverage.xml flags: unit fail_ci_if_error: false env: From ebc752c9bba2da287a5f99eafd9663d582f9074d Mon Sep 17 00:00:00 2001 From: Max Ghenis Date: Sun, 26 Apr 2026 10:18:45 -0400 Subject: [PATCH 4/4] Add changelog entry for CI workflow updates --- changelog.d/update-actions-node24.changed.md | 1 + 1 file changed, 1 insertion(+) create mode 100644 changelog.d/update-actions-node24.changed.md diff --git a/changelog.d/update-actions-node24.changed.md b/changelog.d/update-actions-node24.changed.md new file mode 100644 index 000000000..b0038fe30 --- /dev/null +++ b/changelog.d/update-actions-node24.changed.md @@ -0,0 +1 @@ +Updated GitHub Actions workflows for Node 24-compatible action runtimes.