-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathphpcs.xml.dist
More file actions
63 lines (51 loc) · 2.62 KB
/
Copy pathphpcs.xml.dist
File metadata and controls
63 lines (51 loc) · 2.62 KB
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
<?xml version="1.0"?>
<ruleset name="TinifyAI">
<description>TinifyAI WordPress Plugin — PSR-4 namespaced codebase with WP security rules</description>
<file>src/</file>
<file>tinify-ai.php</file>
<file>uninstall.php</file>
<arg name="extensions" value="php"/>
<arg name="colors"/>
<arg value="sp"/>
<!-- Use WordPress Core rules (includes security: escaping, sanitization, nonces) -->
<rule ref="WordPress-Core"/>
<!-- Also enforce WordPress extra best practices -->
<rule ref="WordPress-Extra">
<!-- PSR-4 uses PascalCase filenames — skip file naming rules -->
<exclude name="WordPress.Files.FileName"/>
<!-- We use camelCase method/property names with namespaces -->
<exclude name="WordPress.NamingConventions.ValidFunctionName"/>
<exclude name="WordPress.NamingConventions.ValidVariableName"/>
<exclude name="WordPress.NamingConventions.ValidHookName"/>
<!-- PSR-12 brace style: opening brace on same line as class/function -->
<exclude name="PEAR.Functions.FunctionCallSignature"/>
<exclude name="Generic.Functions.OpeningFunctionBraceBsdAllman"/>
<exclude name="Generic.Classes.OpeningBraceSameLine"/>
<!-- Yoda conditions — not required for clarity in typed PHP 8.1 code -->
<exclude name="WordPress.PHP.YodaConditions"/>
<!-- Doc comments — not required per project style -->
<exclude name="Squiz.Commenting.FunctionComment"/>
<exclude name="Squiz.Commenting.ClassComment"/>
<exclude name="Squiz.Commenting.FileComment"/>
<exclude name="Squiz.Commenting.VariableComment"/>
<exclude name="Generic.Commenting.DocComment"/>
<!-- Space before/after parentheses — follow PSR-12 -->
<exclude name="WordPress.WhiteSpace.ControlStructureSpacing"/>
</rule>
<!-- Allow short array syntax [] — widely used in modern WP plugin development -->
<rule ref="Universal.Arrays.DisallowShortArraySyntax">
<exclude name="Universal.Arrays.DisallowShortArraySyntax.Found"/>
</rule>
<!-- Exception message strings are not HTML output — escaping them is wrong -->
<rule ref="WordPress.Security.EscapeOutput">
<exclude name="WordPress.Security.EscapeOutput.ExceptionNotEscaped"/>
</rule>
<!-- Enforce tabs for indentation (WordPress standard) -->
<rule ref="Generic.WhiteSpace.DisallowSpaceIndent"/>
<rule ref="Generic.WhiteSpace.ScopeIndent">
<properties>
<property name="indent" value="4"/>
<property name="tabIndent" value="true"/>
</properties>
</rule>
</ruleset>