SlevomatCodingStandard.ControlStructures.NewWithoutParentheses: Fix to allow empty parentheses when followed by member access operators for PHP 8.4+ chainingSlevomatCodingStandard.Namespaces.ReferenceUsedNamesOnly: Use existing alias (thanks to @Khartir)ReferencedNameHelper when processing fully-qualified names in strings (thanks to @AlexSkrypnyk)DocCommentHelper::findDocCommentOwnerPointer()#[Override] attribute (thanks to @greg0ire)SlevomatCodingStandard.Classes.ClassKeywordOrder: New sniff (thanks to @kamil-zacek)SlevomatCodingStandard.ControlStructures.RequireMultiLineTernaryOperator: Workaround for missing property hooks support in PHPCSSlevomat.Classes.DisallowMultiPropertyDefinition: Fixed for property hooksSlevomatCodingStandard.Functions.RequireMultiLineCall: New option minParametersCount (thanks to @parth391)SlevomatCodingStandard.Functions.RequireMultiLineCall: New option excludedCallPatterns (thanks to @parth391)SlevomatCodingStandard.Classes.RequireMultiLineMethodSignature: New option withParametersWithAttributesSlevomatCodingStandard.PHP.UselessParentheses: Option enableCheckAroundNew is disabled if target PHP version is lower 8.4$this as a valid traversable parameter type (thanks to @alies-dev)SlevomatCodingStandard.Whitespaces.DuplicateSpaces: Fixed false positiveSlevomatCodingStandard.Complexity.Cognitive: Fixed internal error for closuresSlevomatCodingStandard.Commenting.RequireOneDocCommentSniff: New sniff (thanks to @kamil-zacek)SlevomatCodingStandard.PHP.UselessParentheses: Checks useless parentheses around (new class())->f() via new option enableCheckAroundNew (thanks to @vrana)SlevomatCodingStandard.Classes.ClassStructure: Support for suffix filtering (thanks to @DjLeChuck)SlevomatCodingStandard.PHP.ForbiddenClasses: Fixed internal errorsSlevomatCodingStandard.TypeHints.ClassConstantTypeHint: [@var](https://github.com/var) class-string is not uselessSlevomatCodingStandard.Functions.StaticClosure: Fixed false positive when $this is the last tokenSlevomatCodingStandard.Functions.UnusedParameter: New option allowedParameterPatterns to suppress check for specific parameter names (thanks to @claytonrcarter)SlevomatCodingStandard.Attributes.AttributesOrder: Fixed alphabetical sortingSlevomatCodingStandard.Functions.DisallowEmptyFunction: Private or protected constructor should not be reportedSlevomatCodingStandard.TypeHints.ReturnTypeHint: Report missing type hint in abstract methods (thanks to @vrana)SlevomatCodingStandard.PHP.RequireExplicitAssertion: Fixed false positiveSlevomatCodingStandard.Classes.RequireMultiLineMethodSignature: New option withPromotedProperties (thanks to @vrana)SlevomatCodingStandard.Classes.ConstantSpacing: Some fixesvoid cannot be changed to null and never/void cannot be used in a union (thanks to @kkmuffme)SlevomatCodingStandard.TypeHints.ParameterTypeHint: Don't report missing native type hint when method has #[Override] attributeSlevomatCodingStandard.Classes.TraitUseSpacing: Allow null in linesCountAfterLastUse option (thanks to @vrana)SlevomatCodingStandard.Classes.PropertySpacing: New options minLinesCountBeforeMultiline and maxLinesCountBeforeMultiline (thanks to @vojtech-dobes)SlevomatCodingStandard.Classes.ConstantSpacing: New options minLinesCountBeforeMultiline and maxLinesCountBeforeMultiline (thanks to @vojtech-dobes)final/abstract properties supportedSlevomatCodingStandard.Arrays.DisallowPartiallyKeyed: Fixed false positiveSlevomatCodingStandard.Classes.ClassMemberSpacing: Prevent deleting unexpected code/comments (thanks to @maryo)SlevomatCodingStandard.Complexity.Cognitive: do...while loop should only increment once (not for both the T_DO and T_WHILE) (thanks to @bkdotcom)SlevomatCodingStandard.TypeHints.ClassConstantTypeHint: New option fixableNativeTypeHint - it's possible to fix only private constants (thanks to @maryo)SlevomatCodingStandard.Classes.RequireConstructorPropertyPromotion: Properly autofixing when argument name has an attribute (thanks to @maryo)SlevomatCodingStandard.Commenting.InlineDocCommentDeclaration: Fix error when no code is found after [@var](https://github.com/var) (thanks to @AegirLeet)SlevomatCodingStandard.PHP.UselessParentheses: Fixed false positive for bitwise not operatorSlevomatCodingStandard.TypeHints.PropertyTypeHint: FixSlevomatCodingStandard.ControlStructures.RequireNullCoalesceEqualOperator: New option checkIfConditionsSlevomatCodingStandard.Classes.MethodSpacing: Fixed check for methods with more attributesSlevomatCodingStandard.TypeHints.ReturnTypeHint: Fixed false positiveSlevomatCodingStandard.Variables.UnusedVariable: Fixed false positiveSlevomatCodingStandard.TypeHints.DisallowMixedTypeHint: Fix logic error (thanks to @jrfnl)phpstan/phpdoc-parser 2.0 (thanks to @ondrejmirtes)SlevomatCodingStandard.TypeHints.ClassConstantTypeHint: Checks type hint of class constants (thanks to @DaDeather)SlevomatCodingStandard.TypeHints.DNFTypeHintFormat: Checks format of DNF type hintsSlevomatCodingStandard.Classes.ClassStructure: Support for invoke method groupSlevomatCodingStandard.Classes.ClassStructure: Support for definition of custom groups (thanks to @maryo)SlevomatCodingStandard.Namespaces.ReferenceUsedNamesOnly: New option allowWhenNoNamespaceSlevomatCodingStandard.Classes.ForbiddenPublicProperty: New option allowReadonly - 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());T_ARRAY_HINT (thanks to @jrfnl)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 with static 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 tooSlevomatCodingStandard.TypeHints.UnionTypeHintFormat: Use SlevomatCodingStandard.TypeHints.DNFTypeHintFormat insteaduseFunctionLength sniff in Files namespaceSlevomatCodingStandard.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 simple array as uselessCommentHelperSlevomatCodingStandard.Functions.NamedArgumentSpacing: Checks spacing in named argument (thanks to @mzk)SlevomatCodingStandard.Namespaces.AlphabeticallySortedUses: If the file contains a group use then ignore the file completely (thanks to @jonathan1055)SlevomatCodingStandard.Namespaces.FullyQualifiedClassNameInAnnotation: New option ignoredAnnotationNames (thanks to @gemal)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){[@inheritdoc](https://github.com/inheritdoc)}SlevomatCodingStandard.Commenting.DocCommentSpacing: Fixed internal error for invalid doccommentSlevomatCodingStandard.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)SlevomatCodingStandard.Commenting.DocCommentSpacing: Fixed fixerSlevomatCodingStandard.Commenting.UselessFunctionDocComment: Fixed false positiveSlevomatCodingStandard.TypeHints.ParameterTypeHint: callable is not valid type for property promotionSlevomatCodingStandard.Namespaces.ReferenceUsedNamesOnly: Fixed false positiveHow can I help you explore Laravel packages today?