Skip to content

feat(deps): add PHPUnit, migrate to squizlabs, pin tools with a 30-day cooldown#9

Merged
kodyhagen-gh merged 4 commits into
releasefrom
feat/phpunit-and-dependency-cooldown
Jul 5, 2026
Merged

feat(deps): add PHPUnit, migrate to squizlabs, pin tools with a 30-day cooldown#9
kodyhagen-gh merged 4 commits into
releasefrom
feat/phpunit-and-dependency-cooldown

Conversation

@kodyhagen-gh

Copy link
Copy Markdown
Contributor

Summary

Bumps @bsu/wp-coding-standards to 3.4.0: adds phpunit/phpunit 12.5.29; migrates the abandoned phpcsstandards/php_codesniffer to squizlabs/php_codesniffer 3.13.5 (the WPCS-supported PHPCS 3.x line); updates and exact-pins WPCS 3.3.0, PHPStan 2.2.2, and the stubs to releases at least 30 days old; adds a 30-day npm min-release-age cooldown (node 24.18 / npm 11.16); and adds a composer post-update hook that keeps the BSUWordPressCS standard registered in phpcs installed_paths across dependency updates.

… 30-day cooldown

Bumps @bsu/wp-coding-standards to 3.4.0.

- Add phpunit/phpunit 12.5.29 (PHP 8.3+).
- Migrate the abandoned phpcsstandards/php_codesniffer 4.0.1 to
  squizlabs/php_codesniffer 3.13.5 (the WPCS-supported PHPCS 3.x line).
- Update and exact-pin wpcs 3.3.0, phpstan 2.2.2, extension-installer 1.4.3,
  phpstan-wordpress 2.0.3, acf-pro-stubs 6.8.2 — all releases >=30 days old.
- npm min-release-age=30 + engines npm >=11.10 for the supply-chain cooldown.

Consumers should reference vendor/bin/phpcs since the phpcs package dir moved.
The composer update regenerated CodeSniffer.conf via the dealerdirect installer, which
only registers composer-installed standards and dropped the manual ../../../../BSUWordPressCS
installed_paths entry that consuming repos need to resolve the BSUWordPressCS standard.
…port

npm min-release-age (the supply-chain cooldown) requires npm >= 11.10; node
24.12.0 shipped npm 11.6.2, which ignored the setting and failed engine-strict
against engines npm>=11.10. Node 24.18.0 ships npm 11.16.
composer install/update regenerates CodeSniffer.conf via the dealerdirect
installer, which drops the consumer-side BSUWordPressCS installed_paths entry.
A post-install/post-update hook (bin/register-bsuwordpresscs.php) re-appends it,
so the standard survives future dependency updates without a manual conf edit.
@kodyhagen-gh
kodyhagen-gh merged commit 0a3fd72 into release Jul 5, 2026
2 checks passed
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