Skip to content

Update wp-env to fix PHP 7.4 and 8.0 test environments - #877

Merged
MaggieCabrera merged 1 commit into
trunkfrom
update/wp-env-bullseye-archive
Sep 29, 2026
Merged

MaggieCabrera merged 1 commit into
trunkfrom
update/wp-env-bullseye-archive

Conversation

@MaggieCabrera

Copy link
Copy Markdown
Contributor

Summary

The PHP 7.4 and 8.0 test jobs fail on trunk and on every open PR. They fail before any test runs, because wp-env can't build the Docker image:

E: Failed to fetch http://deb.debian.org/debian-security/pool/updates/main/g/glibc/libc6-dev_2.31-13%2bdeb11u14_amd64.deb  404  Not Found

Debian 11 (bullseye) reached end of life on Aug 31, and its packages left the regular mirrors. The wordpress:php7.4 and wordpress:php8.0 images are based on bullseye, so they no longer build.

Gutenberg fixed this in WordPress/gutenberg#82478 by pointing bullseye at archive.debian.org. The fix shipped in @wordpress/env 11.15.0. We were on ^10.0.0, which never picks up an 11.x release.

Changes

  • @wordpress/env: ^10.0.0 → ^11.16.0.
  • @wordpress/scripts: ^31.5.0 → ^31.8.0. Earlier 31.x releases only allow wp-env ^10 as a peer dependency, so npm ci fails without this.
  • @wordpress/hooks: added to dependencies. The newer scripts package installs it transitively, so ESLint's import/no-extraneous-dependencies now flags our import in src/editor-enhancements/expand-typography-controls.js. It's still a webpack external, so the build output doesn't change.

None of the wp-env 11.0.0 breaking changes affect this repo. Ports are set explicitly in .wp-env.json, and we don't use install-path or WP_ENV_MULTISITE.

Test plan

  • WP_ENV_PHP_VERSION=7.4 wp-env start builds; PHPUnit passes (257 tests) and so does the multisite API suite.
  • Same on PHP 8.0 and the default PHP version.
  • npm ci installs cleanly from the new lockfile.
  • npm run build, npm run test:unit, lint:js, lint:css and lint:md-docs all pass. The build warning about edit from @wordpress/icons is already on trunk.
  • CI is green, including the PHP 7.4 and 8.0 jobs.

🤖 Generated with Claude Code

Debian 11 (bullseye) reached end of life, and its packages left the
regular mirrors. The PHP 7.4 and 8.0 WordPress images are based on it,
so building them failed. wp-env 11.15.0 points bullseye at
archive.debian.org (WordPress/gutenberg#82478).

@wordpress/scripts moves to 31.8.0, the first release that allows
wp-env 11 as a peer dependency. It now installs @wordpress/hooks as a
transitive dependency, so declare it where we import it.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

@mikachan mikachan left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Changes LGTM based on the description, thanks!

@MaggieCabrera
MaggieCabrera merged commit 6a02b7e into trunk Sep 29, 2026
13 checks passed
@MaggieCabrera
MaggieCabrera deleted the update/wp-env-bullseye-archive branch September 29, 2026 10:44
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants