From 3b81ff581f35ef8cd30708331ca0f8b1c4c652c7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Cl=C3=A9ment=20Fournier?= Date: Fri, 28 May 2021 12:34:32 +0200 Subject: [PATCH] Update release notes, refs #3293 --- docs/pages/release_notes.md | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/docs/pages/release_notes.md b/docs/pages/release_notes.md index e2a8372258..805bedacb7 100644 --- a/docs/pages/release_notes.md +++ b/docs/pages/release_notes.md @@ -23,14 +23,24 @@ to analyze JavaScript code. Note that PMD core still only requires Java 7. #### New rules -* The new Java rule {% rule "java/bestpractices/JUnit5TestShouldBePackagePrivate" %} +This release ships with 3 new Java rules. + +* {% rule "java/bestpractices/JUnit5TestShouldBePackagePrivate" %} enforces the convention that JUnit 5 tests should have minimal visibility. You can try out this rule like so: ```xml ``` -* The new Java rule {% rule "java/design/MutableStaticState" %} finds non-private static fields +* {% rule "java/design/CognitiveComplexity" %} uses the cognitive complexity + metric to find overly complex code. This metric improves on the similar cyclomatic complexity + in several ways, for instance, it incentivizes using clearly readable shorthands and idioms. + See the rule documentation for more details. You can try out this rule like so: +```xml + +``` + +* {% rule "java/design/MutableStaticState" %} finds non-private static fields that are not final. These fields break encapsulation since these fields can be modified from anywhere within the program. You can try out this rule like so: ```xml