Releases: PHPCSStandards/PHPCSDevCS
Releases · PHPCSStandards/PHPCSDevCS
1.2.0 - 2025-11-01
Added
- New dependency: PHPCSExtra.
 - The following sniffs have been added to the ruleset:
Generic.CodeAnalysis.RequireExplicitBooleanOperatorPrecedenceGeneric.Strings.UnnecessaryHeredocGeneric.WhiteSpace.HereNowdocIdentifierSpacingSquiz.Operators.ComparisonOperatorUsagewhile excluding theSquiz.Operators.ComparisonOperatorUsage.ImplicitTrueerror code.Modernize.FunctionCalls.Dirname(FileConstanterror code only)NormalizedArrays.Arrays.ArrayBraceSpacingNormalizedArrays.Arrays.CommaAfterLastUniversal.Arrays.DuplicateArrayKeyUniversal.Arrays.MixedArrayKeyTypesUniversal.Arrays.MixedKeyedUnkeyedArrayUniversal.Classes.ModifierKeywordOrderUniversal.Classes.RequireAnonClassParenthesesUniversal.Classes.RequireFinalClassUniversal.CodeAnalysis.ConstructorDestructorReturnUniversal.CodeAnalysis.ForeachUniqueAssignmentUniversal.CodeAnalysis.NoDoubleNegativeUniversal.CodeAnalysis.NoEchoSprintfUniversal.CodeAnalysis.StaticInFinalClassUniversal.Constants.LowercaseClassResolutionKeywordUniversal.Constants.ModifierKeywordOrderUniversal.Constants.UppercaseMagicConstantsUniversal.ControlStructures.DisallowAlternativeSyntaxUniversal.ControlStructures.DisallowLonelyIfUniversal.Files.SeparateFunctionsFromOOUniversal.FunctionDeclarations.NoLongClosuresUniversal.FunctionDeclarations.RequireFinalMethodsInTraitsUniversal.Namespaces.DisallowCurlyBraceSyntaxUniversal.Namespaces.OneDeclarationPerFileUniversal.NamingConventions.NoReservedKeywordParameterNamesUniversal.OOStructures.AlphabeticExtendsImplementsUniversal.Operators.ConcatPositionUniversal.Operators.DisallowLogicalAndOrUniversal.Operators.DisallowShortTernaryUniversal.Operators.DisallowStandalonePostIncrementDecrementUniversal.Operators.TypeSeparatorSpacingUniversal.PHP.LowercasePHPTagUniversal.PHP.NoFQNTrueFalseNullUniversal.PHP.OneStatementInShortEchoTagUniversal.UseStatements.DisallowMixedGroupUseUniversal.UseStatements.DisallowUseConstUniversal.UseStatements.DisallowUseFunctionUniversal.UseStatements.KeywordSpacingUniversal.UseStatements.LowercaseFunctionConstUniversal.UseStatements.NoLeadingBackslashUniversal.UseStatements.NoUselessAliasesUniversal.WhiteSpace.AnonClassKeywordSpacingUniversal.WhiteSpace.CommaSpacingUniversal.WhiteSpace.PrecisionAlignment
 
Note: some of these additions may lead to duplicate messages for certain issues. If you come across this, please report the duplication.
Changed
- Updated the version constraints for PHP_CodeSniffer to 
^3.13.3 || ^4.0.0(was^3.6.2). - Updated the version constraints for PHPCompatibility to 
^10.0.0@devto benefit from hugely improved issue detection.
Includes excluding a number of additional error codes from thePHPCompatibility.Constants.NewConstantssniff to allow for polyfilled PHP tokens. - The 
PSR12.ControlStructures.BooleanOperatorPlacementwill now enforce that boolean operators between two conditions on different lines will always be at the start of the second line. - The 
PPSR12.Files.FileHeader.SpacingAfterTagBlockerror code (PHPCS 4.0+) has been excluded to allow for file docblocks to directly follow a PHP open tag at the top of a file. - The 
PEAR.Commenting.FileComment.DuplicateSinceTagerror code has been excluded to allow for@sincetags used as a changelog in file docblocks. - Various housekeeping, including a contribution from @fredden.
 
1.1.6 - 2023-01-05
Changed
- Composer: The version requirements for the Composer PHPCS plugin have been widened to allow for version 1.0.0.
Please ensure you runcomposer update phpcsstandards/phpcsdevcs --with-dependenciesto benefit from this. 
1.1.5 - 2022-10-14
Changed
- Composer: The package will now identify itself as a static analysis tool. Thanks @GaryJones!
 - Minor housekeeping.
 
1.1.4 - 2022-04-21
Changed
- A few PHP 8.1 token constant error codes for the 
PHPCompatibility.Constants.NewConstantssniff have been excluded as the constants have been backfilled by PHPCS. - README: Updated the installation instructions for compatibility with Composer 2.2.
 - Various other housekeeping and minor documentation updates.
 
1.1.3 - 2021-12-23
Changed
- Updated the version constraints for PHP_CodeSniffer to 
^3.6.2. - CI is now running on GitHub Actions.
 
Fixed
- To prevent conflicting expectations between a newly introduced PSR12 sniff and this ruleset as it was, the new 
PSR12.Classes.OpeningBraceSpacesniff will be ignored. 
1.1.2 - 2020-12-01
Changed
- A few more token constant error codes for the 
PHPCompatibility.Constants.NewConstantssniff are excluded as the constants have been backfilled by PHPCS. 
1.1.1 - 2020-09-03
Changed
- A few more token constant error codes for the 
PHPCompatibility.Constants.NewConstantsandPHPCompatibility.Constants.RemovedConstantssniffs are excluded as the constants are, or soon will be, backfilled by PHPCS. - Updated the version constraints for the PHPCompatibility standard to allow for installing version 
10.0(currently in dev). 
1.1.0 - 2020-09-03
Added
- Short array syntax is now required by default via the 
Generic.Arrays.DisallowLongArraySyntaxsniff. 
Changed
- The 
Squiz.PHP.NonExecutableCode.ReturnNotRequiredcode is excluded to allow for areturnstatement in an otherwise empty function (typical use: overloadable methods in an abstract class). - The 
PHPCompatibility.Constants.NewConstants.t_fnFoundcode is excluded as the constant is backfilled by PHPCS since PHPCS 3.5.3. - Updated the version constraints for the Composer PHPCS plugin. The minimum supported version is now 
0.4.1, while the maximum is^0.7(latest release). - Updated the inline ruleset documentation.
 
1.0.0 - 2020-02-12
Initial release