Releases: slevomat/coding-standard
Releases · slevomat/coding-standard
8.16.0
⚠️
- 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
8.15.0
🔧 Improvements
- Speedup of sniffs working with
use
- Removed for a long time deprecated
FunctionLength
sniff inFiles
namespace
🐛 Fixes
SlevomatCodingStandard.Classes.ClassConstantVisibility
: Fixed error message for typed constantsSlevomatCodingStandard.Namespaces.UnusedUses
: Fixed false positive thanks to PHPCS upgradeSlevomatCodingStandard.Namespaces.UnusedUses
: Fix class detection in double-quoted strings and heredoc (thanks to @c01l)SlevomatCodingStandard.Exceptions.RequireNonCapturingCatch
: Fixed false positivesSlevomatCodingStandard.Functions.RequireTrailingCommaInCall
: Fixed missing report for missing trailing comma after arrow functionSlevomatCodingStandard.Commenting.UselessFunctionDocComment
: It should report simplearray
as useless- Fixed internal error in
CommentHelper
8.14.1
8.14.0
🆕 New sniffs
SlevomatCodingStandard.Functions.NamedArgumentSpacing
: Checks spacing in named argument (thanks to @mzk)
🔧 Improvements
SlevomatCodingStandard.Namespaces.AlphabeticallySortedUses
: If the file contains a group use then ignore the file completely (thanks to @jonathan1055)SlevomatCodingStandard.Namespaces.FullyQualifiedClassNameInAnnotation
: New optionignoredAnnotationNames
(thanks to @gemal)
🐛 Fixes
SlevomatCodingStandard.ControlStructures.AssignmentInCondition
: Prevent error during live coding (thanks to @jrfnl)SlevomatCodingStandard.ControlStructures.RequireSingleLineCondition
: Prevent error during live coding (thanks to @jrfnl)SlevomatCodingStandard.PHP.UselessParentheses
: Prevent error during live coding (thanks to @jrfnl)SlevomatCodingStandard.Arrays.DisallowImplicitArrayCreation
: Recognize global statements (thanks to @jrfnl)SlevomatCodingStandard.Namespaces.FullyQualifiedGlobalConstants
: Don't treat a group use as a constant (thanks to @asispts)SlevomatCodingStandard.Namespaces.ReferenceUsedNamesOnly
: Fixed false positivesSlevomatCodingStandard.Classes.ConstantSpacing
: Fixed internal errorSlevomatCodingStandard.Commenting.InlineDocCommentDeclaration
: Fixed false positive for final constantSlevomatCodingStandard.Namespaces.UnusedUses
: Ignores uses in annotations with multi lines string arguments (thanks to @mathroc)NamespaceHelper::getAllNamespacesPointers()
: Allow for namespace tokens used as operator (thanks to @jrfnl)
8.13.4
8.13.3
8.13.2
🐛 Fixes
SlevomatCodingStandard.Commenting.UselessFunctionDocComment
: Fixed false positivesSlevomatCodingStandard.Commenting.DocCommentSpacing
: Fixed false positivesSlevomatCodingStandard.ControlStructures.JumpStatementsSpacing
: Fix TypeError when return is on the first line of the file (thanks to @herndlm)