sensei-content-drip
sensei-content-drip copied to clipboard
Update require-dev
This PR contains the following updates:
Package | Change | Age | Adoption | Passing | Confidence |
---|---|---|---|---|---|
dealerdirect/phpcodesniffer-composer-installer (source) | 0.7.1 -> 0.7.2 |
||||
phpcompatibility/phpcompatibility-wp (source) | 2.1.2 -> 2.1.5 |
||||
phpunit/phpunit (source) | 9.5.10 -> 9.6.21 |
||||
squizlabs/php_codesniffer | 3.6.1 -> 3.10.3 |
Release Notes
PHPCSStandards/composer-installer (dealerdirect/phpcodesniffer-composer-installer)
v0.7.2
What's Changed
- Add details regarding QA automation in CONTRIBUTING.md file. by @Potherca in https://github.com/PHPCSStandards/composer-installer/pull/133
- Add mention of Composer and PHP compatibility to project README. by @Potherca in https://github.com/PHPCSStandards/composer-installer/pull/132
- Composer: tweak PHPCS version constraint by @jrfnl in https://github.com/PHPCSStandards/composer-installer/pull/152
- CONTRIBUTING: remove duplicate code of conduct by @jrfnl in https://github.com/PHPCSStandards/composer-installer/pull/148
- Document release process by @Potherca in https://github.com/PHPCSStandards/composer-installer/pull/118
- Plugin::loadInstalledPaths():
config-show
always shows all by @jrfnl in https://github.com/PHPCSStandards/composer-installer/pull/154 - README: minor tweaks by @jrfnl in https://github.com/PHPCSStandards/composer-installer/pull/149
- README: update with information about Composer >= 2.2 by @jrfnl in https://github.com/PHPCSStandards/composer-installer/pull/141
- Replace deprecated Sensiolabs security checker by @paras-malhotra in https://github.com/PHPCSStandards/composer-installer/pull/130
- Stabilize a condition by @jrfnl in https://github.com/PHPCSStandards/composer-installer/pull/127
- Update copyright year by @jrfnl in https://github.com/PHPCSStandards/composer-installer/pull/138
- Various minor tweaks by @jrfnl in https://github.com/PHPCSStandards/composer-installer/pull/151
CI/CD
- Change YamlLint config to prevent "truthy" warning. by @Potherca in https://github.com/PHPCSStandards/composer-installer/pull/144
- GH Actions: PHP 8.1 has been released by @jrfnl in https://github.com/PHPCSStandards/composer-installer/pull/139
- Travis: line length tweaks by @jrfnl in https://github.com/PHPCSStandards/composer-installer/pull/128
- CI: Switch to GH Actions by @jrfnl in https://github.com/PHPCSStandards/composer-installer/pull/137
- CI: various updates by @jrfnl in https://github.com/PHPCSStandards/composer-installer/pull/140
New Contributors
- @paras-malhotra made their first contribution in https://github.com/PHPCSStandards/composer-installer/pull/130
Full Changelog: https://github.com/PHPCSStandards/composer-installer/compare/v0.7.1...v0.7.2
PHPCompatibility/PHPCompatibilityWP (phpcompatibility/phpcompatibility-wp)
v2.1.5
: - 2024-04-25
- Ruleset: Updated for compatibility with WordPress 6.5. Thanks @swissspidy.
- The recommended version of the Composer PHPCS plugin is now
^1.0
. - Other housekeeping and documentation updates. Includes contributions from @fredden and @johnbillion.
v2.1.4
: - 2022-10-24
- Composer: The package will now identify itself as a static analysis tool. Thanks @GaryJones!
- Other housekeeping and minor documentation updates.
v2.1.3
: - 2021-12-31
- Ruleset: Updated for compatibility with WordPress 5.9.
- README: Updated the installation instructions for compatibility with Composer >= 2.2.
- Minor housekeeping.
sebastianbergmann/phpunit (phpunit/phpunit)
v9.6.21
v9.6.20
: PHPUnit 9.6.20
Changed
- Updated dependencies (so that users that install using Composer's
--prefer-lowest
CLI option also get recent versions)
How to install or update PHPUnit
v9.6.19
: PHPUnit 9.6.19
Changed
- The namespaces of dependencies are now prefixed with
PHPUnitPHAR
instead of justPHPUnit
for the PHAR distribution of PHPUnit
How to install or update PHPUnit
v9.6.18
v9.6.17
v9.6.16
v9.6.15
v9.6.14
v9.6.13
v9.6.12
v9.6.11
v9.6.10
v9.6.9
v9.6.8
v9.6.7
v9.6.6
v9.6.5
v9.6.4
v9.6.3
v9.6.2
v9.6.1
v9.6.0
v9.5.28
v9.5.27
v9.5.26
v9.5.25
v9.5.24
v9.5.23
v9.5.22
v9.5.21
v9.5.20
v9.5.19
v9.5.18
v9.5.17
v9.5.16
v9.5.14
v9.5.13
v9.5.12
v9.5.11
PHPCSStandards/PHP_CodeSniffer (squizlabs/php_codesniffer)
v3.10.3
Changed
- Various housekeeping, including improvements to the tests and documentation.
- Thanks to [Rodrigo Primo][@rodrigoprimo] and [Juliette Reinders Folmer][@jrfnl] for their contributions.
Fixed
- Fixed bug #553 : Squiz.Classes.SelfMemberReference: false negative(s) when namespace operator was encountered between the namespace declaration and the OO declaration.
- Thanks to [Juliette Reinders Folmer][@jrfnl] for the patch
- Fixed bug #579 : AbstractPatternSniff: potential PHP notice during live coding.
- Thanks to [Juliette Reinders Folmer][@jrfnl] for the patch
- Fixed bug #580 : Squiz.Formatting.OperatorBracket: potential PHP notice during live coding.
- Thanks to [Juliette Reinders Folmer][@jrfnl] for the patch
- Fixed bug #581 : PSR12.ControlStructures.ControlStructureSpacing: prevent fixer conflict by correctly handling multiple empty newlines before the first condition in a multi-line control structure.
- Thanks to [Dan Wallis][@fredden] for the patch.
- Fixed bug #585 : Tokenizer not applying tab replacement in heredoc/nowdoc openers.
- Thanks to [Juliette Reinders Folmer][@jrfnl] for the patch
- Fixed bug #588 : Squiz.PHP.EmbeddedPhp false positive when checking spaces after a PHP short open tag.
- Thanks to [Rodrigo Primo][@rodrigoprimo] for the patch.
- Fixed bug #597 : Generic.PHP.LowerCaseKeyword did not flag nor fix non-lowercase anonymous class keywords.
- Thanks to [Marek Štípek][@maryo] for the patch.
- Fixed bug #598 : Squiz.PHP.DisallowMultipleAssignments: false positive on assignments to variable property on object stored in array.
- Thanks to [Juliette Reinders Folmer][@jrfnl] for the patch
- Fixed bug #608 : Squiz.Functions.MultiLineFunctionDeclaration did not take (parameter) attributes into account when checking for one parameter per line.
- Thanks to [Juliette Reinders Folmer][@jrfnl] for the patch
Other
- The provenance of PHAR files associated with a release can now be verified via GitHub Artifact Attestations using the GitHub CLI tool with the following command:
gh attestation verify [phpcs|phpcbf].phar -o PHPCSStandards
. #574- Thanks to [Juliette Reinders Folmer][@jrfnl] for the patch.
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
v3.9.0
Added
- Tokenizer support for PHP 8.3 typed class constants. #321
- Tokenizer support for PHP 8.3 readonly anonymous classes. #309
- 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.
- Thanks to [Juliette Reinders Folmer][@jrfnl] for the patch
- If a ruleset uses deprecated sniffs, deprecation notices will be shown to the end-user before the scan starts.
When running in
- New
Generic.CodeAnalysis.RequireExplicitBooleanOperatorPrecedence
sniff. #197- Forbid mixing different binary boolean operators within a single expression without making precedence clear using parentheses
- Thanks to [Tim Düsterhus][@TimWolla] for the contribution
- 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.
- Thanks to [Juliette Reinders Folmer][@jrfnl] for the patch
- Includes a new
- Documentation for the following sniffs:
- Generic.WhiteSpace.IncrementDecrementSpacing
- PSR12.ControlStructures.ControlStructureSpacing
- PSR12.Files.ImportStatement
- PSR12.Functions.ReturnTypeDeclaration
- PSR12.Properties.ConstantVisibility
- Thanks to [Denis Žoljom][@dingo-d] and [Rodrigo Primo][@rodrigoprimo] for the patches
Changed
- The Performance report can now also be used for a
phpcbf
run. #308- Thanks to [Juliette Reinders Folmer][@jrfnl] for the patch
- 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.
- Thanks to [Dan Wallis][@fredden] for the patch
- The following sniffs have received performance related improvements:
- Squiz.PHP.EmbeddedPhp
- Thanks to [Juliette Reinders Folmer][@jrfnl] for the patch
- Various housekeeping, including improvements to the tests and documentation
- Thanks to [Dan Wallis][@fredden], [Joachim Noreiko][@joachim-n], [Remi Collet][@remicollet], [Rodrigo Primo][@rodrigoprimo] and [Juliette Reinders Folmer][@jrfnl] for their contributions
Deprecated
- 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()
andPHP_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()
andExactMatch::getAllowedFiles()
methods - To make Filters extending
ExactMatch
cross-version compatible with both PHP_CodeSniffer 3.9.0+ as well as 4.0+, implement the newgetDisallowedFiles()
andgetAllowedFiles()
methods.- When both the
getDisallowedFiles()
andgetAllowedFiles()
methods as well as thegetBlacklist()
andgetWhitelist()
are available, the new methods will take precedence over the old methods.
- When both the
- Thanks to [Juliette Reinders Folmer][@jrfnl] for the patch
- In version 4.0, these methods will be replaced with abstract
- The MySource standard and all sniffs in it. See #2471.
- The MySource standard and all sniffs in it will be removed in version 4.0.0.
- The
Zend.Debug.CodeAnalyzer
sniff. See #277.- This sniff will be removed in version 4.0.0.
- Thanks to [Juliette Reinders Folmer][@jrfnl] for the patch
Fixed
- Fixed bug #127 : Squiz.Commenting.FunctionComment : The
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.- Thanks to [Dan Wallis][@fredden] for the patch
- Fixed bug #196 : Squiz.PHP.EmbeddedPhp : fixer will no longer leave behind trailing whitespace when moving code to another line.
- Thanks to [Juliette Reinders Folmer][@jrfnl] for the patch
- Fixed bug #196 : Squiz.PHP.EmbeddedPhp : will now determine the needed indent with higher precision in multiple situations.
- Thanks to [Juliette Reinders Folmer][@jrfnl] for the patch
- 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.
- Thanks to [Juliette Reinders Folmer][@jrfnl] for the patch
- Fixed bug #235 : Generic.CodeAnalysis.ForLoopWithTestFunctionCall : prevent a potential PHP 8.3 deprecation notice during live coding
- Thanks to [Rodrigo Primo][@rodrigoprimo] for the patch
- Fixed bug #288 : Generic.WhiteSpace.IncrementDecrementSpacing : error message for post-in/decrement will now correctly inform about new lines found before the operator.
- Thanks to [Rodrigo Primo][@rodrigoprimo] for the patch
- Fixed bug #296 : Generic.WhiteSpace.ArbitraryParenthesesSpacing : false positive for non-arbitrary parentheses when these follow the scope closer of a
switch
case
.- Thanks to [Juliette Reinders Folmer][@jrfnl] for the patch
- 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.- Thanks to [Juliette Reinders Folmer][@jrfnl] for the patch
- Fixed bug #325 : Squiz.Operators.IncrementDecrementUsage : the sniff was underreporting when there was (no) whitespace and/or comments in unexpected places.
- Thanks to [Juliette Reinders Folmer][@jrfnl] for the patch
- Fixed bug #335 : PSR12.Files.DeclareStatement : bow out in a certain parse error situation to prevent incorrect auto-fixes from being made.
- Thanks to [Dan Wallis][@fredden] for the patch
- Fixed bug #340 : Squiz.Commenting.ClosingDeclarationComment : no longer adds a stray newline when adding a missing comment.
- Thanks to [Dan Wallis][@fredden] for the patch
Other
- 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.
- 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
v3.8.1
Added
- Documentation has been added for the following sniffs:
- Generic.CodeAnalysis.EmptyPHPStatement
- Generic.Formatting.SpaceBeforeCast
- Generic.PHP.Syntax
- Generic.WhiteSpace.LanguageConstructSpacing
- PSR12.Classes.ClosingBrace
- PSR12.Classes.OpeningBraceSpace
- PSR12.ControlStructures.BooleanOperatorPlacement
- PSR12.Files.OpenTag
- Thanks to [Rodrigo Primo][@rodrigoprimo] and [Denis Žoljom][@dingo-d] for the patches
Changed
- GitHub releases will now always only contain unversioned release assets (PHARS + asc files) (same as it previously was in the squizlabs repo). See [#205] for context.
- Thanks to [Shivam Mathur][@shivammathur] for opening a discussion about this
- Various housekeeping, includes improvements to the tests and documentation
- Thanks to [Dan Wallis][@fredden], [Lucas Hoffmann][@lucc], [Rodrigo Primo][@rodrigoprimo] and [Juliette Reinders Folmer][@jrfnl] for their contributions
Fixed
- Fixed bug #124 : Report Full : avoid unnecessarily wrapping lines when
-s
is used- Thanks to [Brad Jorsch][@anomiex] for the patch
- Fixed bug #124 : Report Full : fix incorrect bolding of pipes when
-s
is used and messages wraps- Thanks to [Brad Jorsch][@anomiex] for the patch
- Fixed bug #150 : Squiz.WhiteSpace.KeywordSpacing : prevent a PHP notice when run during live coding
- Thanks to [Juliette Reinders Folmer][@jrfnl] for the patch
- Fixed bug [#154] : Report Full : delimiter line calculation could go wonky on wide screens when a report contains multi-line messages
- Thanks to [Juliette Reinders Folmer][@jrfnl] for the patch
- Fixed bug [#178] : Squiz.Commenting.VariableComment : docblocks were incorrectly being flagged as missing when a property declaration used PHP native union/intersection type declarations
- Thanks to [Ferdinand Kuhl][@fcool] for the patch
- Fixed bug [#211] : Squiz.Commenting.VariableComment : docblocks were incorrectly being flagged as missing when a property declaration used PHP 8.2+ stand-alone
true
/false
/null
type declarations- Thanks to [Juliette Reinders Folmer][@jrfnl] for the patch
- Fixed bug [#211] : Squiz.Commenting.VariableComment : docblocks were incorrectly being flagged as missing when a property declaration used PHP native
parent
,self
or a namespace relative class name type declaration- Thanks to [Juliette Reinders Folmer][@jrfnl] for the patch
- Fixed bug [#226] : Generic.CodeAnalysis.ForLoopShouldBeWhileLoop : prevent a potential PHP 8.3 deprecation notice during live coding
- Thanks to [Rodrigo Primo][@rodrigoprimo] for the patch
[#154
Configuration
📅 Schedule: Branch creation - "before 4am on the first day of the month" (UTC), Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
👻 Immortal: This PR will be recreated if closed unmerged. Get config help if that's undesired.
- [ ] If you want to rebase/retry this PR, check this box
This PR was generated by Mend Renovate. View the repository job log.
⚠ Artifact update problem
Renovate failed to update an artifact related to this branch. You probably do not want to merge this PR as-is.
♻ Renovate will retry this branch, including artifacts, only when one of the following happens:
- any of the package files in this branch needs updating, or
- the branch becomes conflicted, or
- you click the rebase/retry checkbox if found above, or
- you rename this PR's title to start with "rebase!" to trigger it manually
The artifact failure details are included below:
File name: composer.lock
Command failed: composer update dealerdirect/phpcodesniffer-composer-installer:0.7.2 phpcompatibility/phpcompatibility-wp:2.1.5 phpunit/phpunit:9.6.19 squizlabs/php_codesniffer:3.9.2 --with-dependencies --ignore-platform-reqs --no-ansi --no-interaction --no-scripts --no-autoloader --no-plugins
Package "dealerdirect/phpcodesniffer-composer-installer:0.7.2" listed for update is not installed. Ignoring.
Package "phpcompatibility/phpcompatibility-wp:2.1.5" listed for update is not installed. Ignoring.
Package "phpunit/phpunit:9.6.19" listed for update is not installed. Ignoring.
Package "squizlabs/php_codesniffer:3.9.2" listed for update is not installed. Ignoring.
Loading composer repositories with package information
Warning from https://repo.packagist.org: Support for Composer 1 is deprecated and some packages will not be available. You should upgrade to Composer 2. See https://blog.packagist.com/deprecating-composer-1-support/
Updating dependencies (including require-dev)
Your requirements could not be resolved to an installable set of packages.
Problem 1
- The requested package phpunit/phpunit (locked at 9.5.10, required as 9.6.19) is satisfiable by phpunit/phpunit[9.5.10] but these conflict with your requirements or minimum-stability.
Problem 2
- The requested package dealerdirect/phpcodesniffer-composer-installer (locked at v0.7.1, required as 0.7.2) is satisfiable by dealerdirect/phpcodesniffer-composer-installer[v0.7.1] but these conflict with your requirements or minimum-stability.
Problem 3
- The requested package phpcompatibility/phpcompatibility-wp (locked at 2.1.2, required as 2.1.5) is satisfiable by phpcompatibility/phpcompatibility-wp[2.1.2] but these conflict with your requirements or minimum-stability.
Problem 4
- The requested package squizlabs/php_codesniffer (locked at 3.6.1, required as 3.9.2) is satisfiable by squizlabs/php_codesniffer[3.6.1] but these conflict with your requirements or minimum-stability.
Problem 5
- Can only install one of: sebastian/comparator[4.0.8, 4.0.6].
- Can only install one of: sebastian/comparator[4.0.8, 4.0.6].
- phpunit/phpunit 9.6.19 requires sebastian/comparator ^4.0.8 -> satisfiable by sebastian/comparator[4.0.8].
- Installation request for phpunit/phpunit 9.6.19 -> satisfiable by phpunit/phpunit[9.6.19].
- Installation request for sebastian/comparator (locked at 4.0.6) -> satisfiable by sebastian/comparator[4.0.6].
⚠️ Artifact update problem
Renovate failed to update an artifact related to this branch. You probably do not want to merge this PR as-is.
♻ Renovate will retry this branch, including artifacts, only when one of the following happens:
- any of the package files in this branch needs updating, or
- the branch becomes conflicted, or
- you click the rebase/retry checkbox if found above, or
- you rename this PR's title to start with "rebase!" to trigger it manually
The artifact failure details are included below:
File name: composer.lock
Command failed: composer update dealerdirect/phpcodesniffer-composer-installer:0.7.2 phpcompatibility/phpcompatibility-wp:2.1.5 phpunit/phpunit:9.6.21 squizlabs/php_codesniffer:3.10.3 --with-dependencies --ignore-platform-reqs --no-ansi --no-interaction --no-scripts --no-autoloader --no-plugins
Package "dealerdirect/phpcodesniffer-composer-installer:0.7.2" listed for update is not installed. Ignoring.
Package "phpcompatibility/phpcompatibility-wp:2.1.5" listed for update is not installed. Ignoring.
Package "phpunit/phpunit:9.6.21" listed for update is not installed. Ignoring.
Package "squizlabs/php_codesniffer:3.10.3" listed for update is not installed. Ignoring.
Loading composer repositories with package information
Warning from https://repo.packagist.org: Support for Composer 1 will be shutdown on August 1st 2025. You should upgrade to Composer 2. See https://blog.packagist.com/shutting-down-packagist-org-support-for-composer-1-x/
Updating dependencies (including require-dev)
Your requirements could not be resolved to an installable set of packages.
Problem 1
- The requested package phpunit/phpunit (locked at 9.5.10, required as 9.6.21) is satisfiable by phpunit/phpunit[9.5.10] but these conflict with your requirements or minimum-stability.
Problem 2
- The requested package dealerdirect/phpcodesniffer-composer-installer (locked at v0.7.1, required as 0.7.2) is satisfiable by dealerdirect/phpcodesniffer-composer-installer[v0.7.1] but these conflict with your requirements or minimum-stability.
Problem 3
- The requested package phpcompatibility/phpcompatibility-wp (locked at 2.1.2, required as 2.1.5) is satisfiable by phpcompatibility/phpcompatibility-wp[2.1.2] but these conflict with your requirements or minimum-stability.
Problem 4
- The requested package squizlabs/php_codesniffer (locked at 3.6.1, required as 3.10.3) is satisfiable by squizlabs/php_codesniffer[3.6.1] but these conflict with your requirements or minimum-stability.
Problem 5
- Can only install one of: sebastian/type[3.2.1, 2.3.4].
- Can only install one of: sebastian/type[3.2.1, 2.3.4].
- phpunit/phpunit 9.6.21 requires sebastian/type ^3.2.1 -> satisfiable by sebastian/type[3.2.1].
- Installation request for phpunit/phpunit 9.6.21 -> satisfiable by phpunit/phpunit[9.6.21].
- Installation request for sebastian/type (locked at 2.3.4) -> satisfiable by sebastian/type[2.3.4].