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 the File::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 the Squiz.Arrays.ArrayDeclaration sniff and possibly other, unreported bugs.
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 the File::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 the Squiz.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
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 major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself)
- `@dependabot ignore minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself)
- `@dependabot ignore ` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself)
- `@dependabot unignore ` will remove all of the ignore conditions of the specified dependency
- `@dependabot unignore ` will remove the ignore condition of the specified dependency and ignore conditions
Bumps the all group with 2 updates: phpstan/phpstan and squizlabs/php_codesniffer.
Updates
phpstan/phpstan
from 1.11.1 to 1.11.2Release notes
Sourced from phpstan/phpstan's releases.
Commits
0d5d429
PHPStan 1.11.2c55d0e3
Updated PHPStan to commit c55d0e35f2dd475534a3272272cd19b601687bc6da6e9ae
Updated PHPStan to commit da6e9ae49806b1ed3c029e88a546837a15a1dee50055aac
Updated PHPStan to commit 0055aac00c8d75d9cf91d4452519f236f22c85055a73f07
Updated PHPStan to commit 5a73f076468e3513156129da864d407c872a4b49d77ab48
Update baselines49f87ce
Updated PHPStan to commit 49f87ced5835fffce2f91b4768cdc1ab59a1e67e1e4df5c
Update errors identifiers5cebee3
Updated PHPStan to commit 5cebee3ab99c89dc39dec4ac631a4df63a233c38c81aa85
Update BACKERS.mdUpdates
squizlabs/php_codesniffer
from 3.10.0 to 3.10.1Release notes
Sourced from squizlabs/php_codesniffer's releases.
Changelog
Sourced from squizlabs/php_codesniffer's changelog.
Commits
8f90f7a
Merge pull request #510 from PHPCSStandards/feature/changelog-3.10.1c9525a8
Changelog for the 3.10.1 release3361ff2
Merge pull request #509 from PHPCSStandards/feature/file-findstartendofstatem...fb351b3
Merge pull request #508 from PHPCSStandards/feature/tokenizer-php-harden-the-...a82f02e
File::find[Start|End]OfStatement(): add QA tests83373f9
File::findStartOfStatement(): fix some unintentional parse errors in the test...83afad8
Tokenizer/PHP: minor doc fix in type handling layer87c3936
Tokenizer/PHP: efficiency fix07477a7
Tokenizer/PHP: don't retokenize tokens in a broken type DNF declarationcac9038
Tokenizer/PHP: efficiency improvement for DNF type handlingDependabot 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