Skip to content

Commit

Permalink
Update PMD rules to correct syntax
Browse files Browse the repository at this point in the history
Previous syntax was ignored. Changed:

ClassOrInterfaceType -> ClassOrInterfaceDeclaration
@image -> @SimpleName

Added addition exclusion for Fraction to mirror BigFraction exclusions.

Added RegularizedBeta exclusion to mirror the exclusions used for the
other gamma package classes.
  • Loading branch information
aherbert committed Oct 15, 2021
1 parent 05120da commit 7a3b9df
Showing 1 changed file with 22 additions and 20 deletions.
42 changes: 22 additions & 20 deletions src/main/resources/pmd/pmd-ruleset.xml
Expand Up @@ -70,7 +70,7 @@
<rule ref="category/java/codestyle.xml/ShortMethodName">
<properties>
<!-- TODO: Current regex effectively disables this rule. -->
<property name="violationSuppressXPath" value="//ClassOrInterfaceType[matches(@Image, '^.*$')]"/>
<property name="violationSuppressXPath" value="//ClassOrInterfaceDeclaration[matches(@SimpleName, '^.*$')]"/>
</properties>
</rule>
<rule ref="category/java/codestyle.xml/ClassNamingConventions">
Expand All @@ -93,53 +93,55 @@
<rule ref="category/java/design.xml/ExcessivePublicCount">
<properties>
<property name="violationSuppressXPath"
value="//ClassOrInterfaceType[@Image='Complex'
or @Image='Fraction'
or @Image='BigFraction']"/>
value="//ClassOrInterfaceDeclaration[@SimpleName='Complex'
or @SimpleName='Fraction'
or @SimpleName='BigFraction']"/>
</properties>
</rule>
<rule ref="category/java/design.xml/ExcessiveClassLength">
<properties>
<property name="violationSuppressXPath"
value="//ClassOrInterfaceType[@Image='Complex'
or @Image='Fraction'
or @Image='BigFraction']"/>
value="//ClassOrInterfaceDeclaration[@SimpleName='Complex'
or @SimpleName='Fraction'
or @SimpleName='BigFraction']"/>
</properties>
</rule>
<rule ref="category/java/design.xml/GodClass">
<properties>
<property name="violationSuppressXPath"
value="//ClassOrInterfaceType[@Image='Fraction'
or @Image='BigFraction']"/>
value="//ClassOrInterfaceDeclaration[@SimpleName='Fraction'
or @SimpleName='BigFraction']"/>
</properties>
</rule>

<rule ref="category/java/errorprone.xml/AvoidLiteralsInIfCondition">
<properties>
<property name="ignoreMagicNumbers" value="-1,0,1" />
<property name="violationSuppressXPath"
value="//ClassOrInterfaceType[@Image='LogGamma'
or @Image='LogGammaSum'
or @Image='InverseErf'
or @Image='InvGamma1pm1']"/>
value="//ClassOrInterfaceDeclaration[@SimpleName='LogGamma'
or @SimpleName='LogGammaSum'
or @SimpleName='InverseErf'
or @SimpleName='InvGamma1pm1'
or @SimpleName='RegularizedBeta']"/>
</properties>
</rule>

<rule ref="category/java/errorprone.xml/AvoidFieldNameMatchingMethodName">
<properties>
<property name="violationSuppressXPath"
value="//ClassOrInterfaceType[@Image='Complex'
or @Image='Fraction'
or @Image='BigFraction']"/>
value="//ClassOrInterfaceDeclaration[@SimpleName='Complex'
or @SimpleName='Fraction'
or @SimpleName='BigFraction']"/>
</properties>
</rule>

<!-- Long methods are based on reference implementations. -->
<rule ref="category/java/design.xml/ExcessiveMethodLength">
<properties>
<property name="violationSuppressXPath"
value="//ClassOrInterfaceType[@Image='Complex'
or @Image='BigFraction']"/>
value="//ClassOrInterfaceDeclaration[@SimpleName='Complex'
or @SimpleName='BigFraction'
or @SimpleName='Fraction']"/>
</properties>
</rule>

Expand All @@ -148,13 +150,13 @@
<rule ref="category/java/design.xml/AvoidThrowingNewInstanceOfSameException">
<properties>
<property name="violationSuppressXPath"
value="//ClassOrInterfaceType[@Image='Complex']"/>
value="//ClassOrInterfaceDeclaration[@SimpleName='Complex']"/>
</properties>
</rule>
<rule ref="category/java/bestpractices.xml/PreserveStackTrace">
<properties>
<property name="violationSuppressXPath"
value="//ClassOrInterfaceType[@Image='Complex']"/>
value="//ClassOrInterfaceDeclaration[@SimpleName='Complex']"/>
</properties>
</rule>

Expand Down

0 comments on commit 7a3b9df

Please sign in to comment.