4
0

phpcs.xml 6.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <ruleset name="FreshRSS">
  3. <arg name="extensions" value="php,phtml"/>
  4. <arg name="tab-width" value="4"/>
  5. <exclude-pattern>/\.git/*</exclude-pattern>
  6. <exclude-pattern>/data/config.php</exclude-pattern>
  7. <exclude-pattern>/data/update.php</exclude-pattern>
  8. <exclude-pattern>/data/users/*</exclude-pattern>
  9. <exclude-pattern>/(?-i:extensions)/*</exclude-pattern><!-- Case sensitive to allow our Extensions repo -->
  10. <exclude-pattern>/lib/http-conditional.php</exclude-pattern>
  11. <exclude-pattern>/lib/marienfressinaud/</exclude-pattern>
  12. <exclude-pattern>/lib/phpgt/*</exclude-pattern>
  13. <exclude-pattern>/lib/phpmailer/*</exclude-pattern>
  14. <exclude-pattern>/lib/simplepie/*</exclude-pattern>
  15. <exclude-pattern>/node_modules/*</exclude-pattern>
  16. <exclude-pattern>/p/scripts/vendor/*</exclude-pattern>
  17. <exclude-pattern>/vendor/*</exclude-pattern>
  18. <!-- Additional exclusions for Extensions: -->
  19. <exclude-pattern>/symbolic/*</exclude-pattern>
  20. <exclude-pattern>/third-party/*</exclude-pattern>
  21. <exclude-pattern>/tmp/*</exclude-pattern>
  22. <rule ref="PSR12">
  23. <exclude name="Generic.ControlStructures.InlineControlStructure.NotAllowed"/>
  24. <exclude name="Generic.Formatting.DisallowMultipleStatements.SameLine"/>
  25. <exclude name="Generic.WhiteSpace.DisallowTabIndent.NonIndentTabsUsed"/>
  26. <exclude name="Generic.WhiteSpace.DisallowTabIndent.TabsUsed"/>
  27. <exclude name="Generic.WhiteSpace.DisallowTabIndent.TabsUsedHeredocCloser"/>
  28. <exclude name="PSR1.Classes.ClassDeclaration.MissingNamespace"/>
  29. <exclude name="PSR1.Classes.ClassDeclaration.MultipleClasses"/>
  30. <exclude name="PSR1.Files.SideEffects.FoundWithSymbols"/>
  31. <exclude name="PSR1.Methods.CamelCapsMethodName.NotCamelCaps"/>
  32. <exclude name="PSR12.Classes.OpeningBraceSpace.Found"/><!-- Consider using PSR12 defaults instead -->
  33. <exclude name="PSR12.ControlStructures.ControlStructureSpacing.CloseParenthesisLine"/>
  34. <exclude name="PSR12.ControlStructures.ControlStructureSpacing.FirstExpressionLine"/><!-- Consider using PSR12 defaults instead -->
  35. <exclude name="PSR12.ControlStructures.ControlStructureSpacing.LineIndent"/>
  36. <exclude name="PSR12.Files.FileHeader.IncorrectOrder"/><!-- Consider using PSR12 defaults instead -->
  37. <exclude name="PSR12.Files.FileHeader.SpacingAfterBlock"/><!-- Legacy PHPCS 3 -->
  38. <exclude name="PSR12.Files.FileHeader.SpacingAfterDeclareBlock"/><!-- Consider using PSR12 defaults instead -->
  39. <exclude name="PSR12.Files.FileHeader.SpacingAfterTagBlock"/><!-- Consider using PSR12 defaults instead -->
  40. <exclude name="PSR12.Traits.UseDeclaration.MultipleImport"/>
  41. <exclude name="PSR2.Classes.ClassDeclaration.CloseBraceAfterBody"/><!-- Consider using PSR12 defaults instead -->
  42. <exclude name="PSR2.Classes.ClassDeclaration.OpenBraceNewLine"/><!-- Consider using PSR12 defaults instead -->
  43. <exclude name="PSR2.ControlStructures.SwitchDeclaration.BodyOnNextLineCASE"/>
  44. <exclude name="PSR2.ControlStructures.SwitchDeclaration.BreakNotNewLine"/>
  45. <exclude name="PSR2.Functions.FunctionCallSignature.ContentAfterOpenBracket"/>
  46. <exclude name="PSR2.Methods.FunctionCallSignature.CloseBracketLine"/>
  47. <exclude name="PSR2.Methods.FunctionCallSignature.ContentAfterOpenBracket"/>
  48. <exclude name="PSR2.Methods.FunctionCallSignature.Indent"/>
  49. <exclude name="PSR2.Methods.FunctionCallSignature.MultipleArguments"/>
  50. <exclude name="PSR2.Methods.MethodDeclaration.Underscore"/>
  51. <exclude name="Squiz.Classes.ValidClassName.NotCamelCaps"/><!-- Legacy PHPCS 3 -->
  52. <exclude name="Squiz.Classes.ValidClassName.NotPascalCase"/>
  53. <exclude name="Squiz.Functions.MultiLineFunctionDeclaration.BraceOnSameLine"/>
  54. <exclude name="Squiz.Functions.MultiLineFunctionDeclaration.CloseBracketLine"/>
  55. <exclude name="Squiz.Functions.MultiLineFunctionDeclaration.ContentAfterBrace"/>
  56. <exclude name="Squiz.Functions.MultiLineFunctionDeclaration.FirstParamSpacing"/>
  57. <exclude name="Squiz.Functions.MultiLineFunctionDeclaration.Indent"/>
  58. <exclude name="Squiz.Functions.MultiLineFunctionDeclaration.OneParamPerLine"/>
  59. <exclude name="Squiz.WhiteSpace.ScopeClosingBrace.ContentBefore"/>
  60. <exclude name="Generic.CodeAnalysis.EmptyStatement.DetectedIf"/>
  61. </rule>
  62. <rule ref="Generic.Classes.DuplicateClassName"/>
  63. <rule ref="Generic.CodeAnalysis.EmptyStatement"/>
  64. <rule ref="Generic.CodeAnalysis.UnconditionalIfStatement"/>
  65. <rule ref="Generic.CodeAnalysis.UnnecessaryFinalModifier"/>
  66. <rule ref="Generic.CodeAnalysis.UselessOverridingMethod"/>
  67. <rule ref="Generic.Files.LineLength">
  68. <properties>
  69. <property name="lineLimit" value="165"/>
  70. <property name="absoluteLineLimit" value="190"/>
  71. </properties>
  72. <exclude-pattern>/i18n/*\.php$</exclude-pattern>
  73. <exclude-pattern>*\.phtml$</exclude-pattern>
  74. </rule>
  75. <rule ref="Generic.Functions.OpeningFunctionBraceKernighanRitchie"/><!-- Consider using PSR12 defaults instead -->
  76. <rule ref="Generic.PHP.DeprecatedFunctions"/>
  77. <rule ref="Generic.Strings.UnnecessaryStringConcat">
  78. <properties>
  79. <property name="allowMultiline" value="true"/>
  80. </properties>
  81. </rule>
  82. <rule ref="Generic.WhiteSpace.DisallowSpaceIndent"/>
  83. <rule ref="Generic.WhiteSpace.ScopeIndent.Incorrect">
  84. <exclude-pattern>*\.phtml$</exclude-pattern>
  85. <exclude-pattern>/app/install.php</exclude-pattern>
  86. </rule>
  87. <rule ref="Generic.WhiteSpace.ScopeIndent.IncorrectExact">
  88. <exclude-pattern>*\.phtml$</exclude-pattern>
  89. <exclude-pattern>/app/install.php</exclude-pattern>
  90. </rule>
  91. <rule ref="Internal.NoCodeFound">
  92. <exclude-pattern>*\.phtml$</exclude-pattern>
  93. </rule>
  94. <!-- <rule ref="Squiz.Commenting.ClassComment.Missing"/> --><!-- Consider adding -->
  95. <rule ref="Squiz.ControlStructures.ControlSignature">
  96. <include-pattern>*\.phtml$</include-pattern>
  97. <properties>
  98. <property name="requiredSpacesBeforeColon" value="0" />
  99. </properties>
  100. </rule>
  101. <rule ref="Squiz.ControlStructures.ControlSignature">
  102. <include-pattern>*\.php$</include-pattern>
  103. </rule>
  104. <rule ref="Squiz.ControlStructures.ControlSignature.NewlineAfterOpenBrace">
  105. <exclude-pattern>*\.phtml$</exclude-pattern>
  106. </rule>
  107. <rule ref="Squiz.WhiteSpace.OperatorSpacing">
  108. <properties>
  109. <property name="ignoreNewlines" value="true"/>
  110. </properties>
  111. </rule>
  112. <rule ref="Squiz.WhiteSpace.ScopeClosingBrace.Indent">
  113. <exclude-pattern>*\.phtml$</exclude-pattern>
  114. </rule>
  115. <rule ref="Squiz.WhiteSpace.SemicolonSpacing"/>
  116. </ruleset>