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.
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.
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.
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.
Fixed bug #453 : Arrow function tokenization was broken when the return type was a stand-alone true or false; or contained true or false as part of a union type.
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, the ESLINT_USE_FLAT_CONFIG=false environment variable will need to be set when using ESLint >= 9.0.
For more information, see #436.
Tokenizer support for PHP 8.2 Disjunctive Normal Form (DNF) types. #3731sq-3731, #387, #461
Includes new T_TYPE_OPEN_PARENTHESIS and T_TYPE_CLOSE_PARENTHESIS tokens to represent the parentheses in DNF types.
These new tokens, like other parentheses, will have the parenthesis_opener and parenthesis_closer token array indexes set and the tokens between them will have the nested_parenthesis index.
The File::getMethodProperties(), File::getMethodParameters() and File::getMemberProperties() methods now all support DNF types. #471, #472, #473
Additionally, the following sniff has been updated to support DNF types:
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.
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 and if correctly.
Thanks to [Rodrigo Primo][@rodrigoprimo] for the patch.
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot show ignore conditions` will show all of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
Bumps squizlabs/php_codesniffer from 3.9.1 to 3.10.0.
Release notes
Sourced from squizlabs/php_codesniffer's releases.
Changelog
Sourced from squizlabs/php_codesniffer's changelog.
... (truncated)
Commits
57e0980
Merge pull request #501 from PHPCSStandards/feature/changelog-3.10.098eaf50
Changelog for the 3.10.0 releaseb7c2356
Merge pull request #494 from PHPCSStandards/feature/tokenizer-comments-add-testsbef6fff
Tokenizers/Comment: minor tweaks252675c
Tokenizers/Comment: bug fix - empty docblockc54cb10
Tokenizers/PHP: bug fix - empty block commentd96c7d6
Tokenizers/Comment: add tests4866ee3
Merge pull request #499 from rodrigoprimo/fix-inline-control-structure-bugf83ba7e
Generic/InlineControlStructure: fix error when handlingelse if
72b50b9
[Documentation] Squiz.WhiteSpace.FunctionClosingBraceSpace (#408)Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting
@dependabot rebase
.Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot show