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