Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
52 commits
Select commit Hold shift + click to select a range
8cd3c85
Remove obsolete React Native mobile E2E workflows.
desrosj Sep 1, 2026
2e94594
Remove trunk-only Storybook GitHub Pages deploy workflow.
desrosj Sep 1, 2026
71cef05
Remove trunk-only WordPress.org plugin-repo publishing workflow.
desrosj Sep 1, 2026
bbe87c2
Remove trunk-only stale-issue management workflows.
desrosj Sep 1, 2026
764f983
Remove trunk-only flaky-test issue-reporting workflow.
desrosj Sep 1, 2026
1e8dc29
Keep `pull-request-automation.yml`: `pull_request_target` has no bran…
desrosj Sep 14, 2026
995b1e2
Disable npm caching in workflows that publish built assets.
desrosj Sep 22, 2026
15a164b
Bump actions/checkout to v7.0.1.
desrosj Sep 1, 2026
92fb854
Bump actions/setup-node to v7.0.0.
desrosj Sep 1, 2026
ea736f9
Bump actions/cache to v6.1.0.
desrosj Sep 15, 2026
4833a9c
Bump actions/upload-artifact to v7.0.1.
desrosj Sep 1, 2026
d46609d
Bump actions/download-artifact to v8.0.1.
desrosj Sep 1, 2026
7279fdf
Bump preactjs/compressed-size-action to v2.10.0.
desrosj Sep 1, 2026
0a5a258
Pin actions/github-script to a full-length SHA at v9.0.0.
desrosj Sep 1, 2026
8439a39
Fix mismatched version comment flagged by zizmor.
desrosj Sep 11, 2026
ccf37cf
Widen push branch filters on GitHub Actions workflows
desrosj Sep 11, 2026
b72f7f1
Remove the `push` trigger from `pull-request-automation.yml`: its pus…
desrosj Sep 14, 2026
e26ba34
Remove the React Native mobile unit test job.
desrosj Sep 21, 2026
8f7ae1d
Compare performance against the pull request's base branch.
desrosj Sep 18, 2026
389b88b
Pin WordPress 5.9 for performance testing.
desrosj Sep 18, 2026
c1a40b6
TEMPORARY (fork only): run the performance job on this fork.
desrosj Sep 23, 2026
91079c8
TEMPORARY (fork only): clone this fork in the performance CLI.
desrosj Sep 28, 2026
bfb28c9
Eliminate the Node version matrix and hardcoded versions in unit-test…
desrosj Sep 1, 2026
6385f8f
Eliminate the Node version matrix in create-block.yml.
desrosj Sep 1, 2026
13bf912
Eliminate the Node version matrix dimension in end2end-test.yml.
desrosj Sep 1, 2026
2054e33
Eliminate the single-value Node version matrix in bundle-size.yml.
desrosj Sep 1, 2026
b56eb2b
Resolve the Node version from .nvmrc in static-checks.yml.
desrosj Sep 1, 2026
df6b3e1
Resolve the Node version from .nvmrc in performance.yml.
desrosj Sep 1, 2026
f78a630
Resolve the Node version from .nvmrc in build-plugin-zip.yml.
desrosj Sep 1, 2026
a6394d1
Pin GitHub Actions runner images instead of using -latest aliases.
desrosj Sep 11, 2026
e39e643
wp-env: Migrate from Docker Compose v1 to v2.
desrosj Sep 11, 2026
97f95b3
Test PHPUnit against a matrix of supported PHP versions.
desrosj Sep 13, 2026
b0022e9
Remove the `spatie/phpunit-watcher` dev dependency.
desrosj Oct 5, 2026
98c92c7
Run PHP coding standards checks outside of Docker.
desrosj Sep 23, 2026
874e648
Declare Composer's `allow-plugins` configuration.
desrosj Sep 23, 2026
257985d
Declare the platform PHP version Composer resolves against.
desrosj Sep 24, 2026
e55b2b7
Configure Composer policy to ignore an unreachable advisory.
desrosj Sep 23, 2026
593840c
Ignore Browserslist old-data warning in unit tests.
desrosj Sep 14, 2026
a3d5050
Fix a theme-activation navigation race in `activateTheme()`.
desrosj Sep 28, 2026
4b192ab
Add an option to choose the MariaDB version used by wp-env.
desrosj Sep 29, 2026
bdfa5ad
Pin MariaDB to 10.6 in the wp-env configuration.
desrosj Sep 30, 2026
03231c1
wp-env: Fix MySQL startup race condition causing database connection …
desrosj Sep 30, 2026
ace5c79
Pin wp-phpunit/wp-phpunit to the WordPress 5.9.x test bootstrap.
desrosj Oct 5, 2026
e83f065
Use PHPUnit Polyfills' snake_case fixture method names in PHPUnit tests.
desrosj Oct 5, 2026
25ccdcc
Pin `phpunit/phpunit` to a PHP 5.6/7.0-compatible release.
desrosj Oct 6, 2026
13c93af
Use `assertStringContainsString()` and `assertStringNotContainsString…
desrosj Oct 6, 2026
4561c70
Use `assertIsArray()` and `assertIsInt()` instead of the removed `ass…
desrosj Oct 6, 2026
af51c06
Assert URL details request args and schema by key instead of with `as…
desrosj Oct 6, 2026
2d36261
Initialize `WP_Block_Supports::$block_to_render` in the Navigation Li…
desrosj Oct 6, 2026
cabe862
Disable AppArmor's user namespace restriction in the performance work…
desrosj Oct 6, 2026
638ce71
Install Xdebug 3.1.6 in wp-env when the environment uses PHP 7.
desrosj Oct 7, 2026
91232b7
Pass the environment to the performance test run.
desrosj Oct 7, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Empty file added .cache/.gitkeep
Empty file.
37 changes: 21 additions & 16 deletions .github/workflows/build-plugin-zip.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,12 @@ name: Build Gutenberg Plugin Zip
on:
pull_request:
push:
branches: [trunk]
branches:
- trunk
- 'release/[0-9]+.[0-9]'
- 'wp/[0-9]+.[0-9]'
- wp/latest
- wp/next
workflow_dispatch:
inputs:
version:
Expand All @@ -20,7 +25,7 @@ concurrency:
jobs:
compute-stable-branches:
name: Compute current and next stable release branches
runs-on: ubuntu-latest
runs-on: 'ubuntu-24.04'
if: ${{ github.event_name == 'workflow_dispatch' }}
outputs:
current_stable_branch: ${{ steps.get_branches.outputs.current_stable_branch }}
Expand All @@ -45,7 +50,7 @@ jobs:

bump-version:
name: Bump version
runs-on: ubuntu-latest
runs-on: 'ubuntu-24.04'
needs: compute-stable-branches
if: |
github.event_name == 'workflow_dispatch' && (
Expand All @@ -69,7 +74,7 @@ jobs:

steps:
- name: Checkout code
uses: actions/checkout@5a4ac9002d0be2fb38bd78e4b4dbde5606d7042f # v2.3.4
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
with:
token: ${{ secrets.GUTENBERG_TOKEN }}

Expand Down Expand Up @@ -152,7 +157,7 @@ jobs:

build:
name: Build Release Artifact
runs-on: ubuntu-latest
runs-on: 'ubuntu-24.04'
needs: bump-version
if: |
always() && (
Expand All @@ -165,23 +170,23 @@ jobs:

steps:
- name: Checkout code
uses: actions/checkout@5a4ac9002d0be2fb38bd78e4b4dbde5606d7042f # v2.3.4
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
with:
ref: ${{ needs.bump-version.outputs.release_branch || github.ref }}

- name: Use desired version of NodeJS
uses: actions/setup-node@38d90ce44d5275ad62cc48384b3d8a58c500bb5f # v2.2.2
uses: actions/setup-node@820762786026740c76f36085b0efc47a31fe5020 # v7.0.0
with:
node-version: 14
cache: npm
node-version-file: '.nvmrc'
package-manager-cache: false

- name: Build Gutenberg plugin ZIP file
run: ./bin/build-plugin-zip.sh
env:
NO_CHECKS: 'true'

- name: Upload artifact
uses: actions/upload-artifact@e448a9b857ee2131e752b06002bf0e093c65e571 # v2.2.2
uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7.0.1
with:
name: gutenberg-plugin
path: ./gutenberg.zip
Expand All @@ -204,23 +209,23 @@ jobs:

- name: Upload release notes artifact
if: ${{ needs.bump-version.outputs.new_version }}
uses: actions/upload-artifact@e448a9b857ee2131e752b06002bf0e093c65e571 # v2.2.2
uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7.0.1
with:
name: release-notes
path: ./release-notes.txt

revert-version-bump:
name: Revert version bump if build failed
needs: [bump-version, build]
runs-on: ubuntu-latest
runs-on: 'ubuntu-24.04'
if: |
always() &&
( needs.build.outputs.job_status == 'failure' ) &&
needs.bump-version.outputs.release_branch_commit

steps:
- name: Checkout code
uses: actions/checkout@5a4ac9002d0be2fb38bd78e4b4dbde5606d7042f # v2.3.4
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
with:
fetch-depth: 2
ref: ${{ needs.bump-version.outputs.release_branch }}
Expand Down Expand Up @@ -257,7 +262,7 @@ jobs:
create-release:
name: Create Release Draft and Attach Asset
needs: [bump-version, build]
runs-on: ubuntu-latest
runs-on: 'ubuntu-24.04'

steps:
- name: Set Release Version
Expand All @@ -267,12 +272,12 @@ jobs:
run: echo ::set-output name=version::$(echo $VERSION | cut -d / -f 3 | sed 's/-rc./ RC/' )

- name: Download Plugin Zip Artifact
uses: actions/download-artifact@4a7a711286f30c025902c28b541c10e147a9b843 # v2.0.8
uses: actions/download-artifact@3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c # v8.0.1
with:
name: gutenberg-plugin

- name: Download Release Notes Artifact
uses: actions/download-artifact@4a7a711286f30c025902c28b541c10e147a9b843 # v2.0.8
uses: actions/download-artifact@3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c # v8.0.1
with:
name: release-notes

Expand Down
13 changes: 5 additions & 8 deletions .github/workflows/bundle-size.yml
Original file line number Diff line number Diff line change
Expand Up @@ -34,23 +34,20 @@ concurrency:
jobs:
build:
name: Check
runs-on: ubuntu-latest
strategy:
matrix:
node: ['14']
runs-on: 'ubuntu-24.04'

steps:
- uses: actions/checkout@5a4ac9002d0be2fb38bd78e4b4dbde5606d7042f # v2.3.4
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
with:
fetch-depth: 1

- name: Use desired version of NodeJS
uses: actions/setup-node@38d90ce44d5275ad62cc48384b3d8a58c500bb5f # v2.2.2
uses: actions/setup-node@820762786026740c76f36085b0efc47a31fe5020 # v7.0.0
with:
node-version: ${{ matrix.node }}
node-version-file: '.nvmrc'
cache: npm

- uses: preactjs/compressed-size-action@df6e03e187079aef959a2878311639c77b95ee2e # v2.2.0
- uses: preactjs/compressed-size-action@f322c295dde06a1cb7ccaef105732dd8a726d1d9 # 2.10.0
with:
repo-token: '${{ secrets.GITHUB_TOKEN }}'
pattern: '{build/**/*.min.js,build/**/*.css}'
Expand Down
19 changes: 10 additions & 9 deletions .github/workflows/create-block.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,12 @@ name: Create Block
on:
pull_request:
push:
branches: [trunk, wp/trunk]
branches:
- trunk
- 'release/[0-9]+.[0-9]'
- 'wp/[0-9]+.[0-9]'
- wp/latest
- wp/next

# Cancels all previous workflow runs for pull requests that have not completed.
concurrency:
Expand All @@ -15,20 +20,16 @@ concurrency:
jobs:
checks:
name: Checks
runs-on: ubuntu-latest
runs-on: 'ubuntu-24.04'
if: ${{ github.repository == 'WordPress/gutenberg' || github.event_name == 'pull_request' }}
strategy:
fail-fast: false
matrix:
node: ['12', '14']

steps:
- uses: actions/checkout@5a4ac9002d0be2fb38bd78e4b4dbde5606d7042f # v2.3.4
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1

- name: Use desired version of NodeJS
uses: actions/setup-node@38d90ce44d5275ad62cc48384b3d8a58c500bb5f # v2.2.2
uses: actions/setup-node@820762786026740c76f36085b0efc47a31fe5020 # v7.0.0
with:
node-version: ${{ matrix.node }}
node-version-file: '.nvmrc'
cache: npm

- name: npm install, build, format and lint
Expand Down
19 changes: 10 additions & 9 deletions .github/workflows/end2end-test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,8 +5,10 @@ on:
push:
branches:
- trunk
- 'release/**'
- 'wp/**'
- 'release/[0-9]+.[0-9]'
- 'wp/[0-9]+.[0-9]'
- wp/latest
- wp/next

# Cancels all previous workflow runs for pull requests that have not completed.
concurrency:
Expand All @@ -18,21 +20,20 @@ concurrency:
jobs:
admin:
name: Admin - ${{ matrix.part }}
runs-on: ubuntu-latest
runs-on: 'ubuntu-24.04'
if: ${{ github.repository == 'WordPress/gutenberg' || github.event_name == 'pull_request' }}
strategy:
fail-fast: false
matrix:
part: [1, 2, 3, 4]
node: ['14']

steps:
- uses: actions/checkout@5a4ac9002d0be2fb38bd78e4b4dbde5606d7042f # v2.3.4
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1

- name: Use desired version of NodeJS
uses: actions/setup-node@38d90ce44d5275ad62cc48384b3d8a58c500bb5f # v2.2.2
uses: actions/setup-node@820762786026740c76f36085b0efc47a31fe5020 # v7.0.0
with:
node-version: ${{ matrix.node }}
node-version-file: '.nvmrc'
cache: npm

- name: Npm install and build
Expand All @@ -50,15 +51,15 @@ jobs:
$( npm bin )/wp-scripts test-e2e --config=./packages/e2e-tests/jest.config.js --cacheDirectory="$HOME/.jest-cache" --runTestsByPath $( awk 'NR % 4 == ${{ matrix.part }} - 1' < ~/.jest-e2e-tests )

- name: Archive debug artifacts (screenshots, HTML snapshots)
uses: actions/upload-artifact@e448a9b857ee2131e752b06002bf0e093c65e571 # v2.2.2
uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7.0.1
if: always()
with:
name: failures-artifacts
path: artifacts
if-no-files-found: ignore

- name: Archive flaky tests report
uses: actions/upload-artifact@e448a9b857ee2131e752b06002bf0e093c65e571 # v2.2.2
uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7.0.1
if: always()
with:
name: flaky-tests-report
Expand Down
32 changes: 0 additions & 32 deletions .github/workflows/flaky-tests.yml

This file was deleted.

23 changes: 15 additions & 8 deletions .github/workflows/performance.yml
Original file line number Diff line number Diff line change
Expand Up @@ -17,25 +17,32 @@ concurrency:
jobs:
performance:
name: Run performance tests
runs-on: ubuntu-latest
if: ${{ github.repository == 'WordPress/gutenberg' }}
runs-on: 'ubuntu-24.04'

steps:
- uses: actions/checkout@5a4ac9002d0be2fb38bd78e4b4dbde5606d7042f # v2.3.4
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1

- name: Use desired version of NodeJS
uses: actions/setup-node@38d90ce44d5275ad62cc48384b3d8a58c500bb5f # v2.2.2
uses: actions/setup-node@820762786026740c76f36085b0efc47a31fe5020 # v7.0.0
with:
node-version: 14
node-version-file: '.nvmrc'
cache: npm

- name: Npm install
run: |
npm ci

- name: Compare performance with trunk
# This branch's performance tests use an outdated version of Puppeteer, which fails on the `ubuntu-24.04` image.
# This disables AppArmor in order to work around those failures.
#
# See https://issues.chromium.org/issues/373753919
# and https://chromium.googlesource.com/chromium/src/+/main/docs/security/apparmor-userns-restrictions.md
- name: Disable AppArmor
run: echo 0 | sudo tee /proc/sys/kernel/apparmor_restrict_unprivileged_userns

- name: Compare performance with base branch
if: github.event_name == 'pull_request'
run: ./bin/plugin/cli.js perf --ci $GITHUB_SHA trunk --tests-branch $GITHUB_SHA
run: ./bin/plugin/cli.js perf --ci "$GITHUB_SHA" "$GITHUB_BASE_REF" --tests-branch "$GITHUB_SHA" --wp-version "5.9"

- name: Compare performance with current WordPress Core and previous Gutenberg versions
if: github.event_name == 'release'
Expand All @@ -56,7 +63,7 @@ jobs:
if: github.event_name == 'push'
run: ./bin/plugin/cli.js perf --ci $GITHUB_SHA wp/5.8 --tests-branch $GITHUB_SHA

- uses: actions/github-script@0.3.0
- uses: actions/github-script@3a2844b7e9c422d3c10d287c895573f7108da1b3 # v9.0.0
if: github.event_name == 'push'
id: commit-timestamp
with:
Expand Down
7 changes: 3 additions & 4 deletions .github/workflows/pull-request-automation.yml
Original file line number Diff line number Diff line change
@@ -1,7 +1,6 @@
on:
pull_request_target:
types: [opened]
push:
name: Pull request automation

jobs:
Expand All @@ -15,17 +14,17 @@ jobs:
steps:
# Checkout defaults to using the branch which triggered the event, which
# isn't necessarily `trunk` (e.g. in the case of a merge).
- uses: actions/checkout@5a4ac9002d0be2fb38bd78e4b4dbde5606d7042f # v2.3.4
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
with:
ref: trunk

- name: Use desired version of NodeJS
uses: actions/setup-node@38d90ce44d5275ad62cc48384b3d8a58c500bb5f # v2.2.2
uses: actions/setup-node@820762786026740c76f36085b0efc47a31fe5020 # v7.0.0
with:
node-version: ${{ matrix.node }}

- name: Cache NPM packages
uses: actions/cache@c64c572235d810460d0d6876e9c705ad5002b353 # v2.1.6
uses: actions/cache@55cc8345863c7cc4c66a329aec7e433d2d1c52a9 # v6.1.0
with:
# npm cache files are stored in `~/.npm` on Linux/macOS
path: ~/.npm
Expand Down
Loading
Loading