This release contains breaking changes.
Upgrade guides for both ruleset maintainers/end-users, as well as for sniff developers and integrators, have been published to the Wiki.
You are strongly encouraged to read the upgrade guide applicable to your situation before upgrading.
This release includes all improvements and bugfixes from PHP_CodeSniffer 4.0.0-beta1, 4.0.0-RC1, 3.13.3 and 3.13.4.
Changed
- Tokenizer/PHP: fully qualified
exit
/die
/true
/false
/null
will be tokenized as the keyword token and the token'content'
will include the leading backslash. #1201 - Wherever possible based on the PHP 7.2 minimum version, parameter types have been added to all methods. #1237
- The supported PHPUnit version constraints have been updated to
^8.4.0 || ^9.3.4 || ^10.5.32 || 11.3.3 - 11.5.28 || ^11.5.31
. #1247- External standards using the PHP_CodeSniffer native framework may need to update their own PHPUnit version constraints.
- Various housekeeping, including improvements to the tests and documentation.
Fixed
- Fixed bug #1082: new exit codes weren't applied when running
phpcbf
on code provided via STDIN.- Thanks to Dan Wallis for the patch.
- Fixed bug #1172:
// phpcs:set
for inline array properties did not handle a single item array with the valuetrue
,false
ornull
correctly. - Fixed bug #1174: progress bar wasn't showing files as fixed when running
phpcbf
in parallel mode. - Fixed bug #1226: PHP 8.5 "Using null as an array offset" deprecation notice.
Other
- Please be aware that the
master
branch has been renamed to3.x
and the default branch has changed to the4.x
branch.- If you contribute to PHP_CodeSniffer, you will need to update your local git clone.
- If you develop against PHP_CodeSniffer and run your tests against dev branches of PHPCS, you will need to update your workflows.
Statistics
Closed: 5 issues
Merged: 35 pull requests
Follow @phpcs on Mastodon or @PHP_CodeSniffer on X to stay informed.
Please consider funding the PHP_CodeSniffer project. If you already do so: thank you!