mirror of
git://develop.git.wordpress.org/
synced 2025-01-17 04:48:25 +01:00
3dbfc06512
This commit: * Removes the unnecessary exclusion patterns for the `node_modules` and `vendor` directories. As this ruleset only scans the `src` directory, those directories would never be scanned anyway. * Removes the selective excludes related to the random_compat package. This package was removed in WP 6.3, so these excludes are no longer necessary. Follow-up to [46290], [56141]. Props jrf. See #58831. git-svn-id: https://develop.svn.wordpress.org/trunk@56667 602fd350-edb4-49c9-b593-d223f7449a82
87 lines
3.2 KiB
XML
87 lines
3.2 KiB
XML
<?xml version="1.0"?>
|
|
<ruleset name="WordPress PHP Compatibility">
|
|
<description>Apply PHP compatibility checks to all WordPress Core files</description>
|
|
|
|
<!--
|
|
#############################################################################
|
|
COMMAND LINE ARGUMENTS
|
|
https://github.com/squizlabs/PHP_CodeSniffer/wiki/Annotated-Ruleset
|
|
#############################################################################
|
|
-->
|
|
|
|
<!-- Only scan PHP files. -->
|
|
<arg name="extensions" value="php"/>
|
|
|
|
<!-- Whenever possible, cache the scan results and re-use those for unchanged files on the next scan. -->
|
|
<arg name="cache" value=".cache/phpcompat.json"/>
|
|
|
|
<!-- Set the memory limit to 256M.
|
|
For most standard PHP configurations, this means the memory limit will temporarily be raised.
|
|
Ref: https://github.com/squizlabs/PHP_CodeSniffer/wiki/Advanced-Usage#specifying-phpini-settings
|
|
-->
|
|
<ini name="memory_limit" value="256M"/>
|
|
|
|
<!-- Strip the filepaths down to the relevant bit. -->
|
|
<arg name="basepath" value="./"/>
|
|
|
|
<!-- Check up to 20 files simultaneously. -->
|
|
<arg name="parallel" value="20"/>
|
|
|
|
<!-- Show sniff codes in all reports. -->
|
|
<arg value="ps"/>
|
|
|
|
<!--
|
|
#############################################################################
|
|
FILE SELECTION
|
|
Set which files will be subject to the scans executed using this ruleset.
|
|
#############################################################################
|
|
-->
|
|
|
|
<!-- For now, only the files in src are scanned. -->
|
|
<file>./src/</file>
|
|
|
|
<!-- Exclude Must-Use plugins. -->
|
|
<exclude-pattern>/src/wp-content/mu-plugins/*</exclude-pattern>
|
|
|
|
<!-- Exclude plugins. -->
|
|
<exclude-pattern>/src/wp-content/plugins/*</exclude-pattern>
|
|
|
|
<!-- Exclude themes except the twenty* themes. -->
|
|
<exclude-pattern>/src/wp-content/themes/(?!twenty)*</exclude-pattern>
|
|
|
|
<!--
|
|
PHPCompatibilityParagonieSodiumCompat prevents false positives in `sodium_compat`.
|
|
However, because these files are included in a non-standard path, false positives are triggered in WordPress Core.
|
|
-->
|
|
<exclude-pattern>src/wp-includes/sodium_compat/lib/php72compat_const\.php$</exclude-pattern>
|
|
|
|
<!--
|
|
#############################################################################
|
|
SET UP THE RULESET
|
|
#############################################################################
|
|
-->
|
|
|
|
<rule ref="PHPCompatibilityWP"/>
|
|
|
|
<!-- WordPress Core currently supports PHP 7.0+. -->
|
|
<config name="testVersion" value="7.0-"/>
|
|
|
|
<!--
|
|
#############################################################################
|
|
SELECTIVE EXCLUSIONS
|
|
Exclude specific files for specific sniffs and/or exclude sub-groups in sniffs.
|
|
#############################################################################
|
|
-->
|
|
|
|
<rule ref="PHPCompatibility.FunctionUse.NewFunctions.sodium_crypto_sign_keypair_from_secretkey_and_publickeyFound">
|
|
<exclude-pattern>/sodium_compat/src/Compat\.php$</exclude-pattern>
|
|
</rule>
|
|
<rule ref="PHPCompatibility.FunctionUse.NewFunctions.sodium_padFound">
|
|
<exclude-pattern>/sodium_compat/src/Compat\.php$</exclude-pattern>
|
|
</rule>
|
|
<rule ref="PHPCompatibility.FunctionUse.NewFunctions.sodium_unpadFound">
|
|
<exclude-pattern>/sodium_compat/src/Compat\.php$</exclude-pattern>
|
|
</rule>
|
|
|
|
</ruleset>
|