PHP Code Sniffer v3.5.1 Release Notes

Release Date: 2019-10-16 // over 4 years ago
    • Very very verbose diff report output has slightly changed to improve readability
      • Output is printed when running PHPCS with the --report=diff and -vvv command line arguments
      • Fully qualified class names have been replaced with sniff codes
      • Tokens being changed now display the line number they are on
    • PSR2, PSR12, and PEAR standards now correctly check for blank lines at the start of function calls
      • This check has been missing from these standards, but has now been implemented
      • When using the PEAR standard, the error code is PEAR.Functions.FunctionCallSignature.FirstArgumentPosition
      • When using PSR2 or PSR12, the error code is PSR2.Methods.FunctionCallSignature.FirstArgumentPosition
    • PSR12.ControlStructures.BooleanOperatorPlacement no longer complains when multiple expressions appear on the same line
      • Previously, boolean operators were enforced to appear at the start or end of lines only
      • Boolean operators can now appear in the middle of the line
    • PSR12.Files.FileHeader no longer ignores comments preceding a use, namespace, or declare statement
    • PSR12.Files.FileHeader now allows a hashbang line at the top of the file
    • ๐Ÿ›  Fixed bug #2506 : PSR2 standard can't auto fix multi-line function call inside a string concat statement
    • ๐Ÿ›  Fixed bug #2530 : PEAR.Commenting.FunctionComment does not support intersection types in comments
    • ๐Ÿ›  Fixed bug #2615 : Constant visibility false positive on non-class constants
    • ๐Ÿ›  Fixed bug #2616 : PSR12.Files.FileHeader false positive when file only contains docblock
    • ๐Ÿ›  Fixed bug #2619 : PSR12.Files.FileHeader locks up when inline comment is the last content in a file
    • ๐Ÿ›  Fixed bug #2621 : PSR12.Classes.AnonClassDeclaration.CloseBraceSameLine false positive for anon class passed as function argument
      • Thanks to Martins Sipenko for the patch
    • ๐Ÿ›  Fixed bug #2623 : PSR12.ControlStructures.ControlStructureSpacing not ignoring indentation inside multi-line string arguments
    • ๐Ÿ›  Fixed bug #2624 : PSR12.Traits.UseDeclaration doesnt apply the correct indent during auto fixing
    • ๐Ÿ›  Fixed bug #2626 : PSR12.Files.FileHeader detects @var annotations as file docblocks
    • ๐Ÿ›  Fixed bug #2628 : PSR12.Traits.UseDeclaration does not allow comments above a USE declaration
    • ๐Ÿ›  Fixed bug #2632 : Incorrect indentation of lines starting with "static" inside closures
    • ๐Ÿ›  Fixed bug #2641 : PSR12.Functions.NullableTypeDeclaration false positive when using new static()