Files
pmd/docs/pages/release_notes.md
2018-01-11 17:30:40 +01:00

69 lines
3.3 KiB
Markdown

---
title: PMD Release Notes
permalink: pmd_release_notes.html
keywords: changelog, release notes
---
## ????? - 6.0.1-SNAPSHOT
The PMD team is pleased to announce PMD 6.0.1-SNAPSHOT.
This is a bug fixing release.
### Table Of Contents
* [New and noteworthy](#new-and-noteworthy)
* [Fixed Issues](#fixed-issues)
* [API Changes](#api-changes)
* [External Contributions](#external-contributions)
### New and noteworthy
#### Additional information about the new introduced rule categories
With the release of PMD 6.0.0, all rules have been sorted into one of the following eight categories:
1. **Best Practices**: These are rules which enforce generally accepted best practices.
2. **Code Style**: These rules enforce a specific coding style.
3. **Design**: Rules that help you discover design issues.
4. **Documentation**: These rules are related to code documentation.
5. **Error Prone**: Rules to detect constructs that are either broken, extremely confusing or prone to runtime errors.
6. **Multithreading**: These are rules that flag issues when dealing with multiple threads of execution.
7. **Performance**: Rules that flag suboptimal code.
8. **Security**: Rules that flag potential security flaws.
Please note, that not every category in every language may have a rule. There might be categories with no
rules at all, such as `category/java/security.xml`, which has currently no rules.
There are even languages, which only have rules of one category (e.g. `category/xml/errorprone.xml`).
You can find the information about available rules in the generated rule documentation, available
at <https://pmd.github.io/latest/>.
### Fixed Issues
* apex-errorprone
* [#792](https://github.com/pmd/pmd/issues/792): \[apex] AvoidDirectAccessTriggerMap incorrectly detects array access in classes
* apex-security
* [#788](https://github.com/pmd/pmd/issues/788): \[apex] Method chaining breaks ApexCRUDViolation
* doc
* [#782](https://github.com/pmd/pmd/issues/782): \[doc] Wrong information in the Release Notes about the Security ruleset
* [#794](https://github.com/pmd/pmd/issues/794): \[doc] Broken documentation links for 6.0.0
* java
* [#793](https://github.com/pmd/pmd/issues/793): \[java] Parser error with private method in nested classes in interfaces
* [#812](https://github.com/pmd/pmd/issues/812): \[java] Exception applying rule DataClass
* [#814](https://github.com/pmd/pmd/issues/814): \[java] UnsupportedClassVersionError is failure instead of a warning
* java-bestpractices
* [#783](https://github.com/pmd/pmd/issues/783): \[java] GuardLogStatement regression
* [#800](https://github.com/pmd/pmd/issues/800): \[java] ForLoopCanBeForeach NPE when looping on `this` object
* java-codestyle
* [#817](https://github.com/pmd/pmd/issues/817): \[java] UnnecessaryModifierRule crashes on valid code
* java-design
* [#785](https://github.com/pmd/pmd/issues/785): \[java] NPE in DataClass rule
### API Changes
### External Contributions
* [#796](https://github.com/pmd/pmd/pull/796): \[apex] AvoidDirectAccessTriggerMap incorrectly detects array access in classes - [Robert Sösemann](https://github.com/up2go-rsoesemann)
* [#799](https://github.com/pmd/pmd/pull/799): \[apex] Method chaining breaks ApexCRUDViolation - [Robert Sösemann](https://github.com/up2go-rsoesemann)