4.6 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
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.
Enhanced Matlab support
Thanks to the contribution from Maikel Steneker CPD for Matlab can now parse matlab programs which use the question mark operator to specify access to class members:
lassdef Class1
properties (SetAccess = ?Class2)
Modified Rules
-
The Java rule {% rule "java/errorprone/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 {% rule "java/codestyle/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
- #1821: [matlab] [cpd] Matlab question mark token - Maikel Steneker
{% endtocmaker %}