31 October 2019
The PMD team is pleased to announce PMD 6.19.0.
This is a minor release.
This PMD release ships a new version of the pmd-designer. For the changes, see PMD Designer Changelog.
The Java rules InvalidLogMessageFormat and MoreThanOneLogger
(java-errorprone) now both support Log4j2. Note that the
rule “InvalidSlf4jMessageFormat” has been renamed to “InvalidLogMessageFormat” to reflect the fact, that it now
supports more than slf4j.
The Java rule LawOfDemeter (java-design) ignores now also Builders, that are
not assigned to a local variable, but just directly used within a method call chain. The method, that creates
the builder needs to end with “Builder”, e.g. newBuilder() or initBuilder() works. This change
fixes a couple of false positives.
The Java rule DataflowAnomalyAnalysis (java-errorprone) doesn’t check for
UR anomalies (undefined and then referenced) anymore. These checks were all false-positives, since actual
UR occurrences would lead to compile errors.
The java rule DoNotUseThreads (java-multithreading) has been changed
to not report usages of java.lang.Runnable anymore. Just using Runnable does not automatically create
a new thread. While the check for Runnable has been removed, the rule now additionally checks for
usages of Executors and ExecutorService. Both create new threads, which are not managed by a J2EE
server.
InvalidSlf4jMessageFormat has been renamed to
InvalidLogMessageFormat since it supports now both slf4j and log4j2
message formats.-norulesetcompatibility shows a boolean default valuenet.sourceforge.pmd.dcd and its subpackages. See DCD.LanguageRegistry:
RuleSet#getExcludePatterns. Use the new method getFileExclusions instead.RuleSet#getIncludePatterns. Use the new method getFileInclusions instead.Parser#canParseParser#getSuppressMapRuleBuilder#RuleBuilder. Use the new constructor with the correct ResourceLoader instead.RuleFactory#RuleFactory. Use the new constructor with the correct ResourceLoader instead.CanSuppressWarnings and its implementationsisSuppressedgetDeclaringType.isSupressedASTMethodDeclaratorgetMethodNamegetBlockgetParameterCountCanSuppressWarnings and its implementationsisSupressednet.sourceforge.pmd.util and its subpackages,
except net.sourceforge.pmd.util.datasource and net.sourceforge.pmd.util.database.GridBagHelperColumnDescriptor