Skip to content

Commit e427e25

Browse files
committed
Add PMD ruleset configuration for custom code analysis
This commit introduces a new `ruleset.xml` file for PMD, specifying custom rules and exclusions tailored for Magento's codebase. It ensures consistency in code quality by excluding irrelevant checks and focusing on important patterns. This configuration is critical for integrating automated code analysis into the project.
1 parent ffbc8b5 commit e427e25

File tree

1 file changed

+45
-0
lines changed

1 file changed

+45
-0
lines changed

gradle-tasks/pmd/ruleset.xml

Lines changed: 45 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,45 @@
1+
<?xml version="1.0"?>
2+
<!--
3+
/**
4+
* Copyright © Magento, Inc. All rights reserved.
5+
* See COPYING.txt for license details.
6+
*/
7+
-->
8+
<ruleset name="Custom Rules"
9+
xmlns="http://pmd.sourceforge.net/ruleset/2.0.0"
10+
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
11+
xsi:schemaLocation="http://pmd.sourceforge.net/ruleset/2.0.0 https://pmd.sourceforge.io/ruleset_2_0_0.xsd">
12+
13+
<description>
14+
Magento PhpStorm rules
15+
</description>
16+
<rule ref="category/java/bestpractices.xml">
17+
<exclude name="JUnit4TestShouldUseTestAnnotation"/>
18+
<exclude name="JUnit4TestShouldUseBeforeAnnotation"/>
19+
</rule>
20+
<rule ref="category/java/codestyle.xml">
21+
<exclude name="AtLeastOneConstructor" />
22+
<exclude name="LongVariable" />
23+
<exclude name="OnlyOneReturn" />
24+
</rule>
25+
<rule ref="category/java/design.xml">
26+
<exclude name="LawOfDemeter"/>
27+
<exclude name="DataClass"/>
28+
</rule>
29+
<rule ref="category/java/documentation.xml">
30+
<exclude name="CommentRequired" />
31+
<exclude name="CommentSize" />
32+
</rule>
33+
<rule ref="category/java/errorprone.xml">
34+
<exclude name="BeanMembersShouldSerialize"/>
35+
<exclude name="DataflowAnomalyAnalysis"/>
36+
<exclude name="MissingSerialVersionUID"/>
37+
</rule>
38+
<exclude-pattern>.*/resources/.*</exclude-pattern>
39+
<exclude-pattern>.*/testData/.*</exclude-pattern>
40+
<rule ref="category/java/multithreading.xml">
41+
<exclude name="UseConcurrentHashMap" />
42+
</rule>
43+
<rule ref="category/java/performance.xml"/>
44+
<rule ref="category/java/security.xml" />
45+
</ruleset>

0 commit comments

Comments
 (0)