MediaWiki-CodeSniffer
MediaWiki CodeSniffer Standards
|
This project implements a set of rules for use with PHP CodeSniffer.
See MediaWiki conventions on our wiki for a detailed description of the coding conventions that are validated by these rules. :-)
Create a composer.json which adds this project as a dependency:
Create a .phpcs.xml with our configuration:
composer update
composer test
composer fix
to auto-fix some of the errors, others might need manual intervention.Note that for most MediaWiki projects, we'd also recommend adding a PHP linter to your composer.json
– see the full documentation for more details.
Some of the sniffs provided by this codesniffer standard allow you to configure details of how they work.
MediaWiki.Classes.FullQualifiedClassName
: This sniff is disabled by default.
MediaWiki.Usage.ExtendClassUsage
: This sniff lets you exclude globals from being reported by the sniff, in case they cannot be replaced with a Config::getConfig() call. Examples that are already in the list include $wgTitle
and $wgUser
.
MediaWiki.Commenting.ClassLevelLicense
: This sniff does nothing by default.
MediaWiki.NamingConventions.PrefixedGlobalFunctions
: This sniff lets you define a list of ignored global functions and a list of allowed prefixes. By default the only allowed prefix is 'wf', corresponding to the global function wf...()
.
MediaWiki.NamingConventions.ValidGlobalName
: This sniff lets you define a list of ignored globals and a list of allowed prefixes. By default the only allowed prefix is 'wg', for global variables $wg...
.
MediaWiki.Arrays.TrailingComma
: This sniff lets you enforce that multi-line arrays have trailing commas, which makes Git diffs nicer. It can also enforce that single-line arrays have no trailing comma. By default, it does nothing.