Update dependency squizlabs/php_codesniffer to v3.10.2
This MR contains the following updates:
Package | Type | Update | Change |
---|---|---|---|
squizlabs/php_codesniffer | require-dev | minor |
3.9.0 -> 3.10.2
|
Release Notes
PHPCSStandards/PHP_CodeSniffer (squizlabs/php_codesniffer)
v3.10.2
Changed
- The following sniff(s) have received efficiency improvements:
- Generic.Functions.FunctionCallArgumentSpacing
- Thanks to [Juliette Reinders Folmer][@jrfnl] for the patch.
- The array format of the information passed to the
Reports::generateFileReport()
method is now documented in the Reports interface. #523- Thanks to [Juliette Reinders Folmer][@jrfnl] for the patch.
- Various housekeeping, including improvements to the tests and documentation.
- Thanks to [Bill Ruddock][@biinari], [Dan Wallis][@fredden], [Klaus Purer][@klausi], [Rodrigo Primo][@rodrigoprimo] and [Juliette Reinders Folmer][@jrfnl] for their contributions.
Fixed
- Fixed bug #513 : Generic.Functions.FunctionCallArgumentSpacing did not ignore the body of a match expressions passed as a function argument, which could lead to false positives.
- Thanks to [Juliette Reinders Folmer][@jrfnl] for the patch
- Fixed bug #533 : Generic.WhiteSpace.DisallowTabIndent: tab indentation for heredoc/nowdoc closers will no longer be auto-fixed to prevent parse errors. The issue will still be reported.
- The error code for heredoc/nowdoc indentation using tabs has been made more specific -
TabsUsedHeredocCloser
- to allow for selectively excluding the indentation check for heredoc/nowdoc closers. - Thanks to [Juliette Reinders Folmer][@jrfnl] for the patch
- The error code for heredoc/nowdoc indentation using tabs has been made more specific -
- Fixed bug #534 : Generic.WhiteSpace.DisallowSpaceIndent did not report on space indentation for PHP 7.3 flexible heredoc/nowdoc closers.
- Closers using space indentation will be reported with a dedicated error code:
SpacesUsedHeredocCloser
. - Thanks to [Juliette Reinders Folmer][@jrfnl] for the patch
- Closers using space indentation will be reported with a dedicated error code:
- Fixed bug #537 : Squiz.PHP.DisallowMultipleAssignments false positive for list assignments at the start of a new PHP block after an embedded PHP statement.
- Thanks to [Juliette Reinders Folmer][@jrfnl] for the patch
- Fixed bug #551 : Squiz.PHP.DisallowMultipleAssignments prevent false positive for function parameters during live coding.
- Thanks to [Rodrigo Primo][@rodrigoprimo] for the patch.
- Fixed bug #554 : Generic.CodeAnalysis.UselessOverridingMethod edge case false negative when the call to the parent method would end on a PHP close tag.
- Thanks to [Juliette Reinders Folmer][@jrfnl] for the patch
- Fixed bug #555 : Squiz.Classes.SelfMemberReference edge case false negative when the namespace declaration would end on a PHP close tag.
- Thanks to [Juliette Reinders Folmer][@jrfnl] for the patch
v3.10.1
Added
- Documentation for the following sniffs:
- Generic.Commenting.DocComment
- Thanks to [Rodrigo Primo][@rodrigoprimo] for the patch.
Changed
- The following have received efficiency improvements:
- Type handling in the PHP Tokenizer
- Thanks to [Juliette Reinders Folmer][@jrfnl] for the patch.
- Various housekeeping, including improvements to the tests and documentation.
- Thanks to [Juliette Reinders Folmer][@jrfnl] for their contributions.
Fixed
- Fixed bug #110, #437, #475 :
File::findStartOfStatement()
: the start of statement/expression determination for tokens in parentheses/short array brackets/others scopes, nested within match expressions, was incorrect in most cases. The trickle down effect of the bug fixes made to theFile::findStartOfStatement()
method, is that the Generic.WhiteSpace.ScopeIndent and the PEAR.WhiteSpace.ScopeIndent sniffs should now be able to correctly determine and fix the indent for match expressions containing nested expressions. These fixes also fix an issue with theSquiz.Arrays.ArrayDeclaration
sniff and possibly other, unreported bugs.- Thanks to [Juliette Reinders Folmer][@jrfnl] for the patch
- Fixed bug #504 : The tokenizer could inadvertently mistake the last parameter in a function call using named arguments for a DNF type.
- Thanks to [Juliette Reinders Folmer][@jrfnl] for the patch
- Fixed bug #508 : Tokenizer/PHP: extra hardening against handling parse errors in the type handling layer.
- Thanks to [Juliette Reinders Folmer][@jrfnl] for the patch
v3.10.0
Added
- Tokenizer support for PHP 8.2 Disjunctive Normal Form (DNF) types. #3731, #387, #461
- Includes new
T_TYPE_OPEN_PARENTHESIS
andT_TYPE_CLOSE_PARENTHESIS
tokens to represent the parentheses in DNF types. - These new tokens, like other parentheses, will have the
parenthesis_opener
andparenthesis_closer
token array indexes set and the tokens between them will have thenested_parenthesis
index. - The
File::getMethodProperties()
,File::getMethodParameters()
andFile::getMemberProperties()
methods now all support DNF types. #471, #472, #473 - Additionally, the following sniff has been updated to support DNF types:
- Generic.PHP.LowerCaseType #478
- Thanks to [Juliette Reinders Folmer][@jrfnl] for the patches.
- Includes new
- Documentation for the following sniffs:
- Squiz.WhiteSpace.FunctionClosingBraceSpace
- Thanks to [Przemek Hernik][@przemekhernik] for the patch.
Changed
- The help screens have received a face-lift for improved usability and readability. #447
- Thanks to [Juliette Reinders Folmer][@jrfnl] for the patch and thanks to [Colin Stewart][@costdev], [Gary Jones][@GaryJones] and [@mbomb007] for reviewing.
- The Squiz.Commenting.ClosingDeclarationComment sniff will now also examine and flag closing comments for traits. #442
- Thanks to [Rodrigo Primo][@rodrigoprimo] for the patch.
- The following sniff(s) have efficiency improvements:
- Generic.Arrays.ArrayIndent
- Thanks to [Rodrigo Primo][@rodrigoprimo] for the patch.
- The autoloader will now always return a boolean value indicating whether it has loaded a class or not. #479
- Thanks to [Juliette Reinders Folmer][@jrfnl] for the patch.
- Various housekeeping, including improvements to the tests and documentation.
- Thanks to [Dan Wallis][@fredden], [Danny van der Sluijs][@DannyvdSluijs], [Rodrigo Primo][@rodrigoprimo] and [Juliette Reinders Folmer][@jrfnl] for their contributions.
Fixed
- Fixed bug #466 : Generic.Functions.CallTimePassByReference was not flagging call-time pass-by-reference in class instantiations using the self/parent/static keywords.
- Thanks to [Rodrigo Primo][@rodrigoprimo] for the patch.
- Fixed bug #494 : edge case bug in tokenization of an empty block comment.
- Thanks to [Juliette Reinders Folmer][@jrfnl] for the patch
- Fixed bug #494 : edge case bug in tokenization of an empty single-line DocBlock.
- Thanks to [Juliette Reinders Folmer][@jrfnl] for the patch
- Fixed bug #499 : Generic.ControlStructures.InlineControlStructure now handles statements with a comment between
else
andif
correctly.- Thanks to [Rodrigo Primo][@rodrigoprimo] for the patch.
v3.9.2
Changed
- The Generic.ControlStructures.DisallowYodaConditions sniff no longer listens for the null coalesce operator. #458
- Thanks to [Rodrigo Primo][@rodrigoprimo] for the patch.
- Various housekeeping, including improvements to the tests and documentation.
- Thanks to [Dan Wallis][@fredden], [Rodrigo Primo][@rodrigoprimo] and [Juliette Reinders Folmer][@jrfnl] for their contributions.
Fixed
- Fixed bug #381 : Squiz.Commenting.ClosingDeclarationComment could throw the wrong error when the close brace being examined is at the very end of a file.
- Thanks to [Rodrigo Primo][@rodrigoprimo] for the patch.
- Fixed bug #385 : Generic.CodeAnalysis.JumbledIncrementer improved handling of parse errors/live coding.
- Thanks to [Rodrigo Primo][@rodrigoprimo] for the patch.
- Fixed bug #394 : Generic.Functions.CallTimePassByReference was not flagging call-time pass-by-reference in anonymous class instantiations
- Thanks to [Rodrigo Primo][@rodrigoprimo] for the patch.
- Fixed bug #420 : PEAR.Functions.FunctionDeclaration could run into a blocking PHP notice while fixing code containing a parse error.
- Thanks to [Juliette Reinders Folmer][@jrfnl] for the patch
- Fixed bug #421 : File::getMethodProperties() small performance improvement & more defensive coding.
- Thanks to [Juliette Reinders Folmer][@jrfnl] for the patch
- Fixed bug #423 : PEAR.WhiteSpace.ScopeClosingBrace would have a fixer conflict with itself when a close tag was preceded by non-empty inline HTML.
- Thanks to [Juliette Reinders Folmer][@jrfnl] for the patch
- Fixed bug #424 : PSR2.Classes.ClassDeclaration using namespace relative interface names in the extends/implements part of a class declaration would lead to a fixer conflict.
- Thanks to [Juliette Reinders Folmer][@jrfnl] for the patch
- Fixed bug #427 : Squiz.Operators.OperatorSpacing would have a fixer conflict with itself when an operator was preceeded by a new line and the previous line ended in a comment.
- Thanks to [Juliette Reinders Folmer][@jrfnl] for the patch
- Fixed bug #430 : Squiz.ControlStructures.ForLoopDeclaration: fixed potential undefined array index notice
- Thanks to [Juliette Reinders Folmer][@jrfnl] for the patch
- Fixed bug #431 : PSR2.Classes.ClassDeclaration will no longer try to auto-fix multi-line interface implements statements if these are interlaced with comments on their own line. This prevents a potential fixer conflict.
- Thanks to [Juliette Reinders Folmer][@jrfnl] for the patch
- Fixed bug #453 : Arrow function tokenization was broken when the return type was a stand-alone
true
orfalse
; or containedtrue
orfalse
as part of a union type.- Thanks to [Juliette Reinders Folmer][@jrfnl] for the patch
Other
-
ESLint 9.0 has been released and changes the supported configuration file format.
The (deprecated)
Generic.Debug.ESLint
sniff only supports the "old" configuration file formats and when using the sniff to run ESLint, theESLINT_USE_FLAT_CONFIG=false
environment variable will need to be set when using ESLint >= 9.0. For more information, see #436.
v3.9.1
Added
- Documentation for the following sniffs:
- Generic.PHP.RequireStrictTypes
- Squiz.WhiteSpace.MemberVarSpacing
- Squiz.WhiteSpace.ScopeClosingBrace
- Squiz.WhiteSpace.SuperfluousWhitespace
- Thanks to [Jay McPartland][@jonmcp] and [Rodrigo Primo][@rodrigoprimo] for the patches.
Changed
- The following sniffs have received performance related improvements:
- Generic.CodeAnalysis.UselessOverridingMethod
- Generic.Files.ByteOrderMark
- Thanks to [Rodrigo Primo][@rodrigoprimo] for the patches.
- Performance improvement for the "Diff" report. Should be most notable for Windows users. #355
- Thanks to [Juliette Reinders Folmer][@jrfnl] for the patch.
- The test suite has received some performance improvements. Should be most notable contributors using Windows. #351
- External standards with sniff tests using the PHP_CodeSniffer native test framework will also benefit from these changes.
- Thanks to [Juliette Reinders Folmer][@jrfnl] for the patch.
- Various housekeeping, including improvements to the tests and documentation.
- Thanks to [Jay McPartland][@jonmcp], [João Pedro Oliveira][@jpoliveira08], [Rodrigo Primo][@rodrigoprimo] and [Juliette Reinders Folmer][@jrfnl] for their contributions.
Fixed
- Fixed bug #289 : Squiz.WhiteSpace.OperatorSpacing and PSR12.Operators.OperatorSpacing : improved fixer conflict protection by more strenuously avoiding handling operators in declare statements.
- Thanks to [Dan Wallis][@fredden] for the patch.
- Fixed bug #366 : Generic.CodeAnalysis.UselessOverridingMethod : prevent false negative when the declared method name and the called method name do not use the same case.
- Thanks to [Rodrigo Primo][@rodrigoprimo] for the patch.
- Fixed bug #368 : Squiz.Arrays.ArrayDeclaration fixer did not handle static closures correctly when moving array items to their own line.
- Thanks to [Michał Bundyra][@michalbundyra] for the patch.
- Fixed bug #404 : Test framework : fixed PHP 8.4 deprecation notice.
- Thanks to [Juliette Reinders Folmer][@jrfnl] for the patch
Configuration
-
If you want to rebase/retry this MR, check this box
This MR has been generated by Renovate Bot.