You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
New PHP_CodeSniffer\Sniffs\DeprecatedSniff interface to allow for marking a sniff as deprecated. #281
If a ruleset uses deprecated sniffs, deprecation notices will be shown to the end-user before the scan starts.
When running in -q (quiet) mode, the deprecation notices will be hidden.
Deprecated sniffs will still run and using them will have no impact on the exit code for a scan.
In ruleset "explain"-mode (-e) an asterix * will show next to deprecated sniffs.
Sniff maintainers are advised to read through the PR description for full details on how to use this feature for their own (deprecated) sniffs.
Squiz.PHP.EmbeddedPhp : the sniff will now also examine the formatting of embedded PHP statements using short open echo tags. #27
Includes a new ShortOpenEchoNoSemicolon errorcode to allow for selectively ignoring missing semicolons in single line embedded PHP snippets within short open echo tags.
The other error codes are the same and do not distinguish between what type of open tag was used.
Sniff tests which extend the PHPCS native AbstractSniffUnitTest class will now show a (non-build-breaking) warning when test case files contain fixable errors/warnings, but there is no corresponding .fixed file available in the test suite to verify the fixes against. #336
The warning is only displayed on PHPUnit 7.3.0 and higher.
The warning will be elevated to a test failure in PHPCS 4.0.
Support for scanning JavaScript and CSS files. See #2448.
This also means that all sniffs which are only aimed at JavaScript or CSS files are now deprecated.
The Javascript and CSS Tokenizers, all Javascript and CSS specific sniffs, and support for JS and CSS in select sniffs which support multiple file types, will be removed in version 4.0.0.
The abstract PHP_CodeSniffer\Filters\ExactMatch::getBlacklist() and PHP_CodeSniffer\Filters\ExactMatch::getWhitelist() methods are deprecated and will be removed in the 4.0 release. See #198.
In version 4.0, these methods will be replaced with abstract ExactMatch::getDisallowedFiles() and ExactMatch::getAllowedFiles() methods
To make Filters extending ExactMatch cross-version compatible with both PHP_CodeSniffer 3.9.0+ as well as 4.0+, implement the new getDisallowedFiles() and getAllowedFiles() methods.
When both the getDisallowedFiles() and getAllowedFiles() methods as well as the getBlacklist() and getWhitelist() are available, the new methods will take precedence over the old methods.
Fixed bug #127 : Squiz.Commenting.FunctionComment : The MissingParamType error code will now be used instead of MissingParamName when a parameter name is provided, but not its type. Additionally, invalid type hint suggestions will no longer be provided in these cases.
Fixed bug #196 : Squiz.PHP.EmbeddedPhp : fixer will no longer insert a stray new line when the closer of a multi-line embedded PHP block and the opener of the next multi-line embedded PHP block would be on the same line.
Fixed bug #288 : Generic.WhiteSpace.IncrementDecrementSpacing : error message for post-in/decrement will now correctly inform about new lines found before the operator.
Fixed bug #296 : Generic.WhiteSpace.ArbitraryParenthesesSpacing : false positive for non-arbitrary parentheses when these follow the scope closer of a switchcase.
Fixed bug #307 : PSR2.Classes.ClassDeclaration : space between a modifier keyword and the class keyword was not checked when the space included a new line or comment.
Fixed bug #325 : Squiz.Operators.IncrementDecrementUsage : the sniff was underreporting when there was (no) whitespace and/or comments in unexpected places.
A "Community cc list" has been introduced to ping maintainers of external standards and integrators for input regarding change proposals for PHP_CodeSniffer which may impact them. #227
For anyone who missed the discussion about this and is interested to be on this list, please feel invited to submit a PR to add yourself.
The list is located in the .github folder.
reacted with thumbs up emoji reacted with thumbs down emoji reacted with laugh emoji reacted with hooray emoji reacted with confused emoji reacted with heart emoji reacted with rocket emoji reacted with eyes emoji
-
Added
PHP_CodeSniffer\Sniffs\DeprecatedSniff
interface to allow for marking a sniff as deprecated. #281When running in
-q
(quiet) mode, the deprecation notices will be hidden.-e
) an asterix*
will show next to deprecated sniffs.Generic.CodeAnalysis.RequireExplicitBooleanOperatorPrecedence
sniff. #197ShortOpenEchoNoSemicolon
errorcode to allow for selectively ignoring missing semicolons in single line embedded PHP snippets within short open echo tags.Changed
phpcbf
run. #308AbstractSniffUnitTest
class will now show a (non-build-breaking) warning when test case files contain fixable errors/warnings, but there is no corresponding.fixed
file available in the test suite to verify the fixes against. #336Deprecated
PHP_CodeSniffer\Filters\ExactMatch::getBlacklist()
andPHP_CodeSniffer\Filters\ExactMatch::getWhitelist()
methods are deprecated and will be removed in the 4.0 release. See #198.ExactMatch::getDisallowedFiles()
andExactMatch::getAllowedFiles()
methodsExactMatch
cross-version compatible with both PHP_CodeSniffer 3.9.0+ as well as 4.0+, implement the newgetDisallowedFiles()
andgetAllowedFiles()
methods.getDisallowedFiles()
andgetAllowedFiles()
methods as well as thegetBlacklist()
andgetWhitelist()
are available, the new methods will take precedence over the old methods.Zend.Debug.CodeAnalyzer
sniff. See #277.Fixed
MissingParamType
error code will now be used instead ofMissingParamName
when a parameter name is provided, but not its type. Additionally, invalid type hint suggestions will no longer be provided in these cases.switch
case
.class
keyword was not checked when the space included a new line or comment.Other
The list is located in the
.github
folder.New Contributors
The PHP_CodeSniffer project is happy to welcome the following new contributors:
@joachim-n, @remicollet, @TimWolla
Statistics
Closed: 8 issues
Merged: 77 pull requests
💸 If you like what you see, please consider funding the PHP_CodeSniffer project. If you already do so: thank you!
This discussion was created from the release 3.9.0 - 2024-02-16.
Beta Was this translation helpful? Give feedback.
All reactions