Skip to content

Fix CI and bump minimum PHP to 7.4#880

Merged
GaryJones merged 3 commits intodevelopfrom
GaryJones/fix-ci-879
Mar 22, 2026
Merged

Fix CI and bump minimum PHP to 7.4#880
GaryJones merged 3 commits intodevelopfrom
GaryJones/fix-ci-879

Conversation

@GaryJones
Copy link
Copy Markdown
Contributor

@GaryJones GaryJones commented Mar 22, 2026

Summary

The CI workflows testing against development versions of PHPCS dependencies have been failing because they referenced dev-master for squizlabs/php_codesniffer, but that branch no longer exists — the repository moved to phpcsstandards/php_codesniffer and the development branch is now 3.x. The correct Composer constraint for a version-like branch is 3.x-dev (suffix form), not dev-3.x.

Fixing the PHPCS branch reference then exposed a second issue: WPCS develop now requires PHP 7.2+, causing the PHP 5.4 and 7.0 "dev" matrix entries to fail on dependency resolution. Rather than simply adjusting the dev matrix, this raises the minimum PHP version to 7.4. The VIP platform requires PHP 8.3, and consuming plugins typically require 7.4+, so PHP 5.4 support was purely theoretical at this point.

With PHP 7.4 as the floor, PHPUnit 8 (which supports PHP 7.2+) is no longer needed — PHPUnit 9 (PHP 7.3+) covers the entire supported range. This removes PHPUnit 8 from the Composer constraint and drops the PHPUnit 8 schema validation step from the BasicQA workflow.

Changes

  • PHPCS dev branch: dev-master3.x-dev in basics.yml and test.yml
  • Minimum PHP: 5.4 → 7.4 in composer.json, lint matrix, test matrix, quicktest matrix
  • PHPUnit: ^4 || ^5 || ^6 || ^7 || ^8 || ^9^9; removed PHPUnit 8 schema validation step

Test plan

  • CI passes — specifically the "Basic CS and QA checks" and "PHPCS dev" test matrix entries
  • Quicktest matrix runs against PHP 7.4 (lowest) and latest
  • Full test matrix covers PHP 7.4–8.4 with lowest/stable, plus 7.4/8.4/8.5 with dev dependencies

@GaryJones GaryJones requested a review from a team as a code owner March 22, 2026 12:03
@GaryJones GaryJones changed the base branch from main to develop March 22, 2026 12:47
@GaryJones GaryJones force-pushed the GaryJones/fix-ci-879 branch from 1770b8e to 1d3ca7f Compare March 22, 2026 12:48
@GaryJones GaryJones enabled auto-merge March 22, 2026 12:49
@GaryJones GaryJones force-pushed the GaryJones/fix-ci-879 branch from 3e60b44 to 80aed0a Compare March 22, 2026 13:04
@GaryJones GaryJones changed the title CI: update PHPCS dev branch from master to 3.x Fix CI and bump minimum PHP to 7.4 Mar 22, 2026
The PHPCS repository moved from squizlabs to phpcsstandards
and no longer has a master branch. The dev CI jobs need to
track the 3.x branch until WPCS (and by extension VIPCS)
is compatible with PHPCS 4.x.
WPCS 3.3.0 and its develop branch now require PHP 7.2+, making the
existing PHP 5.4–7.1 CI matrix entries unable to install dev
dependencies. Since the VIP platform requires PHP 8.3 and consuming
plugins typically require 7.4+, raising the minimum to 7.4 aligns
VIPCS with its actual usage whilst keeping the dev dependency early
warning system functional.
With PHP 7.4 as the minimum, PHPUnit 9 (which requires PHP 7.3+)
covers the entire supported range. This removes the PHPUnit 8 schema
validation step and tightens the Composer constraint accordingly.
@GaryJones GaryJones force-pushed the GaryJones/fix-ci-879 branch from 80aed0a to fdd5a4c Compare March 22, 2026 13:05
@GaryJones GaryJones disabled auto-merge March 22, 2026 13:07
@GaryJones GaryJones merged commit 96781d6 into develop Mar 22, 2026
26 checks passed
@GaryJones GaryJones deleted the GaryJones/fix-ci-879 branch March 22, 2026 13:07
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.

1 participant