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