Beautify: Difference between revisions

No edit summary
No edit summary
Line 3: Line 3:
For PHP, JavaScript and CSS, '''[https://github.com/PHPCSStandards/PHP_CodeSniffer PHP Code Sniffer]''' (phpcs) and its counterpart PHP Code Beautifier (phpcbf) work to ensure your code adheres to standards. For using phpcs in MediaWiki, see [[mw:Manual:Coding_conventions/PHP]]. PHPCS is enabled in ~89% of repositories hosted by WMF<ref>https://phpcs.toolforge.org/</ref>  '''[https://github.com/wikimedia/mediawiki-tools-codesniffer MediaWiki Code Sniffer]''' is the set of rules (or ruleset to be more precise) that defines the standards for the MediaWiki project.
For PHP, JavaScript and CSS, '''[https://github.com/PHPCSStandards/PHP_CodeSniffer PHP Code Sniffer]''' (phpcs) and its counterpart PHP Code Beautifier (phpcbf) work to ensure your code adheres to standards. For using phpcs in MediaWiki, see [[mw:Manual:Coding_conventions/PHP]]. PHPCS is enabled in ~89% of repositories hosted by WMF<ref>https://phpcs.toolforge.org/</ref>  '''[https://github.com/wikimedia/mediawiki-tools-codesniffer MediaWiki Code Sniffer]''' is the set of rules (or ruleset to be more precise) that defines the standards for the MediaWiki project.


Suffice it to say, you can <code>composer phpcs</code> to run the tool from the project root. For more on how to run it, see [[mw:Continuous_integration/PHP_CodeSniffer]] Documentation for PHP_CodeSniffer is at https://github.com/PHPCSStandards/PHP_CodeSniffer/wiki
Suffice it to say, you can <code>composer phpcs</code> to run the tool from the project root. For more on how to run it, see [[mw:Continuous_integration/PHP_CodeSniffer]]  
 
Project Documentation for PHP_CodeSniffer is at https://github.com/PHPCSStandards/PHP_CodeSniffer/wiki
 
You can list the standards available in the MediaWiki project using the -i option. The standard you want to enforce/use is ''''MediaWiki'''<nowiki/>'


The standards available in the MediaWiki project include 'MediaWiki'
<br>
<code>php ./vendor/bin/phpcs -i</code>
<code>php ./vendor/bin/phpcs -i</code>
<br>
The installed coding standards are MySource, PEAR, PSR1, PSR2, PSR12, Squiz, Zend, MediaWiki, Modernize, NormalizedArrays, Universal and PHPCSUtils
The installed coding standards are MySource, PEAR, PSR1, PSR2, PSR12, Squiz, Zend, MediaWiki, Modernize, NormalizedArrays, Universal and PHPCSUtils
 


== Configuration ==
If you're a MediaWiki extension developer, you can create a <code>.phpcs.xml</code> configuration file that sets things up for the project and integrates with the MediaWiki vendored binaries. See [[using docker-compose-ci]]
{{References}}
{{References}}
[[Category:CSS]]
[[Category:CSS]]