The format is based on Keep a Changelog and this project adheres to Semantic Versioning.
- Fix AlphabeticalUseStatements sorting trait use statements (#235)
- Fix VariableInDoubleQuotedString sniff wrapping property/array access (#233)
- PHPCS 4.0 or later is required.
- Various updates to rules for PHP 8.1+ code, see #224 for the diff of
ruleset.xml
- Support for PHP < 8.1
- Raised minimum Symfony CS release, fixes #218
- Fix uninitialized string offset in UnnecessaryNamespaceUsage, fixes #212
Allow dealerdirect/phpcodesniffer-composer-installer 1.x
- Add
SlevomatCodingStandard.Arrays.ArrayAccess - Add
SlevomatCodingStandard.Attributes.AttributesOrder - Add
SlevomatCodingStandard.Attributes.DisallowAttributesJoining - Add
SlevomatCodingStandard.Attributes.DisallowMultipleAttributesPerLine - Add
SlevomatCodingStandard.Classes.EnumCaseSpacing - Add
SlevomatCodingStandard.Functions.NamedArgumentSpacing
- Fix invalid property case (fixes a runtime error when using PHPCS 3.8.0+)
- Add PHP 8.1 support
- Add
SlevomatCodingStandard.Classes.BackedEnumTypeSpacing - Add
SlevomatCodingStandard.Classes.ForbiddenPublicProperty
- Add
MO4.WhiteSpace.ConstantSpacing - Add
MO4.WhiteSpace.MultipleEmptyLinesSniff
- refactored tests
- Add PHP 8.0 support
- Add
Generic.WhiteSpace.ArbitraryParenthesesSpacing - Add
Squiz.PHP.DisallowMultipleAssignments - Add
SlevomatCodingStandard.Arrays.SingleLineArrayWhitespace - Add
SlevomatCodingStandard.Namespaces.ReferenceUsedNamesOnly - Add
SlevomatCodingStandard.Functions.UnusedParameter - Add
SlevomatCodingStandard.Functions.UselessParameterDefaultValue
- Raised minimum PHPCS release
- Raised minimum Slevomat CS release
- Add
SlevomatCodingStandard.Classes.DisallowMultiConstantDefinition - Add
SlevomatCodingStandard.Commenting.UselessInheritDocComment - Add
SlevomatCodingStandard.Functions.StaticClosure - Add
SlevomatCodingStandard.Namespaces.UseSpacing - Add
PSR12(excluding conflicting rules)
- Raised PHP requirement to 7.2
- Add
Squiz.WhiteSpace.FunctionSpacing - Add
Squiz.WhiteSpace.MemberVarSpacing - Add
PSR12.Traits.UseDeclaration - Add
SlevomatCodingStandard.Namespaces.FullyQualifiedGlobalFunctions
- Raised minimum Slevomat CS release and adapt MO4 ruleset
- Raised minimum Symfony CS release
- Raised minimum PHPCS release
- Support PHP 7.4
- New sniffs from Slevomat, see comments in the ruleset
- Raised minimum Symfony CS release
- Add
@groupto defaultignoredAnnotationNames - Add
ignoreMultilinefor if vs. ternary
- Raised minimum Symfony CS release
- Use strict typing in MO4 sniff code
- Raised minimum Symfony CS release
- Raised minimum Symfony CS release
- Raised minimum Slevomat CS release
- Updated dealerdirect/phpcodesniffer-composer-installer dependency
- PHP 7.3 support
- Windows support
- Integration tests
- New sniffs from upstream rulesets, see comments in the ruleset
- Autofixer for
MO4.Arrays.ArrayDoubleArrowAlignment, fixes #91
- Raised PHP requirement to 7.1
- Detection of more comments after declarations, fixes #96
- Documentation about upstream sniffs moved from README to comments per rule in the ruleset
- Support for PHP 5.6 and PHP 7.0
- PEAR as installation method
- prefer builtin-functions for performance
- Check for empty needle when calling strpos, fixes #78
- PHPCS version 3.2.3 or later is required.
MO4.Arrays.ArrayDoubleArrowAlignmentMO4.Arrays.MultiLineArrayGeneric.Arrays.ArrayIndentSquiz.WhiteSpace.OperatorSpacing- The behaviour of
MO4.Formatting.AlphabeticalUseStatementscan be configured with the propertyorder. Possible values are:dictionary,string,string-localeorstring-case-insensitive. - Static code analysis with PHPStan.
- Various cloud based code quality tools like: Scrutinizer CI, codecov.io, ...
- PHPCS version 3.2.0 or later is required.
- Code complies to PHPCS coding standard version 3.2.0.
- Default ordering of
MO4.Formatting.AlphabeticalUseStatementsis nowdictionaryinstead ofstring. - Updates and fixes for class documentation.
- Improve testing and code coverage.
- Unknown test files will not trigger wrong type exceptions anymore, but report decent error messages with
RuntimeException. - Many fixes and stability improvements.
MO4.Formatting.ArrayAlignmentUnit- replaced by
MO4.Arrays.ArrayDoubleArrowAlignmentandMO4.Arrays.MultiLineArray.
- replaced by
MO4.Formatting.UseArrayShortTag- replaced by
Generic.Arrays.DisallowLongArray.
- replaced by
- Dead code from
MO4.Strings.VariableInDoubleQuotedString.
- MO4 coding standard can be installed as composer package and is released on packagist.org.
- Replaced underlying Symfony coding standard.
- PHPCS 3.0 or later is required.