??-April-2019 - 6.14.0
The PMD team is pleased to announce PMD 6.14.0.
This is a minor release.
New and noteworthy
Dart support
Thanks to the contribution from Maikel Steneker, and built on top of the ongoing efforts to fully support Antlr-based languages, PMD now has CPD support for Dart.
Being based on a proper Antlr grammar, CPD can:
- ignore comments
- ignore imports / libraries
- honor comment-based suppressions
Updated PMD Designer
This PMD release ships a new version of the pmd-designer. For the changes, see PMD Designer Changelog.
Modified Rules
-
The Java rule
AssignmentToNonFinalStatic
(java-errorprone
) will now report on each assignment made within a constructor rather than on the field declaration. This makes it easier for developers to find the offending statements. -
The Java rule
NoPackage
(java-codestyle
) will now report additionally enums and annotations that do not have a package declaration.
Fixed Issues
- all
- go
- #1751: [go] Parsing errors encountered with escaped backslash
- java
- java-bestpractices
- java-codestyle
- java-design
- #1760: [java] UseObjectForClearerAPI flags private methods
API Changes
No changes.
External Contributions
- #1745: [doc] Fixed some errors in docs - 0xflotus
- #1746: [java] Update rule to prevent UnusedImport when using JavaDoc with array type - itaigilo
- #1752: [java] UseObjectForClearerAPI Only For Public - Björn Kautler
- #1761: [dart] [cpd] Added CPD support for Dart - Maikel Steneker
- #1776: [java] Show more detailed message when can’t resolve field type - Andrey Fomin
- #1781: [java] Location change in AssignmentToNonFinalStatic - Maikel Steneker
- #1789: [cpd] [core] Use current classloader instead of Thread’s classloader - Andreas Schmid
- #1791: [dart] [cpd] Dart escaped string - Maikel Steneker