slevomat/coding-standard
### [`v8.9.0`](https://togithub.com/slevomat/coding-standard/releases/tag/8.9.0)
[Compare Source](https://togithub.com/slevomat/coding-standard/compare/8.8.0...8.9.0)
## 🆕 New sniffs
- `SlevomatCodingStandard.Classes.EnumCaseSpacing`: Checks that there is a certain number of blank lines between enum cases
- `SlevomatCodingStandard.Classes.RequireSelfReference`: Requires `self` for local reference
- `SlevomatCodingStandard.Variables.DisallowVariableVariable`: Disallows use of variable variables
- `SlevomatCodingStandard.ControlStructures.DisallowTrailingMultiLineTernaryOperator`: Ternary operator has to be reformatted when the operator is not leading the line (thanks to [@esserj](https://togithub.com/esserj))
- `SlevomatCodingStandard.Arrays.AlphabeticallySortedByKeys`: Enforces natural sorting of array definitions by key in multi-line arrays (thanks to [@bkdotcom](https://togithub.com/bkdotcom))
## 🔧 Improvements
- Support for `phpstan/phpdoc-parser` 1.16
- `@phpcsSuppress` can be with comment
- Support for `non-falsy-string`, `list` and `non-empty-list` type hints
- `SlevomatCodingStandard.Arrays.TrailingArrayComma`: Support for "legacy" `array()` syntax (thanks to [@bkdotcom](https://togithub.com/bkdotcom))
- `SlevomatCodingStandard.Complexity.Cognitive`: Deprecate `maxComplexity` and implement `warningThreshold` and `errorThreshold` options (thanks to [@bkdotcom](https://togithub.com/bkdotcom))
- `SlevomatCodingStandard.Attributes.AttributeAndTargetSpacing`: New option `allowOnSameLine` (thanks to [@stlrnz](https://togithub.com/stlrnz))
- `SlevomatCodingStandard.Classes.RequireMultiLineMethodSignature`: New option `minParameterCount` (thanks to [@janedbal](https://togithub.com/janedbal))
## 🐛 Fixes
- `SlevomatCodingStandard.Namespaces.AlphabeticallySortedUses`: Fixer should not remove doc comments
- `SlevomatCodingStandard.ControlStructures.EarlyExit`: Fixed detection of useless else
- `SlevomatCodingStandard.Variables.UselessVariable`: Fixed false positive
- `SlevomatCodingStandard.PHP.OptimizedFunctionsWithoutUnpacking`: Fixed false positive with first class callable
- `SlevomatCodingStandard.Classes.RequireConstructorPropertyPromotion`: Fixes using prefixed var phpdoc (thanks to [@franmomu](https://togithub.com/franmomu))
Configuration
📅 Schedule: Branch creation - "before 3am on Monday" (UTC), Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
[ ] If you want to rebase/retry this PR, check this box
This PR has been generated by Mend Renovate. View repository job log here.
This PR contains the following updates:
8.8.0
->8.9.0
Release Notes
slevomat/coding-standard
### [`v8.9.0`](https://togithub.com/slevomat/coding-standard/releases/tag/8.9.0) [Compare Source](https://togithub.com/slevomat/coding-standard/compare/8.8.0...8.9.0) ## 🆕 New sniffs - `SlevomatCodingStandard.Classes.EnumCaseSpacing`: Checks that there is a certain number of blank lines between enum cases - `SlevomatCodingStandard.Classes.RequireSelfReference`: Requires `self` for local reference - `SlevomatCodingStandard.Variables.DisallowVariableVariable`: Disallows use of variable variables - `SlevomatCodingStandard.ControlStructures.DisallowTrailingMultiLineTernaryOperator`: Ternary operator has to be reformatted when the operator is not leading the line (thanks to [@esserj](https://togithub.com/esserj)) - `SlevomatCodingStandard.Arrays.AlphabeticallySortedByKeys`: Enforces natural sorting of array definitions by key in multi-line arrays (thanks to [@bkdotcom](https://togithub.com/bkdotcom)) ## 🔧 Improvements - Support for `phpstan/phpdoc-parser` 1.16 - `@phpcsSuppress` can be with comment - Support for `non-falsy-string`, `list` and `non-empty-list` type hints - `SlevomatCodingStandard.Arrays.TrailingArrayComma`: Support for "legacy" `array()` syntax (thanks to [@bkdotcom](https://togithub.com/bkdotcom)) - `SlevomatCodingStandard.Complexity.Cognitive`: Deprecate `maxComplexity` and implement `warningThreshold` and `errorThreshold` options (thanks to [@bkdotcom](https://togithub.com/bkdotcom)) - `SlevomatCodingStandard.Attributes.AttributeAndTargetSpacing`: New option `allowOnSameLine` (thanks to [@stlrnz](https://togithub.com/stlrnz)) - `SlevomatCodingStandard.Classes.RequireMultiLineMethodSignature`: New option `minParameterCount` (thanks to [@janedbal](https://togithub.com/janedbal)) ## 🐛 Fixes - `SlevomatCodingStandard.Namespaces.AlphabeticallySortedUses`: Fixer should not remove doc comments - `SlevomatCodingStandard.ControlStructures.EarlyExit`: Fixed detection of useless else - `SlevomatCodingStandard.Variables.UselessVariable`: Fixed false positive - `SlevomatCodingStandard.PHP.OptimizedFunctionsWithoutUnpacking`: Fixed false positive with first class callable - `SlevomatCodingStandard.Classes.RequireConstructorPropertyPromotion`: Fixes using prefixed var phpdoc (thanks to [@franmomu](https://togithub.com/franmomu))Configuration
📅 Schedule: Branch creation - "before 3am on Monday" (UTC), Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR has been generated by Mend Renovate. View repository job log here.