Remove deprecated rules

This commit is contained in:
Andreas Dangel
2015-10-04 11:12:16 +02:00
parent 6797742497
commit c9f623ca7b
6 changed files with 18 additions and 108 deletions

View File

@ -847,25 +847,4 @@ public class Foo {
]]>
</example>
</rule>
<rule deprecated="true" ref="rulesets/java/empty.xml/EmptyCatchBlock" />
<rule deprecated="true" ref="rulesets/java/empty.xml/EmptyIfStmt" />
<rule deprecated="true" ref="rulesets/java/empty.xml/EmptyWhileStmt" />
<rule deprecated="true" ref="rulesets/java/empty.xml/EmptyTryBlock" />
<rule deprecated="true" ref="rulesets/java/empty.xml/EmptyFinallyBlock" />
<rule deprecated="true" ref="rulesets/java/empty.xml/EmptySwitchStatements" />
<rule deprecated="true" ref="rulesets/java/empty.xml/EmptySynchronizedBlock" />
<rule deprecated="true" ref="rulesets/java/empty.xml/EmptyStatementNotInLoop" />
<rule deprecated="true" ref="rulesets/java/empty.xml/EmptyInitializer" />
<rule deprecated="true" ref="rulesets/java/empty.xml/EmptyStatementBlock" />
<rule deprecated="true" ref="rulesets/java/empty.xml/EmptyStaticInitializer" />
<rule deprecated="true" ref="rulesets/java/unnecessary.xml/UnnecessaryConversionTemporary" />
<rule deprecated="true" ref="rulesets/java/unnecessary.xml/UnnecessaryReturn" />
<rule deprecated="true" ref="rulesets/java/unnecessary.xml/UnnecessaryFinalModifier" />
<rule deprecated="true" ref="rulesets/java/unnecessary.xml/UselessOverridingMethod" />
<rule deprecated="true" ref="rulesets/java/unnecessary.xml/UselessOperationOnImmutable" />
<rule deprecated="true" ref="rulesets/java/unnecessary.xml/UnusedNullCheckInEquals" />
<rule deprecated="true" ref="rulesets/java/unnecessary.xml/UselessParentheses" />
</ruleset>

View File

@ -297,43 +297,6 @@ or MethodDeclaration[@PackagePrivate='true']
</properties>
</rule>
<rule deprecated="true"
name="BooleanInversion"
language="java"
since="3.5"
message="Use bitwise inversion to invert boolean values"
class="net.sourceforge.pmd.lang.rule.XPathRule"
externalInfoUrl="${pmd.website.baseurl}/rules/java/controversial.html#BooleanInversion">
<description>
<![CDATA[
**Note:** This rule is deprecated as nowadays the JVMs JIT compilers will optimize away the differences.
While the bytecode generated by the java compiler is indeed different, at runtime the instructions
are optimized to the fastest way automatically.
See [#1277](https://sourceforge.net/p/pmd/bugs/1277/) for more details.
Use bitwise inversion to invert boolean values - it's the fastest way to do this.
See [Java Specialists - Issue 042](http://www.javaspecialists.eu/archive/Issue042.html) for specific details.
]]>
</description>
<priority>3</priority>
<properties>
<property name="xpath">
<value>
<![CDATA[
//AssignmentOperator[@Image="="]/../Expression/UnaryExpressionNotPlusMinus[@Image="!"]
]]>
</value>
</property>
</properties>
<example>
<![CDATA[
boolean b = true;
b = !b; // slow
b ^= true; // fast
]]>
</example>
</rule>
<rule name="DataflowAnomalyAnalysis"
since="3.9"
message="Found ''{0}''-anomaly for variable ''{1}'' (lines ''{2}''-''{3}'')."

View File

@ -1353,7 +1353,6 @@ class Singleton {
</example>
</rule>
<rule deprecated="true" name="UncommentedEmptyMethod" ref="UncommentedEmptyMethodBody" />
<rule name="UncommentedEmptyMethodBody"
language="java"
since="3.4"

View File

@ -19,7 +19,6 @@ public class ControversialRulesTest extends SimpleAggregatorTst {
addRule(RULESET, "AvoidUsingVolatile");
addRule(RULESET, "AtLeastOneConstructor");
addRule(RULESET, "AvoidFinalLocalVariable");
addRule(RULESET, "BooleanInversion");
addRule(RULESET, "CallSuperInConstructor");
addRule(RULESET, "DataflowAnomalyAnalysis");
addRule(RULESET, "DefaultPackage");

View File

@ -1,48 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<test-data>
<test-code>
<description><![CDATA[
failure, unary assignment
]]></description>
<expected-problems>1</expected-problems>
<code><![CDATA[
public class Foo {
public void bar() {
boolean b = false;
boolean c = false;
b = !c;
}
}
]]></code>
</test-code>
<test-code>
<description><![CDATA[
pass, bitwise assignment
]]></description>
<expected-problems>0</expected-problems>
<code><![CDATA[
public class Foo {
public void bar() {
boolean b = false;
boolean c = false;
b ^= c;
}
}
]]></code>
</test-code>
<test-code>
<description><![CDATA[
pass, not a straight unary inversion
]]></description>
<expected-problems>0</expected-problems>
<code><![CDATA[
public class Foo {
public void bar() {
boolean b = false;
boolean c = false;
b &= !c;
}
}
]]></code>
</test-code>
</test-data>