<?xml version="1.0"?>
<ruleset name="Magento2">
<description>Magento Coding Standard</description>
<!-- File extensions to be checked. -->
<arg name="extensions" value="php,phtml,graphqls/GraphQL,less/CSS,html/PHP,xml,js/PHP"/>
<!-- Exclude minified JS files. -->
<exclude-pattern>*\.min\.js$</exclude-pattern>
<!-- Severity 10 errors: Critical code issues. -->
<rule ref="Generic.PHP.CharacterBeforePHPOpeningTag">
<severity>10</severity>
<type>error</type>
<exclude-pattern>*\.phtml$</exclude-pattern>
<exclude-pattern>*\.xml$</exclude-pattern>
</rule>
<rule ref="Generic.PHP.NoSilencedErrors">
<severity>10</severity>
<type>error</type>
<exclude-pattern>*/lib/*</exclude-pattern>
<exclude-pattern>*\.xml$</exclude-pattern>
<exclude-pattern>*/PHPCSUtils/*</exclude-pattern>
</rule>
<rule ref="Generic.PHP.Syntax">
<severity>10</severity>
<type>error</type>
<exclude-pattern>*\.xml$</exclude-pattern>
</rule>
<rule ref="Magento2.Classes.DiscouragedDependencies">
<severity>10</severity>
<type>error</type>
<exclude-pattern>*/_files/*</exclude-pattern>
<exclude-pattern>*/Fixtures/*</exclude-pattern>
<exclude-pattern>*/Test/*</exclude-pattern>
<exclude-pattern>*Test.php</exclude-pattern>
<exclude-pattern>*/tests/*</exclude-pattern>
</rule>
<rule ref="Magento2.Legacy.MageEntity">
<severity>10</severity>
<type>error</type>
</rule>
<rule ref="Magento2.NamingConvention.ReservedWords">
<severity>10</severity>
<type>error</type>
</rule>
<rule ref="Magento2.PHP.FinalImplementation">
<severity>10</severity>
<type>error</type>
<exclude-pattern>*\.xml$</exclude-pattern>
</rule>
<rule ref="Magento2.PHP.Goto">
<severity>10</severity>
<type>error</type>
<exclude-pattern>*\.xml$</exclude-pattern>
</rule>
<rule ref="Magento2.PHP.ReturnValueCheck">
<severity>10</severity>
<type>error</type>
<exclude-pattern>*\.xml$</exclude-pattern>
</rule>
<rule ref="Magento2.Security.IncludeFile">
<severity>10</severity>
<type>error</type>
<exclude-pattern>*/_files/*</exclude-pattern>
<exclude-pattern>*/Fixtures/*</exclude-pattern>
<exclude-pattern>*/lib/*</exclude-pattern>
<exclude-pattern>*/Test/*</exclude-pattern>
<exclude-pattern>*Test.php</exclude-pattern>
<exclude-pattern>*/tests/*</exclude-pattern>
</rule>
<rule ref="Magento2.Security.InsecureFunction">
<severity>10</severity>
<type>error</type>
</rule>
<rule ref="Magento2.Security.LanguageConstruct">
<severity>10</severity>
<type>error</type>
</rule>
<rule ref="Magento2.Security.LanguageConstruct.DirectOutput">
<exclude-pattern>*\.phtml$</exclude-pattern>
</rule>
<rule ref="Magento2.Security.Superglobal.SuperglobalUsageError">
<severity>10</severity>
<type>error</type>
<exclude-pattern>*/_files/*</exclude-pattern>
<exclude-pattern>*/Fixtures/*</exclude-pattern>
<exclude-pattern>*/lib/*</exclude-pattern>
<exclude-pattern>*/Test/*</exclude-pattern>
<exclude-pattern>*Test.php</exclude-pattern>
<exclude-pattern>*/tests/*</exclude-pattern>
</rule>
<rule ref="Magento2.Strings.ExecutableRegEx">
<severity>10</severity>
<type>error</type>
</rule>
<rule ref="PSR1.Classes.ClassDeclaration">
<severity>10</severity>
<type>error</type>
</rule>
<rule ref="PSR2.Files.ClosingTag">
<severity>10</severity>
<type>error</type>
<exclude-pattern>*\.phtml$</exclude-pattern>
</rule>
<rule ref="Squiz.PHP.Eval">
<severity>10</severity>
<type>error</type>
<exclude-pattern>*\.xml$</exclude-pattern>
</rule>
<rule ref="Magento2.Legacy.AbstractBlock">
<severity>10</severity>
<type>error</type>
</rule>
<rule ref="Magento2.Legacy.EmailTemplate">
<severity>10</severity>
<type>error</type>
</rule>
<rule ref="Magento2.Legacy.ObsoleteConfigNodes">
<include-pattern>etc/config.xml</include-pattern>
<include-pattern>etc/config.*.xml</include-pattern>
<include-pattern>etc/*/config.xml</include-pattern>
<severity>10</severity>
<type>error</type>
</rule>
<rule ref="Magento2.Legacy.InstallUpgrade">
<severity>10</severity>
<type>error</type>
</rule>
<rule ref="Magento2.PHP.AutogeneratedClassNotInConstructor">
<include-pattern>*\.php$</include-pattern>
<severity>10</severity>
<type>error</type>
</rule>
<rule ref="Magento2.Html.HtmlSelfClosingTags">
<severity>10</severity>
<type>error</type>
<exclude-pattern>*\.xml$</exclude-pattern>
</rule>
<rule ref="Magento2.Html.HtmlClosingVoidTags">
<severity>10</severity>
<type>warning</type>
<exclude-pattern>*\.xml$</exclude-pattern>
</rule>
<rule ref="Magento2.Html.HtmlCollapsibleAttribute">
<include-pattern>*\.html$</include-pattern>
<include-pattern>*\.phtml$</include-pattern>
<severity>10</severity>
<type>error</type>
<exclude-pattern>*\.xml$</exclude-pattern>
</rule>
<rule ref="Magento2.Legacy.Layout">
<severity>10</severity>
<type>error</type>
<include-pattern>*/view/(adminhtml|frontend|base)/*\/.xml</include-pattern>
</rule>
<rule ref="Magento2.Legacy.RestrictedCode">
<severity>10</severity>
<type>error</type>
<exclude-pattern>*\.xml$</exclude-pattern>
<exclude-pattern>*\.js$</exclude-pattern>
</rule>
<rule ref="Magento2.Legacy.ClassReferencesInConfigurationFiles">
<include-pattern>*\/etc/*.xml$</include-pattern>
<exclude-pattern>*\/etc/wsdl.xml$</exclude-pattern>
<exclude-pattern>*\/etc/wsdl2.xml$</exclude-pattern>
<exclude-pattern>*\/etc/wsi.xml$</exclude-pattern>
<severity>10</severity>
<type>error</type>
</rule>
<rule ref="PHPCompatibility.FunctionUse.RemovedFunctions">
<severity>10</severity>
<type>error</type>
</rule>
<!-- Severity 9 warnings: Possible security and issues that may cause bugs. -->
<rule ref="Generic.Files.ByteOrderMark">
<severity>9</severity>
<type>warning</type>
</rule>
<rule ref="Magento2.Security.Superglobal.SuperglobalUsageWarning">
<severity>9</severity>
<type>warning</type>
<exclude-pattern>*/_files/*</exclude-pattern>
<exclude-pattern>*/Fixtures/*</exclude-pattern>
<exclude-pattern>*/lib/*</exclude-pattern>
<exclude-pattern>*/Test/*</exclude-pattern>
<exclude-pattern>*Test.php</exclude-pattern>
<exclude-pattern>*/tests/*</exclude-pattern>
</rule>
<rule ref="Magento2.Security.XssTemplate">
<include-pattern>*\.phtml$</include-pattern>
<severity>9</severity>
<type>warning</type>
</rule>
<rule ref="Magento2.SQL.RawQuery">
<severity>9</severity>
<type>warning</type>
<exclude-pattern>*/_files/*</exclude-pattern>
<exclude-pattern>*/Fixtures/*</exclude-pattern>
<exclude-pattern>*/lib/*</exclude-pattern>
<exclude-pattern>*/Test/*</exclude-pattern>
<exclude-pattern>*Test.php</exclude-pattern>
<exclude-pattern>*/tests/*</exclude-pattern>
</rule>
<rule ref="Squiz.PHP.NonExecutableCode">
<severity>9</severity>
<type>warning</type>
<exclude-pattern>*\.xml$</exclude-pattern>
</rule>
<rule ref="Magento2.Html.HtmlBinding">
<include-pattern>*\/.phtml$</include-pattern>
<severity>9</severity>
<type>warning</type>
<exclude-pattern>*\.xml$</exclude-pattern>
</rule>
<!-- Severity 8 warnings: Magento specific code issues and design violations. -->
<rule ref="Magento2.Classes.AbstractApi">
<severity>8</severity>
<type>warning</type>
</rule>
<rule ref="Magento2.Exceptions.DirectThrow">
<severity>8</severity>
<type>warning</type>
<exclude-pattern>*/_files/*</exclude-pattern>
<exclude-pattern>*/Fixtures/*</exclude-pattern>
<exclude-pattern>*/Test/*</exclude-pattern>
<exclude-pattern>*Test.php</exclude-pattern>
<exclude-pattern>*/tests/*</exclude-pattern>
</rule>
<rule ref="Magento2.Exceptions.ThrowCatch">
<severity>8</severity>
<type>warning</type>
<exclude-pattern>*/PHPCSUtils/*</exclude-pattern>
</rule>
<rule ref="Magento2.Exceptions.TryProcessSystemResources">
<severity>8</severity>
<type>warning</type>
<exclude-pattern>*/_files/*</exclude-pattern>
<exclude-pattern>*/Fixtures/*</exclude-pattern>
<exclude-pattern>*/Test/*</exclude-pattern>
<exclude-pattern>*Test.php</exclude-pattern>
<exclude-pattern>*/tests/*</exclude-pattern>
</rule>
<rule ref="Magento2.Functions.DiscouragedFunction">
<severity>8</severity>
<type>warning</type>
<exclude-pattern>*/_files/*</exclude-pattern>
<exclude-pattern>*/Fixtures/*</exclude-pattern>
<exclude-pattern>*/lib/*</exclude-pattern>
<exclude-pattern>*/Test/*</exclude-pattern>
<exclude-pattern>*Test.php</exclude-pattern>
<exclude-pattern>*/tests/*</exclude-pattern>
<exclude-pattern>*/PHPCSUtils/*</exclude-pattern>
</rule>
<rule ref="Magento2.Functions.StaticFunction">
<severity>8</severity>
<type>warning</type>
<exclude-pattern>*/_files/*</exclude-pattern>
<exclude-pattern>*/Fixtures/*</exclude-pattern>
<exclude-pattern>*/lib/*</exclude-pattern>
<exclude-pattern>*/Setup/*</exclude-pattern>
<exclude-pattern>*/Test/*</exclude-pattern>
<exclude-pattern>*Test.php</exclude-pattern>
<exclude-pattern>*/tests/*</exclude-pattern>
<exclude-pattern>*/PHPCSUtils/*</exclude-pattern>
</rule>
<rule ref="Magento2.Functions.FunctionsDeprecatedWithoutArgument">
<severity>7</severity>
<type>warning</type>
<exclude-pattern>*\.xml$</exclude-pattern>
<exclude-pattern>*/PHPCSUtils/*</exclude-pattern>
</rule>
<rule ref="Magento2.Namespaces.ImportsFromTestNamespace">
<severity>8</severity>
<type>warning</type>
<exclude-pattern>*/_files/*</exclude-pattern>
<exclude-pattern>*/Fixtures/*</exclude-pattern>
<exclude-pattern>*/Test/*</exclude-pattern>
<exclude-pattern>*Test.php</exclude-pattern>
<exclude-pattern>*/tests/*</exclude-pattern>
</rule>
<rule ref="Magento2.NamingConvention.InterfaceName">
<severity>8</severity>
<type>warning</type>
</rule>
<rule ref="Magento2.PHP.ShortEchoSyntax">
<severity>8</severity>
<type>warning</type>
<exclude-pattern>*\.xml$</exclude-pattern>
</rule>
<rule ref="Magento2.Templates.ThisInTemplate">
<include-pattern>*\.phtml$</include-pattern>
<severity>8</severity>
<type>warning</type>
</rule>
<rule ref="Magento2.Translation.ConstantUsage">
<severity>8</severity>
<type>warning</type>
</rule>
<rule ref="Magento2.Methods.DeprecatedModelMethod">
<severity>8</severity>
<type>warning</type>
</rule>
<rule ref="Magento2.Legacy.ModuleXML">
<include-pattern>*\/module.xml$</include-pattern>
<severity>8</severity>
<type>warning</type>
</rule>
<rule ref="Magento2.Legacy.DiConfig">
<include-pattern>*\/di.xml$</include-pattern>
<severity>8</severity>
<type>warning</type>
</rule>
<rule ref="Magento2.Html.HtmlDirective">
<severity>8</severity>
<type>warning</type>
<exclude-pattern>*\.xml$</exclude-pattern>
</rule>
<rule ref="Magento2.Legacy.WidgetXML">
<include-pattern>*\/widget.xml$</include-pattern>
<severity>8</severity>
<type>warning</type>
</rule>
<rule ref="Magento2.Legacy.ObsoleteAcl">
<include-pattern>etc/config.xml</include-pattern>
<include-pattern>etc/config.*.xml</include-pattern>
<include-pattern>etc/*/config.xml</include-pattern>
<severity>8</severity>
<type>warning</type>
</rule>
<rule ref="Magento2.Legacy.ObsoleteMenu">
<include-pattern>etc/config.xml</include-pattern>
<include-pattern>etc/config.*.xml</include-pattern>
<include-pattern>etc/*/config.xml</include-pattern>
<severity>8</severity>
<type>warning</type>
</rule>
<rule ref="Magento2.Legacy.ObsoleteSystemConfiguration">
<include-pattern>etc/adminhtml/system.xml</include-pattern>
<severity>8</severity>
<type>warning</type>
</rule>
<rule ref="Magento2.Legacy.PhtmlTemplate">
<include-pattern>*\.phtml$</include-pattern>
<severity>8</severity>
<type>warning</type>
</rule>
<rule ref="Magento2.Legacy.ObsoleteConnection">
<severity>8</severity>
<type>warning</type>
</rule>
<!-- Severity 7 warnings: General code issues. -->
<rule ref="Generic.Arrays.DisallowLongArraySyntax">
<severity>7</severity>
<type>warning</type>
</rule>
<rule ref="Generic.Classes.DuplicateClassName">
<severity>7</severity>
<type>warning</type>
</rule>
<rule ref="Generic.CodeAnalysis.ForLoopShouldBeWhileLoop">
<severity>7</severity>
<type>warning</type>
</rule>
<rule ref="Generic.CodeAnalysis.ForLoopWithTestFunctionCall">
<severity>7</severity>
<type>warning</type>
</rule>
<rule ref="Generic.CodeAnalysis.JumbledIncrementer">
<severity>7</severity>
<type>warning</type>
</rule>
<rule ref="Generic.CodeAnalysis.UnconditionalIfStatement">
<severity>7</severity>
<type>warning</type>
</rule>
<rule ref="Generic.CodeAnalysis.UselessOverridingMethod">
<severity>7</severity>
<type>warning</type>
</rule>
<rule ref="Generic.Metrics.NestingLevel">
<severity>7</severity>
<type>warning</type>
<exclude-pattern>*/PHPCSUtils/*</exclude-pattern>
</rule>
<rule ref="Generic.PHP.DisallowShortOpenTag">
<exclude-pattern>*\.xml$</exclude-pattern>
<severity>7</severity>
<type>warning</type>
</rule>
<rule ref="Generic.PHP.DisallowShortOpenTag.EchoFound">
<severity>0</severity>
</rule>
<rule ref="Magento2.CodeAnalysis.EmptyBlock">
<severity>7</severity>
<type>warning</type>
<exclude-pattern>*/_files/*</exclude-pattern>
<exclude-pattern>*/Fixtures/*</exclude-pattern>
<exclude-pattern>*/Test/*</exclude-pattern>
<exclude-pattern>*Test.php</exclude-pattern>
<exclude-pattern>*/tests/*</exclude-pattern>
<exclude-pattern>*/PHPCSUtils/*</exclude-pattern>
</rule>
<rule ref="Magento2.PHP.LiteralNamespaces">
<severity>7</severity>
<type>warning</type>
<exclude-pattern>*/_files/*</exclude-pattern>
<exclude-pattern>*/Fixtures/*</exclude-pattern>
<exclude-pattern>*/Test/*</exclude-pattern>
<exclude-pattern>*Test.php</exclude-pattern>
<exclude-pattern>*/tests/*</exclude-pattern>
<exclude-pattern>*\.xml$</exclude-pattern>
</rule>
<rule ref="Magento2.PHP.Var">
<severity>7</severity>
<type>warning</type>
<exclude-pattern>*\.xml$</exclude-pattern>
</rule>
<rule ref="Magento2.PHP.ArrayAutovivification">
<severity>7</severity>
<type>warning</type>
<exclude-pattern>*\.xml$</exclude-pattern>
</rule>
<rule ref="Magento2.Performance.ForeachArrayMerge">
<severity>7</severity>
<type>warning</type>
</rule>
<rule ref="Magento2.Strings.StringConcat">
<severity>7</severity>
<type>warning</type>
</rule>
<rule ref="PEAR.Functions.ValidDefaultValue">
<severity>7</severity>
<type>warning</type>
</rule>
<rule ref="Squiz.Functions.GlobalFunction">
<severity>7</severity>
<type>warning</type>
<exclude-pattern>*/_files/*</exclude-pattern>
<exclude-pattern>*/Fixtures/*</exclude-pattern>
<exclude-pattern>*/Test/*</exclude-pattern>
<exclude-pattern>*Test.php</exclude-pattern>
<exclude-pattern>*/tests/*</exclude-pattern>
</rule>
<rule ref="Squiz.Operators.IncrementDecrementUsage">
<severity>7</severity>
<type>warning</type>
<exclude-pattern>*\.phtml$</exclude-pattern>
</rule>
<rule ref="Squiz.Operators.ValidLogicalOperators">
<severity>7</severity>
<type>warning</type>
</rule>
<rule ref="Squiz.PHP.GlobalKeyword">
<severity>7</severity>
<type>warning</type>
<exclude-pattern>*/_files/*</exclude-pattern>
<exclude-pattern>*/Fixtures/*</exclude-pattern>
<exclude-pattern>*/Test/*</exclude-pattern>
<exclude-pattern>*Test.php</exclude-pattern>
<exclude-pattern>*/tests/*</exclude-pattern>
<exclude-pattern>*\.xml$</exclude-pattern>
</rule>
<rule ref="Squiz.Scope.MemberVarScope">
<severity>7</severity>
<type>warning</type>
</rule>
<!-- Severity 6 warnings: Code style issues. -->
<rule ref="Generic.ControlStructures.InlineControlStructure">
<severity>6</severity>
<type>warning</type>
</rule>
<rule ref="Generic.Files.LineEndings">
<severity>6</severity>
<type>warning</type>
</rule>
<rule ref="Generic.Files.LineLength">
<properties>
<property name="lineLimit" value="120"/>
<property name="absoluteLineLimit" value="0"/>
</properties>
<severity>6</severity>
<type>warning</type>
<exclude-pattern>*/PHPCompatibility/*</exclude-pattern>
</rule>
<rule ref="Generic.Formatting.DisallowMultipleStatements">
<severity>6</severity>
<type>warning</type>
</rule>
<rule ref="Generic.Functions.FunctionCallArgumentSpacing">
<severity>6</severity>
<type>warning</type>
</rule>
<rule ref="Generic.NamingConventions.UpperCaseConstantName">
<severity>6</severity>
<type>warning</type>
</rule>
<rule ref="Generic.PHP.LowerCaseConstant">
<severity>6</severity>
<type>warning</type>
<exclude-pattern>*\.xml$</exclude-pattern>
</rule>
<rule ref="Generic.PHP.LowerCaseKeyword">
<severity>6</severity>
<type>warning</type>
<exclude-pattern>*\.xml$</exclude-pattern>
</rule>
<rule ref="Generic.WhiteSpace.DisallowTabIndent">
<severity>6</severity>
<type>warning</type>
</rule>
<rule ref="Generic.WhiteSpace.ScopeIndent">
<properties>
<property name="ignoreIndentationTokens" type="array">
<element value="T_COMMENT"/>
<element value="T_DOC_COMMENT_OPEN_TAG"/>
</property>
</properties>
<severity>6</severity>
<type>warning</type>
<exclude-pattern>*\.js$</exclude-pattern>
</rule>
<rule ref="Magento2.GraphQL.ValidArgumentName">
<severity>6</severity>
<type>warning</type>
</rule>
<rule ref="Magento2.GraphQL.ValidEnumValue">
<severity>6</severity>
<type>warning</type>
</rule>
<rule ref="Magento2.GraphQL.ValidFieldName">
<!--
* Field name validation deactivated as per request
* https://github.com/magento/magento-coding-standard/pull/141#discussion_r323349939
-->
<severity>0</severity>
<type>warning</type>
</rule>
<rule ref="Magento2.GraphQL.ValidTopLevelFieldName">
<severity>6</severity>
<type>warning</type>
</rule>
<rule ref="Magento2.GraphQL.ValidTypeName">
<severity>6</severity>
<type>warning</type>
</rule>
<rule ref="Magento2.Whitespace.MultipleEmptyLines">
<severity>6</severity>
<type>warning</type>
<exclude-pattern>*/PHPCSUtils/*</exclude-pattern>
</rule>
<rule ref="PEAR.ControlStructures.ControlSignature">
<severity>6</severity>
<type>warning</type>
<exclude-pattern>*\.phtml$</exclude-pattern>
</rule>
<rule ref="PSR1.Files.SideEffects">
<severity>6</severity>
<type>warning</type>
<exclude-pattern>*/_files/*</exclude-pattern>
<exclude-pattern>*/Fixtures/*</exclude-pattern>
<exclude-pattern>*/Test/*</exclude-pattern>
<exclude-pattern>*Test.php</exclude-pattern>
<exclude-pattern>*/tests/*</exclude-pattern>
</rule>
<rule ref="PSR1.Methods.CamelCapsMethodName">
<severity>6</severity>
<type>warning</type>
</rule>
<rule ref="PSR2.Classes.ClassDeclaration">
<severity>6</severity>
<type>warning</type>
</rule>
<rule ref="PSR2.Classes.PropertyDeclaration">
<severity>6</severity>
<type>warning</type>
<exclude name="PSR2.Classes.PropertyDeclaration.Underscore"/>
</rule>
<rule ref="PSR2.ControlStructures.ControlStructureSpacing">
<severity>6</severity>
<type>warning</type>
</rule>
<rule ref="PSR2.ControlStructures.ElseIfDeclaration">
<severity>6</severity>
<type>warning</type>
</rule>
<rule ref="PSR2.ControlStructures.SwitchDeclaration">
<severity>6</severity>
<type>warning</type>
</rule>
<rule ref="PSR2.Files.EndFileNewline">
<severity>6</severity>
<type>warning</type>
<exclude-pattern>*/PHPCSUtils/*</exclude-pattern>
</rule>
<rule ref="PSR2.Methods.FunctionCallSignature">
<severity>6</severity>
<type>warning</type>
<exclude-pattern>*\.js$</exclude-pattern>
</rule>
<rule ref="PSR2.Methods.FunctionCallSignature.SpaceAfterCloseBracket">
<severity>0</severity>
</rule>
<rule ref="PSR2.Methods.FunctionCallSignature.OpeningIndent">
<severity>0</severity>
</rule>
<rule ref="PSR2.Methods.FunctionClosingBrace">
<severity>6</severity>
<type>warning</type>
</rule>
<rule ref="PSR2.Methods.MethodDeclaration">
<severity>6</severity>
<type>warning</type>
<exclude name="PSR2.Methods.MethodDeclaration.Underscore"/>
</rule>
<rule ref="PSR2.Namespaces.NamespaceDeclaration">
<severity>6</severity>
<type>warning</type>
</rule>
<rule ref="PSR2.Namespaces.UseDeclaration">
<severity>6</severity>
<type>warning</type>
</rule>
<rule ref="Squiz.Classes.ValidClassName">
<severity>6</severity>
<type>warning</type>
</rule>
<rule ref="Squiz.ControlStructures.ControlSignature">
<severity>6</severity>
<type>warning</type>
<properties>
<property name="requiredSpacesBeforeColon" value="0"/>
</properties>
</rule>
<rule ref="Squiz.ControlStructures.ControlSignature.NewlineAfterOpenBrace">
<exclude-pattern>*\.phtml$</exclude-pattern>
</rule>
<rule ref="Squiz.ControlStructures.ForEachLoopDeclaration">
<severity>6</severity>
<type>warning</type>
</rule>
<rule ref="Squiz.ControlStructures.ForEachLoopDeclaration.AsNotLower">
<severity>0</severity>
</rule>
<rule ref="Squiz.ControlStructures.ForLoopDeclaration">
<severity>6</severity>
<type>warning</type>
</rule>
<rule ref="Squiz.ControlStructures.LowercaseDeclaration">
<severity>6</severity>
<type>warning</type>
</rule>
<rule ref="Squiz.Functions.FunctionDeclaration">
<severity>6</severity>
<type>warning</type>
</rule>
<rule ref="Squiz.Functions.FunctionDeclarationArgumentSpacing">
<severity>6</severity>
<type>warning</type>
<properties>
<property name="equalsSpacing" value="1"/>
</properties>
</rule>
<rule ref="Squiz.Functions.FunctionDeclarationArgumentSpacing.SpacingAfterHint">
<severity>0</severity>
</rule>
<rule ref="Squiz.Functions.LowercaseFunctionKeywords">
<severity>6</severity>
<type>warning</type>
</rule>
<rule ref="Squiz.Functions.MultiLineFunctionDeclaration">
<severity>6</severity>
<type>warning</type>
</rule>
<rule ref="Squiz.Scope.MethodScope">
<severity>6</severity>
<type>warning</type>
</rule>
<rule ref="Squiz.WhiteSpace.LogicalOperatorSpacing">
<severity>6</severity>
<type>warning</type>
</rule>
<rule ref="Squiz.WhiteSpace.ScopeClosingBrace">
<severity>6</severity>
<type>warning</type>
<exclude-pattern>*\.phtml$</exclude-pattern>
</rule>
<rule ref="Squiz.WhiteSpace.ScopeKeywordSpacing">
<severity>6</severity>
<type>warning</type>
</rule>
<rule ref="Squiz.WhiteSpace.SuperfluousWhitespace">
<properties>
<property name="ignoreBlankLines" value="true"/>
</properties>
<severity>6</severity>
<type>warning</type>
</rule>
<rule ref="Squiz.CSS.NamedColours">
<severity>6</severity>
<type>warning</type>
</rule>
<rule ref="Magento2.Less">
<severity>6</severity>
<type>warning</type>
<include-pattern>*\.less$</include-pattern>
</rule>
<rule ref="Squiz.WhiteSpace.SuperfluousWhitespace.StartFile">
<severity>0</severity>
</rule>
<rule ref="Squiz.WhiteSpace.SuperfluousWhitespace.EndFile">
<severity>0</severity>
</rule>
<rule ref="Squiz.WhiteSpace.SuperfluousWhitespace.EmptyLines">
<severity>0</severity>
</rule>
<rule ref="PSR12.Properties.ConstantVisibility">
<severity>6</severity>
<type>warning</type>
<exclude-pattern>*/PHPCSUtils/*</exclude-pattern>
</rule>
<!-- Severity 5 warnings: PHPDoc formatting and commenting issues. -->
<rule ref="Magento2.Commenting.ClassAndInterfacePHPDocFormatting">
<severity>5</severity>
<type>warning</type>
</rule>
<rule ref="Magento2.Commenting.ClassPropertyPHPDocFormatting">
<severity>5</severity>
<type>warning</type>
</rule>
<rule ref="Magento2.Commenting.ConstantsPHPDocFormatting">
<severity>5</severity>
<type>warning</type>
</rule>
<rule ref="Squiz.Commenting.DocCommentAlignment">
<severity>5</severity>
<type>warning</type>
</rule>
<rule ref="Squiz.PHP.CommentedOutCode">
<properties>
<property name="maxPercentage" value="80"/>
</properties>
<severity>5</severity>
<type>warning</type>
<exclude-pattern>*\.xml$</exclude-pattern>
</rule>
<rule ref="Magento2.Annotation">
<severity>5</severity>
<type>warning</type>
<exclude-pattern>*/_files/*</exclude-pattern>
<exclude-pattern>*/Test/*</exclude-pattern>
<exclude-pattern>*Test.php</exclude-pattern>
<exclude-pattern>*/PHPCSUtils/*</exclude-pattern>
</rule>
<rule ref="Internal.NoCodeFound">
<severity>0</severity>
</rule>
<!-- PHPCompatibility configuration. -->
<config name="testVersion" value="7.4-"/>
<rule ref="PHPCompatibility">
<exclude name="PHPCompatibility.Miscellaneous.RemovedAlternativePHPTags.MaybeASPOpenTagFound" />
<!-- Following sniffs have been updated or renamed in PHPCompatibility 10 -->
<exclude name="PHPCompatibility.Constants.NewMagicClassConstant.Found" />
<exclude name="PHPCompatibility.Classes.ForbiddenAbstractPrivateMethods.Found" />
<!-- Following sniffs have an equivalent in PHPCS -->
<exclude name="PHPCompatibility.Syntax.ForbiddenCallTimePassByReference" />
<exclude name="PHPCompatibility.Keywords.ForbiddenNamesAsDeclared" />
</rule>
<!--
All these rules belong to the unreleased PhpCompatibility 10. Remove them once PHPCompatibility is
updated to version 10
-->
<rule ref="Magento2.PHPCompatibility.ForbiddenFinalPrivateMethods" />
<rule ref="Magento2.PHPCompatibility.RemovedCallingDestructAfterConstructorExit" />
<rule ref="Magento2.PHPCompatibility.RemovedOptionalBeforeRequiredParam" />
<rule ref="Magento2.PHPCompatibility.ChangedIntToBoolParamType" />
<rule ref="Magento2.PHPCompatibility.RemovedAssertStringAssertion" />
<rule ref="Magento2.PHPCompatibility.RemovedGetDefinedFunctionsExcludeDisabledFalse" />
<rule ref="Magento2.PHPCompatibility.RemovedSplAutoloadRegisterThrowFalse" />
</ruleset>
|