bmitch/churn-php

View on GitHub
phpcs.xml

Summary

Maintainability
Test Coverage
<?xml version="1.0"?>
<ruleset name="MyStandard">
  <description>My custom coding standard.</description>

  <arg value="spn"/>

  <config name="php_version" value="70103"/>

  <file>./src</file>
  <file>./bin</file>

  <rule ref="PSR12"/>

  <!-- PHPCompatibility -->
  <config name="testVersion" value="7.1-"/>
  <rule ref="PHPCompatibility"/>

  <!-- Dock Blocks -->
  <rule ref="Squiz.Commenting.FunctionComment" />
  <rule ref="Squiz.Commenting.FunctionCommentThrowTag" />
  <rule ref="Squiz.Commenting.VariableComment" />

  <!-- Forbid some functions -->
  <rule ref="Generic.PHP.ForbiddenFunctions">
    <properties>
      <property name="forbiddenFunctions" type="array" value="mysql_fetch_assoc=>null,mysql_query=>null,mysql_connect=>null,dd=>null,die=>null,var_dump=>null,sizeof=>count,delete=>unset,create_function=>null"/>
    </properties>
  </rule>

  <rule ref="vendor-bin/phpcs/vendor/slevomat/coding-standard/SlevomatCodingStandard/ruleset.xml">
    <exclude name="SlevomatCodingStandard.Classes.EmptyLinesAroundClassBraces.NoEmptyLineAfterOpeningBrace"/>
    <exclude name="SlevomatCodingStandard.Classes.EmptyLinesAroundClassBraces.NoEmptyLineBeforeClosingBrace"/>
    <exclude name="SlevomatCodingStandard.Classes.SuperfluousInterfaceNaming.SuperfluousSuffix"/>
    <exclude name="SlevomatCodingStandard.Commenting.RequireOneLineDocComment.MultiLineDocComment"/>
    <exclude name="SlevomatCodingStandard.Commenting.RequireOneLinePropertyDocComment.MultiLinePropertyComment"/>
    <exclude name="SlevomatCodingStandard.ControlStructures.BlockControlStructureSpacing.IncorrectLinesCountAfterControlStructure"/>
    <exclude name="SlevomatCodingStandard.ControlStructures.BlockControlStructureSpacing.IncorrectLinesCountBeforeControlStructure"/>
    <exclude name="SlevomatCodingStandard.ControlStructures.DisallowYodaComparison.DisallowedYodaComparison"/>
    <exclude name="SlevomatCodingStandard.ControlStructures.NewWithoutParentheses.UselessParentheses"/>
    <exclude name="SlevomatCodingStandard.ControlStructures.RequireNullCoalesceEqualOperator.RequiredNullCoalesceEqualOperator"/>
    <exclude name="SlevomatCodingStandard.Files.TypeNameMatchesFileName"/>
    <exclude name="SlevomatCodingStandard.Functions.RequireArrowFunction.RequiredArrowFunction"/>
    <exclude name="SlevomatCodingStandard.Functions.RequireTrailingCommaInCall.MissingTrailingComma"/>
    <exclude name="SlevomatCodingStandard.Functions.UnusedParameter.UnusedParameter"/>
    <exclude name="SlevomatCodingStandard.Namespaces.FullyQualifiedClassNameInAnnotation"/>
    <exclude name="SlevomatCodingStandard.Namespaces.FullyQualifiedExceptions.NonFullyQualifiedException"/>
    <exclude name="SlevomatCodingStandard.Namespaces.ReferenceUsedNamesOnly.ReferenceViaFullyQualifiedName"/>
    <exclude name="SlevomatCodingStandard.Namespaces.UseOnlyWhitelistedNamespaces"/>
    <exclude name="SlevomatCodingStandard.Operators.DisallowIncrementAndDecrementOperators.DisallowedPostDecrementOperator"/>
    <exclude name="SlevomatCodingStandard.Operators.DisallowIncrementAndDecrementOperators.DisallowedPostIncrementOperator"/>
    <exclude name="SlevomatCodingStandard.PHP.DisallowReference.DisallowedPassingByReference"/>
    <exclude name="SlevomatCodingStandard.TypeHints.DeclareStrictTypes.IncorrectStrictTypesFormat"/>
    <exclude name="SlevomatCodingStandard.TypeHints.DeclareStrictTypes.IncorrectWhitespaceBetweenOpenTagAndDeclare"/>
    <exclude name="SlevomatCodingStandard.TypeHints.DisallowMixedTypeHint.DisallowedMixedTypeHint"/>
    <exclude name="SlevomatCodingStandard.TypeHints.LongTypeHints"/>
    <exclude name="SlevomatCodingStandard.TypeHints.PropertyTypeHint.MissingNativeTypeHint"/>
    <exclude name="Squiz.Commenting.FunctionComment.MissingReturn"/>
    <exclude name="Squiz.Commenting.FunctionComment.ScalarTypeHintMissing"/>
    <exclude name="Squiz.Commenting.FunctionComment.SpacingAfterParamName"/>
    <exclude name="Squiz.Commenting.FunctionComment.SpacingAfterParamType"/>
  </rule>
  <rule ref="vendor-bin/phpcs/vendor/squizlabs/php_codesniffer/src/Standards/Generic/Sniffs/Formatting/SpaceAfterCastSniff.php"/>

  <!-- Codor rules -->
  <rule ref="vendor-bin/phpcs/vendor/bmitch/codor/src/Codor/ruleset.xml">
    <exclude name="Codor.Classes.FinalPrivate.Codor\Sniffs\Classes\FinalPrivateSniff"/>
  </rule>
  <rule ref="Codor.Files.IndentationLevel">
    <properties>
      <property name="indentationLimit" value="3"/>
    </properties>
  </rule>
  <rule ref="Codor.Classes.ClassLength">
    <properties>
      <property name="maxLength" value="243"/>
    </properties>
  </rule>
</ruleset>