8.16.0
8000
⚠️
- Drop PHP 7.2 and 7.3 support
- Tested on PHP 8.4 but no support for PHP 8.4 features
- Update to
phpstan/phpdoc-parser
2.0 (thanks to @ondrejmirtes)
🆕 New sniffs
SlevomatCodingStandard.TypeHints.ClassConstantTypeHint
: Checks type hint of class constants (thanks to @DaDeather)SlevomatCodingStandard.TypeHints.DNFTypeHintFormat
: Checks format of DNF type hints
🔧 Improvements
SlevomatCodingStandard.Classes.ClassStructure
: Support forinvoke method
groupSlevomatCodingStandard.Classes.ClassStructure
: Support for definition of custom groups (thanks to @maryo)SlevomatCodingStandard.Namespaces.ReferenceUsedNamesOnly
: New optionallowWhenNoNamespace
SlevomatCodingStandard.Classes.ForbiddenPublicProperty
: New optionallowReadonly
- Add support for allowing public readonly properties (thanks to @tfrommen)SlevomatCodingStandard.TypeHints.DisallowMixedTypeHint
: Does not report error when attribute#[Override]
is presented (thanks to @kamil-zacek)SlevomatCodingStandard.PHP.UselessParentheses
: Checks useless parentheses in(new Foo());
- Remove use of deprecated
T_ARRAY_HINT
(thanks to @jrfnl)
🐛 Fixes
SlevomatCodingStandard.Namespaces.ReferenceUsedNamesOnly
: Some references were not detectedSlevomatCodingStandard.TypeHints.DeclareStrictTypes
: Fixing number of empty lines when previous effective token before declare is line comment (thanks to @maryo)SlevomatCodingStandard.Classes.MethodSpacing
: Fix check for method with attributesSlevomatCodingStandard.Classes.PropertyDeclaration
: Fixed false positives where there's function withstatic
return type hint before propertySlevomatCodingStandard.ClassesEnumCaseSpacing
: Fixed internal error (thanks to @v.fateev)SlevomatCodingStandard.ClassesConstantSpacing
: Fixed internal error (thanks to @v.fateev)SlevomatCodingStandard.TypeHints.PropertyTypeHint
: Fixed false positive for object shape as item in travesable typeSlevomatCodingStandard.ControlStructures.NewWithParentheses
: Fixed false positive for readonly anonymous classSlevomatCodingStandard.ControlStructures.DisallowYodaComparison
: Fixed fixerSlevomatCodingStandard.PHPUselessParentheses
: Fixed false positiveSlevomatCodingStandard.PHP.OptimizedFunctionsWithoutUnpacking
:sprintf()
is optimized too- Documentation fixes (thanks to @edpittol and @tfrommen)
🗑️ Deprecated
SlevomatCodingStandard.TypeHints.UnionTypeHintFormat
: UseSlevomatCodingStandard.TypeHints.DNFTypeHintFormat
instead