From 3480cc4875197e87026283b8cb610c7284839299 Mon Sep 17 00:00:00 2001 From: Jonathan Desrosiers <359867+desrosj@users.noreply.github.com> Date: Thu, 5 Nov 2026 16:35:16 -0500 Subject: [PATCH 1/3] Build/Test Tools: Update GitHub-hosted runners to Ubuntu 26.04. This updates the GitHub-hosted Ubuntu runners used in GitHub Actions workflows to `ubuntu-26.04`. Co-Authored-By: Claude Opus 5.5 Claude-Session: https://claude.ai/code/session_011Y86gzNmrCaBaUCqQTNKYH --- .github/workflows/coding-standards.yml | 2 +- .github/workflows/end-to-end-tests.yml | 2 +- .github/workflows/javascript-tests.yml | 2 +- .github/workflows/php-compatibility.yml | 2 +- .github/workflows/phpunit-tests.yml | 16 ++++++++-------- .github/workflows/props-bot.yml | 2 +- .github/workflows/pull-request-comments.yml | 4 ++-- .github/workflows/test-build-processes.yml | 10 +++++----- .github/workflows/upgrade-testing.yml | 12 ++++++------ 9 files changed, 26 insertions(+), 26 deletions(-) diff --git a/.github/workflows/coding-standards.yml b/.github/workflows/coding-standards.yml index a4f0e51dfb2ed..0a4b5f99ff6ff 100644 --- a/.github/workflows/coding-standards.yml +++ b/.github/workflows/coding-standards.yml @@ -75,7 +75,7 @@ jobs: failed-workflow: name: Failed workflow tasks - runs-on: ubuntu-latest + runs-on: ubuntu-26.04 permissions: actions: write needs: [ phpcs, jshint, slack-notifications ] diff --git a/.github/workflows/end-to-end-tests.yml b/.github/workflows/end-to-end-tests.yml index 01c7ef0bb706c..150742680e853 100644 --- a/.github/workflows/end-to-end-tests.yml +++ b/.github/workflows/end-to-end-tests.yml @@ -63,7 +63,7 @@ jobs: failed-workflow: name: Failed workflow tasks - runs-on: ubuntu-latest + runs-on: ubuntu-26.04 permissions: actions: write needs: [ e2e-tests, slack-notifications ] diff --git a/.github/workflows/javascript-tests.yml b/.github/workflows/javascript-tests.yml index 3bc77484b22a6..362c0580af2cf 100644 --- a/.github/workflows/javascript-tests.yml +++ b/.github/workflows/javascript-tests.yml @@ -65,7 +65,7 @@ jobs: failed-workflow: name: Failed workflow tasks - runs-on: ubuntu-latest + runs-on: ubuntu-26.04 permissions: actions: write needs: [ slack-notifications ] diff --git a/.github/workflows/php-compatibility.yml b/.github/workflows/php-compatibility.yml index c33a922ee5759..5f4ed1597a13b 100644 --- a/.github/workflows/php-compatibility.yml +++ b/.github/workflows/php-compatibility.yml @@ -61,7 +61,7 @@ jobs: failed-workflow: name: Failed workflow tasks - runs-on: ubuntu-latest + runs-on: ubuntu-26.04 permissions: actions: write needs: [ slack-notifications ] diff --git a/.github/workflows/phpunit-tests.yml b/.github/workflows/phpunit-tests.yml index 63e5c702663cb..924debaf4e4d3 100644 --- a/.github/workflows/phpunit-tests.yml +++ b/.github/workflows/phpunit-tests.yml @@ -39,7 +39,7 @@ jobs: strategy: fail-fast: false matrix: - os: [ ubuntu-latest ] + os: [ ubuntu-26.04 ] # Test highest and lowest supported version of each major. php: [ '7.0', '7.4', '8.0', '8.3' ] db-type: [ 'mysql' ] @@ -49,20 +49,20 @@ jobs: include: # Include jobs for PHP 7.4 with memcached. - - os: ubuntu-latest + - os: ubuntu-26.04 php: '7.4' db-type: 'mysql' db-version: '5.7' multisite: false memcached: true - - os: ubuntu-latest + - os: ubuntu-26.04 php: '7.4' db-type: 'mysql' db-version: '5.7' multisite: true memcached: true # Report test results to the Host Test Results. - - os: ubuntu-latest + - os: ubuntu-26.04 php: '7.4' db-type: 'mysql' db-version: '5.7' @@ -90,7 +90,7 @@ jobs: strategy: fail-fast: false matrix: - os: [ ubuntu-latest ] + os: [ ubuntu-26.04 ] # Test highest and lowest supported version of each major. php: [ '7.0', '7.4', '8.0', '8.3' ] db-type: [ 'mariadb' ] @@ -100,13 +100,13 @@ jobs: include: # Include jobs for PHP 7.4 with memcached. - - os: ubuntu-latest + - os: ubuntu-26.04 php: '7.4' db-type: 'mariadb' db-version: '10.11' multisite: false memcached: true - - os: ubuntu-latest + - os: ubuntu-26.04 php: '7.4' db-type: 'mariadb' db-version: '10.11' @@ -140,7 +140,7 @@ jobs: failed-workflow: name: Failed workflow tasks - runs-on: ubuntu-latest + runs-on: ubuntu-26.04 permissions: actions: write needs: [ slack-notifications ] diff --git a/.github/workflows/props-bot.yml b/.github/workflows/props-bot.yml index f9d5668742372..6f6da1bcf5884 100644 --- a/.github/workflows/props-bot.yml +++ b/.github/workflows/props-bot.yml @@ -48,7 +48,7 @@ jobs: # - Removes the props-bot label, if necessary. props-bot: name: Generate a list of props - runs-on: ubuntu-latest + runs-on: ubuntu-26.04 permissions: # The action needs permission `write` permission for PRs in order to add a comment. pull-requests: write diff --git a/.github/workflows/pull-request-comments.yml b/.github/workflows/pull-request-comments.yml index df276270f1396..c4f2e369768d8 100644 --- a/.github/workflows/pull-request-comments.yml +++ b/.github/workflows/pull-request-comments.yml @@ -22,7 +22,7 @@ permissions: {} jobs: # Comments on a pull request when the author is a first time contributor. post-welcome-message: - runs-on: ubuntu-latest + runs-on: ubuntu-26.04 permissions: issues: write pull-requests: write @@ -80,7 +80,7 @@ jobs: # Leaves a comment on a pull request with a link to test the changes in a WordPress Playground instance. playground-details: name: Comment on a pull request with Playground details - runs-on: ubuntu-latest + runs-on: ubuntu-26.04 permissions: issues: write pull-requests: write diff --git a/.github/workflows/test-build-processes.yml b/.github/workflows/test-build-processes.yml index 9deff39c7555f..c3bfd7fcf9554 100644 --- a/.github/workflows/test-build-processes.yml +++ b/.github/workflows/test-build-processes.yml @@ -35,11 +35,11 @@ jobs: strategy: fail-fast: false matrix: - os: [ ubuntu-latest, windows-latest ] + os: [ ubuntu-26.04, windows-latest ] directory: [ 'src', 'build' ] include: # Only prepare artifacts once. - - os: ubuntu-latest + - os: ubuntu-26.04 directory: 'build' save-build: true prepare-playground: ${{ github.event_name == 'pull_request' && true || '' }} @@ -83,7 +83,7 @@ jobs: strategy: fail-fast: false matrix: - os: [ ubuntu-latest, windows-latest ] + os: [ ubuntu-26.04, windows-latest ] directory: [ 'src', 'build' ] with: os: ${{ matrix.os }} @@ -118,7 +118,7 @@ jobs: # leave a comment detailing how to test the PR within WordPress Playground. playground-comment: name: Leave WordPress Playground details - runs-on: ubuntu-latest + runs-on: ubuntu-26.04 permissions: actions: write continue-on-error: true @@ -155,7 +155,7 @@ jobs: failed-workflow: name: Failed workflow tasks - runs-on: ubuntu-latest + runs-on: ubuntu-26.04 permissions: actions: write needs: [ slack-notifications ] diff --git a/.github/workflows/upgrade-testing.yml b/.github/workflows/upgrade-testing.yml index 90ca18db0e52f..3a126aedf8329 100644 --- a/.github/workflows/upgrade-testing.yml +++ b/.github/workflows/upgrade-testing.yml @@ -42,7 +42,7 @@ jobs: strategy: fail-fast: false matrix: - os: [ 'ubuntu-latest' ] + os: [ 'ubuntu-26.04' ] php: [ '7.0', '7.1', '7.2', '7.3', '7.4', '8.0', '8.1', '8.2', '8.3' ] db-type: [ 'mysql' ] db-version: [ '5.7', '8.0' ] @@ -65,7 +65,7 @@ jobs: strategy: fail-fast: false matrix: - os: [ 'ubuntu-latest' ] + os: [ 'ubuntu-26.04' ] php: [ '7.0', '7.1', '7.2', '7.3', '7.4' ] db-type: [ 'mysql' ] db-version: [ '5.7', '8.0' ] @@ -92,7 +92,7 @@ jobs: strategy: fail-fast: false matrix: - os: [ 'ubuntu-latest' ] + os: [ 'ubuntu-26.04' ] php: [ '8.0', '8.1', '8.2', '8.3' ] db-type: [ 'mysql' ] db-version: [ '5.7', '8.0' ] @@ -115,7 +115,7 @@ jobs: strategy: fail-fast: false matrix: - os: [ 'ubuntu-latest' ] + os: [ 'ubuntu-26.04' ] php: [ '7.0', '7.1', '7.2', '7.3', '7.4' ] db-type: [ 'mysql' ] db-version: [ '5.7', '8.0' ] @@ -142,7 +142,7 @@ jobs: strategy: fail-fast: false matrix: - os: [ 'ubuntu-latest' ] + os: [ 'ubuntu-26.04' ] php: [ '8.0', '8.1', '8.2', '8.3' ] db-type: [ 'mysql' ] db-version: [ '5.7', '8.0' ] @@ -175,7 +175,7 @@ jobs: failed-workflow: name: Failed workflow tasks - runs-on: ubuntu-latest + runs-on: ubuntu-26.04 permissions: actions: write needs: [ slack-notifications ] From 421283fc0f9c9f3bebea153930eae1c232144a99 Mon Sep 17 00:00:00 2001 From: Jonathan Desrosiers <359867+desrosj@users.noreply.github.com> Date: Thu, 5 Nov 2026 16:35:19 -0500 Subject: [PATCH 2/3] Build/Test Tools: Update Playwright to 1.64.1. Update `@playwright/test` from `1.49.1` to `1.64.1`, along with its `playwright` and `playwright-core` dependencies. Playwright 1.61.0 is the first version that supports Ubuntu 26.04. Co-Authored-By: Claude Opus 5.5 Claude-Session: https://claude.ai/code/session_011Y86gzNmrCaBaUCqQTNKYH --- package-lock.json | 56 ++++++++++++++++++++++------------------------- package.json | 2 +- 2 files changed, 27 insertions(+), 31 deletions(-) diff --git a/package-lock.json b/package-lock.json index ce4a4bd400132..b0735bb88b126 100644 --- a/package-lock.json +++ b/package-lock.json @@ -103,7 +103,7 @@ }, "devDependencies": { "@lodder/grunt-postcss": "^3.1.1", - "@playwright/test": "1.49.1", + "@playwright/test": "1.64.1", "@pmmmwh/react-refresh-webpack-plugin": "0.5.11", "@wordpress/babel-preset-default": "7.35.1", "@wordpress/dependency-extraction-webpack-plugin": "5.2.1", @@ -3664,19 +3664,19 @@ } }, "node_modules/@playwright/test": { - "version": "1.49.1", - "resolved": "https://registry.npmjs.org/@playwright/test/-/test-1.49.1.tgz", - "integrity": "sha512-Ky+BVzPz8pL6PQxHqNRW1k3mIyv933LML7HktS8uik0bUXNCdPhoS/kLihiO1tMf/egaJb4IutXd7UywvXEW+g==", + "version": "1.64.1", + "resolved": "https://registry.npmjs.org/@playwright/test/-/test-1.64.1.tgz", + "integrity": "sha512-IaYGml/nSOiZWROfPtuIL7neuu9qDOZ3TNvNljUIrhDMxiGTgPjzj/g9p9RxpS2tSepPDRY+UwAaEeiKtUvIAg==", "dev": true, "license": "Apache-2.0", "dependencies": { - "playwright": "1.49.1" + "playwright": "1.64.1" }, "bin": { "playwright": "cli.js" }, "engines": { - "node": ">=18" + "node": ">=20" } }, "node_modules/@pmmmwh/react-refresh-webpack-plugin": { @@ -26095,35 +26095,32 @@ } }, "node_modules/playwright": { - "version": "1.49.1", - "resolved": "https://registry.npmjs.org/playwright/-/playwright-1.49.1.tgz", - "integrity": "sha512-VYL8zLoNTBxVOrJBbDuRgDWa3i+mfQgDTrL8Ah9QXZ7ax4Dsj0MSq5bYgytRnDVVe+njoKnfsYkH3HzqVj5UZA==", + "version": "1.64.1", + "resolved": "https://registry.npmjs.org/playwright/-/playwright-1.64.1.tgz", + "integrity": "sha512-HCrVhHr5QQuwYoswEUGTb7gGp522yflbv/ST8nF4sFWGuLjQCt17Q/EubpGGSNKYn1tsTCPZxqHhHCfVURu7UA==", "dev": true, "license": "Apache-2.0", "dependencies": { - "playwright-core": "1.49.1" + "playwright-core": "1.64.1" }, "bin": { "playwright": "cli.js" }, "engines": { - "node": ">=18" - }, - "optionalDependencies": { - "fsevents": "2.3.2" + "node": ">=20" } }, "node_modules/playwright-core": { - "version": "1.49.1", - "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.49.1.tgz", - "integrity": "sha512-BzmpVcs4kE2CH15rWfzpjzVGhWERJfmnXmniSyKeRZUs9Ws65m+RGIi7mjJK/euCegfn3i7jvqWeWyHe9y3Vgg==", + "version": "1.64.1", + "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.64.1.tgz", + "integrity": "sha512-BC4s8y6SEVA6Q1rSxZTto8hI1KUI3xXlHGZgvGqP4IqPdI/a6FX9H29IDNz7vKo9l21b6LfYosScPL6M3xxyDQ==", "dev": true, "license": "Apache-2.0", "bin": { "playwright-core": "cli.js" }, "engines": { - "node": ">=18" + "node": ">=20" } }, "node_modules/plur": { @@ -35869,12 +35866,12 @@ "dev": true }, "@playwright/test": { - "version": "1.49.1", - "resolved": "https://registry.npmjs.org/@playwright/test/-/test-1.49.1.tgz", - "integrity": "sha512-Ky+BVzPz8pL6PQxHqNRW1k3mIyv933LML7HktS8uik0bUXNCdPhoS/kLihiO1tMf/egaJb4IutXd7UywvXEW+g==", + "version": "1.64.1", + "resolved": "https://registry.npmjs.org/@playwright/test/-/test-1.64.1.tgz", + "integrity": "sha512-IaYGml/nSOiZWROfPtuIL7neuu9qDOZ3TNvNljUIrhDMxiGTgPjzj/g9p9RxpS2tSepPDRY+UwAaEeiKtUvIAg==", "dev": true, "requires": { - "playwright": "1.49.1" + "playwright": "1.64.1" } }, "@pmmmwh/react-refresh-webpack-plugin": { @@ -52818,19 +52815,18 @@ } }, "playwright": { - "version": "1.49.1", - "resolved": "https://registry.npmjs.org/playwright/-/playwright-1.49.1.tgz", - "integrity": "sha512-VYL8zLoNTBxVOrJBbDuRgDWa3i+mfQgDTrL8Ah9QXZ7ax4Dsj0MSq5bYgytRnDVVe+njoKnfsYkH3HzqVj5UZA==", + "version": "1.64.1", + "resolved": "https://registry.npmjs.org/playwright/-/playwright-1.64.1.tgz", + "integrity": "sha512-HCrVhHr5QQuwYoswEUGTb7gGp522yflbv/ST8nF4sFWGuLjQCt17Q/EubpGGSNKYn1tsTCPZxqHhHCfVURu7UA==", "dev": true, "requires": { - "fsevents": "2.3.2", - "playwright-core": "1.49.1" + "playwright-core": "1.64.1" } }, "playwright-core": { - "version": "1.49.1", - "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.49.1.tgz", - "integrity": "sha512-BzmpVcs4kE2CH15rWfzpjzVGhWERJfmnXmniSyKeRZUs9Ws65m+RGIi7mjJK/euCegfn3i7jvqWeWyHe9y3Vgg==", + "version": "1.64.1", + "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.64.1.tgz", + "integrity": "sha512-BC4s8y6SEVA6Q1rSxZTto8hI1KUI3xXlHGZgvGqP4IqPdI/a6FX9H29IDNz7vKo9l21b6LfYosScPL6M3xxyDQ==", "dev": true }, "plur": { diff --git a/package.json b/package.json index 6ac91fd5336ec..870ce339794f0 100644 --- a/package.json +++ b/package.json @@ -25,7 +25,7 @@ ], "devDependencies": { "@lodder/grunt-postcss": "^3.1.1", - "@playwright/test": "1.49.1", + "@playwright/test": "1.64.1", "@pmmmwh/react-refresh-webpack-plugin": "0.5.11", "@wordpress/babel-preset-default": "7.35.1", "@wordpress/dependency-extraction-webpack-plugin": "5.2.1", From f634e751c465eb4f6d2efb6d7a3d32a690727faf Mon Sep 17 00:00:00 2001 From: Jonathan Desrosiers <359867+desrosj@users.noreply.github.com> Date: Thu, 5 Nov 2026 17:21:15 -0500 Subject: [PATCH 3/3] Build/Test Tools: Pin the Windows and macOS runner versions. This replaces `windows-latest` with `windows-2025` and `macos-latest` with `macos-15`, matching trunk. Co-Authored-By: Claude Opus 5.5 Claude-Session: https://claude.ai/code/session_011Y86gzNmrCaBaUCqQTNKYH --- .github/workflows/test-build-processes.yml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/.github/workflows/test-build-processes.yml b/.github/workflows/test-build-processes.yml index c3bfd7fcf9554..ec468946589b8 100644 --- a/.github/workflows/test-build-processes.yml +++ b/.github/workflows/test-build-processes.yml @@ -35,7 +35,7 @@ jobs: strategy: fail-fast: false matrix: - os: [ ubuntu-26.04, windows-latest ] + os: [ ubuntu-26.04, windows-2025 ] directory: [ 'src', 'build' ] include: # Only prepare artifacts once. @@ -67,7 +67,7 @@ jobs: strategy: fail-fast: false matrix: - os: [ macos-latest ] + os: [ macos-15 ] directory: [ 'src', 'build' ] with: os: ${{ matrix.os }} @@ -83,7 +83,7 @@ jobs: strategy: fail-fast: false matrix: - os: [ ubuntu-26.04, windows-latest ] + os: [ ubuntu-26.04, windows-2025 ] directory: [ 'src', 'build' ] with: os: ${{ matrix.os }} @@ -107,7 +107,7 @@ jobs: strategy: fail-fast: false matrix: - os: [ macos-latest ] + os: [ macos-15 ] directory: [ 'src', 'build' ] with: os: ${{ matrix.os }}