26-February-2022 - 6.43.0-SNAPSHOT
The PMD team is pleased to announce PMD 6.43.0-SNAPSHOT.
This is a minor release.
New and noteworthy
Fixed Issues
- misc
- #3759: [lang-test] Upgrade dokka maven plugin to 1.4.32
API Changes
Deprecated API
Some API deprecations were performed in core PMD classes, to improve compatibility with PMD 7.
Report
: construction methods like addViolation or createReportRuleContext
: all constructors, getters and setters. A new set of stable methods, matching those in PMD 7, was added to replace theaddViolation
overloads ofAbstractRule
. In PMD 7,RuleContext
will be the API to report violations, and it can already be used as such in PMD 6.RuleSet
: methods that serve to apply rules, includingapply
,start
,end
,removeDysfunctionalRules
Changed API
It is now forbidden to report a violation:
- With a
null
node - With a
null
message - With a
null
set of format arguments (prefer a zero-length array)
Note that the message is set from the XML rule declaration, so this is only relevant if you instantiate rules manually.
RuleContext
now requires setting the current rule before calling
apply
. This is
done automatically by RuleSet#apply
and such. Creating and configuring a
RuleContext
manually is strongly advised against, as the lifecycle of RuleContext
will change drastically in PMD 7.
External Contributions
- #3767: [core] Update GUI.java - Vyom Yadav