jenkinsci/calendar-view-plugin

View on GitHub
.pmd.config.xml

Summary

Maintainability
Test Coverage
<?xml version="1.0"?>

<ruleset name="Calendar View Rules"
    xmlns="http://pmd.sourceforge.net/ruleset/2.0.0"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://pmd.sourceforge.net/ruleset/2.0.0 http://pmd.sourceforge.net/ruleset_2_0_0.xsd">

    <description>
        Calendar View rules.
    </description>

    <rule ref="category/java/bestpractices.xml">
        <exclude name="AccessorMethodGeneration" />
    </rule>
    <rule ref="category/java/codestyle.xml">
        <!-- Operator precedence is hard and parentheses enhance readability -->
        <exclude name="UselessParentheses" />
        <!-- Having only one return statement prevents guard clauses -->
        <exclude name="OnlyOneReturn" />
        <!-- Unncessary verbosity is the Java way -->
        <exclude name="UnnecessaryModifier" />
        <!-- Long variable names are good -->
        <exclude name="LongVariable" />
        <!-- No need for empty constructors -->
        <exclude name="AtLeastOneConstructor" />
        <!-- This complains about variable names like 'id' -->
        <exclude name="ShortVariable" />
        <!-- This rule makes no sense -->
        <exclude name="AvoidFinalLocalVariable" />
    </rule>
    <rule ref="category/java/design.xml">
        <!-- "Tell, don't ask" is a good design principle, 
             but this rule is way too strict about it -->
        <exclude name="LawOfDemeter" />
    </rule>
    <rule ref="category/java/design.xml/NcssCount">
        <!-- Default values too low in PMD 6.4.0, fixed in PMD 6.5.0 -->
        <properties>
            <property name="methodReportLevel" value="60"/>
            <property name="classReportLevel" value="1000"/>
        </properties>
    </rule>
    <rule ref="category/java/errorprone.xml">
        <!-- Produces lots of false positives and the Java
             compiler catches most of these anyway -->
        <exclude name="DataflowAnomalyAnalysis"/>
        <!-- Produces lots of false positives because it
             doesn't check if Serializable is implemented -->
        <exclude name="BeanMembersShouldSerialize" />
    </rule>
    <rule ref="category/java/multithreading.xml"/>
    <rule ref="category/java/performance.xml"/>
    <rule ref="category/java/security.xml"/>

</ruleset>