.phpcs.xml 7.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153
  1. <?xml version="1.0"?>
  2. <ruleset name="MediaWiki">
  3. <rule ref="./vendor/mediawiki/mediawiki-codesniffer/MediaWiki">
  4. <exclude name="MediaWiki.Commenting.FunctionComment.MissingDocumentationPrivate" />
  5. <exclude name="MediaWiki.Commenting.FunctionComment.MissingDocumentationProtected" />
  6. <exclude name="MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic" />
  7. <exclude name="MediaWiki.Commenting.FunctionComment.WrongStyle" />
  8. <exclude name="MediaWiki.Commenting.PropertyDocumentation.MissingDocumentationPrivate" />
  9. <exclude name="MediaWiki.Commenting.PropertyDocumentation.MissingDocumentationProtected" />
  10. <exclude name="MediaWiki.Commenting.PropertyDocumentation.MissingDocumentationPublic" />
  11. <exclude name="MediaWiki.Commenting.PropertyDocumentation.MissingVar" />
  12. <exclude name="MediaWiki.NamingConventions.LowerCamelFunctionsName.FunctionName" />
  13. <exclude name="MediaWiki.Usage.DeprecatedGlobalVariables.Deprecated$wgTitle" />
  14. <exclude name="MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment" />
  15. <exclude name="Generic.CodeAnalysis.AssignmentInCondition.FoundInWhileCondition" />
  16. <exclude name="Generic.CodeAnalysis.AssignmentInCondition.Found" />
  17. <exclude name="MediaWiki.WhiteSpace.SpaceBeforeClassBrace.BraceNotOnOwnLine" />
  18. </rule>
  19. <rule ref="MediaWiki.NamingConventions.ValidGlobalName">
  20. <properties>
  21. <property name="ignoreList" type="array" value="$IP" />
  22. </properties>
  23. </rule>
  24. <rule ref="MediaWiki.NamingConventions.ValidGlobalName.allowedPrefix">
  25. <exclude-pattern>*/maintenance/doMaintenance\.php</exclude-pattern>
  26. <exclude-pattern>*/maintenance/CommandLineInc\.php</exclude-pattern>
  27. </rule>
  28. <rule ref="Generic.Files.LineLength">
  29. <exclude-pattern>*/languages/messages/*</exclude-pattern>
  30. <exclude-pattern>*/tests/*</exclude-pattern>
  31. </rule>
  32. <rule ref="MediaWiki.Files.ClassMatchesFilename.NotMatch">
  33. <!--
  34. Continue to allow existing violations, but enable the sniff to prevent
  35. any new occurrences.
  36. -->
  37. <exclude-pattern>*/maintenance/cleanupTitles\.php</exclude-pattern>
  38. <exclude-pattern>*/maintenance/edit\.php</exclude-pattern>
  39. <exclude-pattern>*/maintenance/findDeprecated\.php</exclude-pattern>
  40. <exclude-pattern>*/maintenance/getText\.php</exclude-pattern>
  41. <exclude-pattern>*/maintenance/importDump\.php</exclude-pattern>
  42. <exclude-pattern>*/maintenance/install\.php</exclude-pattern>
  43. <exclude-pattern>*/maintenance/jsparse\.php</exclude-pattern>
  44. <exclude-pattern>*/maintenance/lag\.php</exclude-pattern>
  45. <exclude-pattern>*/maintenance/language/StatOutputs\.php</exclude-pattern>
  46. <exclude-pattern>*/maintenance/language/date-formats\.php</exclude-pattern>
  47. <exclude-pattern>*/maintenance/mysql\.php</exclude-pattern>
  48. <exclude-pattern>*/maintenance/parse\.php</exclude-pattern>
  49. <exclude-pattern>*/maintenance/rebuildImages\.php</exclude-pattern>
  50. <exclude-pattern>*/maintenance/renderDump\.php</exclude-pattern>
  51. <exclude-pattern>*/maintenance/shell\.php</exclude-pattern>
  52. <exclude-pattern>*/maintenance/sql\.php</exclude-pattern>
  53. <exclude-pattern>*/maintenance/update\.php</exclude-pattern>
  54. <exclude-pattern>*/maintenance/userOptions\.php</exclude-pattern>
  55. <exclude-pattern>*/maintenance/view\.php</exclude-pattern>
  56. <!-- Skip violations in some tests for now -->
  57. <exclude-pattern>*/tests/parser/*</exclude-pattern>
  58. <exclude-pattern>*/tests/phpunit/maintenance/*</exclude-pattern>
  59. <exclude-pattern>*/tests/phpunit/bootstrap\.php</exclude-pattern>
  60. <exclude-pattern>*/tests/phpunit/phpunit\.php</exclude-pattern>
  61. </rule>
  62. <rule ref="MediaWiki.Files.ClassMatchesFilename.WrongCase">
  63. <!--
  64. Continue to allow existing violations, but enable the sniff to prevent
  65. any new occurrences.
  66. -->
  67. <exclude-pattern>*/maintenance/language/alltrans\.php</exclude-pattern>
  68. <exclude-pattern>*/maintenance/language/digit2html\.php</exclude-pattern>
  69. <exclude-pattern>*/maintenance/language/langmemusage\.php</exclude-pattern>
  70. <exclude-pattern>*/maintenance/mctest\.php</exclude-pattern>
  71. <exclude-pattern>*/maintenance/mwdocgen\.php</exclude-pattern>
  72. <exclude-pattern>*/maintenance/rebuildall\.php</exclude-pattern>
  73. <exclude-pattern>*/maintenance/rebuildmessages\.php</exclude-pattern>
  74. <exclude-pattern>*/maintenance/rebuildrecentchanges\.php</exclude-pattern>
  75. <exclude-pattern>*/maintenance/rebuildtextindex\.php</exclude-pattern>
  76. <exclude-pattern>*/maintenance/storage/checkStorage\.php</exclude-pattern>
  77. <exclude-pattern>*/maintenance/storage/recompressTracked\.php</exclude-pattern>
  78. <exclude-pattern>*/maintenance/storage/trackBlobs\.php</exclude-pattern>
  79. </rule>
  80. <rule ref="Generic.PHP.NoSilencedErrors.Discouraged">
  81. <exclude-pattern>*/tests/*</exclude-pattern>
  82. </rule>
  83. <rule ref="Generic.Files.OneObjectStructurePerFile.MultipleFound">
  84. <!--
  85. Continue to allow existing violations, but enable the sniff to prevent
  86. any new occurrences.
  87. -->
  88. <exclude-pattern>*/maintenance/dumpIterator\.php</exclude-pattern>
  89. <exclude-pattern>*/maintenance/findDeprecated\.php</exclude-pattern>
  90. <exclude-pattern>*/maintenance/storage/recompressTracked\.php</exclude-pattern>
  91. <exclude-pattern>*/maintenance/language/StatOutputs\.php</exclude-pattern>
  92. <exclude-pattern>*/maintenance/language/generateCollationData\.php</exclude-pattern>
  93. <!-- We don't care that much about violations in tests -->
  94. <exclude-pattern>*/tests/*</exclude-pattern>
  95. </rule>
  96. <rule ref="MediaWiki.Usage.AssignmentInReturn.AssignmentInReturn">
  97. <exclude-pattern>*/tests/phpunit/*</exclude-pattern>
  98. </rule>
  99. <rule ref="MediaWiki.Usage.ForbiddenFunctions.popen">
  100. <!--
  101. Continue to allow existing violations, but enable the sniff to prevent
  102. any new occurrences.
  103. -->
  104. <exclude-pattern>*/includes/GlobalFunctions\.php</exclude-pattern>
  105. <exclude-pattern>*/includes/libs/filebackend/FSFileBackend\.php</exclude-pattern>
  106. <exclude-pattern>*/maintenance/includes/SevenZipStream\.php</exclude-pattern>
  107. <exclude-pattern>*/maintenance/populateImageSha1\.php</exclude-pattern>
  108. </rule>
  109. <rule ref="MediaWiki.Usage.ForbiddenFunctions.proc_open">
  110. <!--
  111. Continue to allow existing violations, but enable the sniff to prevent
  112. any new occurrences.
  113. -->
  114. <exclude-pattern>*/includes/export/DumpPipeOutput\.php</exclude-pattern>
  115. <exclude-pattern>*/includes/ResourceLoader/Image\.php</exclude-pattern>
  116. <exclude-pattern>*/includes/shell/Command\.php</exclude-pattern>
  117. <exclude-pattern>*/maintenance/includes/TextPassDumper\.php</exclude-pattern>
  118. <exclude-pattern>*/maintenance/mysql\.php</exclude-pattern>
  119. <exclude-pattern>*/maintenance/storage/recompressTracked\.php</exclude-pattern>
  120. <exclude-pattern>*/tests/parser/editTests\.php</exclude-pattern>
  121. </rule>
  122. <rule ref="MediaWiki.Usage.ForbiddenFunctions.shell_exec">
  123. <!--
  124. Continue to allow existing violations, but enable the sniff to prevent
  125. any new occurrences.
  126. -->
  127. <exclude-pattern>*/maintenance/mwdocgen\.php</exclude-pattern>
  128. <exclude-pattern>*/maintenance/updateCredits\.php</exclude-pattern>
  129. </rule>
  130. <rule ref="MediaWiki.Usage.ForbiddenFunctions.system">
  131. <!--
  132. Continue to allow existing violations, but enable the sniff to prevent
  133. any new occurrences.
  134. -->
  135. <exclude-pattern>*/maintenance/mwdocgen\.php</exclude-pattern>
  136. </rule>
  137. <rule ref="Generic.Arrays.DisallowShortArraySyntax">
  138. <!--
  139. T273340: Rule not to be enabled on any other file.
  140. PHPVersionCheck.php requires syntax to be old PHP compatible.
  141. The rest should therefore use [] rather than array() as per the
  142. MediaWiki style guide.
  143. -->
  144. <include-pattern>includes/PHPVersionCheck\.php</include-pattern>
  145. </rule>
  146. <file>.</file>
  147. <arg name="encoding" value="UTF-8"/>
  148. <arg name="extensions" value="php"/>
  149. <exclude-pattern type="relative">^(extensions|skins)/*</exclude-pattern>
  150. <exclude-pattern type="relative">^docs/(coverage|html|js|latex)/*</exclude-pattern>
  151. <exclude-pattern>LocalSettings(-installer)?\.php</exclude-pattern>
  152. </ruleset>