24-October-2020 - 6.29.0
The PMD team is pleased to announce PMD 6.29.0.
This is a minor release.
Table Of Contents
New and noteworthy
Updated Apex Support
New Rules
- The new Apex rule
OperationWithLimitsInLoop (apex-performance)
finds operations in loops that may hit governor limits such as DML operations, SOQL
queries and more. The rule replaces the three rules "AvoidDmlStatementsInLoops", "AvoidSoqlInLoops",
and "AvoidSoslInLoops".
Renamed Rules
- The Java rule
DoNotCallSystemExit has been renamed to
DoNotTerminateVM, since it checks for all the following calls:
System.exit(int), Runtime.exit(int), Runtime.halt(int). All these calls terminate
the Java VM, which is bad, if the VM runs an application server which many independent applications.
Deprecated Rules
Fixed Issues
- apex
- #2839: [apex] Apex classes with safe navigation operator from Winter 21 (50.0) are skipped
- apex-performance
- #1713: [apex] Mark Database DML statements in For Loop
- core
- #2831: [core] Fix XMLRenderer newlines when running under IBM Java
- java-errorprone
- #2157: [java] Improve DoNotCallSystemExit: permit call in main(), flag System.halt
- #2764: [java] CloseResourceRule does not recognize multiple assignment done to resource
- miscellaneous
- #2823: [doc] Renamed/Moved rules are missing in documentation
- vf (Salesforce VisualForce)
- #2765: [vf] Attributes with dot cause a VfParseException
External Contributions
Stats
- 50 commits
- 23 closed tickets & PRs
- Days since last release: 27