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.Commenting.PropertyDocumentation.SpacingAfter" />
13 <exclude name="MediaWiki.Commenting.PropertyDocumentation.WrongStyle" />
14 <exclude name="MediaWiki.ControlStructures.AssignmentInControlStructures.AssignmentInControlStructures" />
15 <exclude name="MediaWiki.NamingConventions.LowerCamelFunctionsName.FunctionName" />
16 <exclude name="MediaWiki.Usage.DeprecatedGlobalVariables.Deprecated$wgTitle" />
17 <exclude name="MediaWiki.Usage.ExtendClassUsage.FunctionVarUsage" />
18 <exclude name="MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment" />
19 <exclude name="PSR2.Classes.PropertyDeclaration.Multiple" />
21 <rule ref="MediaWiki.NamingConventions.ValidGlobalName">
23 <property name="ignoreList" type="array" value="$IP" />
26 <rule ref="MediaWiki.NamingConventions.ValidGlobalName.allowedPrefix">
27 <exclude-pattern>*/maintenance/doMaintenance\.php</exclude-pattern>
28 <exclude-pattern>*/maintenance/CommandLineInc\.php</exclude-pattern>
30 <rule ref="Generic.Files.LineLength">
31 <exclude-pattern>*/languages/messages/*</exclude-pattern>
32 <exclude-pattern>*/tests/*</exclude-pattern>
34 <rule ref="MediaWiki.Files.ClassMatchesFilename.NotMatch">
36 Continue to allow existing violations, but enable the sniff to prevent
39 <exclude-pattern>*/maintenance/cleanupTitles\.php</exclude-pattern>
40 <exclude-pattern>*/maintenance/edit\.php</exclude-pattern>
41 <exclude-pattern>*/maintenance/findDeprecated\.php</exclude-pattern>
42 <exclude-pattern>*/maintenance/getText\.php</exclude-pattern>
43 <exclude-pattern>*/maintenance/importDump\.php</exclude-pattern>
44 <exclude-pattern>*/maintenance/install\.php</exclude-pattern>
45 <exclude-pattern>*/maintenance/jsparse\.php</exclude-pattern>
46 <exclude-pattern>*/maintenance/lag\.php</exclude-pattern>
47 <exclude-pattern>*/maintenance/language/StatOutputs\.php</exclude-pattern>
48 <exclude-pattern>*/maintenance/language/date-formats\.php</exclude-pattern>
49 <exclude-pattern>*/maintenance/mysql\.php</exclude-pattern>
50 <exclude-pattern>*/maintenance/parse\.php</exclude-pattern>
51 <exclude-pattern>*/maintenance/preprocessorFuzzTest\.php</exclude-pattern>
52 <exclude-pattern>*/maintenance/rebuildImages\.php</exclude-pattern>
53 <exclude-pattern>*/maintenance/renderDump\.php</exclude-pattern>
54 <exclude-pattern>*/maintenance/shell\.php</exclude-pattern>
55 <exclude-pattern>*/maintenance/sql\.php</exclude-pattern>
56 <exclude-pattern>*/maintenance/update\.php</exclude-pattern>
57 <exclude-pattern>*/maintenance/userOptions\.php</exclude-pattern>
58 <exclude-pattern>*/maintenance/view\.php</exclude-pattern>
59 <!-- Skip violations in some tests for now -->
60 <exclude-pattern>*/tests/parser/*</exclude-pattern>
61 <exclude-pattern>*/tests/phpunit/maintenance/*</exclude-pattern>
62 <exclude-pattern>*/tests/phpunit/bootstrap\.php</exclude-pattern>
63 <exclude-pattern>*/tests/phpunit/phpunit\.php</exclude-pattern>
65 <rule ref="MediaWiki.Files.ClassMatchesFilename.WrongCase">
67 Continue to allow existing violations, but enable the sniff to prevent
70 <exclude-pattern>*/maintenance/language/alltrans\.php</exclude-pattern>
71 <exclude-pattern>*/maintenance/language/digit2html\.php</exclude-pattern>
72 <exclude-pattern>*/maintenance/language/langmemusage\.php</exclude-pattern>
73 <exclude-pattern>*/maintenance/mctest\.php</exclude-pattern>
74 <exclude-pattern>*/maintenance/mwdocgen\.php</exclude-pattern>
75 <exclude-pattern>*/maintenance/rebuildall\.php</exclude-pattern>
76 <exclude-pattern>*/maintenance/rebuildmessages\.php</exclude-pattern>
77 <exclude-pattern>*/maintenance/rebuildrecentchanges\.php</exclude-pattern>
78 <exclude-pattern>*/maintenance/rebuildtextindex\.php</exclude-pattern>
79 <exclude-pattern>*/maintenance/storage/checkStorage\.php</exclude-pattern>
80 <exclude-pattern>*/maintenance/storage/recompressTracked\.php</exclude-pattern>
81 <exclude-pattern>*/maintenance/storage/trackBlobs\.php</exclude-pattern>
83 <rule ref="Generic.PHP.NoSilencedErrors.Discouraged">
84 <exclude-pattern>*/tests/*</exclude-pattern>
86 <rule ref="Generic.Files.OneObjectStructurePerFile.MultipleFound">
88 Continue to allow existing violations, but enable the sniff to prevent
91 <exclude-pattern>*/maintenance/dumpIterator\.php</exclude-pattern>
92 <exclude-pattern>*/maintenance/findDeprecated\.php</exclude-pattern>
93 <exclude-pattern>*/maintenance/storage/recompressTracked\.php</exclude-pattern>
94 <exclude-pattern>*/maintenance/preprocessorFuzzTest\.php</exclude-pattern>
95 <exclude-pattern>*/maintenance/language/StatOutputs\.php</exclude-pattern>
96 <exclude-pattern>*/maintenance/language/generateCollationData\.php</exclude-pattern>
97 <!-- We don't care that much about violations in tests -->
98 <exclude-pattern>*/tests/*</exclude-pattern>
100 <rule ref="MediaWiki.Usage.AssignmentInReturn.AssignmentInReturn">
101 <exclude-pattern>*/tests/phpunit/*</exclude-pattern>
103 <rule ref="MediaWiki.Usage.ForbiddenFunctions.popen">
105 Continue to allow existing violations, but enable the sniff to prevent
108 <exclude-pattern>*/includes/GlobalFunctions\.php</exclude-pattern>
109 <exclude-pattern>*/includes/libs/filebackend/FSFileBackend\.php</exclude-pattern>
110 <exclude-pattern>*/maintenance/includes/SevenZipStream\.php</exclude-pattern>
111 <exclude-pattern>*/maintenance/populateImageSha1\.php</exclude-pattern>
113 <rule ref="MediaWiki.Usage.ForbiddenFunctions.proc_open">
115 Continue to allow existing violations, but enable the sniff to prevent
118 <exclude-pattern>*/includes/export/DumpPipeOutput\.php</exclude-pattern>
119 <exclude-pattern>*/includes/ResourceLoader/Image\.php</exclude-pattern>
120 <exclude-pattern>*/includes/shell/Command\.php</exclude-pattern>
121 <exclude-pattern>*/maintenance/includes/TextPassDumper\.php</exclude-pattern>
122 <exclude-pattern>*/maintenance/mysql\.php</exclude-pattern>
123 <exclude-pattern>*/maintenance/storage/recompressTracked\.php</exclude-pattern>
124 <exclude-pattern>*/tests/parser/editTests\.php</exclude-pattern>
126 <rule ref="MediaWiki.Usage.ForbiddenFunctions.shell_exec">
128 Continue to allow existing violations, but enable the sniff to prevent
131 <exclude-pattern>*/maintenance/mwdocgen\.php</exclude-pattern>
132 <exclude-pattern>*/maintenance/updateCredits\.php</exclude-pattern>
134 <rule ref="MediaWiki.Usage.ForbiddenFunctions.system">
136 Continue to allow existing violations, but enable the sniff to prevent
139 <exclude-pattern>*/maintenance/mwdocgen\.php</exclude-pattern>
141 <rule ref="Generic.Arrays.DisallowShortArraySyntax">
143 T273340: Rule not to be enabled on any other file.
144 PHPVersionCheck.php requires syntax to be old PHP compatible.
145 The rest should therefore use [] rather than array() as per the
146 MediaWiki style guide.
148 <include-pattern>includes/PHPVersionCheck\.php</include-pattern>
151 <arg name="encoding" value="UTF-8"/>
152 <arg name="extensions" value="php"/>
153 <exclude-pattern type="relative">^(extensions|skins)/*</exclude-pattern>
154 <exclude-pattern type="relative">^docs/(coverage|html|js|latex)/*</exclude-pattern>
155 <exclude-pattern>LocalSettings(-installer)?\.php</exclude-pattern>