Files
pmd/docs/pages/release_notes.md
Andreas Dangel ed77b3dc46 Merge branch 'pr-2651'
[java] False negative: LiteralsFirstInComparisons for methods... (2569) #2651
2020-07-23 10:15:09 +02:00

4.2 KiB

title, permalink, keywords
title permalink keywords
PMD Release Notes pmd_release_notes.html changelog, release notes

{{ site.pmd.date }} - {{ site.pmd.version }}

The PMD team is pleased to announce PMD {{ site.pmd.version }}.

This is a {{ site.pmd.release_type }} release.

{% tocmaker is_release_notes_processor %}

New and noteworthy

New Rules

  • The new Java rule {% rule "java/bestpractices/UnusedAssignment" %} (java-bestpractices) finds assignments to variables, that are never used and are useless. The new rule is supposed to entirely replace {% rule "java/errorprone/DataflowAnomalyAnalysis" %}.

Fixed Issues

  • apex
    • #2610: [apex] Support top-level enums in rules
  • apex-bestpractices
    • #2626: [apex] UnusedLocalVariable - false positive on case insensitivity allowed in Apex
  • apex-security
    • #2620: [visualforce] False positive on VfUnescapeEl with new Message Channel feature
  • core
    • #710: [core] Review used dependencies
    • #2594: [core] Update exec-maven-plugin and align it in all project
  • java-bestpractices
    • #2569: [java] LiteralsFirstInComparisons: False negative for methods returning Strings
  • java-design
    • #2174: [java] LawOfDemeter: False positive with 'this' pointer
    • #2189: [java] LawOfDemeter: False positive when casting to derived class
    • #2580: [java] AvoidThrowingNullPointerException marks all NullPointerException objects as wrong, whether or not thrown
  • java-errorprone
    • #2578: [java] AvoidCallingFinalize detects some false positives
    • #2634: [java] NullPointerException in rule ProperCloneImplementation
  • java-performance
    • #1736: [java] UseStringBufferForStringAppends: False positive if only one concatenation
    • #2207: [java] AvoidInstantiatingObjectsInLoops: False positive - should not flag objects when assigned to lists/arrays

API Changes

Deprecated API

For removal
  • {% jdoc core::lang.rule.RuleChainVisitor %} and all implementations in language modules
  • {% jdoc core::lang.rule.AbstractRuleChainVisitor %}
  • {% jdoc core::lang.Language#getRuleChainVisitorClass() %}
  • {% jdoc core::lang.BaseLanguageModule#(java.lang.String,java.lang.String,java.lang.String,java.lang.Class,java.lang.String...) %}

External Contributions

{% endtocmaker %}