Parsoid SiteConfig: allow stat counters incremented by arbitrary values
[mediawiki.git] / .phpcs.xml
blob7c500ecf628d31e1f117dd61cb3ee10f6c33b221
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>