forked from WordPress/gutenberg
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathphpcs.xml.dist
131 lines (116 loc) · 5.02 KB
/
phpcs.xml.dist
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
<?xml version="1.0"?>
<ruleset name="WordPress Coding Standards for Gutenberg Plugin">
<description>Sniffs for WordPress plugins, with minor modifications for Gutenberg</description>
<!-- Check for cross-version support for PHP 7.0 and higher. -->
<config name="testVersion" value="7.0-"/>
<rule ref="PHPCompatibilityWP">
<include-pattern>*\.php$</include-pattern>
</rule>
<rule ref="WordPress-Core"/>
<rule ref="WordPress-Docs"/>
<rule ref="WordPress.WP.I18n"/>
<config name="text_domain" value="gutenberg,default"/>
<rule ref="VariableAnalysis.CodeAnalysis.VariableAnalysis">
<properties>
<property name="allowUnusedParametersBeforeUsed" value="true"/>
</properties>
</rule>
<rule ref="WordPress.CodeAnalysis.EmptyStatement"/>
<rule ref="PEAR.Functions.FunctionCallSignature">
<properties>
<property name="allowMultipleArguments" value="false"/>
</properties>
</rule>
<rule ref="WordPress.WP.I18n.MissingArgDomainDefault">
<exclude-pattern>lib/compat/*</exclude-pattern>
<exclude-pattern>packages/block-library/src/*</exclude-pattern>
<exclude-pattern>build/block-library/*</exclude-pattern>
</rule>
<arg value="ps"/>
<arg name="extensions" value="php"/>
<!-- Cache the scan results and re-use those for unchanged files on the next scan. -->
<arg name="cache" value=".cache/phpcs.json"/>
<file>./bin</file>
<file>./gutenberg.php</file>
<file>./lib</file>
<file>./packages</file>
<file>./phpunit</file>
<file>./post-content.php</file>
<!-- Exclude generated files -->
<exclude-pattern>./packages/block-serialization-spec-parser/parser.php</exclude-pattern>
<exclude-pattern>node_modules/*</exclude-pattern>
<!-- Exclude third party libraries -->
<exclude-pattern>./vendor/*</exclude-pattern>
<exclude-pattern>./test/php/gutenberg-coding-standards/*</exclude-pattern>
<!-- These special comments are markers for the build process -->
<rule ref="Squiz.Commenting.InlineComment.WrongStyle">
<exclude-pattern>gutenberg.php</exclude-pattern>
</rule>
<!-- Do not require docblocks for unit tests -->
<rule ref="Squiz.Commenting.FunctionComment.Missing">
<exclude-pattern>phpunit/*</exclude-pattern>
</rule>
<rule ref="Squiz.Commenting.FileComment.Missing">
<exclude-pattern>phpunit/*</exclude-pattern>
<exclude-pattern>**/*.min.asset.php</exclude-pattern>
</rule>
<rule ref="Squiz.Commenting.ClassComment.Missing">
<exclude-pattern>phpunit/*</exclude-pattern>
</rule>
<rule ref="Squiz.Commenting.ClassComment.SpacingAfter">
<exclude-pattern>phpunit/*</exclude-pattern>
</rule>
<rule ref="Squiz.Commenting.FunctionComment.MissingParamTag">
<exclude-pattern>phpunit/*</exclude-pattern>
</rule>
<rule ref="Generic.Commenting.DocComment.Empty">
<exclude-pattern>phpunit/*</exclude-pattern>
</rule>
<rule ref="Generic.Commenting.DocComment.MissingShort">
<exclude-pattern>phpunit/*</exclude-pattern>
</rule>
<rule ref="Squiz.Commenting.VariableComment.Missing">
<exclude-pattern>phpunit/*</exclude-pattern>
</rule>
<rule ref="Squiz.Commenting.FunctionCommentThrowTag.Missing">
<!-- Ignore until squizlabs/PHP_CodeSniffer#3685 is fixed: it thinks that a caught exception escapes the function. -->
<exclude-pattern>lib/compat/wordpress-6.4/html-api/class-wp-html-processor.php</exclude-pattern>
<exclude-pattern>phpunit/*</exclude-pattern>
</rule>
<!-- Ignore snake case error in parser -->
<rule ref="WordPress.NamingConventions.ValidVariableName.PropertyNotSnakeCase">
<exclude-pattern>./packages/block-serialization-default-parser/parser.php</exclude-pattern>
</rule>
<rule ref="WordPress.NamingConventions.ValidVariableName.VariableNotSnakeCase">
<exclude-pattern>./packages/block-serialization-default-parser/parser.php</exclude-pattern>
</rule>
<rule ref="WordPress.NamingConventions.ValidVariableName.UsedPropertyNotSnakeCase">
<exclude-pattern>./packages/block-serialization-default-parser/parser.php</exclude-pattern>
</rule>
<!-- Ignore filename error since it requires WP core build process change -->
<rule ref="WordPress.Files.FileName.InvalidClassFileName">
<exclude-pattern>./packages/block-serialization-default-parser/parser.php</exclude-pattern>
<exclude-pattern>/phpunit/*</exclude-pattern>
</rule>
<!-- Exclude PHPUnit tests from file and class name sniffs (for Core parity). -->
<rule ref="WordPress.Files.FileName.NotHyphenatedLowercase">
<exclude-pattern>/phpunit/*</exclude-pattern>
</rule>
<rule ref="PEAR.NamingConventions.ValidClassName.Invalid">
<exclude-pattern>/phpunit/*</exclude-pattern>
</rule>
<!-- Enforce checks against redeclaration for functions and classes. -->
<rule ref="Gutenberg.CodeAnalysis.GuardedFunctionAndClassNames">
<exclude-pattern>./phpunit/*</exclude-pattern>
<exclude-pattern>./packages/*</exclude-pattern>
<exclude-pattern>./bin/generate-gutenberg-php</exclude-pattern>
<properties>
<property name="functionsWhiteList" type="array">
<element value="/^_?gutenberg.+/"/>
</property>
<property name="classesWhiteList" type="array">
<element value="/^Gutenberg.+/"/>
</property>
</properties>
</rule>
</ruleset>