From ec876fa7979a73785eeb9d8a2c074d8aacbdfbcf Mon Sep 17 00:00:00 2001 From: Jonathan Desrosiers <359867+desrosj@users.noreply.github.com> Date: Thu, 5 Nov 2026 16:35:27 -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/test-build-processes.yml | 6 +++--- .github/workflows/upgrade-testing-run.yml | 2 +- .github/workflows/upgrade-testing.yml | 12 ++++++------ 8 files changed, 22 insertions(+), 22 deletions(-) diff --git a/.github/workflows/coding-standards.yml b/.github/workflows/coding-standards.yml index 9d79266d9d8f7..e96a950f76975 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 d28bf932a37a1..5320d7f61e870 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 790ee9924435f..292e8b9881750 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 09201c6d70c5c..531a4279f5dc5 100644 --- a/.github/workflows/phpunit-tests.yml +++ b/.github/workflows/phpunit-tests.yml @@ -40,7 +40,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' ] @@ -50,20 +50,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' @@ -93,7 +93,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' ] @@ -103,13 +103,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' @@ -143,7 +143,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/test-build-processes.yml b/.github/workflows/test-build-processes.yml index f3abf5b5cba83..3699c227b9278 100644 --- a/.github/workflows/test-build-processes.yml +++ b/.github/workflows/test-build-processes.yml @@ -45,11 +45,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 || '' }} @@ -103,7 +103,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-run.yml b/.github/workflows/upgrade-testing-run.yml index b129818192e83..46b12708b1f7c 100644 --- a/.github/workflows/upgrade-testing-run.yml +++ b/.github/workflows/upgrade-testing-run.yml @@ -8,7 +8,7 @@ on: description: 'Operating system to run tests on.' required: false type: 'string' - default: 'ubuntu-latest' + default: 'ubuntu-26.04' wp: description: 'The version of WordPress to start with.' required: true diff --git a/.github/workflows/upgrade-testing.yml b/.github/workflows/upgrade-testing.yml index 18a45d4bd6b98..2101731e73857 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 58a5504f7a002eda9c730982b6ff90fcfe31684b Mon Sep 17 00:00:00 2001 From: Jonathan Desrosiers <359867+desrosj@users.noreply.github.com> Date: Thu, 5 Nov 2026 16:35:30 -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 44d3121fe0186..f0d5ea0b496bc 100644 --- a/package-lock.json +++ b/package-lock.json @@ -106,7 +106,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.5", "@wordpress/babel-preset-default": "7.26.13", "@wordpress/dependency-extraction-webpack-plugin": "4.25.13", @@ -3742,19 +3742,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": { @@ -26648,22 +26648,19 @@ } }, "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": { @@ -26679,16 +26676,16 @@ } }, "node_modules/playwright/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": { @@ -36761,12 +36758,12 @@ } }, "@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": { @@ -54059,19 +54056,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" }, "dependencies": { "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 } } diff --git a/package.json b/package.json index d0a0f3c3a7ff3..edd4e8504d485 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.5", "@wordpress/babel-preset-default": "7.26.13", "@wordpress/dependency-extraction-webpack-plugin": "4.25.13", From cd780602a6e34897700b9e4073f59045319def87 Mon Sep 17 00:00:00 2001 From: Jonathan Desrosiers <359867+desrosj@users.noreply.github.com> Date: Thu, 5 Nov 2026 17:21:19 -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 | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/test-build-processes.yml b/.github/workflows/test-build-processes.yml index 3699c227b9278..cc864c6b97491 100644 --- a/.github/workflows/test-build-processes.yml +++ b/.github/workflows/test-build-processes.yml @@ -45,7 +45,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. @@ -78,7 +78,7 @@ jobs: strategy: fail-fast: false matrix: - os: [ macos-latest ] + os: [ macos-15 ] directory: [ 'src', 'build' ] with: os: ${{ matrix.os }}