From 1a62ddffad8bf4e9beb30205a40f45ec22bb2cff Mon Sep 17 00:00:00 2001 From: Scrsloota <1912125562@qq.com> Date: Sat, 28 May 2022 00:17:11 +0800 Subject: [PATCH 01/50] fix AvoidFieldNameMatchingMethodName without enum --- .../AvoidFieldNameMatchingMethodNameRule.java | 50 +++++++++++-------- 1 file changed, 30 insertions(+), 20 deletions(-) diff --git a/pmd-java/src/main/java/net/sourceforge/pmd/lang/java/rule/errorprone/AvoidFieldNameMatchingMethodNameRule.java b/pmd-java/src/main/java/net/sourceforge/pmd/lang/java/rule/errorprone/AvoidFieldNameMatchingMethodNameRule.java index a84a2b8b3dc..9fd52b984ac 100644 --- a/pmd-java/src/main/java/net/sourceforge/pmd/lang/java/rule/errorprone/AvoidFieldNameMatchingMethodNameRule.java +++ b/pmd-java/src/main/java/net/sourceforge/pmd/lang/java/rule/errorprone/AvoidFieldNameMatchingMethodNameRule.java @@ -13,8 +13,11 @@ import net.sourceforge.pmd.lang.ast.Node; import net.sourceforge.pmd.lang.java.ast.ASTClassOrInterfaceBody; import net.sourceforge.pmd.lang.java.ast.ASTClassOrInterfaceDeclaration; +import net.sourceforge.pmd.lang.java.ast.ASTEnumBody; +import net.sourceforge.pmd.lang.java.ast.ASTEnumDeclaration; import net.sourceforge.pmd.lang.java.ast.ASTFieldDeclaration; import net.sourceforge.pmd.lang.java.ast.ASTMethodDeclaration; +import net.sourceforge.pmd.lang.java.ast.JavaNode; import net.sourceforge.pmd.lang.java.rule.AbstractJavaRule; public class AvoidFieldNameMatchingMethodNameRule extends AbstractJavaRule { @@ -28,29 +31,36 @@ public Object visit(ASTClassOrInterfaceDeclaration node, Object data) { } @Override - public Object visit(ASTClassOrInterfaceBody node, Object data) { - int n = node.getNumChildren(); - List fields = new ArrayList<>(); - Set methodNames = new HashSet<>(); - for (int i = 0; i < n; i++) { - Node child = node.getChild(i); - if (child.getNumChildren() == 0) { - continue; - } - child = child.getChild(child.getNumChildren() - 1); - if (child instanceof ASTFieldDeclaration) { - fields.add((ASTFieldDeclaration) child); - } else if (child instanceof ASTMethodDeclaration) { - methodNames.add(((ASTMethodDeclaration) child).getName().toLowerCase(Locale.ROOT)); + public Object visit(ASTEnumDeclaration node, Object data) { + return super.visit(node, data); + } + + @Override + public Object visit(JavaNode node, Object data) { + if (node instanceof ASTClassOrInterfaceBody || node instanceof ASTEnumBody) { + int n = node.getNumChildren(); + List fields = new ArrayList<>(); + Set methodNames = new HashSet<>(); + for (int i = 0; i < n; i++) { + Node child = node.getChild(i); + if (child.getNumChildren() == 0) { + continue; + } + child = child.getChild(child.getNumChildren() - 1); + if (child instanceof ASTFieldDeclaration) { + fields.add((ASTFieldDeclaration) child); + } else if (child instanceof ASTMethodDeclaration) { + methodNames.add(((ASTMethodDeclaration) child).getName().toLowerCase(Locale.ROOT)); + } } - } - for (ASTFieldDeclaration field : fields) { - String varName = field.getVariableName().toLowerCase(Locale.ROOT); - if (methodNames.contains(varName)) { - addViolation(data, field, field.getVariableName()); + for (ASTFieldDeclaration field : fields) { + String varName = field.getVariableName().toLowerCase(Locale.ROOT); + if (methodNames.contains(varName)) { + addViolation(data, field, field.getVariableName()); + } } + return super.visit(node, data); } return super.visit(node, data); } - } From 7261b7fd10842fc15c3aab73de1ea8d0c7944dcc Mon Sep 17 00:00:00 2001 From: Scrsloota <1912125562@qq.com> Date: Sat, 28 May 2022 00:17:32 +0800 Subject: [PATCH 02/50] add test cases --- .../xml/AvoidFieldNameMatchingMethodName.xml | 42 +++++++++++++++++++ 1 file changed, 42 insertions(+) diff --git a/pmd-java/src/test/resources/net/sourceforge/pmd/lang/java/rule/errorprone/xml/AvoidFieldNameMatchingMethodName.xml b/pmd-java/src/test/resources/net/sourceforge/pmd/lang/java/rule/errorprone/xml/AvoidFieldNameMatchingMethodName.xml index 138d598230d..ad0170102ab 100644 --- a/pmd-java/src/test/resources/net/sourceforge/pmd/lang/java/rule/errorprone/xml/AvoidFieldNameMatchingMethodName.xml +++ b/pmd-java/src/test/resources/net/sourceforge/pmd/lang/java/rule/errorprone/xml/AvoidFieldNameMatchingMethodName.xml @@ -60,6 +60,48 @@ public class Bar { + + + + Test1 in Enum + 1 + + + + + Test2 in Enum + 0 + + + + + Test3 in Enum + 0 + From 04c1271d88ae1949f207a791c8085a018b303f0e Mon Sep 17 00:00:00 2001 From: Andreas Dangel Date: Sat, 28 May 2022 11:04:32 +0200 Subject: [PATCH 03/50] [maven-release-plugin] prepare for next development iteration --- pmd-apex-jorje/pom.xml | 2 +- pmd-apex/pom.xml | 2 +- pmd-core/pom.xml | 2 +- pmd-cpp/pom.xml | 2 +- pmd-cs/pom.xml | 2 +- pmd-dart/pom.xml | 2 +- pmd-dist/pom.xml | 2 +- pmd-doc/pom.xml | 2 +- pmd-fortran/pom.xml | 2 +- pmd-go/pom.xml | 2 +- pmd-groovy/pom.xml | 2 +- pmd-html/pom.xml | 2 +- pmd-java/pom.xml | 2 +- pmd-java8/pom.xml | 2 +- pmd-javascript/pom.xml | 2 +- pmd-jsp/pom.xml | 2 +- pmd-kotlin/pom.xml | 2 +- pmd-lang-test/pom.xml | 2 +- pmd-lua/pom.xml | 2 +- pmd-matlab/pom.xml | 2 +- pmd-modelica/pom.xml | 2 +- pmd-objectivec/pom.xml | 2 +- pmd-perl/pom.xml | 2 +- pmd-php/pom.xml | 2 +- pmd-plsql/pom.xml | 2 +- pmd-python/pom.xml | 2 +- pmd-ruby/pom.xml | 2 +- pmd-scala-modules/pmd-scala-common/pom.xml | 2 +- pmd-scala-modules/pmd-scala_2.12/pom.xml | 2 +- pmd-scala-modules/pmd-scala_2.13/pom.xml | 2 +- pmd-scala/pom.xml | 2 +- pmd-swift/pom.xml | 2 +- pmd-test/pom.xml | 2 +- pmd-visualforce/pom.xml | 2 +- pmd-vm/pom.xml | 2 +- pmd-xml/pom.xml | 2 +- pom.xml | 6 +++--- 37 files changed, 39 insertions(+), 39 deletions(-) diff --git a/pmd-apex-jorje/pom.xml b/pmd-apex-jorje/pom.xml index 9e27b3bd626..3666d840ce8 100644 --- a/pmd-apex-jorje/pom.xml +++ b/pmd-apex-jorje/pom.xml @@ -8,7 +8,7 @@ net.sourceforge.pmd pmd - 6.46.0 + 6.47.0-SNAPSHOT ../ diff --git a/pmd-apex/pom.xml b/pmd-apex/pom.xml index cd0fae75174..9eebf20f957 100644 --- a/pmd-apex/pom.xml +++ b/pmd-apex/pom.xml @@ -7,7 +7,7 @@ net.sourceforge.pmd pmd - 6.46.0 + 6.47.0-SNAPSHOT ../ diff --git a/pmd-core/pom.xml b/pmd-core/pom.xml index 3d043e107ca..09da20cebe3 100644 --- a/pmd-core/pom.xml +++ b/pmd-core/pom.xml @@ -7,7 +7,7 @@ net.sourceforge.pmd pmd - 6.46.0 + 6.47.0-SNAPSHOT ../ diff --git a/pmd-cpp/pom.xml b/pmd-cpp/pom.xml index 56c4b00115b..4a7287fcbf2 100644 --- a/pmd-cpp/pom.xml +++ b/pmd-cpp/pom.xml @@ -7,7 +7,7 @@ net.sourceforge.pmd pmd - 6.46.0 + 6.47.0-SNAPSHOT ../ diff --git a/pmd-cs/pom.xml b/pmd-cs/pom.xml index f58a96465cb..2de4e3d6b77 100644 --- a/pmd-cs/pom.xml +++ b/pmd-cs/pom.xml @@ -7,7 +7,7 @@ net.sourceforge.pmd pmd - 6.46.0 + 6.47.0-SNAPSHOT ../ diff --git a/pmd-dart/pom.xml b/pmd-dart/pom.xml index af8f453116c..35c30a87c34 100644 --- a/pmd-dart/pom.xml +++ b/pmd-dart/pom.xml @@ -7,7 +7,7 @@ net.sourceforge.pmd pmd - 6.46.0 + 6.47.0-SNAPSHOT ../ diff --git a/pmd-dist/pom.xml b/pmd-dist/pom.xml index dd53c4f671a..edaf2e9a895 100644 --- a/pmd-dist/pom.xml +++ b/pmd-dist/pom.xml @@ -8,7 +8,7 @@ net.sourceforge.pmd pmd - 6.46.0 + 6.47.0-SNAPSHOT ../ diff --git a/pmd-doc/pom.xml b/pmd-doc/pom.xml index fb7f1bcea7d..5721c1a6358 100644 --- a/pmd-doc/pom.xml +++ b/pmd-doc/pom.xml @@ -8,7 +8,7 @@ net.sourceforge.pmd pmd - 6.46.0 + 6.47.0-SNAPSHOT ../ diff --git a/pmd-fortran/pom.xml b/pmd-fortran/pom.xml index 23c851dbc9e..5e5c483a30d 100644 --- a/pmd-fortran/pom.xml +++ b/pmd-fortran/pom.xml @@ -7,7 +7,7 @@ net.sourceforge.pmd pmd - 6.46.0 + 6.47.0-SNAPSHOT ../ diff --git a/pmd-go/pom.xml b/pmd-go/pom.xml index ac43e2d1538..9ec6b424667 100644 --- a/pmd-go/pom.xml +++ b/pmd-go/pom.xml @@ -7,7 +7,7 @@ net.sourceforge.pmd pmd - 6.46.0 + 6.47.0-SNAPSHOT ../ diff --git a/pmd-groovy/pom.xml b/pmd-groovy/pom.xml index aa9722fd1fe..2ccd52164fe 100644 --- a/pmd-groovy/pom.xml +++ b/pmd-groovy/pom.xml @@ -7,7 +7,7 @@ net.sourceforge.pmd pmd - 6.46.0 + 6.47.0-SNAPSHOT ../ diff --git a/pmd-html/pom.xml b/pmd-html/pom.xml index 2acc11cbbcd..b77f7d296dc 100644 --- a/pmd-html/pom.xml +++ b/pmd-html/pom.xml @@ -7,7 +7,7 @@ net.sourceforge.pmd pmd - 6.46.0 + 6.47.0-SNAPSHOT ../ diff --git a/pmd-java/pom.xml b/pmd-java/pom.xml index 41a3b8257c1..ecb14302c20 100644 --- a/pmd-java/pom.xml +++ b/pmd-java/pom.xml @@ -7,7 +7,7 @@ net.sourceforge.pmd pmd - 6.46.0 + 6.47.0-SNAPSHOT ../ diff --git a/pmd-java8/pom.xml b/pmd-java8/pom.xml index 433e5ab38ed..c367c8064a6 100644 --- a/pmd-java8/pom.xml +++ b/pmd-java8/pom.xml @@ -7,7 +7,7 @@ net.sourceforge.pmd pmd - 6.46.0 + 6.47.0-SNAPSHOT ../ diff --git a/pmd-javascript/pom.xml b/pmd-javascript/pom.xml index 2e434a248eb..09725d447ef 100644 --- a/pmd-javascript/pom.xml +++ b/pmd-javascript/pom.xml @@ -7,7 +7,7 @@ net.sourceforge.pmd pmd - 6.46.0 + 6.47.0-SNAPSHOT ../ diff --git a/pmd-jsp/pom.xml b/pmd-jsp/pom.xml index 87162d00533..1fd17a18c20 100644 --- a/pmd-jsp/pom.xml +++ b/pmd-jsp/pom.xml @@ -7,7 +7,7 @@ net.sourceforge.pmd pmd - 6.46.0 + 6.47.0-SNAPSHOT ../ diff --git a/pmd-kotlin/pom.xml b/pmd-kotlin/pom.xml index 26cfd0df089..939c94f0e32 100644 --- a/pmd-kotlin/pom.xml +++ b/pmd-kotlin/pom.xml @@ -7,7 +7,7 @@ net.sourceforge.pmd pmd - 6.46.0 + 6.47.0-SNAPSHOT ../ diff --git a/pmd-lang-test/pom.xml b/pmd-lang-test/pom.xml index 1c73fb00007..ce1bc5067e2 100644 --- a/pmd-lang-test/pom.xml +++ b/pmd-lang-test/pom.xml @@ -12,7 +12,7 @@ net.sourceforge.pmd pmd - 6.46.0 + 6.47.0-SNAPSHOT ../ diff --git a/pmd-lua/pom.xml b/pmd-lua/pom.xml index 81b9d10c7c2..b7f3fbe7312 100644 --- a/pmd-lua/pom.xml +++ b/pmd-lua/pom.xml @@ -7,7 +7,7 @@ net.sourceforge.pmd pmd - 6.46.0 + 6.47.0-SNAPSHOT ../ diff --git a/pmd-matlab/pom.xml b/pmd-matlab/pom.xml index b15395cc556..0de710099a4 100644 --- a/pmd-matlab/pom.xml +++ b/pmd-matlab/pom.xml @@ -7,7 +7,7 @@ net.sourceforge.pmd pmd - 6.46.0 + 6.47.0-SNAPSHOT ../ diff --git a/pmd-modelica/pom.xml b/pmd-modelica/pom.xml index 7a9d14ec914..341803ec4ee 100644 --- a/pmd-modelica/pom.xml +++ b/pmd-modelica/pom.xml @@ -7,7 +7,7 @@ net.sourceforge.pmd pmd - 6.46.0 + 6.47.0-SNAPSHOT ../ diff --git a/pmd-objectivec/pom.xml b/pmd-objectivec/pom.xml index 049ebe87ad4..cedfce81268 100644 --- a/pmd-objectivec/pom.xml +++ b/pmd-objectivec/pom.xml @@ -7,7 +7,7 @@ net.sourceforge.pmd pmd - 6.46.0 + 6.47.0-SNAPSHOT ../ diff --git a/pmd-perl/pom.xml b/pmd-perl/pom.xml index 0a23d34200c..558fa427c8a 100644 --- a/pmd-perl/pom.xml +++ b/pmd-perl/pom.xml @@ -7,7 +7,7 @@ net.sourceforge.pmd pmd - 6.46.0 + 6.47.0-SNAPSHOT ../ diff --git a/pmd-php/pom.xml b/pmd-php/pom.xml index e92c5935027..782f8617038 100644 --- a/pmd-php/pom.xml +++ b/pmd-php/pom.xml @@ -7,7 +7,7 @@ net.sourceforge.pmd pmd - 6.46.0 + 6.47.0-SNAPSHOT ../ diff --git a/pmd-plsql/pom.xml b/pmd-plsql/pom.xml index 4faa75f0823..c0a17625555 100644 --- a/pmd-plsql/pom.xml +++ b/pmd-plsql/pom.xml @@ -7,7 +7,7 @@ net.sourceforge.pmd pmd - 6.46.0 + 6.47.0-SNAPSHOT ../ diff --git a/pmd-python/pom.xml b/pmd-python/pom.xml index c174dd766bd..11610248524 100644 --- a/pmd-python/pom.xml +++ b/pmd-python/pom.xml @@ -7,7 +7,7 @@ net.sourceforge.pmd pmd - 6.46.0 + 6.47.0-SNAPSHOT ../ diff --git a/pmd-ruby/pom.xml b/pmd-ruby/pom.xml index c5a210078be..5bc68ba9734 100644 --- a/pmd-ruby/pom.xml +++ b/pmd-ruby/pom.xml @@ -7,7 +7,7 @@ net.sourceforge.pmd pmd - 6.46.0 + 6.47.0-SNAPSHOT ../ diff --git a/pmd-scala-modules/pmd-scala-common/pom.xml b/pmd-scala-modules/pmd-scala-common/pom.xml index f2c8a9ed377..20ace8b9c83 100644 --- a/pmd-scala-modules/pmd-scala-common/pom.xml +++ b/pmd-scala-modules/pmd-scala-common/pom.xml @@ -8,7 +8,7 @@ net.sourceforge.pmd pmd - 6.46.0 + 6.47.0-SNAPSHOT ../.. diff --git a/pmd-scala-modules/pmd-scala_2.12/pom.xml b/pmd-scala-modules/pmd-scala_2.12/pom.xml index a39e6d9b029..47659900842 100644 --- a/pmd-scala-modules/pmd-scala_2.12/pom.xml +++ b/pmd-scala-modules/pmd-scala_2.12/pom.xml @@ -7,7 +7,7 @@ net.sourceforge.pmd pmd-scala-common - 6.46.0 + 6.47.0-SNAPSHOT ../pmd-scala-common diff --git a/pmd-scala-modules/pmd-scala_2.13/pom.xml b/pmd-scala-modules/pmd-scala_2.13/pom.xml index 5d83479747b..9b5c50f976b 100644 --- a/pmd-scala-modules/pmd-scala_2.13/pom.xml +++ b/pmd-scala-modules/pmd-scala_2.13/pom.xml @@ -7,7 +7,7 @@ net.sourceforge.pmd pmd-scala-common - 6.46.0 + 6.47.0-SNAPSHOT ../pmd-scala-common diff --git a/pmd-scala/pom.xml b/pmd-scala/pom.xml index c55882960b4..bc1c3e9ccd4 100644 --- a/pmd-scala/pom.xml +++ b/pmd-scala/pom.xml @@ -9,7 +9,7 @@ net.sourceforge.pmd pmd - 6.46.0 + 6.47.0-SNAPSHOT ../ diff --git a/pmd-swift/pom.xml b/pmd-swift/pom.xml index d4571d4db3a..10032db400e 100644 --- a/pmd-swift/pom.xml +++ b/pmd-swift/pom.xml @@ -7,7 +7,7 @@ net.sourceforge.pmd pmd - 6.46.0 + 6.47.0-SNAPSHOT ../ diff --git a/pmd-test/pom.xml b/pmd-test/pom.xml index 93c0c7b6e1f..b8757a44a04 100644 --- a/pmd-test/pom.xml +++ b/pmd-test/pom.xml @@ -8,7 +8,7 @@ net.sourceforge.pmd pmd - 6.46.0 + 6.47.0-SNAPSHOT ../ diff --git a/pmd-visualforce/pom.xml b/pmd-visualforce/pom.xml index 2b36937df57..4e2ef9d4ba4 100644 --- a/pmd-visualforce/pom.xml +++ b/pmd-visualforce/pom.xml @@ -7,7 +7,7 @@ net.sourceforge.pmd pmd - 6.46.0 + 6.47.0-SNAPSHOT ../ diff --git a/pmd-vm/pom.xml b/pmd-vm/pom.xml index 1089c1b2f1e..bfbb62269ff 100644 --- a/pmd-vm/pom.xml +++ b/pmd-vm/pom.xml @@ -7,7 +7,7 @@ net.sourceforge.pmd pmd - 6.46.0 + 6.47.0-SNAPSHOT ../ diff --git a/pmd-xml/pom.xml b/pmd-xml/pom.xml index 77f54c6b3b3..26c8a9faf8e 100644 --- a/pmd-xml/pom.xml +++ b/pmd-xml/pom.xml @@ -7,7 +7,7 @@ net.sourceforge.pmd pmd - 6.46.0 + 6.47.0-SNAPSHOT ../ diff --git a/pom.xml b/pom.xml index 59965856b7d..f354efbd916 100644 --- a/pom.xml +++ b/pom.xml @@ -3,7 +3,7 @@ 4.0.0 net.sourceforge.pmd pmd - 6.46.0 + 6.47.0-SNAPSHOT pom PMD @@ -55,7 +55,7 @@ scm:git:git://github.com/pmd/pmd.git scm:git:ssh://git@github.com/pmd/pmd.git https://github.com/pmd/pmd - pmd_releases/6.46.0 + HEAD @@ -76,7 +76,7 @@ - 2022-05-28T08:50:57Z + 2022-05-28T09:04:31Z 7 From c3f6be479b093c7dd2a3aa7debef6c25e9d1438c Mon Sep 17 00:00:00 2001 From: Andreas Dangel Date: Sat, 28 May 2022 11:05:56 +0200 Subject: [PATCH 04/50] Prepare next development version [skip ci] --- docs/_config.yml | 6 +- docs/pages/release_notes.md | 136 -------------------------- docs/pages/release_notes_old.md | 165 ++++++++++++++++++++++++++++++++ 3 files changed, 168 insertions(+), 139 deletions(-) diff --git a/docs/_config.yml b/docs/_config.yml index 150e6e2fd10..e642bcc8727 100644 --- a/docs/_config.yml +++ b/docs/_config.yml @@ -1,9 +1,9 @@ repository: pmd/pmd pmd: - version: 6.46.0 - previous_version: 6.45.0 - date: 28-May-2022 + version: 6.47.0-SNAPSHOT + previous_version: 6.46.0 + date: 25-June-2022 release_type: minor # release types: major, minor, bugfix diff --git a/docs/pages/release_notes.md b/docs/pages/release_notes.md index 561254d8a81..b8f8783555e 100644 --- a/docs/pages/release_notes.md +++ b/docs/pages/release_notes.md @@ -14,147 +14,11 @@ This is a {{ site.pmd.release_type }} release. ### New and noteworthy -#### CLI improvements - -The PMD CLI now allows repeating the `--dir` (`-d`) and `--rulesets` (`-R`) options, - as well as providing several space-separated arguments to either of them. For instance: -```shell -pmd -d src/main/java src/test/java -R rset1.xml -R rset2.xml -``` -This also allows globs to be used on the CLI if your shell supports shell expansion. -For instance, the above can be written -```shell -pmd -d src/*/java -R rset*.xml -``` -Please use theses new forms instead of using comma-separated lists as argument to these options. - -#### C# Improvements - -When executing CPD on C# sources, the option `--ignore-annotations` is now supported as well. -It ignores C# attributes when detecting duplicated code. This option can also be enabled via -the CPD GUI. See [#3974](https://github.com/pmd/pmd/pull/3974) for details. - -#### New Rules - -This release ships with 2 new Java rules. - -* {% rule java/codestyle/EmptyControlStatement %} reports many instances of empty things, e.g. control statements whose - body is empty, as well as empty initializers. - - EmptyControlStatement also works for empty `for` and `do` loops, while there were previously - no corresponding rules. - - This new rule replaces the rules EmptyFinallyBlock, EmptyIfStmt, EmptyInitializer, EmptyStatementBlock, - EmptySwitchStatements, EmptySynchronizedBlock, EmptyTryBlock, and EmptyWhileStmt. - -```xml - -``` - -The rule is part of the quickstart.xml ruleset. - -* {%rule java/codestyle/UnnecessarySemicolon %} reports semicolons that are unnecessary (so called "empty statements" - and "empty declarations"). - - This new rule replaces the rule EmptyStatementNotInLoop. - -```xml - -``` - -The rule is part of the quickstart.xml ruleset. - -#### Deprecated Rules - -* The following Java rules are deprecated and removed from the quickstart ruleset, as the new rule -{% rule java/codestyle/EmptyControlStatement %} merges their functionality: - * {% rule java/errorprone/EmptyFinallyBlock %} - * {% rule java/errorprone/EmptyIfStmt %} - * {% rule java/errorprone/EmptyInitializer %} - * {% rule java/errorprone/EmptyStatementBlock %} - * {% rule java/errorprone/EmptySwitchStatements %} - * {% rule java/errorprone/EmptySynchronizedBlock %} - * {% rule java/errorprone/EmptyTryBlock %} - * {% rule java/errorprone/EmptyWhileStmt %} -* The Java rule {% rule java/errorprone/EmptyStatementNotInLoop %} is deprecated and removed from the quickstart -ruleset. Use the new rule {% rule java/codestyle/UnnecessarySemicolon %} instead. - ### Fixed Issues -* cli - * [#1445](https://github.com/pmd/pmd/issues/1445): \[core] Allow CLI to take globs as parameters -* core - * [#2352](https://github.com/pmd/pmd/issues/2352): \[core] Deprecate \-\ hyphen notation for ruleset references - * [#3787](https://github.com/pmd/pmd/issues/3787): \[core] Internalize some methods in Ant Formatter - * [#3835](https://github.com/pmd/pmd/issues/3835): \[core] Deprecate system properties of CPDCommandLineInterface - * [#3942](https://github.com/pmd/pmd/issues/3942): \[core] common-io path traversal vulnerability (CVE-2021-29425) -* cs (c#) - * [#3974](https://github.com/pmd/pmd/pull/3974): \[cs] Add option to ignore C# attributes (annotations) -* go - * [#2752](https://github.com/pmd/pmd/issues/2752): \[go] Error parsing unicode values -* html - * [#3955](https://github.com/pmd/pmd/pull/3955): \[html] Improvements for handling text and comment nodes - * [#3978](https://github.com/pmd/pmd/pull/3978): \[html] Add additional file extensions htm, xhtml, xht, shtml -* java - * [#3423](https://github.com/pmd/pmd/issues/3423): \[java] Error processing identifiers with Unicode -* java-bestpractices - * [#3954](https://github.com/pmd/pmd/issues/3954): \[java] NPE in UseCollectionIsEmptyRule when .size() is called in a record -* java-design - * [#3874](https://github.com/pmd/pmd/issues/3874): \[java] ImmutableField reports fields annotated with @Autowired (Spring) and @Mock (Mockito) -* java-errorprone - * [#3096](https://github.com/pmd/pmd/issues/3096): \[java] EmptyStatementNotInLoop FP in 6.30.0 with IfStatement -* java-performance - * [#3379](https://github.com/pmd/pmd/issues/3379): \[java] UseArraysAsList must ignore primitive arrays - * [#3965](https://github.com/pmd/pmd/issues/3965): \[java] UseArraysAsList false positive with non-trivial loops -* javascript - * [#2605](https://github.com/pmd/pmd/issues/2605): \[js] Support unicode characters - * [#3948](https://github.com/pmd/pmd/issues/3948): \[js] Invalid operator error for method property in object literal -* python - * [#2604](https://github.com/pmd/pmd/issues/2604): \[python] Support unicode identifiers - ### API Changes -#### Deprecated ruleset references - -Ruleset references with the following formats are now deprecated and will produce a warning -when used on the CLI or in a ruleset XML file: -- `-`, eg `java-basic`, which resolves to `rulesets/java/basic.xml` -- the internal release number, eg `600`, which resolves to `rulesets/releases/600.xml` - -Use the explicit forms of these references to be compatible with PMD 7. - -#### Deprecated API - -- {% jdoc core::RuleSetReferenceId#toString() %} is now deprecated. The format of this - method will remain the same until PMD 7. The deprecation is intended to steer users - away from relying on this format, as it may be changed in PMD 7. -- {% jdoc core::PMDConfiguration#getInputPaths() %} and -{% jdoc core::PMDConfiguration#setInputPaths(java.lang.String) %} are now deprecated. -A new set of methods have been added, which use lists and do not rely on comma splitting. - -#### Internal API - -Those APIs are not intended to be used by clients, and will be hidden or removed with PMD 7.0.0. -You can identify them with the `@InternalApi` annotation. You'll also get a deprecation warning. - -- {% jdoc core::cpd.CPDCommandLineInterface %} has been internalized. In order to execute CPD either -{% jdoc !!core::cpd.CPD#run(java.lang.String...) %} or {% jdoc !!core::cpd.CPD#main(java.lang.String[]) %} -should be used. -- Several members of {% jdoc test::cli.BaseCPDCLITest %} have been deprecated with replacements. -- The methods {% jdoc !!core::ant.Formatter#start(java.lang.String) %}, -{% jdoc !!core::ant.Formatter#end(net.sourceforge.pmd.Report) %}, {% jdoc !!core::ant.Formatter#getRenderer() %}, -and {% jdoc !!core::ant.Formatter#isNoOutputSupplied() %} have been internalized. - ### External Contributions -* [#3961](https://github.com/pmd/pmd/pull/3961): \[java] Fix #3954 - NPE in UseCollectionIsEmptyRule with record - [@flyhard](https://github.com/flyhard) -* [#3964](https://github.com/pmd/pmd/pull/3964): \[java] Fix #3874 - ImmutableField: fix mockito/spring false positives - [@lukelukes](https://github.com/lukelukes) -* [#3974](https://github.com/pmd/pmd/pull/3974): \[cs] Add option to ignore C# attributes (annotations) - [@maikelsteneker](https://github.com/maikelsteneker) - -### Stats -* 92 commits -* 30 closed tickets & PRs -* Days since last release: 28 - {% endtocmaker %} diff --git a/docs/pages/release_notes_old.md b/docs/pages/release_notes_old.md index 1d546c49c1e..0dc2d9c9f1e 100644 --- a/docs/pages/release_notes_old.md +++ b/docs/pages/release_notes_old.md @@ -5,6 +5,171 @@ permalink: pmd_release_notes_old.html Previous versions of PMD can be downloaded here: https://github.com/pmd/pmd/releases +## 28-May-2022 - 6.46.0 + +The PMD team is pleased to announce PMD 6.46.0. + +This is a minor release. + +### Table Of Contents + +* [New and noteworthy](#new-and-noteworthy) + * [CLI improvements](#cli-improvements) + * [C# Improvements](#c#-improvements) + * [New Rules](#new-rules) + * [Deprecated Rules](#deprecated-rules) +* [Fixed Issues](#fixed-issues) +* [API Changes](#api-changes) + * [Deprecated ruleset references](#deprecated-ruleset-references) + * [Deprecated API](#deprecated-api) + * [Internal API](#internal-api) +* [External Contributions](#external-contributions) +* [Stats](#stats) + +### New and noteworthy + +#### CLI improvements + +The PMD CLI now allows repeating the `--dir` (`-d`) and `--rulesets` (`-R`) options, + as well as providing several space-separated arguments to either of them. For instance: +```shell +pmd -d src/main/java src/test/java -R rset1.xml -R rset2.xml +``` +This also allows globs to be used on the CLI if your shell supports shell expansion. +For instance, the above can be written +```shell +pmd -d src/*/java -R rset*.xml +``` +Please use theses new forms instead of using comma-separated lists as argument to these options. + +#### C# Improvements + +When executing CPD on C# sources, the option `--ignore-annotations` is now supported as well. +It ignores C# attributes when detecting duplicated code. This option can also be enabled via +the CPD GUI. See [#3974](https://github.com/pmd/pmd/pull/3974) for details. + +#### New Rules + +This release ships with 2 new Java rules. + +* [`EmptyControlStatement`](https://pmd.github.io/pmd-6.46.0/pmd_rules_java_codestyle.html#emptycontrolstatement) reports many instances of empty things, e.g. control statements whose + body is empty, as well as empty initializers. + + EmptyControlStatement also works for empty `for` and `do` loops, while there were previously + no corresponding rules. + + This new rule replaces the rules EmptyFinallyBlock, EmptyIfStmt, EmptyInitializer, EmptyStatementBlock, + EmptySwitchStatements, EmptySynchronizedBlock, EmptyTryBlock, and EmptyWhileStmt. + +```xml + +``` + +The rule is part of the quickstart.xml ruleset. + +* [`UnnecessarySemicolon`](https://pmd.github.io/pmd-6.46.0/pmd_rules_java_codestyle.html#unnecessarysemicolon) reports semicolons that are unnecessary (so called "empty statements" + and "empty declarations"). + + This new rule replaces the rule EmptyStatementNotInLoop. + +```xml + +``` + +The rule is part of the quickstart.xml ruleset. + +#### Deprecated Rules + +* The following Java rules are deprecated and removed from the quickstart ruleset, as the new rule +[`EmptyControlStatement`](https://pmd.github.io/pmd-6.46.0/pmd_rules_java_codestyle.html#emptycontrolstatement) merges their functionality: + * [`EmptyFinallyBlock`](https://pmd.github.io/pmd-6.46.0/pmd_rules_java_errorprone.html#emptyfinallyblock) + * [`EmptyIfStmt`](https://pmd.github.io/pmd-6.46.0/pmd_rules_java_errorprone.html#emptyifstmt) + * [`EmptyInitializer`](https://pmd.github.io/pmd-6.46.0/pmd_rules_java_errorprone.html#emptyinitializer) + * [`EmptyStatementBlock`](https://pmd.github.io/pmd-6.46.0/pmd_rules_java_errorprone.html#emptystatementblock) + * [`EmptySwitchStatements`](https://pmd.github.io/pmd-6.46.0/pmd_rules_java_errorprone.html#emptyswitchstatements) + * [`EmptySynchronizedBlock`](https://pmd.github.io/pmd-6.46.0/pmd_rules_java_errorprone.html#emptysynchronizedblock) + * [`EmptyTryBlock`](https://pmd.github.io/pmd-6.46.0/pmd_rules_java_errorprone.html#emptytryblock) + * [`EmptyWhileStmt`](https://pmd.github.io/pmd-6.46.0/pmd_rules_java_errorprone.html#emptywhilestmt) +* The Java rule [`EmptyStatementNotInLoop`](https://pmd.github.io/pmd-6.46.0/pmd_rules_java_errorprone.html#emptystatementnotinloop) is deprecated and removed from the quickstart +ruleset. Use the new rule [`UnnecessarySemicolon`](https://pmd.github.io/pmd-6.46.0/pmd_rules_java_codestyle.html#unnecessarysemicolon) instead. + +### Fixed Issues + +* cli + * [#1445](https://github.com/pmd/pmd/issues/1445): \[core] Allow CLI to take globs as parameters +* core + * [#2352](https://github.com/pmd/pmd/issues/2352): \[core] Deprecate \-\ hyphen notation for ruleset references + * [#3787](https://github.com/pmd/pmd/issues/3787): \[core] Internalize some methods in Ant Formatter + * [#3835](https://github.com/pmd/pmd/issues/3835): \[core] Deprecate system properties of CPDCommandLineInterface + * [#3942](https://github.com/pmd/pmd/issues/3942): \[core] common-io path traversal vulnerability (CVE-2021-29425) +* cs (c#) + * [#3974](https://github.com/pmd/pmd/pull/3974): \[cs] Add option to ignore C# attributes (annotations) +* go + * [#2752](https://github.com/pmd/pmd/issues/2752): \[go] Error parsing unicode values +* html + * [#3955](https://github.com/pmd/pmd/pull/3955): \[html] Improvements for handling text and comment nodes + * [#3978](https://github.com/pmd/pmd/pull/3978): \[html] Add additional file extensions htm, xhtml, xht, shtml +* java + * [#3423](https://github.com/pmd/pmd/issues/3423): \[java] Error processing identifiers with Unicode +* java-bestpractices + * [#3954](https://github.com/pmd/pmd/issues/3954): \[java] NPE in UseCollectionIsEmptyRule when .size() is called in a record +* java-design + * [#3874](https://github.com/pmd/pmd/issues/3874): \[java] ImmutableField reports fields annotated with @Autowired (Spring) and @Mock (Mockito) +* java-errorprone + * [#3096](https://github.com/pmd/pmd/issues/3096): \[java] EmptyStatementNotInLoop FP in 6.30.0 with IfStatement +* java-performance + * [#3379](https://github.com/pmd/pmd/issues/3379): \[java] UseArraysAsList must ignore primitive arrays + * [#3965](https://github.com/pmd/pmd/issues/3965): \[java] UseArraysAsList false positive with non-trivial loops +* javascript + * [#2605](https://github.com/pmd/pmd/issues/2605): \[js] Support unicode characters + * [#3948](https://github.com/pmd/pmd/issues/3948): \[js] Invalid operator error for method property in object literal +* python + * [#2604](https://github.com/pmd/pmd/issues/2604): \[python] Support unicode identifiers + +### API Changes + +#### Deprecated ruleset references + +Ruleset references with the following formats are now deprecated and will produce a warning +when used on the CLI or in a ruleset XML file: +- `-`, eg `java-basic`, which resolves to `rulesets/java/basic.xml` +- the internal release number, eg `600`, which resolves to `rulesets/releases/600.xml` + +Use the explicit forms of these references to be compatible with PMD 7. + +#### Deprecated API + +- toString is now deprecated. The format of this + method will remain the same until PMD 7. The deprecation is intended to steer users + away from relying on this format, as it may be changed in PMD 7. +- getInputPaths and +setInputPaths are now deprecated. +A new set of methods have been added, which use lists and do not rely on comma splitting. + +#### Internal API + +Those APIs are not intended to be used by clients, and will be hidden or removed with PMD 7.0.0. +You can identify them with the `@InternalApi` annotation. You'll also get a deprecation warning. + +- CPDCommandLineInterface has been internalized. In order to execute CPD either +CPD#run or CPD#main +should be used. +- Several members of BaseCPDCLITest have been deprecated with replacements. +- The methods Formatter#start, +Formatter#end, Formatter#getRenderer, +and Formatter#isNoOutputSupplied have been internalized. + +### External Contributions + +* [#3961](https://github.com/pmd/pmd/pull/3961): \[java] Fix #3954 - NPE in UseCollectionIsEmptyRule with record - [@flyhard](https://github.com/flyhard) +* [#3964](https://github.com/pmd/pmd/pull/3964): \[java] Fix #3874 - ImmutableField: fix mockito/spring false positives - [@lukelukes](https://github.com/lukelukes) +* [#3974](https://github.com/pmd/pmd/pull/3974): \[cs] Add option to ignore C# attributes (annotations) - [@maikelsteneker](https://github.com/maikelsteneker) + +### Stats +* 92 commits +* 30 closed tickets & PRs +* Days since last release: 28 + ## 30-April-2022 - 6.45.0 The PMD team is pleased to announce PMD 6.45.0. From 44e7aec80fafe9b453b10c32ae99f11b9169c6d0 Mon Sep 17 00:00:00 2001 From: Andreas Dangel Date: Sat, 28 May 2022 11:42:52 +0200 Subject: [PATCH 05/50] Bump pmd from 6.45.0 to 6.46.0 --- pom.xml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/pom.xml b/pom.xml index f354efbd916..19569b64545 100644 --- a/pom.xml +++ b/pom.xml @@ -406,22 +406,22 @@ net.sourceforge.pmd pmd-core - 6.45.0 + 6.46.0 net.sourceforge.pmd pmd-java - 6.45.0 + 6.46.0 net.sourceforge.pmd pmd-jsp - 6.45.0 + 6.46.0 net.sourceforge.pmd pmd-javascript - 6.45.0 + 6.46.0 From 459c23a8b638d9fcab9efe31a33dca229f96eab6 Mon Sep 17 00:00:00 2001 From: Andreas Dangel Date: Sat, 28 May 2022 11:56:10 +0200 Subject: [PATCH 06/50] Bump build-tools from 17-SNAPSHOT to 18 --- .github/workflows/build.yml | 2 +- .github/workflows/git-repo-sync.yml | 2 +- .github/workflows/troubleshooting.yml | 2 +- pom.xml | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 6dadb3e2d8a..1f64ba25cbc 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -45,7 +45,7 @@ jobs: run: | echo "LANG=en_US.UTF-8" >> $GITHUB_ENV echo "MAVEN_OPTS=-Dmaven.wagon.httpconnectionManager.ttlSeconds=180 -Dmaven.wagon.http.retryHandler.count=3 -DautoReleaseAfterClose=true -DstagingProgressTimeoutMinutes=30" >> $GITHUB_ENV - echo "PMD_CI_SCRIPTS_URL=https://raw.githubusercontent.com/pmd/build-tools/17/scripts" >> $GITHUB_ENV + echo "PMD_CI_SCRIPTS_URL=https://raw.githubusercontent.com/pmd/build-tools/18/scripts" >> $GITHUB_ENV - name: Check Environment shell: bash run: | diff --git a/.github/workflows/git-repo-sync.yml b/.github/workflows/git-repo-sync.yml index 657e82e4848..3cfb2e23e9f 100644 --- a/.github/workflows/git-repo-sync.yml +++ b/.github/workflows/git-repo-sync.yml @@ -21,7 +21,7 @@ jobs: shell: bash run: | echo "LANG=en_US.UTF-8" >> $GITHUB_ENV - echo "PMD_CI_SCRIPTS_URL=https://raw.githubusercontent.com/pmd/build-tools/17/scripts" >> $GITHUB_ENV + echo "PMD_CI_SCRIPTS_URL=https://raw.githubusercontent.com/pmd/build-tools/18/scripts" >> $GITHUB_ENV - name: Sync run: .ci/git-repo-sync.sh shell: bash diff --git a/.github/workflows/troubleshooting.yml b/.github/workflows/troubleshooting.yml index 04ac1cd39c8..ea4bd54fd98 100644 --- a/.github/workflows/troubleshooting.yml +++ b/.github/workflows/troubleshooting.yml @@ -36,7 +36,7 @@ jobs: run: | echo "LANG=en_US.UTF-8" >> $GITHUB_ENV echo "MAVEN_OPTS=-Dmaven.wagon.httpconnectionManager.ttlSeconds=180 -Dmaven.wagon.http.retryHandler.count=3 -DstagingProgressTimeoutMinutes=30" >> $GITHUB_ENV - echo "PMD_CI_SCRIPTS_URL=https://raw.githubusercontent.com/pmd/build-tools/17/scripts" >> $GITHUB_ENV + echo "PMD_CI_SCRIPTS_URL=https://raw.githubusercontent.com/pmd/build-tools/18/scripts" >> $GITHUB_ENV - name: Check Environment shell: bash run: | diff --git a/pom.xml b/pom.xml index 19569b64545..c5119da86ee 100644 --- a/pom.xml +++ b/pom.xml @@ -105,7 +105,7 @@ -Xmx512m -Dfile.encoding=${project.build.sourceEncoding} - 18-SNAPSHOT + 18 6.37.0 From 6111951e6cdfd447fb8889c4fd6534c8e31fdab4 Mon Sep 17 00:00:00 2001 From: dalizi007 <11912017@mail.sustech.edu.cn> Date: Sat, 28 May 2022 23:55:47 +0800 Subject: [PATCH 07/50] [java] Add the method "buz" definition #3937 --- .../java/rule/errorprone/xml/AvoidDuplicateLiterals.xml | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/pmd-java/src/test/resources/net/sourceforge/pmd/lang/java/rule/errorprone/xml/AvoidDuplicateLiterals.xml b/pmd-java/src/test/resources/net/sourceforge/pmd/lang/java/rule/errorprone/xml/AvoidDuplicateLiterals.xml index e86665b8471..619eb56c840 100644 --- a/pmd-java/src/test/resources/net/sourceforge/pmd/lang/java/rule/errorprone/xml/AvoidDuplicateLiterals.xml +++ b/pmd-java/src/test/resources/net/sourceforge/pmd/lang/java/rule/errorprone/xml/AvoidDuplicateLiterals.xml @@ -15,6 +15,7 @@ public class Foo { buz("Howdy"); buz("Howdy"); } + private void buz(String x) {} } ]]> @@ -27,6 +28,7 @@ public class Foo { private void bar() { buz(2); } + private void buz(int x) {} } ]]> @@ -86,6 +88,7 @@ public class Foo { buz("Howdy"); buz("Howdy"); } + private void buz(String x) {} } ]]> @@ -100,6 +103,7 @@ public class Foo { buz("Howdy"); buz("Howdy"); buz("Howdy"); buz("Howdy"); buz("foo"); buz("foo"); buz("foo"); buz("foo"); } + private void buz(String x) {} } ]]> @@ -115,6 +119,7 @@ public class Foo { buz("Howdy"); buz("Howdy"); buz("Howdy"); buz("Howdy"); buz("foo"); buz("foo"); buz("foo"); buz("foo"); } + private void buz(String x) {} } ]]> @@ -128,6 +133,7 @@ public class Foo { private void bar() { buz("Howdy"); buz("Howdy"); buz("Howdy"); buz("Howdy"); } + private void buz(String x) {} } ]]> @@ -141,6 +147,7 @@ public class Foo { private void bar() { buz("foo"); buz("foo"); buz("foo"); buz("foo"); } + private void buz(String x) {} } ]]> @@ -154,6 +161,7 @@ public class Foo { buz("foo"); buz("foo"); buz("foo"); buz("foo"); buz("fo"); buz("fo"); buz("fo"); buz("fo"); } + private void buz(String x) {} } ]]> From 25e59bc2eedced36081c3beef321d308440d4396 Mon Sep 17 00:00:00 2001 From: Andreas Dangel Date: Thu, 2 Jun 2022 11:35:19 +0200 Subject: [PATCH 08/50] [doc] Update release notes (#3937, #3993) --- docs/pages/release_notes.md | 3 +++ 1 file changed, 3 insertions(+) diff --git a/docs/pages/release_notes.md b/docs/pages/release_notes.md index b8f8783555e..1eb0bab3e30 100644 --- a/docs/pages/release_notes.md +++ b/docs/pages/release_notes.md @@ -15,10 +15,13 @@ This is a {{ site.pmd.release_type }} release. ### New and noteworthy ### Fixed Issues +* java-errorprone + * [#3937](https://github.com/pmd/pmd/issues/3937): \[java] AvoidDuplicateLiterals - uncompilable test cases ### API Changes ### External Contributions +* [#3993](https://github.com/pmd/pmd/pull/3993): \[java] AvoidDuplicateLiterals - Add the method "buz" definition to test cases - [@dalizi007](https://github.com/dalizi007) {% endtocmaker %} From 74c9ebb15afe015ec4d610a9dac21eab4a60b3bd Mon Sep 17 00:00:00 2001 From: Andreas Dangel Date: Thu, 2 Jun 2022 11:35:42 +0200 Subject: [PATCH 09/50] Add @dalizi007 as a contributor --- .all-contributorsrc | 9 ++++++ docs/pages/pmd/projectdocs/credits.md | 41 ++++++++++++++------------- 2 files changed, 30 insertions(+), 20 deletions(-) diff --git a/.all-contributorsrc b/.all-contributorsrc index 85095b18fe4..5357d8fad6c 100644 --- a/.all-contributorsrc +++ b/.all-contributorsrc @@ -6684,6 +6684,15 @@ "contributions": [ "bug" ] + }, + { + "login": "dalizi007", + "name": "dalizi007", + "avatar_url": "https://avatars.githubusercontent.com/u/90743616?v=4", + "profile": "https://github.com/dalizi007", + "contributions": [ + "code" + ] } ], "contributorsPerLine": 7, diff --git a/docs/pages/pmd/projectdocs/credits.md b/docs/pages/pmd/projectdocs/credits.md index 48913f3d001..c01402c827e 100644 --- a/docs/pages/pmd/projectdocs/credits.md +++ b/docs/pages/pmd/projectdocs/credits.md @@ -770,186 +770,187 @@ Thanks goes to these wonderful people ([emoji key](https://allcontributors.org/d
d1ss0nanz

🐛 +
dalizi007

💻
danbrycefairsailcom

🐛
dariansanity

🐛
darrenmiliband

🐛
davidburstrom

🐛
dbirkman-paloalto

🐛
deepak-patra

🐛 -
dependabot[bot]

💻 🐛 +
dependabot[bot]

💻 🐛
dinesh150

🐛
diziaq

🐛
dreaminpast123

🐛
duanyanan

🐛
dutt-sanjay

🐛
dylanleung

🐛 -
dzeigler

🐛 +
dzeigler

🐛
ekkirala

🐛
emersonmoura

🐛
fairy

🐛
filiprafalowicz

💻
foxmason

🐛
frankegabor

🐛 -
frankl

🐛 +
frankl

🐛
freafrea

🐛
fsapatin

🐛
gracia19

🐛
guo fei

🐛
gurmsc5

🐛
gwilymatgearset

💻 🐛 -
haigsn

🐛 +
haigsn

🐛
hemanshu070

🐛
henrik242

🐛
hongpuwu

🐛
hvbtup

💻 🐛
igniti GmbH

🐛
ilovezfs

🐛 -
itaigilo

🐛 +
itaigilo

🐛
jakivey32

🐛
jbennett2091

🐛
jcamerin

🐛
jkeener1

🐛
jmetertea

🐛
johnra2

💻 -
josemanuelrolon

💻 🐛 +
josemanuelrolon

💻 🐛
kabroxiko

💻 🐛
karwer

🐛
kaulonline

🐛
kdaemonv

🐛
kenji21

💻 🐛
kfranic

🐛 -
khalidkh

🐛 +
khalidkh

🐛
krzyk

🐛
lasselindqvist

🐛
lihuaib

🐛
lonelyma1021

🐛
lpeddy

🐛
lujiefsi

💻 -
lukelukes

💻 +
lukelukes

💻
lyriccoder

🐛
marcelmore

🐛
matchbox

🐛
matthiaskraaz

🐛
meandonlyme

🐛
mikesive

🐛 -
milossesic

🐛 +
milossesic

🐛
mriddell95

🐛
mrlzh

🐛
msloan

🐛
mucharlaravalika

🐛
mvenneman

🐛
nareshl119

🐛 -
nicolas-harraudeau-sonarsource

🐛 +
nicolas-harraudeau-sonarsource

🐛
noerremark

🐛
novsirion

🐛
oggboy

🐛
oinume

🐛
orimarko

💻 🐛
pallavi agarwal

🐛 -
parksungrin

🐛 +
parksungrin

🐛
patpatpat123

🐛
patriksevallius

🐛
pbrajesh1

🐛
phoenix384

🐛
piotrszymanski-sc

💻
plan3d

🐛 -
poojasix

🐛 +
poojasix

🐛
prabhushrikant

🐛
pujitha8783

🐛
r-r-a-j

🐛
raghujayjunk

🐛
rajeshveera

🐛
rajeswarreddy88

🐛 -
recdevs

🐛 +
recdevs

🐛
reudismam

💻 🐛
rijkt

🐛
rillig-tk

🐛
rmohan20

💻 🐛
rxmicro

🐛
ryan-gustafson

💻 🐛 -
sabi0

🐛 +
sabi0

🐛
scais

🐛
sebbASF

🐛
sergeygorbaty

💻
shilko2013

🐛
simeonKondr

🐛
snajberk

🐛 -
sniperrifle2004

🐛 +
sniperrifle2004

🐛
snuyanzin

🐛 💻
sratz

🐛
stonio

🐛
sturton

💻 🐛
sudharmohan

🐛
suruchidawar

🐛 -
svenfinitiv

🐛 +
svenfinitiv

🐛
tashiscool

🐛
test-git-hook

🐛
testation21

💻 🐛
thanosa

🐛
tiandiyixian

🐛
tobwoerk

🐛 -
tprouvot

🐛 +
tprouvot

🐛
trentchilders

🐛
triandicAnt

🐛
trishul14

🐛
tsui

🐛
winhkey

🐛
witherspore

🐛 -
wjljack

🐛 +
wjljack

🐛
wuchiuwong

🐛
xingsong

🐛
xioayuge

🐛
xnYi9wRezm

💻 🐛
xuanuy

🐛
xyf0921

🐛 -
yalechen-cyw3

🐛 +
yalechen-cyw3

🐛
yasuharu-sato

🐛
zenglian

🐛
zgrzyt93

💻 🐛
zh3ng

🐛
zt_soft

🐛
ztt79

🐛 -
zzzzfeng

🐛 +
zzzzfeng

🐛
Árpád Magosányi

🐛
任贵杰

🐛 From 051951e852f4f7753ffc51f0f3cc005b0ba9a2da Mon Sep 17 00:00:00 2001 From: Scrsloota <1912125562@qq.com> Date: Thu, 2 Jun 2022 23:43:31 +0800 Subject: [PATCH 10/50] change to avoid instanceof checks --- .../AvoidFieldNameMatchingMethodNameRule.java | 52 ++++++++++--------- .../xml/AvoidFieldNameMatchingMethodName.xml | 6 +-- 2 files changed, 30 insertions(+), 28 deletions(-) diff --git a/pmd-java/src/main/java/net/sourceforge/pmd/lang/java/rule/errorprone/AvoidFieldNameMatchingMethodNameRule.java b/pmd-java/src/main/java/net/sourceforge/pmd/lang/java/rule/errorprone/AvoidFieldNameMatchingMethodNameRule.java index 9fd52b984ac..5e5dd5de178 100644 --- a/pmd-java/src/main/java/net/sourceforge/pmd/lang/java/rule/errorprone/AvoidFieldNameMatchingMethodNameRule.java +++ b/pmd-java/src/main/java/net/sourceforge/pmd/lang/java/rule/errorprone/AvoidFieldNameMatchingMethodNameRule.java @@ -14,7 +14,6 @@ import net.sourceforge.pmd.lang.java.ast.ASTClassOrInterfaceBody; import net.sourceforge.pmd.lang.java.ast.ASTClassOrInterfaceDeclaration; import net.sourceforge.pmd.lang.java.ast.ASTEnumBody; -import net.sourceforge.pmd.lang.java.ast.ASTEnumDeclaration; import net.sourceforge.pmd.lang.java.ast.ASTFieldDeclaration; import net.sourceforge.pmd.lang.java.ast.ASTMethodDeclaration; import net.sourceforge.pmd.lang.java.ast.JavaNode; @@ -31,36 +30,39 @@ public Object visit(ASTClassOrInterfaceDeclaration node, Object data) { } @Override - public Object visit(ASTEnumDeclaration node, Object data) { + public Object visit(ASTClassOrInterfaceBody node, Object data) { + handleClassOrEnum(node, data); return super.visit(node, data); } @Override - public Object visit(JavaNode node, Object data) { - if (node instanceof ASTClassOrInterfaceBody || node instanceof ASTEnumBody) { - int n = node.getNumChildren(); - List fields = new ArrayList<>(); - Set methodNames = new HashSet<>(); - for (int i = 0; i < n; i++) { - Node child = node.getChild(i); - if (child.getNumChildren() == 0) { - continue; - } - child = child.getChild(child.getNumChildren() - 1); - if (child instanceof ASTFieldDeclaration) { - fields.add((ASTFieldDeclaration) child); - } else if (child instanceof ASTMethodDeclaration) { - methodNames.add(((ASTMethodDeclaration) child).getName().toLowerCase(Locale.ROOT)); - } + public Object visit(ASTEnumBody node, Object data) { + handleClassOrEnum(node, data); + return super.visit(node, data); + } + + private void handleClassOrEnum(JavaNode node, Object data) { + int n = node.getNumChildren(); + List fields = new ArrayList<>(); + Set methodNames = new HashSet<>(); + for (int i = 0; i < n; i++) { + Node child = node.getChild(i); + if (child.getNumChildren() == 0) { + continue; } - for (ASTFieldDeclaration field : fields) { - String varName = field.getVariableName().toLowerCase(Locale.ROOT); - if (methodNames.contains(varName)) { - addViolation(data, field, field.getVariableName()); - } + child = child.getChild(child.getNumChildren() - 1); + if (child instanceof ASTFieldDeclaration) { + fields.add((ASTFieldDeclaration) child); + } else if (child instanceof ASTMethodDeclaration) { + methodNames.add(((ASTMethodDeclaration) child).getName().toLowerCase(Locale.ROOT)); + } + } + for (ASTFieldDeclaration field : fields) { + String varName = field.getVariableName().toLowerCase(Locale.ROOT); + if (methodNames.contains(varName)) { + addViolation(data, field, field.getVariableName()); } - return super.visit(node, data); } - return super.visit(node, data); } + } diff --git a/pmd-java/src/test/resources/net/sourceforge/pmd/lang/java/rule/errorprone/xml/AvoidFieldNameMatchingMethodName.xml b/pmd-java/src/test/resources/net/sourceforge/pmd/lang/java/rule/errorprone/xml/AvoidFieldNameMatchingMethodName.xml index ad0170102ab..4cab17b54a4 100644 --- a/pmd-java/src/test/resources/net/sourceforge/pmd/lang/java/rule/errorprone/xml/AvoidFieldNameMatchingMethodName.xml +++ b/pmd-java/src/test/resources/net/sourceforge/pmd/lang/java/rule/errorprone/xml/AvoidFieldNameMatchingMethodName.xml @@ -65,7 +65,7 @@ public interface Bar { - Test1 in Enum + Test1 in Enum #3936 1 - Test2 in Enum + Test2 in Enum #3936 0 - Test3 in Enum + Test3 in Enum #3936 0 Date: Sat, 4 Jun 2022 10:27:57 +0200 Subject: [PATCH 11/50] [core] Fix cli when only --file-list is used Fixes #3999 --- docs/pages/release_notes.md | 2 ++ .../java/net/sourceforge/pmd/cli/PMDParameters.java | 2 +- .../pmd/cli/PMDCommandLineInterfaceTest.java | 13 +++++++++++++ 3 files changed, 16 insertions(+), 1 deletion(-) diff --git a/docs/pages/release_notes.md b/docs/pages/release_notes.md index 1eb0bab3e30..4ba7666866e 100644 --- a/docs/pages/release_notes.md +++ b/docs/pages/release_notes.md @@ -15,6 +15,8 @@ This is a {{ site.pmd.release_type }} release. ### New and noteworthy ### Fixed Issues +* core + * [#3999](https://github.com/pmd/pmd/issues/3999): \[cli] All files are analyzed despite parameter `--file-list` * java-errorprone * [#3937](https://github.com/pmd/pmd/issues/3937): \[java] AvoidDuplicateLiterals - uncompilable test cases diff --git a/pmd-core/src/main/java/net/sourceforge/pmd/cli/PMDParameters.java b/pmd-core/src/main/java/net/sourceforge/pmd/cli/PMDParameters.java index 18c1da8a28a..6b1888db545 100644 --- a/pmd-core/src/main/java/net/sourceforge/pmd/cli/PMDParameters.java +++ b/pmd-core/src/main/java/net/sourceforge/pmd/cli/PMDParameters.java @@ -224,7 +224,7 @@ public RulePriority convert(String value) { */ public PMDConfiguration toConfiguration() { PMDConfiguration configuration = new PMDConfiguration(); - configuration.setInputPaths(this.getSourceDir()); + configuration.setInputPaths(this.getInputPaths()); configuration.setInputFilePath(this.getFileListPath()); configuration.setIgnoreFilePath(this.getIgnoreListPath()); configuration.setInputUri(this.getUri()); diff --git a/pmd-core/src/test/java/net/sourceforge/pmd/cli/PMDCommandLineInterfaceTest.java b/pmd-core/src/test/java/net/sourceforge/pmd/cli/PMDCommandLineInterfaceTest.java index 59237173958..897884da7a9 100644 --- a/pmd-core/src/test/java/net/sourceforge/pmd/cli/PMDCommandLineInterfaceTest.java +++ b/pmd-core/src/test/java/net/sourceforge/pmd/cli/PMDCommandLineInterfaceTest.java @@ -4,6 +4,8 @@ package net.sourceforge.pmd.cli; +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertNull; import static org.junit.Assert.assertTrue; import org.junit.Assert; @@ -100,4 +102,15 @@ public void testBuildUsageText() { Assert.assertNotNull(PMDCommandLineInterface.buildUsageText()); } + @Test + public void testOnlyFileListOption() { + PMDParameters params = new PMDParameters(); + String[] args = {"--file-list", "pmd.filelist", "-f", "text", "-R", "rulesets/java/quickstart.xml", "--no-cache", }; + PMDCommandLineInterface.extractParameters(params, args, "PMD"); + + PMDConfiguration config = params.toConfiguration(); + assertEquals("pmd.filelist", config.getInputFilePath()); + assertTrue(config.getAllInputPaths().isEmpty()); // no additional input paths + assertNull(config.getInputPaths()); + } } From 066b510eef1b5c650fdcd4b4056d11430d52daba Mon Sep 17 00:00:00 2001 From: Andreas Dangel Date: Sat, 4 Jun 2022 11:00:30 +0200 Subject: [PATCH 12/50] chore: Fix project.parent.relativePath in pom.xml It must point to a file, pointing to a directory is not valid. --- pmd-apex-jorje/pom.xml | 2 +- pmd-apex/pom.xml | 2 +- pmd-core/pom.xml | 2 +- pmd-cpp/pom.xml | 2 +- pmd-cs/pom.xml | 2 +- pmd-dart/pom.xml | 2 +- pmd-dist/pom.xml | 2 +- pmd-doc/pom.xml | 2 +- pmd-fortran/pom.xml | 2 +- pmd-go/pom.xml | 2 +- pmd-groovy/pom.xml | 2 +- pmd-html/pom.xml | 2 +- pmd-java/pom.xml | 2 +- pmd-java8/pom.xml | 2 +- pmd-javascript/pom.xml | 2 +- pmd-jsp/pom.xml | 2 +- pmd-kotlin/pom.xml | 2 +- pmd-lang-test/pom.xml | 2 +- pmd-lua/pom.xml | 2 +- pmd-matlab/pom.xml | 2 +- pmd-modelica/pom.xml | 2 +- pmd-objectivec/pom.xml | 2 +- pmd-perl/pom.xml | 2 +- pmd-php/pom.xml | 2 +- pmd-plsql/pom.xml | 2 +- pmd-python/pom.xml | 2 +- pmd-ruby/pom.xml | 2 +- pmd-scala-modules/pmd-scala-common/pom.xml | 2 +- pmd-scala-modules/pmd-scala_2.12/pom.xml | 2 +- pmd-scala-modules/pmd-scala_2.13/pom.xml | 2 +- pmd-scala/pom.xml | 2 +- pmd-swift/pom.xml | 2 +- pmd-test/pom.xml | 2 +- pmd-visualforce/pom.xml | 2 +- pmd-vm/pom.xml | 2 +- pmd-xml/pom.xml | 2 +- 36 files changed, 36 insertions(+), 36 deletions(-) diff --git a/pmd-apex-jorje/pom.xml b/pmd-apex-jorje/pom.xml index 3666d840ce8..b5a177525fc 100644 --- a/pmd-apex-jorje/pom.xml +++ b/pmd-apex-jorje/pom.xml @@ -9,7 +9,7 @@ net.sourceforge.pmd pmd 6.47.0-SNAPSHOT - ../ + ../pom.xml diff --git a/pmd-apex/pom.xml b/pmd-apex/pom.xml index 9eebf20f957..9cbd113a4ee 100644 --- a/pmd-apex/pom.xml +++ b/pmd-apex/pom.xml @@ -8,7 +8,7 @@ net.sourceforge.pmd pmd 6.47.0-SNAPSHOT - ../ + ../pom.xml diff --git a/pmd-core/pom.xml b/pmd-core/pom.xml index 09da20cebe3..f86c7c1c498 100644 --- a/pmd-core/pom.xml +++ b/pmd-core/pom.xml @@ -8,7 +8,7 @@ net.sourceforge.pmd pmd 6.47.0-SNAPSHOT - ../ + ../pom.xml diff --git a/pmd-cpp/pom.xml b/pmd-cpp/pom.xml index 4a7287fcbf2..36487444eb5 100644 --- a/pmd-cpp/pom.xml +++ b/pmd-cpp/pom.xml @@ -8,7 +8,7 @@ net.sourceforge.pmd pmd 6.47.0-SNAPSHOT - ../ + ../pom.xml diff --git a/pmd-cs/pom.xml b/pmd-cs/pom.xml index 2de4e3d6b77..96e8cb895ad 100644 --- a/pmd-cs/pom.xml +++ b/pmd-cs/pom.xml @@ -8,7 +8,7 @@ net.sourceforge.pmd pmd 6.47.0-SNAPSHOT - ../ + ../pom.xml diff --git a/pmd-dart/pom.xml b/pmd-dart/pom.xml index 35c30a87c34..f1196e2faad 100644 --- a/pmd-dart/pom.xml +++ b/pmd-dart/pom.xml @@ -8,7 +8,7 @@ net.sourceforge.pmd pmd 6.47.0-SNAPSHOT - ../ + ../pom.xml diff --git a/pmd-dist/pom.xml b/pmd-dist/pom.xml index edaf2e9a895..1181aecfaf1 100644 --- a/pmd-dist/pom.xml +++ b/pmd-dist/pom.xml @@ -9,7 +9,7 @@ net.sourceforge.pmd pmd 6.47.0-SNAPSHOT - ../ + ../pom.xml diff --git a/pmd-doc/pom.xml b/pmd-doc/pom.xml index 5721c1a6358..684f809c628 100644 --- a/pmd-doc/pom.xml +++ b/pmd-doc/pom.xml @@ -9,7 +9,7 @@ net.sourceforge.pmd pmd 6.47.0-SNAPSHOT - ../ + ../pom.xml diff --git a/pmd-fortran/pom.xml b/pmd-fortran/pom.xml index 5e5c483a30d..4a31b11c065 100644 --- a/pmd-fortran/pom.xml +++ b/pmd-fortran/pom.xml @@ -8,7 +8,7 @@ net.sourceforge.pmd pmd 6.47.0-SNAPSHOT - ../ + ../pom.xml diff --git a/pmd-go/pom.xml b/pmd-go/pom.xml index 9ec6b424667..9389feafff6 100644 --- a/pmd-go/pom.xml +++ b/pmd-go/pom.xml @@ -8,7 +8,7 @@ net.sourceforge.pmd pmd 6.47.0-SNAPSHOT - ../ + ../pom.xml diff --git a/pmd-groovy/pom.xml b/pmd-groovy/pom.xml index 2ccd52164fe..4608e3662f2 100644 --- a/pmd-groovy/pom.xml +++ b/pmd-groovy/pom.xml @@ -8,7 +8,7 @@ net.sourceforge.pmd pmd 6.47.0-SNAPSHOT - ../ + ../pom.xml diff --git a/pmd-html/pom.xml b/pmd-html/pom.xml index b77f7d296dc..f536a558ee8 100644 --- a/pmd-html/pom.xml +++ b/pmd-html/pom.xml @@ -8,7 +8,7 @@ net.sourceforge.pmd pmd 6.47.0-SNAPSHOT - ../ + ../pom.xml diff --git a/pmd-java/pom.xml b/pmd-java/pom.xml index ecb14302c20..c94e568db08 100644 --- a/pmd-java/pom.xml +++ b/pmd-java/pom.xml @@ -8,7 +8,7 @@ net.sourceforge.pmd pmd 6.47.0-SNAPSHOT - ../ + ../pom.xml diff --git a/pmd-java8/pom.xml b/pmd-java8/pom.xml index c367c8064a6..7f75518ed4e 100644 --- a/pmd-java8/pom.xml +++ b/pmd-java8/pom.xml @@ -8,7 +8,7 @@ net.sourceforge.pmd pmd 6.47.0-SNAPSHOT - ../ + ../pom.xml diff --git a/pmd-javascript/pom.xml b/pmd-javascript/pom.xml index 09725d447ef..0d2edc5e3a8 100644 --- a/pmd-javascript/pom.xml +++ b/pmd-javascript/pom.xml @@ -8,7 +8,7 @@ net.sourceforge.pmd pmd 6.47.0-SNAPSHOT - ../ + ../pom.xml diff --git a/pmd-jsp/pom.xml b/pmd-jsp/pom.xml index 1fd17a18c20..79342c8ff17 100644 --- a/pmd-jsp/pom.xml +++ b/pmd-jsp/pom.xml @@ -8,7 +8,7 @@ net.sourceforge.pmd pmd 6.47.0-SNAPSHOT - ../ + ../pom.xml diff --git a/pmd-kotlin/pom.xml b/pmd-kotlin/pom.xml index 939c94f0e32..6234df66e74 100644 --- a/pmd-kotlin/pom.xml +++ b/pmd-kotlin/pom.xml @@ -8,7 +8,7 @@ net.sourceforge.pmd pmd 6.47.0-SNAPSHOT - ../ + ../pom.xml diff --git a/pmd-lang-test/pom.xml b/pmd-lang-test/pom.xml index ce1bc5067e2..99a590c89b8 100644 --- a/pmd-lang-test/pom.xml +++ b/pmd-lang-test/pom.xml @@ -13,7 +13,7 @@ net.sourceforge.pmd pmd 6.47.0-SNAPSHOT - ../ + ../pom.xml diff --git a/pmd-lua/pom.xml b/pmd-lua/pom.xml index b7f3fbe7312..ef459787d32 100644 --- a/pmd-lua/pom.xml +++ b/pmd-lua/pom.xml @@ -8,7 +8,7 @@ net.sourceforge.pmd pmd 6.47.0-SNAPSHOT - ../ + ../pom.xml diff --git a/pmd-matlab/pom.xml b/pmd-matlab/pom.xml index 0de710099a4..b6dffb8afaa 100644 --- a/pmd-matlab/pom.xml +++ b/pmd-matlab/pom.xml @@ -8,7 +8,7 @@ net.sourceforge.pmd pmd 6.47.0-SNAPSHOT - ../ + ../pom.xml diff --git a/pmd-modelica/pom.xml b/pmd-modelica/pom.xml index 341803ec4ee..bee6eb4ecec 100644 --- a/pmd-modelica/pom.xml +++ b/pmd-modelica/pom.xml @@ -8,7 +8,7 @@ net.sourceforge.pmd pmd 6.47.0-SNAPSHOT - ../ + ../pom.xml diff --git a/pmd-objectivec/pom.xml b/pmd-objectivec/pom.xml index cedfce81268..2b1bede2142 100644 --- a/pmd-objectivec/pom.xml +++ b/pmd-objectivec/pom.xml @@ -8,7 +8,7 @@ net.sourceforge.pmd pmd 6.47.0-SNAPSHOT - ../ + ../pom.xml diff --git a/pmd-perl/pom.xml b/pmd-perl/pom.xml index 558fa427c8a..83f957ad737 100644 --- a/pmd-perl/pom.xml +++ b/pmd-perl/pom.xml @@ -8,7 +8,7 @@ net.sourceforge.pmd pmd 6.47.0-SNAPSHOT - ../ + ../pom.xml diff --git a/pmd-php/pom.xml b/pmd-php/pom.xml index 782f8617038..c4a2e6e0406 100644 --- a/pmd-php/pom.xml +++ b/pmd-php/pom.xml @@ -8,7 +8,7 @@ net.sourceforge.pmd pmd 6.47.0-SNAPSHOT - ../ + ../pom.xml diff --git a/pmd-plsql/pom.xml b/pmd-plsql/pom.xml index c0a17625555..2242099ad1a 100644 --- a/pmd-plsql/pom.xml +++ b/pmd-plsql/pom.xml @@ -8,7 +8,7 @@ net.sourceforge.pmd pmd 6.47.0-SNAPSHOT - ../ + ../pom.xml diff --git a/pmd-python/pom.xml b/pmd-python/pom.xml index 11610248524..6406fb7bc57 100644 --- a/pmd-python/pom.xml +++ b/pmd-python/pom.xml @@ -8,7 +8,7 @@ net.sourceforge.pmd pmd 6.47.0-SNAPSHOT - ../ + ../pom.xml diff --git a/pmd-ruby/pom.xml b/pmd-ruby/pom.xml index 5bc68ba9734..e0385b000ce 100644 --- a/pmd-ruby/pom.xml +++ b/pmd-ruby/pom.xml @@ -8,7 +8,7 @@ net.sourceforge.pmd pmd 6.47.0-SNAPSHOT - ../ + ../pom.xml diff --git a/pmd-scala-modules/pmd-scala-common/pom.xml b/pmd-scala-modules/pmd-scala-common/pom.xml index 20ace8b9c83..c5327d83814 100644 --- a/pmd-scala-modules/pmd-scala-common/pom.xml +++ b/pmd-scala-modules/pmd-scala-common/pom.xml @@ -9,7 +9,7 @@ net.sourceforge.pmd pmd 6.47.0-SNAPSHOT - ../.. + ../../pom.xml diff --git a/pmd-scala-modules/pmd-scala_2.12/pom.xml b/pmd-scala-modules/pmd-scala_2.12/pom.xml index 47659900842..b6a62cd14c0 100644 --- a/pmd-scala-modules/pmd-scala_2.12/pom.xml +++ b/pmd-scala-modules/pmd-scala_2.12/pom.xml @@ -8,7 +8,7 @@ net.sourceforge.pmd pmd-scala-common 6.47.0-SNAPSHOT - ../pmd-scala-common + ../pmd-scala-common/pom.xml diff --git a/pmd-scala-modules/pmd-scala_2.13/pom.xml b/pmd-scala-modules/pmd-scala_2.13/pom.xml index 9b5c50f976b..43ed00eb173 100644 --- a/pmd-scala-modules/pmd-scala_2.13/pom.xml +++ b/pmd-scala-modules/pmd-scala_2.13/pom.xml @@ -8,7 +8,7 @@ net.sourceforge.pmd pmd-scala-common 6.47.0-SNAPSHOT - ../pmd-scala-common + ../pmd-scala-common/pom.xml diff --git a/pmd-scala/pom.xml b/pmd-scala/pom.xml index bc1c3e9ccd4..9a0020aa0f7 100644 --- a/pmd-scala/pom.xml +++ b/pmd-scala/pom.xml @@ -10,7 +10,7 @@ net.sourceforge.pmd pmd 6.47.0-SNAPSHOT - ../ + ../pom.xml diff --git a/pmd-swift/pom.xml b/pmd-swift/pom.xml index 10032db400e..82a44caa83c 100644 --- a/pmd-swift/pom.xml +++ b/pmd-swift/pom.xml @@ -8,7 +8,7 @@ net.sourceforge.pmd pmd 6.47.0-SNAPSHOT - ../ + ../pom.xml diff --git a/pmd-test/pom.xml b/pmd-test/pom.xml index b8757a44a04..c2540c1888b 100644 --- a/pmd-test/pom.xml +++ b/pmd-test/pom.xml @@ -9,7 +9,7 @@ net.sourceforge.pmd pmd 6.47.0-SNAPSHOT - ../ + ../pom.xml diff --git a/pmd-visualforce/pom.xml b/pmd-visualforce/pom.xml index 4e2ef9d4ba4..acdf585467d 100644 --- a/pmd-visualforce/pom.xml +++ b/pmd-visualforce/pom.xml @@ -8,7 +8,7 @@ net.sourceforge.pmd pmd 6.47.0-SNAPSHOT - ../ + ../pom.xml diff --git a/pmd-vm/pom.xml b/pmd-vm/pom.xml index bfbb62269ff..3c69ab24374 100644 --- a/pmd-vm/pom.xml +++ b/pmd-vm/pom.xml @@ -8,7 +8,7 @@ net.sourceforge.pmd pmd 6.47.0-SNAPSHOT - ../ + ../pom.xml diff --git a/pmd-xml/pom.xml b/pmd-xml/pom.xml index 26c8a9faf8e..7fe4f69fe51 100644 --- a/pmd-xml/pom.xml +++ b/pmd-xml/pom.xml @@ -8,7 +8,7 @@ net.sourceforge.pmd pmd 6.47.0-SNAPSHOT - ../ + ../pom.xml From 62d27c07b40985ecc1ed8ab3b87647ac9d39f1a5 Mon Sep 17 00:00:00 2001 From: Andreas Dangel Date: Sat, 4 Jun 2022 15:14:35 +0200 Subject: [PATCH 13/50] [doc] Update release notes (#3936, #3985) --- docs/pages/release_notes.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/docs/pages/release_notes.md b/docs/pages/release_notes.md index 1eb0bab3e30..fe77034c8c1 100644 --- a/docs/pages/release_notes.md +++ b/docs/pages/release_notes.md @@ -16,11 +16,13 @@ This is a {{ site.pmd.release_type }} release. ### Fixed Issues * java-errorprone + * [#3936](https://github.com/pmd/pmd/issues/3936): \[java] AvoidFieldNameMatchingMethodName should consider enum class * [#3937](https://github.com/pmd/pmd/issues/3937): \[java] AvoidDuplicateLiterals - uncompilable test cases ### API Changes ### External Contributions +* [#3985](https://github.com/pmd/pmd/pull/3985): \[java] Fix false negative problem about Enum in AvoidFieldNameMatchingMethodName #3936 - [@Scrsloota](https://github.com/Scrsloota) * [#3993](https://github.com/pmd/pmd/pull/3993): \[java] AvoidDuplicateLiterals - Add the method "buz" definition to test cases - [@dalizi007](https://github.com/dalizi007) {% endtocmaker %} From 021c5a25e8fda96f760f005686328f3f487e146e Mon Sep 17 00:00:00 2001 From: Andreas Dangel Date: Sat, 4 Jun 2022 15:49:01 +0200 Subject: [PATCH 14/50] chore: Check for SNAPSHOT build tools and other SNAPSHOTs --- do-release.sh | 8 ++++++++ pom.xml | 34 +++++++++++++++++++++++++++++++++- 2 files changed, 41 insertions(+), 1 deletion(-) diff --git a/do-release.sh b/do-release.sh index 5cd900bf320..3ddb331bbd4 100755 --- a/do-release.sh +++ b/do-release.sh @@ -72,6 +72,14 @@ export RELEASE_VERSION export DEVELOPMENT_VERSION export CURRENT_BRANCH +# check for SNAPSHOT version of pmd.build-tools.version +BUILD_TOOLS_VERSION=$(./mvnw org.apache.maven.plugins:maven-help-plugin:3.2.0:evaluate -Dexpression=pmd.build-tools.version -q -DforceStdout) +BUILD_TOOLS_VERSION_RELEASE=${BUILD_TOOLS_VERSION%-SNAPSHOT} +if [ "${BUILD_TOOLS_VERSION}" != "${BUILD_TOOLS_VERSION_RELEASE}" ]; then + echo "Error: version pmd.build-tools.version is ${BUILD_TOOLS_VERSION} - snapshot is not allowed" + exit 1 +fi + RELEASE_RULESET="pmd-core/src/main/resources/rulesets/releases/${RELEASE_VERSION//\./}.xml" echo "* Update date info in **docs/_config.yml**." diff --git a/pom.xml b/pom.xml index c5119da86ee..f9a643d1054 100644 --- a/pom.xml +++ b/pom.xml @@ -364,7 +364,7 @@ org.apache.maven.plugins maven-enforcer-plugin - 3.0.0-M2 + 3.0.0 org.apache.maven.plugins @@ -431,6 +431,11 @@ + + org.apache.maven.plugins + maven-site-plugin + 4.0.0-M1 + org.codehaus.mojo versions-maven-plugin @@ -495,6 +500,33 @@ + + enforce-no-snapshots + + enforce + + + + + No Snapshots Allowed! + true + + + + + + enforce-plugin-versions + + enforce + + + + + Best Practice is to always define plugin versions! + + + + From e29a5899703bfec2f2aebeee5f0f1c7fe9f58a96 Mon Sep 17 00:00:00 2001 From: James Harrison Date: Tue, 7 Jun 2022 09:58:45 +0100 Subject: [PATCH 15/50] [java] ImmutableField: Ignore @Value (Spring) and @Captor (Mockito) --- .all-contributorsrc | 3 ++- docs/pages/pmd/projectdocs/credits.md | 2 +- docs/pages/release_notes.md | 4 ++++ .../java/rule/design/ImmutableFieldRule.java | 4 +++- .../java/rule/design/xml/ImmutableField.xml | 18 ++++++++++++++++++ 5 files changed, 28 insertions(+), 3 deletions(-) diff --git a/.all-contributorsrc b/.all-contributorsrc index 5357d8fad6c..2fc583bca36 100644 --- a/.all-contributorsrc +++ b/.all-contributorsrc @@ -3384,7 +3384,8 @@ "avatar_url": "https://avatars.githubusercontent.com/u/242337?v=4", "profile": "https://github.com/jjlharrison", "contributions": [ - "bug" + "bug", + "code" ] }, { diff --git a/docs/pages/pmd/projectdocs/credits.md b/docs/pages/pmd/projectdocs/credits.md index c01402c827e..838629d1958 100644 --- a/docs/pages/pmd/projectdocs/credits.md +++ b/docs/pages/pmd/projectdocs/credits.md @@ -307,7 +307,7 @@ Thanks goes to these wonderful people ([emoji key](https://allcontributors.org/d
Ivo Šmíd

🐛
JJengility

🐛
Jake Hemmerle

🐛 -
James Harrison

🐛 +
James Harrison

💻 🐛
Jan

🐛 diff --git a/docs/pages/release_notes.md b/docs/pages/release_notes.md index fe77034c8c1..aab61eb7881 100644 --- a/docs/pages/release_notes.md +++ b/docs/pages/release_notes.md @@ -15,6 +15,9 @@ This is a {{ site.pmd.release_type }} release. ### New and noteworthy ### Fixed Issues +* java-design + * [#3981](https://github.com/pmd/pmd/issues/3981): \[java] ImmutableField reports fields annotated with @Value (Spring) + * [#3998](https://github.com/pmd/pmd/issues/3998): \[java] ImmutableField reports fields annotated with @Captor (Mockito) * java-errorprone * [#3936](https://github.com/pmd/pmd/issues/3936): \[java] AvoidFieldNameMatchingMethodName should consider enum class * [#3937](https://github.com/pmd/pmd/issues/3937): \[java] AvoidDuplicateLiterals - uncompilable test cases @@ -24,6 +27,7 @@ This is a {{ site.pmd.release_type }} release. ### External Contributions * [#3985](https://github.com/pmd/pmd/pull/3985): \[java] Fix false negative problem about Enum in AvoidFieldNameMatchingMethodName #3936 - [@Scrsloota](https://github.com/Scrsloota) * [#3993](https://github.com/pmd/pmd/pull/3993): \[java] AvoidDuplicateLiterals - Add the method "buz" definition to test cases - [@dalizi007](https://github.com/dalizi007) +* [#4002](https://github.com/pmd/pmd/pull/4002): \[java] ImmutableField - Ignore fields annotated with @Value (Spring) or @Captor (Mockito) - [@jjlharrison](https://github.com/jjlharrison) {% endtocmaker %} diff --git a/pmd-java/src/main/java/net/sourceforge/pmd/lang/java/rule/design/ImmutableFieldRule.java b/pmd-java/src/main/java/net/sourceforge/pmd/lang/java/rule/design/ImmutableFieldRule.java index 69baff82190..4bbc274bdbc 100644 --- a/pmd-java/src/main/java/net/sourceforge/pmd/lang/java/rule/design/ImmutableFieldRule.java +++ b/pmd-java/src/main/java/net/sourceforge/pmd/lang/java/rule/design/ImmutableFieldRule.java @@ -46,9 +46,11 @@ private enum FieldImmutabilityType { @Override protected Collection defaultSuppressionAnnotations() { Collection defaultValues = new ArrayList<>(super.defaultSuppressionAnnotations()); - defaultValues.add("org.mockito.Mock"); + defaultValues.add("org.mockito.Captor"); defaultValues.add("org.mockito.InjectMocks"); + defaultValues.add("org.mockito.Mock"); defaultValues.add("org.springframework.beans.factory.annotation.Autowired"); + defaultValues.add("org.springframework.beans.factory.annotation.Value"); defaultValues.add("org.springframework.boot.test.mock.mockito.MockBean"); return defaultValues; diff --git a/pmd-java/src/test/resources/net/sourceforge/pmd/lang/java/rule/design/xml/ImmutableField.xml b/pmd-java/src/test/resources/net/sourceforge/pmd/lang/java/rule/design/xml/ImmutableField.xml index b6f6bfb6875..722ffc8377b 100644 --- a/pmd-java/src/test/resources/net/sourceforge/pmd/lang/java/rule/design/xml/ImmutableField.xml +++ b/pmd-java/src/test/resources/net/sourceforge/pmd/lang/java/rule/design/xml/ImmutableField.xml @@ -603,4 +603,22 @@ class Baz {} class Foo2 {} ]]>
+ + #3981 #3998 [java] ImmutableField reports fields annotated with @Value (Spring) and @Captor (Mockito) + 0 + baz2; +} + ]]> + From 6ecaa64beb794e413b94da6eec167cc0d55b0b34 Mon Sep 17 00:00:00 2001 From: Andreas Dangel Date: Tue, 7 Jun 2022 19:41:37 +0200 Subject: [PATCH 16/50] Bump maven-pmd-plugin from 3.16.0 to 3.17.0 --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index f9a643d1054..22f0a9d611f 100644 --- a/pom.xml +++ b/pom.xml @@ -94,7 +94,7 @@ 3.0.0-M5 9.3 3.1.2 - 3.16.0 + 3.17.0 1.10.12 3.2.0 4.7.2 From b90c5f3ae3d30ad3efdbb1be8c1a68fa8910fab8 Mon Sep 17 00:00:00 2001 From: Andreas Dangel Date: Wed, 8 Jun 2022 18:58:18 +0200 Subject: [PATCH 17/50] chore: Regenerate credits.md --- docs/pages/pmd/projectdocs/credits.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/pages/pmd/projectdocs/credits.md b/docs/pages/pmd/projectdocs/credits.md index 838629d1958..54f1f79b037 100644 --- a/docs/pages/pmd/projectdocs/credits.md +++ b/docs/pages/pmd/projectdocs/credits.md @@ -307,7 +307,7 @@ Thanks goes to these wonderful people ([emoji key](https://allcontributors.org/d
Ivo Šmíd

🐛
JJengility

🐛
Jake Hemmerle

🐛 -
James Harrison

💻 🐛 +
James Harrison

🐛 💻
Jan

🐛 From b4916d6a4b931b090749e41099c3274e2c838b88 Mon Sep 17 00:00:00 2001 From: James Harrison Date: Thu, 9 Jun 2022 07:41:22 +0100 Subject: [PATCH 18/50] UnusedPrivateField: Ignore fields annotated with @Id, @EmbeddedId, @Version, @Mock, @Spy, or @MockBean --- docs/pages/release_notes.md | 3 + .../bestpractices/UnusedPrivateFieldRule.java | 9 +++ .../bestpractices/xml/UnusedPrivateField.xml | 59 +++++++++++++++++++ 3 files changed, 71 insertions(+) diff --git a/docs/pages/release_notes.md b/docs/pages/release_notes.md index aab61eb7881..2fd6e0bf938 100644 --- a/docs/pages/release_notes.md +++ b/docs/pages/release_notes.md @@ -18,6 +18,8 @@ This is a {{ site.pmd.release_type }} release. * java-design * [#3981](https://github.com/pmd/pmd/issues/3981): \[java] ImmutableField reports fields annotated with @Value (Spring) * [#3998](https://github.com/pmd/pmd/issues/3998): \[java] ImmutableField reports fields annotated with @Captor (Mockito) + * [#3824](https://github.com/pmd/pmd/issues/3824): \[java] UnusedPrivateField: Do not flag fields annotated with @Version + * [#3825](https://github.com/pmd/pmd/issues/3825): \[java] UnusedPrivateField: Do not flag fields annotated with @Id or @EmbeddedId * java-errorprone * [#3936](https://github.com/pmd/pmd/issues/3936): \[java] AvoidFieldNameMatchingMethodName should consider enum class * [#3937](https://github.com/pmd/pmd/issues/3937): \[java] AvoidDuplicateLiterals - uncompilable test cases @@ -28,6 +30,7 @@ This is a {{ site.pmd.release_type }} release. * [#3985](https://github.com/pmd/pmd/pull/3985): \[java] Fix false negative problem about Enum in AvoidFieldNameMatchingMethodName #3936 - [@Scrsloota](https://github.com/Scrsloota) * [#3993](https://github.com/pmd/pmd/pull/3993): \[java] AvoidDuplicateLiterals - Add the method "buz" definition to test cases - [@dalizi007](https://github.com/dalizi007) * [#4002](https://github.com/pmd/pmd/pull/4002): \[java] ImmutableField - Ignore fields annotated with @Value (Spring) or @Captor (Mockito) - [@jjlharrison](https://github.com/jjlharrison) +* [#4003](https://github.com/pmd/pmd/pull/4003): \[java] UnusedPrivateField - Ignore fields annotated with @Id/@EmbeddedId/@Version (JPA) or @Mock/@Spy/@MockBean (Mockito/Spring) - [@jjlharrison](https://github.com/jjlharrison) {% endtocmaker %} diff --git a/pmd-java/src/main/java/net/sourceforge/pmd/lang/java/rule/bestpractices/UnusedPrivateFieldRule.java b/pmd-java/src/main/java/net/sourceforge/pmd/lang/java/rule/bestpractices/UnusedPrivateFieldRule.java index 6eb43383d06..06133f4bf4e 100644 --- a/pmd-java/src/main/java/net/sourceforge/pmd/lang/java/rule/bestpractices/UnusedPrivateFieldRule.java +++ b/pmd-java/src/main/java/net/sourceforge/pmd/lang/java/rule/bestpractices/UnusedPrivateFieldRule.java @@ -49,6 +49,15 @@ protected Collection defaultSuppressionAnnotations() { defaultValues.add("javafx.fxml.FXML"); defaultValues.add("lombok.experimental.Delegate"); defaultValues.add("lombok.EqualsAndHashCode"); + defaultValues.add("javax.persistence.Id"); + defaultValues.add("javax.persistence.EmbeddedId"); + defaultValues.add("javax.persistence.Version"); + defaultValues.add("jakarta.persistence.Id"); + defaultValues.add("jakarta.persistence.EmbeddedId"); + defaultValues.add("jakarta.persistence.Version"); + defaultValues.add("org.mockito.Mock"); + defaultValues.add("org.mockito.Spy"); + defaultValues.add("org.springframework.boot.test.mock.mockito.MockBean"); return defaultValues; } diff --git a/pmd-java/src/test/resources/net/sourceforge/pmd/lang/java/rule/bestpractices/xml/UnusedPrivateField.xml b/pmd-java/src/test/resources/net/sourceforge/pmd/lang/java/rule/bestpractices/xml/UnusedPrivateField.xml index edccd7fd305..35746342551 100644 --- a/pmd-java/src/test/resources/net/sourceforge/pmd/lang/java/rule/bestpractices/xml/UnusedPrivateField.xml +++ b/pmd-java/src/test/resources/net/sourceforge/pmd/lang/java/rule/bestpractices/xml/UnusedPrivateField.xml @@ -683,6 +683,65 @@ public class Foo { } } } +} + ]]>
+
+ + + #3824 #3825 Do not flag fields annotated with @Id, @EmbeddedId, or @Version + 0 + + + + + Do not flag Mockito fields that are injected into test target + 0 + From 872111f2a1f22f035a312e5bbe5fa01151011e90 Mon Sep 17 00:00:00 2001 From: Andreas Dangel Date: Thu, 9 Jun 2022 14:59:07 +0200 Subject: [PATCH 19/50] chore: retry git push sync During the release it can happen, that two pushes are executed fast one after another. This could lead to gh action jobs overlapping while trying to push to sourceforge leading to errors like "remote: error: cannot lock ref 'refs/heads/master': is at XXX but expected YYY". --- .ci/git-repo-sync.sh | 39 ++++++++++++++++++++++++++++++++++++++- 1 file changed, 38 insertions(+), 1 deletion(-) diff --git a/.ci/git-repo-sync.sh b/.ci/git-repo-sync.sh index a32d6c9b039..af0635d9baa 100755 --- a/.ci/git-repo-sync.sh +++ b/.ci/git-repo-sync.sh @@ -27,7 +27,7 @@ function git_repo_sync() { pmd_ci_log_group_start "Git Sync" git remote add pmd-sf "${PMD_SF_USER}@git.code.sf.net:/p/pmd/code" if [ -n "${PMD_CI_BRANCH}" ]; then - git push pmd-sf "${PMD_CI_BRANCH}:${PMD_CI_BRANCH}" + retry 5 git push pmd-sf "${PMD_CI_BRANCH}:${PMD_CI_BRANCH}" pmd_ci_log_success "Successfully pushed ${PMD_CI_BRANCH} to sourceforge" elif [ -n "${PMD_CI_TAG}" ]; then git push pmd-sf tag "${PMD_CI_TAG}" @@ -39,6 +39,43 @@ function git_repo_sync() { pmd_ci_log_group_end } + +# +# From: https://gist.github.com/sj26/88e1c6584397bb7c13bd11108a579746 +# +# Retry a command up to a specific number of times until it exits successfully, +# with exponential back off. +# +# $ retry 5 echo Hello +# Hello +# +# $ retry 5 false +# Retry 1/5 exited 1, retrying in 1 seconds... +# Retry 2/5 exited 1, retrying in 2 seconds... +# Retry 3/5 exited 1, retrying in 4 seconds... +# Retry 4/5 exited 1, retrying in 8 seconds... +# Retry 5/5 exited 1, no more retries left. +# +function retry { + local retries=$1 + shift + + local count=0 + until "$@"; do + exit=$? + wait=$((2 ** $count)) + count=$(($count + 1)) + if [ $count -lt $retries ]; then + echo "Retry $count/$retries exited $exit, retrying in $wait seconds..." + sleep $wait + else + echo "Retry $count/$retries exited $exit, no more retries left." + return $exit + fi + done + return 0 +} + git_repo_sync exit 0 From 4b2c3fa1a426890e30648c5f53193b05483ef709 Mon Sep 17 00:00:00 2001 From: Andreas Dangel Date: Thu, 9 Jun 2022 16:15:19 +0200 Subject: [PATCH 20/50] Exclude commons-io (CVE-2021-29425) Refactor last test usages to use PMD's IOUtil instead. --- .../java/net/sourceforge/pmd/cpd/ApexCpdTest.java | 4 ++-- .../sourceforge/pmd/lang/apex/ast/ApexParserTest.java | 11 +++++------ .../java/net/sourceforge/pmd/ant/PMDTaskTest.java | 6 ++++-- .../net/sourceforge/pmd/coverage/PMDCoverageTest.java | 4 ++-- pom.xml | 9 +++++++++ 5 files changed, 22 insertions(+), 12 deletions(-) diff --git a/pmd-apex/src/test/java/net/sourceforge/pmd/cpd/ApexCpdTest.java b/pmd-apex/src/test/java/net/sourceforge/pmd/cpd/ApexCpdTest.java index 51ad07f5c8c..412c4ea0245 100644 --- a/pmd-apex/src/test/java/net/sourceforge/pmd/cpd/ApexCpdTest.java +++ b/pmd-apex/src/test/java/net/sourceforge/pmd/cpd/ApexCpdTest.java @@ -11,18 +11,18 @@ import java.io.IOException; import java.util.Iterator; -import org.apache.commons.io.FilenameUtils; import org.junit.Before; import org.junit.Test; import net.sourceforge.pmd.lang.apex.ApexLanguageModule; +import net.sourceforge.pmd.util.IOUtil; public class ApexCpdTest { private File testdir; @Before public void setUp() { - String path = FilenameUtils.normalize("src/test/resources/net/sourceforge/pmd/cpd/issue427"); + String path = IOUtil.normalizePath("src/test/resources/net/sourceforge/pmd/cpd/issue427"); testdir = new File(path); } diff --git a/pmd-apex/src/test/java/net/sourceforge/pmd/lang/apex/ast/ApexParserTest.java b/pmd-apex/src/test/java/net/sourceforge/pmd/lang/apex/ast/ApexParserTest.java index 8e8edd9926e..be3f11d57e5 100644 --- a/pmd-apex/src/test/java/net/sourceforge/pmd/lang/apex/ast/ApexParserTest.java +++ b/pmd-apex/src/test/java/net/sourceforge/pmd/lang/apex/ast/ApexParserTest.java @@ -14,13 +14,12 @@ import java.nio.charset.StandardCharsets; import java.util.List; -import org.apache.commons.io.FileUtils; -import org.apache.commons.io.IOUtils; import org.junit.Assert; import org.junit.Test; import net.sourceforge.pmd.lang.ast.Node; import net.sourceforge.pmd.lang.ast.xpath.internal.FileNameXPathFunction; +import net.sourceforge.pmd.util.IOUtil; import apex.jorje.semantic.ast.compilation.Compilation; @@ -154,7 +153,7 @@ public void parsesRealWorldClasses() throws Exception { for (File file : fList) { if (file.isFile() && file.getName().endsWith(".cls")) { - String sourceCode = FileUtils.readFileToString(file, StandardCharsets.UTF_8); + String sourceCode = IOUtil.readFileToString(file, StandardCharsets.UTF_8); ApexNode rootNode = parse(sourceCode); Assert.assertNotNull(rootNode); } @@ -167,7 +166,7 @@ public void parsesRealWorldClasses() throws Exception { */ @Test public void parseInheritedSharingClass() throws IOException { - String source = IOUtils.toString(ApexParserTest.class.getResourceAsStream("InheritedSharing.cls"), + String source = IOUtil.readToString(ApexParserTest.class.getResourceAsStream("InheritedSharing.cls"), StandardCharsets.UTF_8); ApexNode rootNode = parse(source); Assert.assertNotNull(rootNode); @@ -180,7 +179,7 @@ public void parseInheritedSharingClass() throws IOException { */ @Test public void stackOverflowDuringClassParsing() throws Exception { - String source = IOUtils.toString(ApexParserTest.class.getResourceAsStream("StackOverflowClass.cls"), + String source = IOUtil.readToString(ApexParserTest.class.getResourceAsStream("StackOverflowClass.cls"), StandardCharsets.UTF_8); ApexNode rootNode = parse(source); Assert.assertNotNull(rootNode); @@ -191,7 +190,7 @@ public void stackOverflowDuringClassParsing() throws Exception { @Test public void verifyLineColumnNumbersInnerClasses() throws Exception { - String source = IOUtils.toString(ApexParserTest.class.getResourceAsStream("InnerClassLocations.cls"), + String source = IOUtil.readToString(ApexParserTest.class.getResourceAsStream("InnerClassLocations.cls"), StandardCharsets.UTF_8); source = source.replaceAll("\r\n", "\n"); ApexNode rootNode = parse(source); diff --git a/pmd-java/src/test/java/net/sourceforge/pmd/ant/PMDTaskTest.java b/pmd-java/src/test/java/net/sourceforge/pmd/ant/PMDTaskTest.java index 2ae2b31129e..dcff84e7e9d 100644 --- a/pmd-java/src/test/java/net/sourceforge/pmd/ant/PMDTaskTest.java +++ b/pmd-java/src/test/java/net/sourceforge/pmd/ant/PMDTaskTest.java @@ -9,15 +9,17 @@ import java.io.UnsupportedEncodingException; import java.nio.charset.Charset; +import java.nio.charset.StandardCharsets; import java.util.Locale; -import org.apache.commons.io.FileUtils; import org.junit.Rule; import org.junit.Test; import org.junit.contrib.java.lang.system.RestoreSystemProperties; import org.junit.rules.ExternalResource; import org.junit.rules.TestRule; +import net.sourceforge.pmd.util.IOUtil; + public class PMDTaskTest extends AbstractAntTestHelper { public PMDTaskTest() { @@ -132,7 +134,7 @@ public void testFormatterEncodingWithXML() throws Exception { setDefaultCharset("cp1252"); executeTarget("testFormatterEncodingWithXML"); - String report = FileUtils.readFileToString(currentTempFile(), "UTF-8"); + String report = IOUtil.readFileToString(currentTempFile(), StandardCharsets.UTF_8); assertTrue(report.contains("someVariableWithÜmlaut")); } diff --git a/pmd-java/src/test/java/net/sourceforge/pmd/coverage/PMDCoverageTest.java b/pmd-java/src/test/java/net/sourceforge/pmd/coverage/PMDCoverageTest.java index 99f534b5434..c7cab544080 100644 --- a/pmd-java/src/test/java/net/sourceforge/pmd/coverage/PMDCoverageTest.java +++ b/pmd-java/src/test/java/net/sourceforge/pmd/coverage/PMDCoverageTest.java @@ -14,7 +14,6 @@ import java.util.Arrays; import java.util.List; -import org.apache.commons.io.FileUtils; import org.apache.commons.lang3.ArrayUtils; import org.apache.commons.lang3.StringUtils; import org.junit.Rule; @@ -27,6 +26,7 @@ import net.sourceforge.pmd.lang.LanguageRegistry; import net.sourceforge.pmd.lang.LanguageVersion; import net.sourceforge.pmd.lang.java.JavaLanguageModule; +import net.sourceforge.pmd.util.IOUtil; public class PMDCoverageTest { @@ -80,7 +80,7 @@ private void runPmd(String commandLine) { System.err.println("Running PMD with: " + Arrays.toString(args)); PMD.runPmd(args); - report = FileUtils.readFileToString(f, StandardCharsets.UTF_8); + report = IOUtil.readFileToString(f, StandardCharsets.UTF_8); assertEquals("Nothing should be output to stdout", 0, output.getLog().length()); diff --git a/pom.xml b/pom.xml index 22f0a9d611f..5aeded6f08d 100644 --- a/pom.xml +++ b/pom.xml @@ -893,6 +893,15 @@ kotest-runner-junit5-jvm ${kotest.version} test + + + + commons-io + commons-io + + io.kotest From a8a61f2c440504d266f23b4f4f11a233448e0d1d Mon Sep 17 00:00:00 2001 From: Andreas Dangel Date: Thu, 9 Jun 2022 16:19:28 +0200 Subject: [PATCH 21/50] Upgrade io.github.classgraph:classgraph from 4.8.102 to 4.8.112 Fixes [sonatype-2021-1074] CWE-611: Improper Restriction of XML External Entity Reference ('XXE') --- pom.xml | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/pom.xml b/pom.xml index 5aeded6f08d..7e9aa680a84 100644 --- a/pom.xml +++ b/pom.xml @@ -922,6 +922,16 @@ 13.0 test + + + + io.github.classgraph + classgraph + 4.8.112 + From 9537629e58f5e4349c6f6d1e6714a0f45f205ea8 Mon Sep 17 00:00:00 2001 From: Andreas Dangel Date: Thu, 9 Jun 2022 16:22:29 +0200 Subject: [PATCH 22/50] Upgrade com.google.protobuf:protobuf-java from 3.7.1 to 3.16.1 Fixes CVE-2021-22569 A potential Denial of Service issue in protobuf-java https://github.com/protocolbuffers/protobuf/security/advisories/GHSA-wrvw-hg22-4m67 --- pom.xml | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/pom.xml b/pom.xml index 7e9aa680a84..0a0877f766d 100644 --- a/pom.xml +++ b/pom.xml @@ -932,6 +932,16 @@ classgraph 4.8.112 + + + + com.google.protobuf + protobuf-java + 3.16.1 + From 8fbedb3a0fb2380f618895ab0c8ff7155040a429 Mon Sep 17 00:00:00 2001 From: shiomiyan <35842766+shiomiyan@users.noreply.github.com> Date: Fri, 10 Jun 2022 13:08:09 +0900 Subject: [PATCH 23/50] fix documentation link --- docs/pages/pmd/userdocs/tools/tools.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/pages/pmd/userdocs/tools/tools.md b/docs/pages/pmd/userdocs/tools/tools.md index 78d7b7d316a..033cac07ad1 100644 --- a/docs/pages/pmd/userdocs/tools/tools.md +++ b/docs/pages/pmd/userdocs/tools/tools.md @@ -197,7 +197,7 @@ To install the PMD plugin for Eclipse: * Start Eclipse and open a project * Select "Help"->"Software Updates"->"Find and Install" * Click "Next", then click "New remote site" -* Enter "PMD" into the Name field and into the URL field +* Enter "PMD" into the Name field and select the URL of the version you need from [here](https://pmd.github.io/pmd-eclipse-plugin-p2-site/) and into the URL field * Click through the rest of the dialog boxes to install the plugin Alternatively, you can download the latest zip file and follow the above procedures From a9b8991700b5c505e46f4e4b7f8e1422e8acae7c Mon Sep 17 00:00:00 2001 From: shiomiyan <35842766+shiomiyan@users.noreply.github.com> Date: Sat, 11 Jun 2022 01:25:02 +0900 Subject: [PATCH 24/50] Update docs/pages/pmd/userdocs/tools/tools.md Co-authored-by: Andreas Dangel --- docs/pages/pmd/userdocs/tools/tools.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/pages/pmd/userdocs/tools/tools.md b/docs/pages/pmd/userdocs/tools/tools.md index 033cac07ad1..c889ef00911 100644 --- a/docs/pages/pmd/userdocs/tools/tools.md +++ b/docs/pages/pmd/userdocs/tools/tools.md @@ -197,7 +197,7 @@ To install the PMD plugin for Eclipse: * Start Eclipse and open a project * Select "Help"->"Software Updates"->"Find and Install" * Click "Next", then click "New remote site" -* Enter "PMD" into the Name field and select the URL of the version you need from [here](https://pmd.github.io/pmd-eclipse-plugin-p2-site/) and into the URL field +* Enter "PMD" into the Name field and into the URL field * Click through the rest of the dialog boxes to install the plugin Alternatively, you can download the latest zip file and follow the above procedures From 179578dffb3619f523ba19ea06787074f95f2f4e Mon Sep 17 00:00:00 2001 From: Maikel Steneker Date: Mon, 13 Jun 2022 11:43:04 +0200 Subject: [PATCH 25/50] Bump kotlin from 1.4.32 to 1.7.0 --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 22f0a9d611f..1c4837281f9 100644 --- a/pom.xml +++ b/pom.xml @@ -85,7 +85,7 @@ ${maven.compiler.test.target} - 1.4.32 + 1.7.0 4.4.3 1.4.32 From f2d1c95102e0935cc9d6f413e80bb16c64414501 Mon Sep 17 00:00:00 2001 From: Maikel Steneker Date: Mon, 13 Jun 2022 11:44:32 +0200 Subject: [PATCH 26/50] Bump dokka maven plugin from 1.4.32 to 1.6.21 --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 1c4837281f9..582b954ff37 100644 --- a/pom.xml +++ b/pom.xml @@ -87,7 +87,7 @@ ${maven.compiler.test.target} 1.7.0 4.4.3 - 1.4.32 + 1.6.21 5.0 From 02a7d4e0dd8c05675d1cd63c0a43046942fc4c72 Mon Sep 17 00:00:00 2001 From: Andreas Dangel Date: Fri, 10 Jun 2022 12:12:41 +0200 Subject: [PATCH 27/50] Use maven-pmd-plugin 3.18.0-pmd7-SNAPSHOT for pmd7 --- .ci/build.sh | 3 +++ pom.xml | 11 +++++++++++ 2 files changed, 14 insertions(+) diff --git a/.ci/build.sh b/.ci/build.sh index b40190eddae..92f7f6472a8 100755 --- a/.ci/build.sh +++ b/.ci/build.sh @@ -244,12 +244,15 @@ ${rendered_release_notes}" # Runs the dogfood ruleset with the currently built pmd against itself # function pmd_ci_dogfood() { + local mpmdVersion=() ./mvnw versions:set -DnewVersion="${PMD_CI_MAVEN_PROJECT_VERSION}-dogfood" -DgenerateBackupPoms=false sed -i 's/[0-9]\{1,\}\.[0-9]\{1,\}\.[0-9]\{1,\}.*<\/version>\( *\)/'"${PMD_CI_MAVEN_PROJECT_VERSION}"'<\/version>\1/' pom.xml if [ "${PMD_CI_MAVEN_PROJECT_VERSION}" = "7.0.0-SNAPSHOT" ]; then sed -i 's/pmd-dogfood-config\.xml/pmd-dogfood-config7.xml/' pom.xml + mpmdVersion=(-Denforcer.skip=true -Dpmd.plugin.version=3.18.0-pmd7-SNAPSHOT) fi ./mvnw verify --show-version --errors --batch-mode --no-transfer-progress "${PMD_MAVEN_EXTRA_OPTS[@]}" \ + "${mpmdVersion[@]}" \ -DskipTests \ -Dmaven.javadoc.skip=true \ -Dmaven.source.skip=true \ diff --git a/pom.xml b/pom.xml index 22f0a9d611f..4480c8bdb39 100644 --- a/pom.xml +++ b/pom.xml @@ -965,6 +965,17 @@ true + + apache.snapshots + Apache Snapshot Repository + https://repository.apache.org/snapshots + + false + + + true + + From 0c647f5365ce1aeb578d40b341d664b0d330e38a Mon Sep 17 00:00:00 2001 From: Andreas Dangel Date: Mon, 13 Jun 2022 18:24:35 +0200 Subject: [PATCH 28/50] [doc] Update release notes (#4006) --- docs/pages/release_notes.md | 1 + 1 file changed, 1 insertion(+) diff --git a/docs/pages/release_notes.md b/docs/pages/release_notes.md index aab61eb7881..6726bc0659d 100644 --- a/docs/pages/release_notes.md +++ b/docs/pages/release_notes.md @@ -28,6 +28,7 @@ This is a {{ site.pmd.release_type }} release. * [#3985](https://github.com/pmd/pmd/pull/3985): \[java] Fix false negative problem about Enum in AvoidFieldNameMatchingMethodName #3936 - [@Scrsloota](https://github.com/Scrsloota) * [#3993](https://github.com/pmd/pmd/pull/3993): \[java] AvoidDuplicateLiterals - Add the method "buz" definition to test cases - [@dalizi007](https://github.com/dalizi007) * [#4002](https://github.com/pmd/pmd/pull/4002): \[java] ImmutableField - Ignore fields annotated with @Value (Spring) or @Captor (Mockito) - [@jjlharrison](https://github.com/jjlharrison) +* [#4006](https://github.com/pmd/pmd/pull/4006): \[doc] Fix eclipse plugin update site URL - [@shiomiyan](https://github.com/shiomiyan) {% endtocmaker %} From c1d3324abe4a5130d69c9e1d5354fb210fe19319 Mon Sep 17 00:00:00 2001 From: Andreas Dangel Date: Mon, 13 Jun 2022 18:24:55 +0200 Subject: [PATCH 29/50] Add @shiomiyan as a contributor --- .all-contributorsrc | 9 +++++++++ docs/pages/pmd/projectdocs/credits.md | 13 +++++++------ 2 files changed, 16 insertions(+), 6 deletions(-) diff --git a/.all-contributorsrc b/.all-contributorsrc index 2fc583bca36..f2a96ed2ddf 100644 --- a/.all-contributorsrc +++ b/.all-contributorsrc @@ -6694,6 +6694,15 @@ "contributions": [ "code" ] + }, + { + "login": "shiomiyan", + "name": "shiomiyan", + "avatar_url": "https://avatars.githubusercontent.com/u/35842766?v=4", + "profile": "https://github.com/shiomiyan", + "contributions": [ + "doc" + ] } ], "contributorsPerLine": 7, diff --git a/docs/pages/pmd/projectdocs/credits.md b/docs/pages/pmd/projectdocs/credits.md index 54f1f79b037..caa59049f94 100644 --- a/docs/pages/pmd/projectdocs/credits.md +++ b/docs/pages/pmd/projectdocs/credits.md @@ -901,55 +901,56 @@ Thanks goes to these wonderful people ([emoji key](https://allcontributors.org/d
sebbASF

🐛
sergeygorbaty

💻
shilko2013

🐛 +
shiomiyan

📖
simeonKondr

🐛 -
snajberk

🐛 +
snajberk

🐛
sniperrifle2004

🐛
snuyanzin

🐛 💻
sratz

🐛
stonio

🐛
sturton

💻 🐛
sudharmohan

🐛 -
suruchidawar

🐛 +
suruchidawar

🐛
svenfinitiv

🐛
tashiscool

🐛
test-git-hook

🐛
testation21

💻 🐛
thanosa

🐛
tiandiyixian

🐛 -
tobwoerk

🐛 +
tobwoerk

🐛
tprouvot

🐛
trentchilders

🐛
triandicAnt

🐛
trishul14

🐛
tsui

🐛
winhkey

🐛 -
witherspore

🐛 +
witherspore

🐛
wjljack

🐛
wuchiuwong

🐛
xingsong

🐛
xioayuge

🐛
xnYi9wRezm

💻 🐛
xuanuy

🐛 -
xyf0921

🐛 +
xyf0921

🐛
yalechen-cyw3

🐛
yasuharu-sato

🐛
zenglian

🐛
zgrzyt93

💻 🐛
zh3ng

🐛
zt_soft

🐛 -
ztt79

🐛 +
ztt79

🐛
zzzzfeng

🐛
Árpád Magosányi

🐛
任贵杰

🐛 From d5e9cde2d1111fb51bc4f122d0d9a447f6cc8282 Mon Sep 17 00:00:00 2001 From: Andreas Dangel Date: Mon, 13 Jun 2022 18:32:42 +0200 Subject: [PATCH 30/50] [doc] Update release notes (#4009, #4010) --- docs/pages/release_notes.md | 3 +++ 1 file changed, 3 insertions(+) diff --git a/docs/pages/release_notes.md b/docs/pages/release_notes.md index aab61eb7881..6740acd9a32 100644 --- a/docs/pages/release_notes.md +++ b/docs/pages/release_notes.md @@ -15,6 +15,8 @@ This is a {{ site.pmd.release_type }} release. ### New and noteworthy ### Fixed Issues +* core + * [#4009](https://github.com/pmd/pmd/issues/4009): \[core] Cannot build PMD with Temurin 17 * java-design * [#3981](https://github.com/pmd/pmd/issues/3981): \[java] ImmutableField reports fields annotated with @Value (Spring) * [#3998](https://github.com/pmd/pmd/issues/3998): \[java] ImmutableField reports fields annotated with @Captor (Mockito) @@ -28,6 +30,7 @@ This is a {{ site.pmd.release_type }} release. * [#3985](https://github.com/pmd/pmd/pull/3985): \[java] Fix false negative problem about Enum in AvoidFieldNameMatchingMethodName #3936 - [@Scrsloota](https://github.com/Scrsloota) * [#3993](https://github.com/pmd/pmd/pull/3993): \[java] AvoidDuplicateLiterals - Add the method "buz" definition to test cases - [@dalizi007](https://github.com/dalizi007) * [#4002](https://github.com/pmd/pmd/pull/4002): \[java] ImmutableField - Ignore fields annotated with @Value (Spring) or @Captor (Mockito) - [@jjlharrison](https://github.com/jjlharrison) +* [#4010](https://github.com/pmd/pmd/pull/4010): \[core] Bump kotlin to version 1.7.0 - [@maikelsteneker](https://github.com/maikelsteneker) {% endtocmaker %} From d787604c52f3a5fc06eb75ddc1ad60e1dfd7afa3 Mon Sep 17 00:00:00 2001 From: Andreas Dangel Date: Tue, 14 Jun 2022 18:53:27 +0200 Subject: [PATCH 31/50] Bump maven from 3.8.5 to 3.8.6 --- .mvn/wrapper/maven-wrapper.properties | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.mvn/wrapper/maven-wrapper.properties b/.mvn/wrapper/maven-wrapper.properties index db95c131dde..25a1876bb8c 100644 --- a/.mvn/wrapper/maven-wrapper.properties +++ b/.mvn/wrapper/maven-wrapper.properties @@ -14,5 +14,5 @@ # KIND, either express or implied. See the License for the # specific language governing permissions and limitations # under the License. -distributionUrl=https://repo.maven.apache.org/maven2/org/apache/maven/apache-maven/3.8.5/apache-maven-3.8.5-bin.zip -wrapperUrl=https://repo.maven.apache.org/maven2/org/apache/maven/wrapper/maven-wrapper/3.1.0/maven-wrapper-3.1.0.jar +distributionUrl=https://repo.maven.apache.org/maven2/org/apache/maven/apache-maven/3.8.6/apache-maven-3.8.6-bin.zip +wrapperUrl=https://repo.maven.apache.org/maven2/org/apache/maven/wrapper/maven-wrapper/3.1.1/maven-wrapper-3.1.1.jar From efd0c9ed13c5124b724a01219e8a32fb9bf8653e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Cl=C3=A9ment=20Fournier?= Date: Fri, 17 Jun 2022 06:40:17 +0200 Subject: [PATCH 32/50] Fix #4008 --- .../java/rule/design/ImmutableFieldRule.java | 50 ++++++------------- .../java/rule/design/xml/ImmutableField.xml | 28 +++++++++++ 2 files changed, 43 insertions(+), 35 deletions(-) diff --git a/pmd-java/src/main/java/net/sourceforge/pmd/lang/java/rule/design/ImmutableFieldRule.java b/pmd-java/src/main/java/net/sourceforge/pmd/lang/java/rule/design/ImmutableFieldRule.java index 4bbc274bdbc..e06a73cc79f 100644 --- a/pmd-java/src/main/java/net/sourceforge/pmd/lang/java/rule/design/ImmutableFieldRule.java +++ b/pmd-java/src/main/java/net/sourceforge/pmd/lang/java/rule/design/ImmutableFieldRule.java @@ -6,6 +6,7 @@ import java.util.ArrayList; import java.util.Collection; +import java.util.Collections; import java.util.HashSet; import java.util.List; import java.util.Map; @@ -34,15 +35,6 @@ */ public class ImmutableFieldRule extends AbstractLombokAwareRule { - private enum FieldImmutabilityType { - /** Variable is changed in methods and/or in lambdas */ - MUTABLE, - /** Variable is not changed outside the constructor. */ - IMMUTABLE, - /** Variable is only written during declaration, if at all. */ - CHECKDECL - } - @Override protected Collection defaultSuppressionAnnotations() { Collection defaultValues = new ArrayList<>(super.defaultSuppressionAnnotations()); @@ -62,7 +54,7 @@ public Object visit(ASTClassOrInterfaceDeclaration node, Object data) { Map> vars = node.getScope() .getDeclarations(VariableNameDeclaration.class); - List constructors = findAllConstructors(node); + Set constructors = Collections.unmodifiableSet(new HashSet<>(findAllConstructors(node))); for (Map.Entry> entry : vars.entrySet()) { VariableNameDeclaration field = entry.getKey(); AccessNode accessNodeParent = field.getAccessNodeParent(); @@ -74,14 +66,7 @@ public Object visit(ASTClassOrInterfaceDeclaration node, Object data) { } List usages = entry.getValue(); - FieldImmutabilityType type = initializedInConstructor(field, usages, new HashSet<>(constructors)); - if (type == FieldImmutabilityType.MUTABLE) { - continue; - } - if (initializedWhenDeclared(field) && usages.isEmpty()) { - addViolation(data, field.getNode(), field.getImage()); - } - if (type == FieldImmutabilityType.IMMUTABLE || type == FieldImmutabilityType.CHECKDECL && !initializedWhenDeclared(field)) { + if (isImmutableField(field, usages, constructors)) { addViolation(data, field.getNode(), field.getImage()); } } @@ -92,10 +77,9 @@ private boolean initializedWhenDeclared(VariableNameDeclaration field) { return field.getAccessNodeParent().hasDescendantOfType(ASTVariableInitializer.class); } - private FieldImmutabilityType initializedInConstructor(VariableNameDeclaration field, List usages, Set allConstructors) { - FieldImmutabilityType result = FieldImmutabilityType.MUTABLE; - int methodInitCount = 0; - int lambdaUsage = 0; + private boolean isImmutableField(VariableNameDeclaration field, List usages, Set allConstructors) { + boolean assignedInMethod = false; + boolean assignedInLambda = false; Set consSet = new HashSet<>(); // set of constructors accessing the field for (NameOccurrence occ : usages) { JavaNameOccurrence jocc = (JavaNameOccurrence) occ; @@ -104,35 +88,31 @@ private FieldImmutabilityType initializedInConstructor(VariableNameDeclaration f ASTConstructorDeclaration constructor = node.getFirstParentOfType(ASTConstructorDeclaration.class); if (constructor != null && isSameClass(field, constructor)) { if (inLoopOrTry(node)) { - methodInitCount++; + assignedInMethod = true; continue; } if (inAnonymousInnerClass(node)) { - methodInitCount++; + assignedInMethod = true; } else if (node.getFirstParentOfType(ASTLambdaExpression.class) != null) { - lambdaUsage++; + assignedInLambda = true; } else { consSet.add(constructor); } } else { if (node.getFirstParentOfType(ASTLambdaExpression.class) != null) { - lambdaUsage++; + assignedInLambda = true; } else { - methodInitCount++; + assignedInMethod = true; } } } } - if (usages.isEmpty() || methodInitCount == 0 && lambdaUsage == 0 && allConstructors.equals(consSet)) { - result = FieldImmutabilityType.CHECKDECL; - } else { - allConstructors.removeAll(consSet); - if (allConstructors.isEmpty() && methodInitCount == 0 && lambdaUsage == 0) { - result = FieldImmutabilityType.IMMUTABLE; - } + if (assignedInLambda || assignedInMethod) { + return false; } - return result; + return (allConstructors.equals(consSet) && !allConstructors.isEmpty()) + ^ initializedWhenDeclared(field); } /** diff --git a/pmd-java/src/test/resources/net/sourceforge/pmd/lang/java/rule/design/xml/ImmutableField.xml b/pmd-java/src/test/resources/net/sourceforge/pmd/lang/java/rule/design/xml/ImmutableField.xml index 722ffc8377b..725ac4515c8 100644 --- a/pmd-java/src/test/resources/net/sourceforge/pmd/lang/java/rule/design/xml/ImmutableField.xml +++ b/pmd-java/src/test/resources/net/sourceforge/pmd/lang/java/rule/design/xml/ImmutableField.xml @@ -621,4 +621,32 @@ public class ExampleImmutableField { } ]]>
+ + #4008 FN with field assigned only in initializer + 1 + + + #4008 FN with field assigned only in initializer (no ctor) + 1 + + From 5d8b210e6ddd8d7653d359fc78cc4602aa3f6904 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Cl=C3=A9ment=20Fournier?= Date: Fri, 17 Jun 2022 06:51:17 +0200 Subject: [PATCH 33/50] Simplify --- .../java/rule/design/ImmutableFieldRule.java | 26 +++++++------------ 1 file changed, 9 insertions(+), 17 deletions(-) diff --git a/pmd-java/src/main/java/net/sourceforge/pmd/lang/java/rule/design/ImmutableFieldRule.java b/pmd-java/src/main/java/net/sourceforge/pmd/lang/java/rule/design/ImmutableFieldRule.java index e06a73cc79f..c375259d0f5 100644 --- a/pmd-java/src/main/java/net/sourceforge/pmd/lang/java/rule/design/ImmutableFieldRule.java +++ b/pmd-java/src/main/java/net/sourceforge/pmd/lang/java/rule/design/ImmutableFieldRule.java @@ -78,8 +78,6 @@ private boolean initializedWhenDeclared(VariableNameDeclaration field) { } private boolean isImmutableField(VariableNameDeclaration field, List usages, Set allConstructors) { - boolean assignedInMethod = false; - boolean assignedInLambda = false; Set consSet = new HashSet<>(); // set of constructors accessing the field for (NameOccurrence occ : usages) { JavaNameOccurrence jocc = (JavaNameOccurrence) occ; @@ -88,33 +86,27 @@ private boolean isImmutableField(VariableNameDeclaration field, List Date: Sat, 18 Jun 2022 19:16:16 +0200 Subject: [PATCH 34/50] Fix tests --- .../pmd/lang/java/rule/design/ImmutableFieldRule.java | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/pmd-java/src/main/java/net/sourceforge/pmd/lang/java/rule/design/ImmutableFieldRule.java b/pmd-java/src/main/java/net/sourceforge/pmd/lang/java/rule/design/ImmutableFieldRule.java index c375259d0f5..a59d4868f03 100644 --- a/pmd-java/src/main/java/net/sourceforge/pmd/lang/java/rule/design/ImmutableFieldRule.java +++ b/pmd-java/src/main/java/net/sourceforge/pmd/lang/java/rule/design/ImmutableFieldRule.java @@ -94,11 +94,13 @@ private boolean isImmutableField(VariableNameDeclaration field, List Date: Thu, 23 Jun 2022 15:47:23 +0200 Subject: [PATCH 35/50] [java] ImmutableField - add test case for @Inject (#4011) --- .../lang/java/rule/design/xml/ImmutableField.xml | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/pmd-java/src/test/resources/net/sourceforge/pmd/lang/java/rule/design/xml/ImmutableField.xml b/pmd-java/src/test/resources/net/sourceforge/pmd/lang/java/rule/design/xml/ImmutableField.xml index 725ac4515c8..86fe5e42436 100644 --- a/pmd-java/src/test/resources/net/sourceforge/pmd/lang/java/rule/design/xml/ImmutableField.xml +++ b/pmd-java/src/test/resources/net/sourceforge/pmd/lang/java/rule/design/xml/ImmutableField.xml @@ -636,7 +636,8 @@ public class ExampleImmutableField { } } ]]> - + + #4008 FN with field assigned only in initializer (no ctor) 1 + + [java] ImmutableField: Do not flag fields annotated with @Inject #4011 + 0 + + From b68b7b6a876bd7a463a6762cd54655eac8f13bde Mon Sep 17 00:00:00 2001 From: Andreas Dangel Date: Thu, 23 Jun 2022 15:49:03 +0200 Subject: [PATCH 36/50] [java] ImmutableField - add test case for Selenium (#4020) --- .../lang/java/rule/design/xml/ImmutableField.xml | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/pmd-java/src/test/resources/net/sourceforge/pmd/lang/java/rule/design/xml/ImmutableField.xml b/pmd-java/src/test/resources/net/sourceforge/pmd/lang/java/rule/design/xml/ImmutableField.xml index 86fe5e42436..a8f5e2d826d 100644 --- a/pmd-java/src/test/resources/net/sourceforge/pmd/lang/java/rule/design/xml/ImmutableField.xml +++ b/pmd-java/src/test/resources/net/sourceforge/pmd/lang/java/rule/design/xml/ImmutableField.xml @@ -661,6 +661,20 @@ public class Foo { } interface MyService {} +]]> + + + [java] ImmutableField reports fields annotated with @FindBy and @FindBys (Selenium) #4020 + 0 + From 770e416de18411fe453fe6bb9a454fc6da376a8f Mon Sep 17 00:00:00 2001 From: Andreas Dangel Date: Thu, 23 Jun 2022 15:51:11 +0200 Subject: [PATCH 37/50] [java] ImmutableField - add test case for GwtMockito and Spy (Mockito) (#4004) --- .../lang/java/rule/design/xml/ImmutableField.xml | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/pmd-java/src/test/resources/net/sourceforge/pmd/lang/java/rule/design/xml/ImmutableField.xml b/pmd-java/src/test/resources/net/sourceforge/pmd/lang/java/rule/design/xml/ImmutableField.xml index a8f5e2d826d..a79e65de43d 100644 --- a/pmd-java/src/test/resources/net/sourceforge/pmd/lang/java/rule/design/xml/ImmutableField.xml +++ b/pmd-java/src/test/resources/net/sourceforge/pmd/lang/java/rule/design/xml/ImmutableField.xml @@ -675,6 +675,19 @@ public class SomePage { @org.openqa.selenium.support.FindBy(xpath = "//div/table")}) private WebElement table; } +]]> + + + [java] ImmutableField reports fields annotated with @GwtMock (GwtMockito) and @Spy (Mockito) #4004 + 0 + From 7f4ed46a6ab5a901fa98388fa2b889e54652395d Mon Sep 17 00:00:00 2001 From: Andreas Dangel Date: Thu, 23 Jun 2022 15:55:25 +0200 Subject: [PATCH 38/50] [java] ImmutableField - add test case for JPA Entity (#3823) --- .../java/rule/design/xml/ImmutableField.xml | 35 +++++++++++++++++++ 1 file changed, 35 insertions(+) diff --git a/pmd-java/src/test/resources/net/sourceforge/pmd/lang/java/rule/design/xml/ImmutableField.xml b/pmd-java/src/test/resources/net/sourceforge/pmd/lang/java/rule/design/xml/ImmutableField.xml index a79e65de43d..65d8bf8097d 100644 --- a/pmd-java/src/test/resources/net/sourceforge/pmd/lang/java/rule/design/xml/ImmutableField.xml +++ b/pmd-java/src/test/resources/net/sourceforge/pmd/lang/java/rule/design/xml/ImmutableField.xml @@ -688,6 +688,41 @@ public class SomeTest { @org.mockito.Spy private String someSpy; } +]]> + + + [java] ImmutableField: Do not flag fields in @Entity #3823 + 0 + From c1b6f7cc274c00db4c9f4102d0a982e23969bc10 Mon Sep 17 00:00:00 2001 From: Andreas Dangel Date: Thu, 23 Jun 2022 16:01:12 +0200 Subject: [PATCH 39/50] [java] ImmutableField - remove now unneeded default suppression annotations --- .../pmd/lang/java/rule/design/ImmutableFieldRule.java | 7 ------- 1 file changed, 7 deletions(-) diff --git a/pmd-java/src/main/java/net/sourceforge/pmd/lang/java/rule/design/ImmutableFieldRule.java b/pmd-java/src/main/java/net/sourceforge/pmd/lang/java/rule/design/ImmutableFieldRule.java index a59d4868f03..516ae15cb92 100644 --- a/pmd-java/src/main/java/net/sourceforge/pmd/lang/java/rule/design/ImmutableFieldRule.java +++ b/pmd-java/src/main/java/net/sourceforge/pmd/lang/java/rule/design/ImmutableFieldRule.java @@ -38,13 +38,6 @@ public class ImmutableFieldRule extends AbstractLombokAwareRule { @Override protected Collection defaultSuppressionAnnotations() { Collection defaultValues = new ArrayList<>(super.defaultSuppressionAnnotations()); - defaultValues.add("org.mockito.Captor"); - defaultValues.add("org.mockito.InjectMocks"); - defaultValues.add("org.mockito.Mock"); - defaultValues.add("org.springframework.beans.factory.annotation.Autowired"); - defaultValues.add("org.springframework.beans.factory.annotation.Value"); - defaultValues.add("org.springframework.boot.test.mock.mockito.MockBean"); - return defaultValues; } From 520ca80cc5da169c16dfab84230945a5cc9c7e3c Mon Sep 17 00:00:00 2001 From: Andreas Dangel Date: Thu, 23 Jun 2022 16:13:11 +0200 Subject: [PATCH 40/50] [doc] Update release notes for PR #4018 Fixes #3823 Fixes #4004 Fixes #4008 Fixes #4011 Fixes #4020 --- docs/pages/release_notes.md | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/docs/pages/release_notes.md b/docs/pages/release_notes.md index 300f41e5bf7..417aaec88ca 100644 --- a/docs/pages/release_notes.md +++ b/docs/pages/release_notes.md @@ -19,8 +19,13 @@ This is a {{ site.pmd.release_type }} release. * [#3999](https://github.com/pmd/pmd/issues/3999): \[cli] All files are analyzed despite parameter `--file-list` * [#4009](https://github.com/pmd/pmd/issues/4009): \[core] Cannot build PMD with Temurin 17 * java-design + * [#3823](https://github.com/pmd/pmd/issues/3823): \[java] ImmutableField: Do not flag fields in @Entity * [#3981](https://github.com/pmd/pmd/issues/3981): \[java] ImmutableField reports fields annotated with @Value (Spring) * [#3998](https://github.com/pmd/pmd/issues/3998): \[java] ImmutableField reports fields annotated with @Captor (Mockito) + * [#4004](https://github.com/pmd/pmd/issues/4004): \[java] ImmutableField reports fields annotated with @GwtMock (GwtMockito) and @Spy (Mockito) + * [#4008](https://github.com/pmd/pmd/issues/4008): \[java] ImmutableField not reporting fields that are only initialized in the declaration + * [#4011](https://github.com/pmd/pmd/issues/4011): \[java] ImmutableField: Do not flag fields annotated with @Inject + * [#4020](https://github.com/pmd/pmd/issues/4020): \[java] ImmutableField reports fields annotated with @FindBy and @FindBys (Selenium) * java-errorprone * [#3936](https://github.com/pmd/pmd/issues/3936): \[java] AvoidFieldNameMatchingMethodName should consider enum class * [#3937](https://github.com/pmd/pmd/issues/3937): \[java] AvoidDuplicateLiterals - uncompilable test cases From 1694fb714fb8682fed23fa4d292536f0a1607d88 Mon Sep 17 00:00:00 2001 From: Andreas Dangel Date: Thu, 23 Jun 2022 16:14:02 +0200 Subject: [PATCH 41/50] Add @lgemeinhardt as a contributor --- .all-contributorsrc | 9 +++++++++ docs/pages/pmd/projectdocs/credits.md | 27 ++++++++++++++------------- 2 files changed, 23 insertions(+), 13 deletions(-) diff --git a/.all-contributorsrc b/.all-contributorsrc index f2a96ed2ddf..ad7c585dca1 100644 --- a/.all-contributorsrc +++ b/.all-contributorsrc @@ -6703,6 +6703,15 @@ "contributions": [ "doc" ] + }, + { + "login": "lgemeinhardt", + "name": "lgemeinhardt", + "avatar_url": "https://avatars.githubusercontent.com/u/1395165?v=4", + "profile": "https://github.com/lgemeinhardt", + "contributions": [ + "bug" + ] } ], "contributorsPerLine": 7, diff --git a/docs/pages/pmd/projectdocs/credits.md b/docs/pages/pmd/projectdocs/credits.md index caa59049f94..faedc0bbd28 100644 --- a/docs/pages/pmd/projectdocs/credits.md +++ b/docs/pages/pmd/projectdocs/credits.md @@ -836,120 +836,121 @@ Thanks goes to these wonderful people ([emoji key](https://allcontributors.org/d
khalidkh

🐛
krzyk

🐛
lasselindqvist

🐛 +
lgemeinhardt

🐛
lihuaib

🐛
lonelyma1021

🐛
lpeddy

🐛 -
lujiefsi

💻 +
lujiefsi

💻
lukelukes

💻
lyriccoder

🐛
marcelmore

🐛
matchbox

🐛
matthiaskraaz

🐛
meandonlyme

🐛 -
mikesive

🐛 +
mikesive

🐛
milossesic

🐛
mriddell95

🐛
mrlzh

🐛
msloan

🐛
mucharlaravalika

🐛
mvenneman

🐛 -
nareshl119

🐛 +
nareshl119

🐛
nicolas-harraudeau-sonarsource

🐛
noerremark

🐛
novsirion

🐛
oggboy

🐛
oinume

🐛
orimarko

💻 🐛 -
pallavi agarwal

🐛 +
pallavi agarwal

🐛
parksungrin

🐛
patpatpat123

🐛
patriksevallius

🐛
pbrajesh1

🐛
phoenix384

🐛
piotrszymanski-sc

💻 -
plan3d

🐛 +
plan3d

🐛
poojasix

🐛
prabhushrikant

🐛
pujitha8783

🐛
r-r-a-j

🐛
raghujayjunk

🐛
rajeshveera

🐛 -
rajeswarreddy88

🐛 +
rajeswarreddy88

🐛
recdevs

🐛
reudismam

💻 🐛
rijkt

🐛
rillig-tk

🐛
rmohan20

💻 🐛
rxmicro

🐛 -
ryan-gustafson

💻 🐛 +
ryan-gustafson

💻 🐛
sabi0

🐛
scais

🐛
sebbASF

🐛
sergeygorbaty

💻
shilko2013

🐛
shiomiyan

📖 -
simeonKondr

🐛 +
simeonKondr

🐛
snajberk

🐛
sniperrifle2004

🐛
snuyanzin

🐛 💻
sratz

🐛
stonio

🐛
sturton

💻 🐛 -
sudharmohan

🐛 +
sudharmohan

🐛
suruchidawar

🐛
svenfinitiv

🐛
tashiscool

🐛
test-git-hook

🐛
testation21

💻 🐛
thanosa

🐛 -
tiandiyixian

🐛 +
tiandiyixian

🐛
tobwoerk

🐛
tprouvot

🐛
trentchilders

🐛
triandicAnt

🐛
trishul14

🐛
tsui

🐛 -
winhkey

🐛 +
winhkey

🐛
witherspore

🐛
wjljack

🐛
wuchiuwong

🐛
xingsong

🐛
xioayuge

🐛
xnYi9wRezm

💻 🐛 -
xuanuy

🐛 +
xuanuy

🐛
xyf0921

🐛
yalechen-cyw3

🐛
yasuharu-sato

🐛
zenglian

🐛
zgrzyt93

💻 🐛
zh3ng

🐛 -
zt_soft

🐛 +
zt_soft

🐛
ztt79

🐛
zzzzfeng

🐛
Árpád Magosányi

🐛 From de3f377c62779e61766e1873684c6e2226ed6fc7 Mon Sep 17 00:00:00 2001 From: Andreas Dangel Date: Thu, 23 Jun 2022 16:14:23 +0200 Subject: [PATCH 42/50] Add @HaelC as a contributor --- .all-contributorsrc | 9 ++ docs/pages/pmd/projectdocs/credits.md | 151 +++++++++++++------------- 2 files changed, 85 insertions(+), 75 deletions(-) diff --git a/.all-contributorsrc b/.all-contributorsrc index ad7c585dca1..f9f0563c44b 100644 --- a/.all-contributorsrc +++ b/.all-contributorsrc @@ -6712,6 +6712,15 @@ "contributions": [ "bug" ] + }, + { + "login": "HaelC", + "name": "Haoliang Chen", + "avatar_url": "https://avatars.githubusercontent.com/u/16898273?v=4", + "profile": "https://haelchan.me/", + "contributions": [ + "bug" + ] } ], "contributorsPerLine": 7, diff --git a/docs/pages/pmd/projectdocs/credits.md b/docs/pages/pmd/projectdocs/credits.md index faedc0bbd28..abf76da116b 100644 --- a/docs/pages/pmd/projectdocs/credits.md +++ b/docs/pages/pmd/projectdocs/credits.md @@ -279,677 +279,678 @@ Thanks goes to these wonderful people ([emoji key](https://allcontributors.org/d
Guy Elsmore-Paddock

🐛
Görkem Mülayim

🐛
Hanzel Godinez

🐛 +
Haoliang Chen

🐛
Harsh Kukreja

🐛
Heber

🐛 -
Henning Schmiedehausen

💻 🐛 +
Henning Schmiedehausen

💻 🐛
Henning von Bargen

💻
Hervé Boutemy

🐛
Himanshu Pandey

🐛
Hokwang Lee

🐛
Hooperbloob

💻
Hung PHAN

🐛 -
IDoCodingStuffs

💻 🐛 +
IDoCodingStuffs

💻 🐛
Iccen Gan

🐛
Ignacio Mariano Tirabasso

🐛
Igor Melnichenko

🐛
Igor Moreno

🐛
Intelesis-MS

🐛
Iroha_

🐛 -
Ishan Srivastava

🐛 +
Ishan Srivastava

🐛
Ivano Guerini

🐛
Ivar Andreas Bonsaksen

🐛
Ivo Šmíd

🐛
JJengility

🐛
Jake Hemmerle

🐛
James Harrison

🐛 💻 -
Jan

🐛 +
Jan

🐛
Jan Aertgeerts

💻 🐛
Jan Brümmer

🐛
Jan Tříska

🐛
Jan-Lukas Else

🐛
Jason Qiu

💻 📖
Jason Williams

🐛 -
Jean-Paul Mayer

🐛 +
Jean-Paul Mayer

🐛
Jean-Simon Larochelle

🐛
Jeff Bartolotta

💻 🐛
Jeff Hube

💻 🐛
Jeff Jensen

🐛
Jeff May

🐛
Jens Gerdes

🐛 -
Jeroen Borgers

🐛 +
Jeroen Borgers

🐛
Jerome Russ

🐛
JerritEic

💻 📖
Jiri Pejchal

🐛
Jithin Sunny

🐛
Jiří Škorpil

🐛
Joao Machado

🐛 -
Jochen Krauss

🐛 +
Jochen Krauss

🐛
Johan Hammar

🐛
John Karp

🐛
John Zhang

🐛
John-Teng

💻 🐛
Jon Moroney

💻 🐛
Jonas Geiregat

🐛 -
Jonathan Wiesel

💻 🐛 +
Jonathan Wiesel

💻 🐛
Jordan

🐛
Jordi Llach

🐛
Jorge Solórzano

🐛
JorneVL

🐛
Jose Palafox

🐛
Jose Stovall

🐛 -
Joseph

💻 +
Joseph

💻
Joseph Heenan

🐛
Josh Feingold

💻 🐛
Josh Holthaus

🐛
Joshua S Arquilevich

🐛
João Ferreira

💻 🐛
João Pedro Schmitt

🐛 -
Juan Martín Sotuyo Dodero

💻 📖 🐛 🚧 +
Juan Martín Sotuyo Dodero

💻 📖 🐛 🚧
Juan Pablo Civile

🐛
Julian Voronetsky

🐛
Julien

🐛
Julius

🐛
JustPRV

🐛
Jörn Huxhorn

🐛 -
KThompso

🐛 +
KThompso

🐛
Kai Amundsen

🐛
Karel Vervaeke

🐛
Karl-Andero Mere

🐛
Karl-Philipp Richter

🐛
Karsten Silz

🐛
Kazuma Watanabe

🐛 -
Kev

🐛 +
Kev

🐛
Keve Müller

🐛
Kevin Guerra

💻
Kevin Jones

🐛
Kevin Wayne

🐛
Kieran Black

🐛
Kirill Zubov

🐛 -
Kirk Clemens

💻 🐛 +
Kirk Clemens

💻 🐛
Klaus Hartl

🐛
Koen Van Looveren

🐛
Kris Scheibe

💻 🐛
Kunal Thanki

🐛
LaLucid

💻
Larry Diamond

💻 🐛 -
Lars Knickrehm

🐛 +
Lars Knickrehm

🐛
Leo Gutierrez

🐛
LiGaOg

💻
Lintsi

🐛
Linus Fernandes

🐛
Lixon Lookose

🐛
Logesh

🐛 -
Lorenzo Gabriele

🐛 +
Lorenzo Gabriele

🐛
Loïc Ledoyen

🐛
Lucas Silva

🐛
Lucas Soncini

💻 🐛
Lukasz Slonina

🐛
Lukebray

🐛
Lyor Goldstein

🐛 -
MCMicS

🐛 +
MCMicS

🐛
Macarse

🐛
Machine account for PMD

💻
Maciek Siemczyk

🐛
Maikel Steneker

💻 🐛
Maksim Moiseikin

🐛
Manfred Koch

🐛 -
Manuel Moya Ferrer

💻 🐛 +
Manuel Moya Ferrer

💻 🐛
Manuel Ryan

🐛
Marat Vyshegorodtsev

🐛
Marcel Härle

🐛
Marcello Fialho

🐛
Marcin Rataj

🐛
Mark Adamcin

🐛 -
Mark Hall

💻 🐛 +
Mark Hall

💻 🐛
Mark Kolich

🐛
Mark Pritchard

🐛
Markus Rathgeb

🐛
Marquis Wang

🐛
Martin Feldsztejn

🐛
Martin Lehmann

🐛 -
Martin Spamer

🐛 +
Martin Spamer

🐛
Martin Tarjányi

🐛
MatFl

🐛
Mateusz Stefanski

🐛
Mathieu Gouin

🐛
MatiasComercio

💻 🐛
Matt Benson

🐛 -
Matt De Poorter

🐛 +
Matt De Poorter

🐛
Matt Harrah

🐛
Matt Nelson

🐛
Matthew Amos

🐛
Matthew Duggan

🐛
Matthew Hall

🐛
Matías Fraga

💻 🐛 -
Maxime Robert

💻 🐛 +
Maxime Robert

💻 🐛
MetaBF

🐛
Michael

🐛
Michael Bell

🐛
Michael Bernstein

🐛
Michael Clay

🐛
Michael Dombrowski

🐛 -
Michael Hausegger

🐛 +
Michael Hausegger

🐛
Michael Hoefer

🐛
Michael Möbius

🐛
Michael N. Lipp

🐛
Michael Pellegrini

🐛
Michal Kordas

🐛
Michał Borek

🐛 -
Michał Kuliński

🐛 +
Michał Kuliński

🐛
Miguel Núñez Díaz-Montes

🐛
Mihai Ionut

🐛
Mirek Hankus

🐛
Mladjan Gadzic

🐛
MrAngry52

🐛
Muminur Choudhury

🐛 -
Mykhailo Palahuta

💻 🐛 +
Mykhailo Palahuta

💻 🐛
Nagendra Kumar Singh

🐛
Nahuel Barrios

🐛
Nathan Braun

🐛
Nathan Reynolds

🐛
Nathan Reynolds

🐛
Nathanaël

🐛 -
Naveen

💻 +
Naveen

💻
Nazdravi

🐛
Neha-Dhonde

🐛
Nicholas Doyle

🐛
Nick Butcher

🐛
Nico Gallinal

🐛
Nicola Dal Maso

🐛 -
Nicolas Filotto

💻 +
Nicolas Filotto

💻
Nikita Chursin

🐛
Niklas Baudy

🐛
Nikolas Havrikov

🐛
Nilesh Virkar

🐛
Nimit Patel

🐛
Niranjan Harpale

🐛 -
Noah Sussman

🐛 +
Noah Sussman

🐛
Noah0120

🐛
Noam Tamim

🐛
Noel Grandin

🐛
Olaf Haalstra

🐛
Oleg Pavlenko

🐛
Oleksii Dykov

💻 -
Oliver Eikemeier

🐛 +
Oliver Eikemeier

🐛
Olivier Parent

💻 🐛
Ollie Abbey

💻 🐛
OverDrone

🐛
Ozan Gulle

💻 🐛
PUNEET JAIN

🐛
Parbati Bose

🐛 -
Paul Berg

🐛 +
Paul Berg

🐛
Pavel Bludov

🐛
Pavel Mička

🐛
Pedro Nuno Santos

🐛
Pedro Rijo

🐛
Pelisse Romain

💻 📖 🐛
Per Abich

💻 -
Pete Davids

🐛 +
Pete Davids

🐛
Peter Bruin

🐛
Peter Chittum

💻 🐛
Peter Cudmore

🐛
Peter Kasson

🐛
Peter Kofler

🐛
Pham Hai Trung

🐛 -
Philip Graf

💻 🐛 +
Philip Graf

💻 🐛
Philip Hachey

🐛
Philippe Ozil

🐛
Phinehas Artemix

🐛
Phokham Nonava

🐛
Piotr Szymański

🐛
Piotrek Żygieło

💻 🐛 -
Pranay Jaiswal

🐛 +
Pranay Jaiswal

🐛
Prasad Kamath

🐛
Prasanna

🐛
Presh-AR

🐛
Puneet1726

🐛
Rafael Cortês

🐛
RaheemShaik999

🐛 -
RajeshR

💻 🐛 +
RajeshR

💻 🐛
Ramachandra Mohan

🐛
Ramel0921

🐛
Raquel Pau

🐛
Ravikiran Janardhana

🐛
Reda Benhemmouche

🐛
Renato Oliveira

💻 🐛 -
Rich DiCroce

🐛 +
Rich DiCroce

🐛
Riot R1cket

🐛
Rishabh Jain

🐛
RishabhDeep Singh

🐛
Robbie Martinus

💻 🐛
Robert Henry

🐛
Robert Painsi

🐛 -
Robert Russell

🐛 +
Robert Russell

🐛
Robert Sösemann

💻 📖 📢 🐛
Robert Whitebit

🐛
Robin Richtsfeld

🐛
Robin Stocker

💻 🐛
Robin Wils

🐛
RochusOest

🐛 -
Rodolfo Noviski

🐛 +
Rodolfo Noviski

🐛
Rodrigo Casara

🐛
Rodrigo Fernandes

🐛
Roman Salvador

💻 🐛
Ronald Blaschke

🐛
Róbert Papp

🐛
Saikat Sengupta

🐛 -
Saksham Handu

🐛 +
Saksham Handu

🐛
Saladoc

🐛
Salesforce Bob Lightning

🐛
Sam Carlberg

🐛
Satoshi Kubo

🐛
Scott Kennedy

🐛
Scott Wells

🐛 💻 -
Scrsloota

💻 +
Scrsloota

💻
Sebastian Bögl

🐛
Sebastian Schuberth

🐛
Sebastian Schwarz

🐛
Sergey Gorbaty

🐛
Sergey Kozlov

🐛
Sergey Yanzin

💻 🐛 -
Seth Wilcox

💻 +
Seth Wilcox

💻
Shubham

💻 🐛
Simon Xiao

🐛
Srinivasan Venkatachalam

🐛
Stanislav Gromov

🐛
Stanislav Myachenkov

💻
Stefan Birkner

🐛 -
Stefan Bohn

🐛 +
Stefan Bohn

🐛
Stefan Endrullis

🐛
Stefan Klöss-Schuster

🐛
Stefan Wolf

🐛
Stephan H. Wissel

🐛
Stephen

🐛
Stephen Friedrich

🐛 -
Steve Babula

💻 +
Steve Babula

💻
Stexxe

🐛
Stian Lågstad

🐛
StuartClayton5

🐛
Supun Arunoda

🐛
Suren Abrahamyan

🐛
SwatiBGupta1110

🐛 -
SyedThoufich

🐛 +
SyedThoufich

🐛
Szymon Sasin

🐛
T-chuangxin

🐛
TERAI Atsuhiro

🐛
TIOBE Software

💻 🐛
Taylor Smock

🐛
Techeira Damián

💻 🐛 -
Ted Husted

🐛 +
Ted Husted

🐛
TehBakker

🐛
The Gitter Badger

🐛
Theodoor

🐛
Thiago Henrique Hüpner

🐛
Thibault Meyer

🐛
Thomas Güttler

🐛 -
Thomas Jones-Low

🐛 +
Thomas Jones-Low

🐛
Thomas Smith

💻 🐛
ThrawnCA

🐛
Thunderforge

💻 🐛
Tim van der Lippe

🐛
Tobias Weimer

💻 🐛
Tom Daly

🐛 -
Tomer Figenblat

🐛 +
Tomer Figenblat

🐛
Tomi De Lucca

💻 🐛
Torsten Kleiber

🐛
TrackerSB

🐛
Ullrich Hafner

🐛
Utku Cuhadaroglu

💻 🐛
Valentin Brandl

🐛 -
Valeria

🐛 +
Valeria

🐛
Vasily Anisimov

🐛
Vibhor Goyal

🐛
Vickenty Fesunov

🐛
Victor Noël

🐛
Vincent Galloy

💻
Vincent HUYNH

🐛 -
Vincent Maurin

🐛 +
Vincent Maurin

🐛
Vincent Privat

🐛
Vishhwas

🐛
Vitaly

🐛
Vitaly Polonetsky

🐛
Vojtech Polivka

🐛
Vsevolod Zholobov

🐛 -
Vyom Yadav

💻 +
Vyom Yadav

💻
Wang Shidong

🐛
Waqas Ahmed

🐛
Wayne J. Earl

🐛
Wchenghui

🐛
Will Winder

🐛
William Brockhus

💻 🐛 -
Wilson Kurniawan

🐛 +
Wilson Kurniawan

🐛
Wim Deblauwe

🐛
Woongsik Choi

🐛
XenoAmess

💻 🐛
Yang

💻
YaroslavTER

🐛
Young Chan

💻 🐛 -
YuJin Kim

🐛 +
YuJin Kim

🐛
Yuri Dolzhenko

🐛
Yurii Dubinka

🐛
Zoltan Farkas

🐛
Zustin

🐛
aaronhurst-google

🐛
alexmodis

🐛 -
andreoss

🐛 +
andreoss

🐛
andrey81inmd

💻 🐛
anicoara

🐛
arunprasathav

🐛
asiercamara

🐛
astillich-igniti

💻
avesolovksyy

🐛 -
avishvat

🐛 +
avishvat

🐛
avivmu

🐛
axelbarfod1

🐛
b-3-n

🐛
balbhadra9

🐛
base23de

🐛
bergander

🐛 -
berkam

💻 🐛 +
berkam

💻 🐛
breizh31

🐛
caesarkim

🐛
carolyujing

🐛
cesares-basilico

🐛
chrite

🐛
cobratbq

🐛 -
coladict

🐛 +
coladict

🐛
cosmoJFH

🐛
cristalp

🐛
crunsk

🐛
cwholmes

🐛
cyberjj999

🐛
cyw3

🐛 -
d1ss0nanz

🐛 +
d1ss0nanz

🐛
dalizi007

💻
danbrycefairsailcom

🐛
dariansanity

🐛
darrenmiliband

🐛
davidburstrom

🐛
dbirkman-paloalto

🐛 -
deepak-patra

🐛 +
deepak-patra

🐛
dependabot[bot]

💻 🐛
dinesh150

🐛
diziaq

🐛
dreaminpast123

🐛
duanyanan

🐛
dutt-sanjay

🐛 -
dylanleung

🐛 +
dylanleung

🐛
dzeigler

🐛
ekkirala

🐛
emersonmoura

🐛
fairy

🐛
filiprafalowicz

💻
foxmason

🐛 -
frankegabor

🐛 +
frankegabor

🐛
frankl

🐛
freafrea

🐛
fsapatin

🐛
gracia19

🐛
guo fei

🐛
gurmsc5

🐛 -
gwilymatgearset

💻 🐛 +
gwilymatgearset

💻 🐛
haigsn

🐛
hemanshu070

🐛
henrik242

🐛
hongpuwu

🐛
hvbtup

💻 🐛
igniti GmbH

🐛 -
ilovezfs

🐛 +
ilovezfs

🐛
itaigilo

🐛
jakivey32

🐛
jbennett2091

🐛
jcamerin

🐛
jkeener1

🐛
jmetertea

🐛 -
johnra2

💻 +
johnra2

💻
josemanuelrolon

💻 🐛
kabroxiko

💻 🐛
karwer

🐛
kaulonline

🐛
kdaemonv

🐛
kenji21

💻 🐛 -
kfranic

🐛 +
kfranic

🐛
khalidkh

🐛
krzyk

🐛
lasselindqvist

🐛
lgemeinhardt

🐛
lihuaib

🐛
lonelyma1021

🐛 -
lpeddy

🐛 +
lpeddy

🐛
lujiefsi

💻
lukelukes

💻
lyriccoder

🐛
marcelmore

🐛
matchbox

🐛
matthiaskraaz

🐛 -
meandonlyme

🐛 +
meandonlyme

🐛
mikesive

🐛
milossesic

🐛
mriddell95

🐛
mrlzh

🐛
msloan

🐛
mucharlaravalika

🐛 -
mvenneman

🐛 +
mvenneman

🐛
nareshl119

🐛
nicolas-harraudeau-sonarsource

🐛
noerremark

🐛
novsirion

🐛
oggboy

🐛
oinume

🐛 -
orimarko

💻 🐛 +
orimarko

💻 🐛
pallavi agarwal

🐛
parksungrin

🐛
patpatpat123

🐛
patriksevallius

🐛
pbrajesh1

🐛
phoenix384

🐛 -
piotrszymanski-sc

💻 +
piotrszymanski-sc

💻
plan3d

🐛
poojasix

🐛
prabhushrikant

🐛
pujitha8783

🐛
r-r-a-j

🐛
raghujayjunk

🐛 -
rajeshveera

🐛 +
rajeshveera

🐛
rajeswarreddy88

🐛
recdevs

🐛
reudismam

💻 🐛
rijkt

🐛
rillig-tk

🐛
rmohan20

💻 🐛 -
rxmicro

🐛 +
rxmicro

🐛
ryan-gustafson

💻 🐛
sabi0

🐛
scais

🐛
sebbASF

🐛
sergeygorbaty

💻
shilko2013

🐛 -
shiomiyan

📖 +
shiomiyan

📖
simeonKondr

🐛
snajberk

🐛
sniperrifle2004

🐛
snuyanzin

🐛 💻
sratz

🐛
stonio

🐛 -
sturton

💻 🐛 +
sturton

💻 🐛
sudharmohan

🐛
suruchidawar

🐛
svenfinitiv

🐛
tashiscool

🐛
test-git-hook

🐛
testation21

💻 🐛 -
thanosa

🐛 +
thanosa

🐛
tiandiyixian

🐛
tobwoerk

🐛
tprouvot

🐛
trentchilders

🐛
triandicAnt

🐛
trishul14

🐛 -
tsui

🐛 +
tsui

🐛
winhkey

🐛
witherspore

🐛
wjljack

🐛
wuchiuwong

🐛
xingsong

🐛
xioayuge

🐛 -
xnYi9wRezm

💻 🐛 +
xnYi9wRezm

💻 🐛
xuanuy

🐛
xyf0921

🐛
yalechen-cyw3

🐛
yasuharu-sato

🐛
zenglian

🐛
zgrzyt93

💻 🐛 -
zh3ng

🐛 +
zh3ng

🐛
zt_soft

🐛
ztt79

🐛
zzzzfeng

🐛 From 5b210a7239e47f2abbd6a2c7ec7fe056f821ba94 Mon Sep 17 00:00:00 2001 From: Andreas Dangel Date: Thu, 23 Jun 2022 16:15:14 +0200 Subject: [PATCH 43/50] Add @FSchliephacke as a contributor --- .all-contributorsrc | 9 ++ docs/pages/pmd/projectdocs/credits.md | 159 +++++++++++++------------- 2 files changed, 89 insertions(+), 79 deletions(-) diff --git a/.all-contributorsrc b/.all-contributorsrc index f9f0563c44b..77965bd302b 100644 --- a/.all-contributorsrc +++ b/.all-contributorsrc @@ -6721,6 +6721,15 @@ "contributions": [ "bug" ] + }, + { + "login": "FSchliephacke", + "name": "FSchliephacke", + "avatar_url": "https://avatars.githubusercontent.com/u/10260493?v=4", + "profile": "https://github.com/FSchliephacke", + "contributions": [ + "bug" + ] } ], "contributorsPerLine": 7, diff --git a/docs/pages/pmd/projectdocs/credits.md b/docs/pages/pmd/projectdocs/credits.md index abf76da116b..af2199ce28f 100644 --- a/docs/pages/pmd/projectdocs/credits.md +++ b/docs/pages/pmd/projectdocs/credits.md @@ -244,712 +244,713 @@ Thanks goes to these wonderful people ([emoji key](https://allcontributors.org/d
Erik Bleske

🐛
Ernst Reissner

🐛
F.W. Dekker

🐛 +
FSchliephacke

🐛
Facundo

🐛 -
Federico Giust

🐛 +
Federico Giust

🐛
Fedor Sherstobitov

🐛
Felix Lampe

🐛
Filip Golonka

🐛
Filipe Esperandio

💻 🐛
Filippo Nova

🐛
Francesco la Torre

🐛 -
Francisco Duarte

🐛 +
Francisco Duarte

🐛
Frieder Bluemle

🐛
Frits Jalvingh

💻 🐛
G. Bazior

🐛
Gabe Henkes

🐛
Genoud Magloire

🐛
Geoffrey555

🐛 -
Georg Romstorfer

🐛 +
Georg Romstorfer

🐛
Gio

🐛
Gol

🐛
Gonzalo Exequiel Ibars Ingman

💻 🐛
GooDer

🐛
Gregor Riegler

🐛
Grzegorz Olszewski

🐛 -
Gunther Schrijvers

💻 🐛 +
Gunther Schrijvers

💻 🐛
Gustavo Krieger

🐛
Guy Elsmore-Paddock

🐛
Görkem Mülayim

🐛
Hanzel Godinez

🐛
Haoliang Chen

🐛
Harsh Kukreja

🐛 -
Heber

🐛 +
Heber

🐛
Henning Schmiedehausen

💻 🐛
Henning von Bargen

💻
Hervé Boutemy

🐛
Himanshu Pandey

🐛
Hokwang Lee

🐛
Hooperbloob

💻 -
Hung PHAN

🐛 +
Hung PHAN

🐛
IDoCodingStuffs

💻 🐛
Iccen Gan

🐛
Ignacio Mariano Tirabasso

🐛
Igor Melnichenko

🐛
Igor Moreno

🐛
Intelesis-MS

🐛 -
Iroha_

🐛 +
Iroha_

🐛
Ishan Srivastava

🐛
Ivano Guerini

🐛
Ivar Andreas Bonsaksen

🐛
Ivo Šmíd

🐛
JJengility

🐛
Jake Hemmerle

🐛 -
James Harrison

🐛 💻 +
James Harrison

🐛 💻
Jan

🐛
Jan Aertgeerts

💻 🐛
Jan Brümmer

🐛
Jan Tříska

🐛
Jan-Lukas Else

🐛
Jason Qiu

💻 📖 -
Jason Williams

🐛 +
Jason Williams

🐛
Jean-Paul Mayer

🐛
Jean-Simon Larochelle

🐛
Jeff Bartolotta

💻 🐛
Jeff Hube

💻 🐛
Jeff Jensen

🐛
Jeff May

🐛 -
Jens Gerdes

🐛 +
Jens Gerdes

🐛
Jeroen Borgers

🐛
Jerome Russ

🐛
JerritEic

💻 📖
Jiri Pejchal

🐛
Jithin Sunny

🐛
Jiří Škorpil

🐛 -
Joao Machado

🐛 +
Joao Machado

🐛
Jochen Krauss

🐛
Johan Hammar

🐛
John Karp

🐛
John Zhang

🐛
John-Teng

💻 🐛
Jon Moroney

💻 🐛 -
Jonas Geiregat

🐛 +
Jonas Geiregat

🐛
Jonathan Wiesel

💻 🐛
Jordan

🐛
Jordi Llach

🐛
Jorge Solórzano

🐛
JorneVL

🐛
Jose Palafox

🐛 -
Jose Stovall

🐛 +
Jose Stovall

🐛
Joseph

💻
Joseph Heenan

🐛
Josh Feingold

💻 🐛
Josh Holthaus

🐛
Joshua S Arquilevich

🐛
João Ferreira

💻 🐛 -
João Pedro Schmitt

🐛 +
João Pedro Schmitt

🐛
Juan Martín Sotuyo Dodero

💻 📖 🐛 🚧
Juan Pablo Civile

🐛
Julian Voronetsky

🐛
Julien

🐛
Julius

🐛
JustPRV

🐛 -
Jörn Huxhorn

🐛 +
Jörn Huxhorn

🐛
KThompso

🐛
Kai Amundsen

🐛
Karel Vervaeke

🐛
Karl-Andero Mere

🐛
Karl-Philipp Richter

🐛
Karsten Silz

🐛 -
Kazuma Watanabe

🐛 +
Kazuma Watanabe

🐛
Kev

🐛
Keve Müller

🐛
Kevin Guerra

💻
Kevin Jones

🐛
Kevin Wayne

🐛
Kieran Black

🐛 -
Kirill Zubov

🐛 +
Kirill Zubov

🐛
Kirk Clemens

💻 🐛
Klaus Hartl

🐛
Koen Van Looveren

🐛
Kris Scheibe

💻 🐛
Kunal Thanki

🐛
LaLucid

💻 -
Larry Diamond

💻 🐛 +
Larry Diamond

💻 🐛
Lars Knickrehm

🐛
Leo Gutierrez

🐛
LiGaOg

💻
Lintsi

🐛
Linus Fernandes

🐛
Lixon Lookose

🐛 -
Logesh

🐛 +
Logesh

🐛
Lorenzo Gabriele

🐛
Loïc Ledoyen

🐛
Lucas Silva

🐛
Lucas Soncini

💻 🐛
Lukasz Slonina

🐛
Lukebray

🐛 -
Lyor Goldstein

🐛 +
Lyor Goldstein

🐛
MCMicS

🐛
Macarse

🐛
Machine account for PMD

💻
Maciek Siemczyk

🐛
Maikel Steneker

💻 🐛
Maksim Moiseikin

🐛 -
Manfred Koch

🐛 +
Manfred Koch

🐛
Manuel Moya Ferrer

💻 🐛
Manuel Ryan

🐛
Marat Vyshegorodtsev

🐛
Marcel Härle

🐛
Marcello Fialho

🐛
Marcin Rataj

🐛 -
Mark Adamcin

🐛 +
Mark Adamcin

🐛
Mark Hall

💻 🐛
Mark Kolich

🐛
Mark Pritchard

🐛
Markus Rathgeb

🐛
Marquis Wang

🐛
Martin Feldsztejn

🐛 -
Martin Lehmann

🐛 +
Martin Lehmann

🐛
Martin Spamer

🐛
Martin Tarjányi

🐛
MatFl

🐛
Mateusz Stefanski

🐛
Mathieu Gouin

🐛
MatiasComercio

💻 🐛 -
Matt Benson

🐛 +
Matt Benson

🐛
Matt De Poorter

🐛
Matt Harrah

🐛
Matt Nelson

🐛
Matthew Amos

🐛
Matthew Duggan

🐛
Matthew Hall

🐛 -
Matías Fraga

💻 🐛 +
Matías Fraga

💻 🐛
Maxime Robert

💻 🐛
MetaBF

🐛
Michael

🐛
Michael Bell

🐛
Michael Bernstein

🐛
Michael Clay

🐛 -
Michael Dombrowski

🐛 +
Michael Dombrowski

🐛
Michael Hausegger

🐛
Michael Hoefer

🐛
Michael Möbius

🐛
Michael N. Lipp

🐛
Michael Pellegrini

🐛
Michal Kordas

🐛 -
Michał Borek

🐛 +
Michał Borek

🐛
Michał Kuliński

🐛
Miguel Núñez Díaz-Montes

🐛
Mihai Ionut

🐛
Mirek Hankus

🐛
Mladjan Gadzic

🐛
MrAngry52

🐛 -
Muminur Choudhury

🐛 +
Muminur Choudhury

🐛
Mykhailo Palahuta

💻 🐛
Nagendra Kumar Singh

🐛
Nahuel Barrios

🐛
Nathan Braun

🐛
Nathan Reynolds

🐛
Nathan Reynolds

🐛 -
Nathanaël

🐛 +
Nathanaël

🐛
Naveen

💻
Nazdravi

🐛
Neha-Dhonde

🐛
Nicholas Doyle

🐛
Nick Butcher

🐛
Nico Gallinal

🐛 -
Nicola Dal Maso

🐛 +
Nicola Dal Maso

🐛
Nicolas Filotto

💻
Nikita Chursin

🐛
Niklas Baudy

🐛
Nikolas Havrikov

🐛
Nilesh Virkar

🐛
Nimit Patel

🐛 -
Niranjan Harpale

🐛 +
Niranjan Harpale

🐛
Noah Sussman

🐛
Noah0120

🐛
Noam Tamim

🐛
Noel Grandin

🐛
Olaf Haalstra

🐛
Oleg Pavlenko

🐛 -
Oleksii Dykov

💻 +
Oleksii Dykov

💻
Oliver Eikemeier

🐛
Olivier Parent

💻 🐛
Ollie Abbey

💻 🐛
OverDrone

🐛
Ozan Gulle

💻 🐛
PUNEET JAIN

🐛 -
Parbati Bose

🐛 +
Parbati Bose

🐛
Paul Berg

🐛
Pavel Bludov

🐛
Pavel Mička

🐛
Pedro Nuno Santos

🐛
Pedro Rijo

🐛
Pelisse Romain

💻 📖 🐛 -
Per Abich

💻 +
Per Abich

💻
Pete Davids

🐛
Peter Bruin

🐛
Peter Chittum

💻 🐛
Peter Cudmore

🐛
Peter Kasson

🐛
Peter Kofler

🐛 -
Pham Hai Trung

🐛 +
Pham Hai Trung

🐛
Philip Graf

💻 🐛
Philip Hachey

🐛
Philippe Ozil

🐛
Phinehas Artemix

🐛
Phokham Nonava

🐛
Piotr Szymański

🐛 -
Piotrek Żygieło

💻 🐛 +
Piotrek Żygieło

💻 🐛
Pranay Jaiswal

🐛
Prasad Kamath

🐛
Prasanna

🐛
Presh-AR

🐛
Puneet1726

🐛
Rafael Cortês

🐛 -
RaheemShaik999

🐛 +
RaheemShaik999

🐛
RajeshR

💻 🐛
Ramachandra Mohan

🐛
Ramel0921

🐛
Raquel Pau

🐛
Ravikiran Janardhana

🐛
Reda Benhemmouche

🐛 -
Renato Oliveira

💻 🐛 +
Renato Oliveira

💻 🐛
Rich DiCroce

🐛
Riot R1cket

🐛
Rishabh Jain

🐛
RishabhDeep Singh

🐛
Robbie Martinus

💻 🐛
Robert Henry

🐛 -
Robert Painsi

🐛 +
Robert Painsi

🐛
Robert Russell

🐛
Robert Sösemann

💻 📖 📢 🐛
Robert Whitebit

🐛
Robin Richtsfeld

🐛
Robin Stocker

💻 🐛
Robin Wils

🐛 -
RochusOest

🐛 +
RochusOest

🐛
Rodolfo Noviski

🐛
Rodrigo Casara

🐛
Rodrigo Fernandes

🐛
Roman Salvador

💻 🐛
Ronald Blaschke

🐛
Róbert Papp

🐛 -
Saikat Sengupta

🐛 +
Saikat Sengupta

🐛
Saksham Handu

🐛
Saladoc

🐛
Salesforce Bob Lightning

🐛
Sam Carlberg

🐛
Satoshi Kubo

🐛
Scott Kennedy

🐛 -
Scott Wells

🐛 💻 +
Scott Wells

🐛 💻
Scrsloota

💻
Sebastian Bögl

🐛
Sebastian Schuberth

🐛
Sebastian Schwarz

🐛
Sergey Gorbaty

🐛
Sergey Kozlov

🐛 -
Sergey Yanzin

💻 🐛 +
Sergey Yanzin

💻 🐛
Seth Wilcox

💻
Shubham

💻 🐛
Simon Xiao

🐛
Srinivasan Venkatachalam

🐛
Stanislav Gromov

🐛
Stanislav Myachenkov

💻 -
Stefan Birkner

🐛 +
Stefan Birkner

🐛
Stefan Bohn

🐛
Stefan Endrullis

🐛
Stefan Klöss-Schuster

🐛
Stefan Wolf

🐛
Stephan H. Wissel

🐛
Stephen

🐛 -
Stephen Friedrich

🐛 +
Stephen Friedrich

🐛
Steve Babula

💻
Stexxe

🐛
Stian Lågstad

🐛
StuartClayton5

🐛
Supun Arunoda

🐛
Suren Abrahamyan

🐛 -
SwatiBGupta1110

🐛 +
SwatiBGupta1110

🐛
SyedThoufich

🐛
Szymon Sasin

🐛
T-chuangxin

🐛
TERAI Atsuhiro

🐛
TIOBE Software

💻 🐛
Taylor Smock

🐛 -
Techeira Damián

💻 🐛 +
Techeira Damián

💻 🐛
Ted Husted

🐛
TehBakker

🐛
The Gitter Badger

🐛
Theodoor

🐛
Thiago Henrique Hüpner

🐛
Thibault Meyer

🐛 -
Thomas Güttler

🐛 +
Thomas Güttler

🐛
Thomas Jones-Low

🐛
Thomas Smith

💻 🐛
ThrawnCA

🐛
Thunderforge

💻 🐛
Tim van der Lippe

🐛
Tobias Weimer

💻 🐛 -
Tom Daly

🐛 +
Tom Daly

🐛
Tomer Figenblat

🐛
Tomi De Lucca

💻 🐛
Torsten Kleiber

🐛
TrackerSB

🐛
Ullrich Hafner

🐛
Utku Cuhadaroglu

💻 🐛 -
Valentin Brandl

🐛 +
Valentin Brandl

🐛
Valeria

🐛
Vasily Anisimov

🐛
Vibhor Goyal

🐛
Vickenty Fesunov

🐛
Victor Noël

🐛
Vincent Galloy

💻 -
Vincent HUYNH

🐛 +
Vincent HUYNH

🐛
Vincent Maurin

🐛
Vincent Privat

🐛
Vishhwas

🐛
Vitaly

🐛
Vitaly Polonetsky

🐛
Vojtech Polivka

🐛 -
Vsevolod Zholobov

🐛 +
Vsevolod Zholobov

🐛
Vyom Yadav

💻
Wang Shidong

🐛
Waqas Ahmed

🐛
Wayne J. Earl

🐛
Wchenghui

🐛
Will Winder

🐛 -
William Brockhus

💻 🐛 +
William Brockhus

💻 🐛
Wilson Kurniawan

🐛
Wim Deblauwe

🐛
Woongsik Choi

🐛
XenoAmess

💻 🐛
Yang

💻
YaroslavTER

🐛 -
Young Chan

💻 🐛 +
Young Chan

💻 🐛
YuJin Kim

🐛
Yuri Dolzhenko

🐛
Yurii Dubinka

🐛
Zoltan Farkas

🐛
Zustin

🐛
aaronhurst-google

🐛 -
alexmodis

🐛 +
alexmodis

🐛
andreoss

🐛
andrey81inmd

💻 🐛
anicoara

🐛
arunprasathav

🐛
asiercamara

🐛
astillich-igniti

💻 -
avesolovksyy

🐛 +
avesolovksyy

🐛
avishvat

🐛
avivmu

🐛
axelbarfod1

🐛
b-3-n

🐛
balbhadra9

🐛
base23de

🐛 -
bergander

🐛 +
bergander

🐛
berkam

💻 🐛
breizh31

🐛
caesarkim

🐛
carolyujing

🐛
cesares-basilico

🐛
chrite

🐛 -
cobratbq

🐛 +
cobratbq

🐛
coladict

🐛
cosmoJFH

🐛
cristalp

🐛
crunsk

🐛
cwholmes

🐛
cyberjj999

🐛 -
cyw3

🐛 +
cyw3

🐛
d1ss0nanz

🐛
dalizi007

💻
danbrycefairsailcom

🐛
dariansanity

🐛
darrenmiliband

🐛
davidburstrom

🐛 -
dbirkman-paloalto

🐛 +
dbirkman-paloalto

🐛
deepak-patra

🐛
dependabot[bot]

💻 🐛
dinesh150

🐛
diziaq

🐛
dreaminpast123

🐛
duanyanan

🐛 -
dutt-sanjay

🐛 +
dutt-sanjay

🐛
dylanleung

🐛
dzeigler

🐛
ekkirala

🐛
emersonmoura

🐛
fairy

🐛
filiprafalowicz

💻 -
foxmason

🐛 +
foxmason

🐛
frankegabor

🐛
frankl

🐛
freafrea

🐛
fsapatin

🐛
gracia19

🐛
guo fei

🐛 -
gurmsc5

🐛 +
gurmsc5

🐛
gwilymatgearset

💻 🐛
haigsn

🐛
hemanshu070

🐛
henrik242

🐛
hongpuwu

🐛
hvbtup

💻 🐛 -
igniti GmbH

🐛 +
igniti GmbH

🐛
ilovezfs

🐛
itaigilo

🐛
jakivey32

🐛
jbennett2091

🐛
jcamerin

🐛
jkeener1

🐛 -
jmetertea

🐛 +
jmetertea

🐛
johnra2

💻
josemanuelrolon

💻 🐛
kabroxiko

💻 🐛
karwer

🐛
kaulonline

🐛
kdaemonv

🐛 -
kenji21

💻 🐛 +
kenji21

💻 🐛
kfranic

🐛
khalidkh

🐛
krzyk

🐛
lasselindqvist

🐛
lgemeinhardt

🐛
lihuaib

🐛 -
lonelyma1021

🐛 +
lonelyma1021

🐛
lpeddy

🐛
lujiefsi

💻
lukelukes

💻
lyriccoder

🐛
marcelmore

🐛
matchbox

🐛 -
matthiaskraaz

🐛 +
matthiaskraaz

🐛
meandonlyme

🐛
mikesive

🐛
milossesic

🐛
mriddell95

🐛
mrlzh

🐛
msloan

🐛 -
mucharlaravalika

🐛 +
mucharlaravalika

🐛
mvenneman

🐛
nareshl119

🐛
nicolas-harraudeau-sonarsource

🐛
noerremark

🐛
novsirion

🐛
oggboy

🐛 -
oinume

🐛 +
oinume

🐛
orimarko

💻 🐛
pallavi agarwal

🐛
parksungrin

🐛
patpatpat123

🐛
patriksevallius

🐛
pbrajesh1

🐛 -
phoenix384

🐛 +
phoenix384

🐛
piotrszymanski-sc

💻
plan3d

🐛
poojasix

🐛
prabhushrikant

🐛
pujitha8783

🐛
r-r-a-j

🐛 -
raghujayjunk

🐛 +
raghujayjunk

🐛
rajeshveera

🐛
rajeswarreddy88

🐛
recdevs

🐛
reudismam

💻 🐛
rijkt

🐛
rillig-tk

🐛 -
rmohan20

💻 🐛 +
rmohan20

💻 🐛
rxmicro

🐛
ryan-gustafson

💻 🐛
sabi0

🐛
scais

🐛
sebbASF

🐛
sergeygorbaty

💻 -
shilko2013

🐛 +
shilko2013

🐛
shiomiyan

📖
simeonKondr

🐛
snajberk

🐛
sniperrifle2004

🐛
snuyanzin

🐛 💻
sratz

🐛 -
stonio

🐛 +
stonio

🐛
sturton

💻 🐛
sudharmohan

🐛
suruchidawar

🐛
svenfinitiv

🐛
tashiscool

🐛
test-git-hook

🐛 -
testation21

💻 🐛 +
testation21

💻 🐛
thanosa

🐛
tiandiyixian

🐛
tobwoerk

🐛
tprouvot

🐛
trentchilders

🐛
triandicAnt

🐛 -
trishul14

🐛 +
trishul14

🐛
tsui

🐛
winhkey

🐛
witherspore

🐛
wjljack

🐛
wuchiuwong

🐛
xingsong

🐛 -
xioayuge

🐛 +
xioayuge

🐛
xnYi9wRezm

💻 🐛
xuanuy

🐛
xyf0921

🐛
yalechen-cyw3

🐛
yasuharu-sato

🐛
zenglian

🐛 -
zgrzyt93

💻 🐛 +
zgrzyt93

💻 🐛
zh3ng

🐛
zt_soft

🐛
ztt79

🐛 From c5e4b716464eab3522cb171823ca58aa97d1db04 Mon Sep 17 00:00:00 2001 From: Andreas Dangel Date: Thu, 23 Jun 2022 16:23:45 +0200 Subject: [PATCH 44/50] [java] ImmutableField - remove now unnecessary defaultSuppressionAnnotations --- .../pmd/lang/java/rule/design/ImmutableFieldRule.java | 8 -------- 1 file changed, 8 deletions(-) diff --git a/pmd-java/src/main/java/net/sourceforge/pmd/lang/java/rule/design/ImmutableFieldRule.java b/pmd-java/src/main/java/net/sourceforge/pmd/lang/java/rule/design/ImmutableFieldRule.java index 516ae15cb92..8df60230628 100644 --- a/pmd-java/src/main/java/net/sourceforge/pmd/lang/java/rule/design/ImmutableFieldRule.java +++ b/pmd-java/src/main/java/net/sourceforge/pmd/lang/java/rule/design/ImmutableFieldRule.java @@ -4,8 +4,6 @@ package net.sourceforge.pmd.lang.java.rule.design; -import java.util.ArrayList; -import java.util.Collection; import java.util.Collections; import java.util.HashSet; import java.util.List; @@ -35,12 +33,6 @@ */ public class ImmutableFieldRule extends AbstractLombokAwareRule { - @Override - protected Collection defaultSuppressionAnnotations() { - Collection defaultValues = new ArrayList<>(super.defaultSuppressionAnnotations()); - return defaultValues; - } - @Override public Object visit(ASTClassOrInterfaceDeclaration node, Object data) { Object result = super.visit(node, data); From ed6cd9ae39f3bc3a8bf68251aeed3128d01b5311 Mon Sep 17 00:00:00 2001 From: Andreas Dangel Date: Fri, 24 Jun 2022 15:50:11 +0200 Subject: [PATCH 45/50] [doc] Update release notes - escape `@` to not mention people on github --- docs/pages/release_notes.md | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/docs/pages/release_notes.md b/docs/pages/release_notes.md index c493ec75523..9426e54be0d 100644 --- a/docs/pages/release_notes.md +++ b/docs/pages/release_notes.md @@ -19,16 +19,16 @@ This is a {{ site.pmd.release_type }} release. * [#3999](https://github.com/pmd/pmd/issues/3999): \[cli] All files are analyzed despite parameter `--file-list` * [#4009](https://github.com/pmd/pmd/issues/4009): \[core] Cannot build PMD with Temurin 17 * java-bestpractices - * [#3824](https://github.com/pmd/pmd/issues/3824): \[java] UnusedPrivateField: Do not flag fields annotated with @Version - * [#3825](https://github.com/pmd/pmd/issues/3825): \[java] UnusedPrivateField: Do not flag fields annotated with @Id or @EmbeddedId + * [#3824](https://github.com/pmd/pmd/issues/3824): \[java] UnusedPrivateField: Do not flag fields annotated with @Version + * [#3825](https://github.com/pmd/pmd/issues/3825): \[java] UnusedPrivateField: Do not flag fields annotated with @Id or @EmbeddedId * java-design - * [#3823](https://github.com/pmd/pmd/issues/3823): \[java] ImmutableField: Do not flag fields in @Entity - * [#3981](https://github.com/pmd/pmd/issues/3981): \[java] ImmutableField reports fields annotated with @Value (Spring) - * [#3998](https://github.com/pmd/pmd/issues/3998): \[java] ImmutableField reports fields annotated with @Captor (Mockito) - * [#4004](https://github.com/pmd/pmd/issues/4004): \[java] ImmutableField reports fields annotated with @GwtMock (GwtMockito) and @Spy (Mockito) + * [#3823](https://github.com/pmd/pmd/issues/3823): \[java] ImmutableField: Do not flag fields in @Entity + * [#3981](https://github.com/pmd/pmd/issues/3981): \[java] ImmutableField reports fields annotated with @Value (Spring) + * [#3998](https://github.com/pmd/pmd/issues/3998): \[java] ImmutableField reports fields annotated with @Captor (Mockito) + * [#4004](https://github.com/pmd/pmd/issues/4004): \[java] ImmutableField reports fields annotated with @GwtMock (GwtMockito) and @Spy (Mockito) * [#4008](https://github.com/pmd/pmd/issues/4008): \[java] ImmutableField not reporting fields that are only initialized in the declaration - * [#4011](https://github.com/pmd/pmd/issues/4011): \[java] ImmutableField: Do not flag fields annotated with @Inject - * [#4020](https://github.com/pmd/pmd/issues/4020): \[java] ImmutableField reports fields annotated with @FindBy and @FindBys (Selenium) + * [#4011](https://github.com/pmd/pmd/issues/4011): \[java] ImmutableField: Do not flag fields annotated with @Inject + * [#4020](https://github.com/pmd/pmd/issues/4020): \[java] ImmutableField reports fields annotated with @FindBy and @FindBys (Selenium) * java-errorprone * [#3936](https://github.com/pmd/pmd/issues/3936): \[java] AvoidFieldNameMatchingMethodName should consider enum class * [#3937](https://github.com/pmd/pmd/issues/3937): \[java] AvoidDuplicateLiterals - uncompilable test cases @@ -38,8 +38,8 @@ This is a {{ site.pmd.release_type }} release. ### External Contributions * [#3985](https://github.com/pmd/pmd/pull/3985): \[java] Fix false negative problem about Enum in AvoidFieldNameMatchingMethodName #3936 - [@Scrsloota](https://github.com/Scrsloota) * [#3993](https://github.com/pmd/pmd/pull/3993): \[java] AvoidDuplicateLiterals - Add the method "buz" definition to test cases - [@dalizi007](https://github.com/dalizi007) -* [#4002](https://github.com/pmd/pmd/pull/4002): \[java] ImmutableField - Ignore fields annotated with @Value (Spring) or @Captor (Mockito) - [@jjlharrison](https://github.com/jjlharrison) -* [#4003](https://github.com/pmd/pmd/pull/4003): \[java] UnusedPrivateField - Ignore fields annotated with @Id/@EmbeddedId/@Version (JPA) or @Mock/@Spy/@MockBean (Mockito/Spring) - [@jjlharrison](https://github.com/jjlharrison) +* [#4002](https://github.com/pmd/pmd/pull/4002): \[java] ImmutableField - Ignore fields annotated with @Value (Spring) or @Captor (Mockito) - [@jjlharrison](https://github.com/jjlharrison) +* [#4003](https://github.com/pmd/pmd/pull/4003): \[java] UnusedPrivateField - Ignore fields annotated with @Id/@EmbeddedId/@Version (JPA) or @Mock/@Spy/@MockBean (Mockito/Spring) - [@jjlharrison](https://github.com/jjlharrison) * [#4006](https://github.com/pmd/pmd/pull/4006): \[doc] Fix eclipse plugin update site URL - [@shiomiyan](https://github.com/shiomiyan) * [#4010](https://github.com/pmd/pmd/pull/4010): \[core] Bump kotlin to version 1.7.0 - [@maikelsteneker](https://github.com/maikelsteneker) From cf90c2141f07ff0400fc413ed1f4db60391b6cd1 Mon Sep 17 00:00:00 2001 From: Andreas Dangel Date: Sat, 25 Jun 2022 09:15:59 +0200 Subject: [PATCH 46/50] Prepare pmd release 6.47.0 --- docs/_config.yml | 2 +- docs/pages/next_major_development.md | 4 ++++ docs/pages/release_notes.md | 9 +++++++-- 3 files changed, 12 insertions(+), 3 deletions(-) diff --git a/docs/_config.yml b/docs/_config.yml index e642bcc8727..c4367fc735f 100644 --- a/docs/_config.yml +++ b/docs/_config.yml @@ -1,7 +1,7 @@ repository: pmd/pmd pmd: - version: 6.47.0-SNAPSHOT + version: 6.47.0 previous_version: 6.46.0 date: 25-June-2022 release_type: minor diff --git a/docs/pages/next_major_development.md b/docs/pages/next_major_development.md index 0c952b2741d..6c53ffc4076 100644 --- a/docs/pages/next_major_development.md +++ b/docs/pages/next_major_development.md @@ -125,6 +125,10 @@ the breaking API changes will be performed in 7.0.0. an API is tagged as `@Deprecated` or not in the latest minor release. During the development of 7.0.0, we may decide to remove some APIs that were not tagged as deprecated, though we'll try to avoid it." %} +#### 6.47.0 + +No changes. + #### 6.46.0 ##### Deprecated ruleset references diff --git a/docs/pages/release_notes.md b/docs/pages/release_notes.md index 9426e54be0d..a716be02e8d 100644 --- a/docs/pages/release_notes.md +++ b/docs/pages/release_notes.md @@ -12,8 +12,6 @@ This is a {{ site.pmd.release_type }} release. {% tocmaker is_release_notes_processor %} -### New and noteworthy - ### Fixed Issues * core * [#3999](https://github.com/pmd/pmd/issues/3999): \[cli] All files are analyzed despite parameter `--file-list` @@ -35,6 +33,8 @@ This is a {{ site.pmd.release_type }} release. ### API Changes +No changes. + ### External Contributions * [#3985](https://github.com/pmd/pmd/pull/3985): \[java] Fix false negative problem about Enum in AvoidFieldNameMatchingMethodName #3936 - [@Scrsloota](https://github.com/Scrsloota) * [#3993](https://github.com/pmd/pmd/pull/3993): \[java] AvoidDuplicateLiterals - Add the method "buz" definition to test cases - [@dalizi007](https://github.com/dalizi007) @@ -43,5 +43,10 @@ This is a {{ site.pmd.release_type }} release. * [#4006](https://github.com/pmd/pmd/pull/4006): \[doc] Fix eclipse plugin update site URL - [@shiomiyan](https://github.com/shiomiyan) * [#4010](https://github.com/pmd/pmd/pull/4010): \[core] Bump kotlin to version 1.7.0 - [@maikelsteneker](https://github.com/maikelsteneker) +### Stats +* 45 commits +* 23 closed tickets & PRs +* Days since last release: 27 + {% endtocmaker %} From 07eb3d2d8081d787c60abdfe74c46af24772a3ce Mon Sep 17 00:00:00 2001 From: Andreas Dangel Date: Sat, 25 Jun 2022 09:30:37 +0200 Subject: [PATCH 47/50] [maven-release-plugin] prepare release pmd_releases/6.47.0 --- pmd-apex-jorje/pom.xml | 2 +- pmd-apex/pom.xml | 2 +- pmd-core/pom.xml | 2 +- pmd-cpp/pom.xml | 2 +- pmd-cs/pom.xml | 2 +- pmd-dart/pom.xml | 2 +- pmd-dist/pom.xml | 2 +- pmd-doc/pom.xml | 2 +- pmd-fortran/pom.xml | 2 +- pmd-go/pom.xml | 2 +- pmd-groovy/pom.xml | 2 +- pmd-html/pom.xml | 2 +- pmd-java/pom.xml | 2 +- pmd-java8/pom.xml | 2 +- pmd-javascript/pom.xml | 2 +- pmd-jsp/pom.xml | 2 +- pmd-kotlin/pom.xml | 2 +- pmd-lang-test/pom.xml | 2 +- pmd-lua/pom.xml | 2 +- pmd-matlab/pom.xml | 2 +- pmd-modelica/pom.xml | 2 +- pmd-objectivec/pom.xml | 2 +- pmd-perl/pom.xml | 2 +- pmd-php/pom.xml | 2 +- pmd-plsql/pom.xml | 2 +- pmd-python/pom.xml | 2 +- pmd-ruby/pom.xml | 2 +- pmd-scala-modules/pmd-scala-common/pom.xml | 2 +- pmd-scala-modules/pmd-scala_2.12/pom.xml | 2 +- pmd-scala-modules/pmd-scala_2.13/pom.xml | 2 +- pmd-scala/pom.xml | 2 +- pmd-swift/pom.xml | 2 +- pmd-test/pom.xml | 2 +- pmd-visualforce/pom.xml | 2 +- pmd-vm/pom.xml | 2 +- pmd-xml/pom.xml | 2 +- pom.xml | 6 +++--- 37 files changed, 39 insertions(+), 39 deletions(-) diff --git a/pmd-apex-jorje/pom.xml b/pmd-apex-jorje/pom.xml index b5a177525fc..c8d686cf077 100644 --- a/pmd-apex-jorje/pom.xml +++ b/pmd-apex-jorje/pom.xml @@ -8,7 +8,7 @@ net.sourceforge.pmd pmd - 6.47.0-SNAPSHOT + 6.47.0 ../pom.xml diff --git a/pmd-apex/pom.xml b/pmd-apex/pom.xml index 9cbd113a4ee..d4cfae40d44 100644 --- a/pmd-apex/pom.xml +++ b/pmd-apex/pom.xml @@ -7,7 +7,7 @@ net.sourceforge.pmd pmd - 6.47.0-SNAPSHOT + 6.47.0 ../pom.xml diff --git a/pmd-core/pom.xml b/pmd-core/pom.xml index f86c7c1c498..dba82937a45 100644 --- a/pmd-core/pom.xml +++ b/pmd-core/pom.xml @@ -7,7 +7,7 @@ net.sourceforge.pmd pmd - 6.47.0-SNAPSHOT + 6.47.0 ../pom.xml diff --git a/pmd-cpp/pom.xml b/pmd-cpp/pom.xml index 36487444eb5..0c2a975dd3d 100644 --- a/pmd-cpp/pom.xml +++ b/pmd-cpp/pom.xml @@ -7,7 +7,7 @@ net.sourceforge.pmd pmd - 6.47.0-SNAPSHOT + 6.47.0 ../pom.xml diff --git a/pmd-cs/pom.xml b/pmd-cs/pom.xml index 96e8cb895ad..0491ecc2f49 100644 --- a/pmd-cs/pom.xml +++ b/pmd-cs/pom.xml @@ -7,7 +7,7 @@ net.sourceforge.pmd pmd - 6.47.0-SNAPSHOT + 6.47.0 ../pom.xml diff --git a/pmd-dart/pom.xml b/pmd-dart/pom.xml index f1196e2faad..882a70552e3 100644 --- a/pmd-dart/pom.xml +++ b/pmd-dart/pom.xml @@ -7,7 +7,7 @@ net.sourceforge.pmd pmd - 6.47.0-SNAPSHOT + 6.47.0 ../pom.xml diff --git a/pmd-dist/pom.xml b/pmd-dist/pom.xml index 1181aecfaf1..306c765abba 100644 --- a/pmd-dist/pom.xml +++ b/pmd-dist/pom.xml @@ -8,7 +8,7 @@ net.sourceforge.pmd pmd - 6.47.0-SNAPSHOT + 6.47.0 ../pom.xml diff --git a/pmd-doc/pom.xml b/pmd-doc/pom.xml index 684f809c628..0fb47d06fc6 100644 --- a/pmd-doc/pom.xml +++ b/pmd-doc/pom.xml @@ -8,7 +8,7 @@ net.sourceforge.pmd pmd - 6.47.0-SNAPSHOT + 6.47.0 ../pom.xml diff --git a/pmd-fortran/pom.xml b/pmd-fortran/pom.xml index 4a31b11c065..2311e8fb875 100644 --- a/pmd-fortran/pom.xml +++ b/pmd-fortran/pom.xml @@ -7,7 +7,7 @@ net.sourceforge.pmd pmd - 6.47.0-SNAPSHOT + 6.47.0 ../pom.xml diff --git a/pmd-go/pom.xml b/pmd-go/pom.xml index 9389feafff6..8b8c43dad4a 100644 --- a/pmd-go/pom.xml +++ b/pmd-go/pom.xml @@ -7,7 +7,7 @@ net.sourceforge.pmd pmd - 6.47.0-SNAPSHOT + 6.47.0 ../pom.xml diff --git a/pmd-groovy/pom.xml b/pmd-groovy/pom.xml index 4608e3662f2..6f893c2fa4b 100644 --- a/pmd-groovy/pom.xml +++ b/pmd-groovy/pom.xml @@ -7,7 +7,7 @@ net.sourceforge.pmd pmd - 6.47.0-SNAPSHOT + 6.47.0 ../pom.xml diff --git a/pmd-html/pom.xml b/pmd-html/pom.xml index f536a558ee8..17163fbde97 100644 --- a/pmd-html/pom.xml +++ b/pmd-html/pom.xml @@ -7,7 +7,7 @@ net.sourceforge.pmd pmd - 6.47.0-SNAPSHOT + 6.47.0 ../pom.xml diff --git a/pmd-java/pom.xml b/pmd-java/pom.xml index c94e568db08..8ce840beddf 100644 --- a/pmd-java/pom.xml +++ b/pmd-java/pom.xml @@ -7,7 +7,7 @@ net.sourceforge.pmd pmd - 6.47.0-SNAPSHOT + 6.47.0 ../pom.xml diff --git a/pmd-java8/pom.xml b/pmd-java8/pom.xml index 7f75518ed4e..92f8b346a99 100644 --- a/pmd-java8/pom.xml +++ b/pmd-java8/pom.xml @@ -7,7 +7,7 @@ net.sourceforge.pmd pmd - 6.47.0-SNAPSHOT + 6.47.0 ../pom.xml diff --git a/pmd-javascript/pom.xml b/pmd-javascript/pom.xml index 0d2edc5e3a8..0e649dd5e10 100644 --- a/pmd-javascript/pom.xml +++ b/pmd-javascript/pom.xml @@ -7,7 +7,7 @@ net.sourceforge.pmd pmd - 6.47.0-SNAPSHOT + 6.47.0 ../pom.xml diff --git a/pmd-jsp/pom.xml b/pmd-jsp/pom.xml index 79342c8ff17..6b8aa0e9ca7 100644 --- a/pmd-jsp/pom.xml +++ b/pmd-jsp/pom.xml @@ -7,7 +7,7 @@ net.sourceforge.pmd pmd - 6.47.0-SNAPSHOT + 6.47.0 ../pom.xml diff --git a/pmd-kotlin/pom.xml b/pmd-kotlin/pom.xml index 6234df66e74..66d17278e69 100644 --- a/pmd-kotlin/pom.xml +++ b/pmd-kotlin/pom.xml @@ -7,7 +7,7 @@ net.sourceforge.pmd pmd - 6.47.0-SNAPSHOT + 6.47.0 ../pom.xml diff --git a/pmd-lang-test/pom.xml b/pmd-lang-test/pom.xml index 99a590c89b8..06c637e3857 100644 --- a/pmd-lang-test/pom.xml +++ b/pmd-lang-test/pom.xml @@ -12,7 +12,7 @@ net.sourceforge.pmd pmd - 6.47.0-SNAPSHOT + 6.47.0 ../pom.xml diff --git a/pmd-lua/pom.xml b/pmd-lua/pom.xml index ef459787d32..dc0bb01bca7 100644 --- a/pmd-lua/pom.xml +++ b/pmd-lua/pom.xml @@ -7,7 +7,7 @@ net.sourceforge.pmd pmd - 6.47.0-SNAPSHOT + 6.47.0 ../pom.xml diff --git a/pmd-matlab/pom.xml b/pmd-matlab/pom.xml index b6dffb8afaa..d52f3097689 100644 --- a/pmd-matlab/pom.xml +++ b/pmd-matlab/pom.xml @@ -7,7 +7,7 @@ net.sourceforge.pmd pmd - 6.47.0-SNAPSHOT + 6.47.0 ../pom.xml diff --git a/pmd-modelica/pom.xml b/pmd-modelica/pom.xml index bee6eb4ecec..398b1bdd9e8 100644 --- a/pmd-modelica/pom.xml +++ b/pmd-modelica/pom.xml @@ -7,7 +7,7 @@ net.sourceforge.pmd pmd - 6.47.0-SNAPSHOT + 6.47.0 ../pom.xml diff --git a/pmd-objectivec/pom.xml b/pmd-objectivec/pom.xml index 2b1bede2142..0f36dcd9b98 100644 --- a/pmd-objectivec/pom.xml +++ b/pmd-objectivec/pom.xml @@ -7,7 +7,7 @@ net.sourceforge.pmd pmd - 6.47.0-SNAPSHOT + 6.47.0 ../pom.xml diff --git a/pmd-perl/pom.xml b/pmd-perl/pom.xml index 83f957ad737..f82316968a1 100644 --- a/pmd-perl/pom.xml +++ b/pmd-perl/pom.xml @@ -7,7 +7,7 @@ net.sourceforge.pmd pmd - 6.47.0-SNAPSHOT + 6.47.0 ../pom.xml diff --git a/pmd-php/pom.xml b/pmd-php/pom.xml index c4a2e6e0406..23554bef66b 100644 --- a/pmd-php/pom.xml +++ b/pmd-php/pom.xml @@ -7,7 +7,7 @@ net.sourceforge.pmd pmd - 6.47.0-SNAPSHOT + 6.47.0 ../pom.xml diff --git a/pmd-plsql/pom.xml b/pmd-plsql/pom.xml index 2242099ad1a..0ac09fbfb39 100644 --- a/pmd-plsql/pom.xml +++ b/pmd-plsql/pom.xml @@ -7,7 +7,7 @@ net.sourceforge.pmd pmd - 6.47.0-SNAPSHOT + 6.47.0 ../pom.xml diff --git a/pmd-python/pom.xml b/pmd-python/pom.xml index 6406fb7bc57..b71b214139d 100644 --- a/pmd-python/pom.xml +++ b/pmd-python/pom.xml @@ -7,7 +7,7 @@ net.sourceforge.pmd pmd - 6.47.0-SNAPSHOT + 6.47.0 ../pom.xml diff --git a/pmd-ruby/pom.xml b/pmd-ruby/pom.xml index e0385b000ce..b57d3dae75e 100644 --- a/pmd-ruby/pom.xml +++ b/pmd-ruby/pom.xml @@ -7,7 +7,7 @@ net.sourceforge.pmd pmd - 6.47.0-SNAPSHOT + 6.47.0 ../pom.xml diff --git a/pmd-scala-modules/pmd-scala-common/pom.xml b/pmd-scala-modules/pmd-scala-common/pom.xml index c5327d83814..abd29a1944d 100644 --- a/pmd-scala-modules/pmd-scala-common/pom.xml +++ b/pmd-scala-modules/pmd-scala-common/pom.xml @@ -8,7 +8,7 @@ net.sourceforge.pmd pmd - 6.47.0-SNAPSHOT + 6.47.0 ../../pom.xml diff --git a/pmd-scala-modules/pmd-scala_2.12/pom.xml b/pmd-scala-modules/pmd-scala_2.12/pom.xml index b6a62cd14c0..2a15b153ae1 100644 --- a/pmd-scala-modules/pmd-scala_2.12/pom.xml +++ b/pmd-scala-modules/pmd-scala_2.12/pom.xml @@ -7,7 +7,7 @@ net.sourceforge.pmd pmd-scala-common - 6.47.0-SNAPSHOT + 6.47.0 ../pmd-scala-common/pom.xml diff --git a/pmd-scala-modules/pmd-scala_2.13/pom.xml b/pmd-scala-modules/pmd-scala_2.13/pom.xml index 43ed00eb173..77448efb0a8 100644 --- a/pmd-scala-modules/pmd-scala_2.13/pom.xml +++ b/pmd-scala-modules/pmd-scala_2.13/pom.xml @@ -7,7 +7,7 @@ net.sourceforge.pmd pmd-scala-common - 6.47.0-SNAPSHOT + 6.47.0 ../pmd-scala-common/pom.xml diff --git a/pmd-scala/pom.xml b/pmd-scala/pom.xml index 9a0020aa0f7..f6305668906 100644 --- a/pmd-scala/pom.xml +++ b/pmd-scala/pom.xml @@ -9,7 +9,7 @@ net.sourceforge.pmd pmd - 6.47.0-SNAPSHOT + 6.47.0 ../pom.xml diff --git a/pmd-swift/pom.xml b/pmd-swift/pom.xml index 82a44caa83c..e35389d2705 100644 --- a/pmd-swift/pom.xml +++ b/pmd-swift/pom.xml @@ -7,7 +7,7 @@ net.sourceforge.pmd pmd - 6.47.0-SNAPSHOT + 6.47.0 ../pom.xml diff --git a/pmd-test/pom.xml b/pmd-test/pom.xml index c2540c1888b..8368d125bad 100644 --- a/pmd-test/pom.xml +++ b/pmd-test/pom.xml @@ -8,7 +8,7 @@ net.sourceforge.pmd pmd - 6.47.0-SNAPSHOT + 6.47.0 ../pom.xml diff --git a/pmd-visualforce/pom.xml b/pmd-visualforce/pom.xml index acdf585467d..546b1063c65 100644 --- a/pmd-visualforce/pom.xml +++ b/pmd-visualforce/pom.xml @@ -7,7 +7,7 @@ net.sourceforge.pmd pmd - 6.47.0-SNAPSHOT + 6.47.0 ../pom.xml diff --git a/pmd-vm/pom.xml b/pmd-vm/pom.xml index 3c69ab24374..f0763b72079 100644 --- a/pmd-vm/pom.xml +++ b/pmd-vm/pom.xml @@ -7,7 +7,7 @@ net.sourceforge.pmd pmd - 6.47.0-SNAPSHOT + 6.47.0 ../pom.xml diff --git a/pmd-xml/pom.xml b/pmd-xml/pom.xml index 7fe4f69fe51..db64e883241 100644 --- a/pmd-xml/pom.xml +++ b/pmd-xml/pom.xml @@ -7,7 +7,7 @@ net.sourceforge.pmd pmd - 6.47.0-SNAPSHOT + 6.47.0 ../pom.xml diff --git a/pom.xml b/pom.xml index 423b08a6e73..ce61b80ca91 100644 --- a/pom.xml +++ b/pom.xml @@ -3,7 +3,7 @@ 4.0.0 net.sourceforge.pmd pmd - 6.47.0-SNAPSHOT + 6.47.0 pom PMD @@ -55,7 +55,7 @@ scm:git:git://github.com/pmd/pmd.git scm:git:ssh://git@github.com/pmd/pmd.git https://github.com/pmd/pmd - HEAD + pmd_releases/6.47.0 @@ -76,7 +76,7 @@ - 2022-05-28T09:04:31Z + 2022-06-25T07:16:23Z 7 From a5006f63839cb9e3e23cd2cd24f19f747d3d3d9d Mon Sep 17 00:00:00 2001 From: Andreas Dangel Date: Sat, 25 Jun 2022 09:30:43 +0200 Subject: [PATCH 48/50] [maven-release-plugin] prepare for next development iteration --- pmd-apex-jorje/pom.xml | 2 +- pmd-apex/pom.xml | 2 +- pmd-core/pom.xml | 2 +- pmd-cpp/pom.xml | 2 +- pmd-cs/pom.xml | 2 +- pmd-dart/pom.xml | 2 +- pmd-dist/pom.xml | 2 +- pmd-doc/pom.xml | 2 +- pmd-fortran/pom.xml | 2 +- pmd-go/pom.xml | 2 +- pmd-groovy/pom.xml | 2 +- pmd-html/pom.xml | 2 +- pmd-java/pom.xml | 2 +- pmd-java8/pom.xml | 2 +- pmd-javascript/pom.xml | 2 +- pmd-jsp/pom.xml | 2 +- pmd-kotlin/pom.xml | 2 +- pmd-lang-test/pom.xml | 2 +- pmd-lua/pom.xml | 2 +- pmd-matlab/pom.xml | 2 +- pmd-modelica/pom.xml | 2 +- pmd-objectivec/pom.xml | 2 +- pmd-perl/pom.xml | 2 +- pmd-php/pom.xml | 2 +- pmd-plsql/pom.xml | 2 +- pmd-python/pom.xml | 2 +- pmd-ruby/pom.xml | 2 +- pmd-scala-modules/pmd-scala-common/pom.xml | 2 +- pmd-scala-modules/pmd-scala_2.12/pom.xml | 2 +- pmd-scala-modules/pmd-scala_2.13/pom.xml | 2 +- pmd-scala/pom.xml | 2 +- pmd-swift/pom.xml | 2 +- pmd-test/pom.xml | 2 +- pmd-visualforce/pom.xml | 2 +- pmd-vm/pom.xml | 2 +- pmd-xml/pom.xml | 2 +- pom.xml | 6 +++--- 37 files changed, 39 insertions(+), 39 deletions(-) diff --git a/pmd-apex-jorje/pom.xml b/pmd-apex-jorje/pom.xml index c8d686cf077..c368f726dc7 100644 --- a/pmd-apex-jorje/pom.xml +++ b/pmd-apex-jorje/pom.xml @@ -8,7 +8,7 @@ net.sourceforge.pmd pmd - 6.47.0 + 6.48.0-SNAPSHOT ../pom.xml diff --git a/pmd-apex/pom.xml b/pmd-apex/pom.xml index d4cfae40d44..5a5f208f720 100644 --- a/pmd-apex/pom.xml +++ b/pmd-apex/pom.xml @@ -7,7 +7,7 @@ net.sourceforge.pmd pmd - 6.47.0 + 6.48.0-SNAPSHOT ../pom.xml diff --git a/pmd-core/pom.xml b/pmd-core/pom.xml index dba82937a45..d7bf9e1b270 100644 --- a/pmd-core/pom.xml +++ b/pmd-core/pom.xml @@ -7,7 +7,7 @@ net.sourceforge.pmd pmd - 6.47.0 + 6.48.0-SNAPSHOT ../pom.xml diff --git a/pmd-cpp/pom.xml b/pmd-cpp/pom.xml index 0c2a975dd3d..cfbe9555016 100644 --- a/pmd-cpp/pom.xml +++ b/pmd-cpp/pom.xml @@ -7,7 +7,7 @@ net.sourceforge.pmd pmd - 6.47.0 + 6.48.0-SNAPSHOT ../pom.xml diff --git a/pmd-cs/pom.xml b/pmd-cs/pom.xml index 0491ecc2f49..36a4e08e0ac 100644 --- a/pmd-cs/pom.xml +++ b/pmd-cs/pom.xml @@ -7,7 +7,7 @@ net.sourceforge.pmd pmd - 6.47.0 + 6.48.0-SNAPSHOT ../pom.xml diff --git a/pmd-dart/pom.xml b/pmd-dart/pom.xml index 882a70552e3..e3c472c4662 100644 --- a/pmd-dart/pom.xml +++ b/pmd-dart/pom.xml @@ -7,7 +7,7 @@ net.sourceforge.pmd pmd - 6.47.0 + 6.48.0-SNAPSHOT ../pom.xml diff --git a/pmd-dist/pom.xml b/pmd-dist/pom.xml index 306c765abba..9323e14075d 100644 --- a/pmd-dist/pom.xml +++ b/pmd-dist/pom.xml @@ -8,7 +8,7 @@ net.sourceforge.pmd pmd - 6.47.0 + 6.48.0-SNAPSHOT ../pom.xml diff --git a/pmd-doc/pom.xml b/pmd-doc/pom.xml index 0fb47d06fc6..f35338c8c1d 100644 --- a/pmd-doc/pom.xml +++ b/pmd-doc/pom.xml @@ -8,7 +8,7 @@ net.sourceforge.pmd pmd - 6.47.0 + 6.48.0-SNAPSHOT ../pom.xml diff --git a/pmd-fortran/pom.xml b/pmd-fortran/pom.xml index 2311e8fb875..55afe0f0cad 100644 --- a/pmd-fortran/pom.xml +++ b/pmd-fortran/pom.xml @@ -7,7 +7,7 @@ net.sourceforge.pmd pmd - 6.47.0 + 6.48.0-SNAPSHOT ../pom.xml diff --git a/pmd-go/pom.xml b/pmd-go/pom.xml index 8b8c43dad4a..9c7c525e533 100644 --- a/pmd-go/pom.xml +++ b/pmd-go/pom.xml @@ -7,7 +7,7 @@ net.sourceforge.pmd pmd - 6.47.0 + 6.48.0-SNAPSHOT ../pom.xml diff --git a/pmd-groovy/pom.xml b/pmd-groovy/pom.xml index 6f893c2fa4b..db176baebe1 100644 --- a/pmd-groovy/pom.xml +++ b/pmd-groovy/pom.xml @@ -7,7 +7,7 @@ net.sourceforge.pmd pmd - 6.47.0 + 6.48.0-SNAPSHOT ../pom.xml diff --git a/pmd-html/pom.xml b/pmd-html/pom.xml index 17163fbde97..db216981406 100644 --- a/pmd-html/pom.xml +++ b/pmd-html/pom.xml @@ -7,7 +7,7 @@ net.sourceforge.pmd pmd - 6.47.0 + 6.48.0-SNAPSHOT ../pom.xml diff --git a/pmd-java/pom.xml b/pmd-java/pom.xml index 8ce840beddf..ddd74247e6f 100644 --- a/pmd-java/pom.xml +++ b/pmd-java/pom.xml @@ -7,7 +7,7 @@ net.sourceforge.pmd pmd - 6.47.0 + 6.48.0-SNAPSHOT ../pom.xml diff --git a/pmd-java8/pom.xml b/pmd-java8/pom.xml index 92f8b346a99..a122fd7a41a 100644 --- a/pmd-java8/pom.xml +++ b/pmd-java8/pom.xml @@ -7,7 +7,7 @@ net.sourceforge.pmd pmd - 6.47.0 + 6.48.0-SNAPSHOT ../pom.xml diff --git a/pmd-javascript/pom.xml b/pmd-javascript/pom.xml index 0e649dd5e10..1fb34e70f53 100644 --- a/pmd-javascript/pom.xml +++ b/pmd-javascript/pom.xml @@ -7,7 +7,7 @@ net.sourceforge.pmd pmd - 6.47.0 + 6.48.0-SNAPSHOT ../pom.xml diff --git a/pmd-jsp/pom.xml b/pmd-jsp/pom.xml index 6b8aa0e9ca7..2689d0b071d 100644 --- a/pmd-jsp/pom.xml +++ b/pmd-jsp/pom.xml @@ -7,7 +7,7 @@ net.sourceforge.pmd pmd - 6.47.0 + 6.48.0-SNAPSHOT ../pom.xml diff --git a/pmd-kotlin/pom.xml b/pmd-kotlin/pom.xml index 66d17278e69..4e226a123db 100644 --- a/pmd-kotlin/pom.xml +++ b/pmd-kotlin/pom.xml @@ -7,7 +7,7 @@ net.sourceforge.pmd pmd - 6.47.0 + 6.48.0-SNAPSHOT ../pom.xml diff --git a/pmd-lang-test/pom.xml b/pmd-lang-test/pom.xml index 06c637e3857..b8c6d65a039 100644 --- a/pmd-lang-test/pom.xml +++ b/pmd-lang-test/pom.xml @@ -12,7 +12,7 @@ net.sourceforge.pmd pmd - 6.47.0 + 6.48.0-SNAPSHOT ../pom.xml diff --git a/pmd-lua/pom.xml b/pmd-lua/pom.xml index dc0bb01bca7..180aa92f436 100644 --- a/pmd-lua/pom.xml +++ b/pmd-lua/pom.xml @@ -7,7 +7,7 @@ net.sourceforge.pmd pmd - 6.47.0 + 6.48.0-SNAPSHOT ../pom.xml diff --git a/pmd-matlab/pom.xml b/pmd-matlab/pom.xml index d52f3097689..af78df7ea92 100644 --- a/pmd-matlab/pom.xml +++ b/pmd-matlab/pom.xml @@ -7,7 +7,7 @@ net.sourceforge.pmd pmd - 6.47.0 + 6.48.0-SNAPSHOT ../pom.xml diff --git a/pmd-modelica/pom.xml b/pmd-modelica/pom.xml index 398b1bdd9e8..72480f6f5ac 100644 --- a/pmd-modelica/pom.xml +++ b/pmd-modelica/pom.xml @@ -7,7 +7,7 @@ net.sourceforge.pmd pmd - 6.47.0 + 6.48.0-SNAPSHOT ../pom.xml diff --git a/pmd-objectivec/pom.xml b/pmd-objectivec/pom.xml index 0f36dcd9b98..fca206b41e8 100644 --- a/pmd-objectivec/pom.xml +++ b/pmd-objectivec/pom.xml @@ -7,7 +7,7 @@ net.sourceforge.pmd pmd - 6.47.0 + 6.48.0-SNAPSHOT ../pom.xml diff --git a/pmd-perl/pom.xml b/pmd-perl/pom.xml index f82316968a1..a3a95bb798e 100644 --- a/pmd-perl/pom.xml +++ b/pmd-perl/pom.xml @@ -7,7 +7,7 @@ net.sourceforge.pmd pmd - 6.47.0 + 6.48.0-SNAPSHOT ../pom.xml diff --git a/pmd-php/pom.xml b/pmd-php/pom.xml index 23554bef66b..029be6c047d 100644 --- a/pmd-php/pom.xml +++ b/pmd-php/pom.xml @@ -7,7 +7,7 @@ net.sourceforge.pmd pmd - 6.47.0 + 6.48.0-SNAPSHOT ../pom.xml diff --git a/pmd-plsql/pom.xml b/pmd-plsql/pom.xml index 0ac09fbfb39..c217149637b 100644 --- a/pmd-plsql/pom.xml +++ b/pmd-plsql/pom.xml @@ -7,7 +7,7 @@ net.sourceforge.pmd pmd - 6.47.0 + 6.48.0-SNAPSHOT ../pom.xml diff --git a/pmd-python/pom.xml b/pmd-python/pom.xml index b71b214139d..7a4c58569d8 100644 --- a/pmd-python/pom.xml +++ b/pmd-python/pom.xml @@ -7,7 +7,7 @@ net.sourceforge.pmd pmd - 6.47.0 + 6.48.0-SNAPSHOT ../pom.xml diff --git a/pmd-ruby/pom.xml b/pmd-ruby/pom.xml index b57d3dae75e..6631300aa53 100644 --- a/pmd-ruby/pom.xml +++ b/pmd-ruby/pom.xml @@ -7,7 +7,7 @@ net.sourceforge.pmd pmd - 6.47.0 + 6.48.0-SNAPSHOT ../pom.xml diff --git a/pmd-scala-modules/pmd-scala-common/pom.xml b/pmd-scala-modules/pmd-scala-common/pom.xml index abd29a1944d..5029a7d0a31 100644 --- a/pmd-scala-modules/pmd-scala-common/pom.xml +++ b/pmd-scala-modules/pmd-scala-common/pom.xml @@ -8,7 +8,7 @@ net.sourceforge.pmd pmd - 6.47.0 + 6.48.0-SNAPSHOT ../../pom.xml diff --git a/pmd-scala-modules/pmd-scala_2.12/pom.xml b/pmd-scala-modules/pmd-scala_2.12/pom.xml index 2a15b153ae1..2de43768418 100644 --- a/pmd-scala-modules/pmd-scala_2.12/pom.xml +++ b/pmd-scala-modules/pmd-scala_2.12/pom.xml @@ -7,7 +7,7 @@ net.sourceforge.pmd pmd-scala-common - 6.47.0 + 6.48.0-SNAPSHOT ../pmd-scala-common/pom.xml diff --git a/pmd-scala-modules/pmd-scala_2.13/pom.xml b/pmd-scala-modules/pmd-scala_2.13/pom.xml index 77448efb0a8..a7e7e17bed6 100644 --- a/pmd-scala-modules/pmd-scala_2.13/pom.xml +++ b/pmd-scala-modules/pmd-scala_2.13/pom.xml @@ -7,7 +7,7 @@ net.sourceforge.pmd pmd-scala-common - 6.47.0 + 6.48.0-SNAPSHOT ../pmd-scala-common/pom.xml diff --git a/pmd-scala/pom.xml b/pmd-scala/pom.xml index f6305668906..513cbc7fda4 100644 --- a/pmd-scala/pom.xml +++ b/pmd-scala/pom.xml @@ -9,7 +9,7 @@ net.sourceforge.pmd pmd - 6.47.0 + 6.48.0-SNAPSHOT ../pom.xml diff --git a/pmd-swift/pom.xml b/pmd-swift/pom.xml index e35389d2705..9a600748c1f 100644 --- a/pmd-swift/pom.xml +++ b/pmd-swift/pom.xml @@ -7,7 +7,7 @@ net.sourceforge.pmd pmd - 6.47.0 + 6.48.0-SNAPSHOT ../pom.xml diff --git a/pmd-test/pom.xml b/pmd-test/pom.xml index 8368d125bad..61db74f33be 100644 --- a/pmd-test/pom.xml +++ b/pmd-test/pom.xml @@ -8,7 +8,7 @@ net.sourceforge.pmd pmd - 6.47.0 + 6.48.0-SNAPSHOT ../pom.xml diff --git a/pmd-visualforce/pom.xml b/pmd-visualforce/pom.xml index 546b1063c65..6285b89b297 100644 --- a/pmd-visualforce/pom.xml +++ b/pmd-visualforce/pom.xml @@ -7,7 +7,7 @@ net.sourceforge.pmd pmd - 6.47.0 + 6.48.0-SNAPSHOT ../pom.xml diff --git a/pmd-vm/pom.xml b/pmd-vm/pom.xml index f0763b72079..238203f2f04 100644 --- a/pmd-vm/pom.xml +++ b/pmd-vm/pom.xml @@ -7,7 +7,7 @@ net.sourceforge.pmd pmd - 6.47.0 + 6.48.0-SNAPSHOT ../pom.xml diff --git a/pmd-xml/pom.xml b/pmd-xml/pom.xml index db64e883241..c3ade37bbda 100644 --- a/pmd-xml/pom.xml +++ b/pmd-xml/pom.xml @@ -7,7 +7,7 @@ net.sourceforge.pmd pmd - 6.47.0 + 6.48.0-SNAPSHOT ../pom.xml diff --git a/pom.xml b/pom.xml index ce61b80ca91..4a7d758d4db 100644 --- a/pom.xml +++ b/pom.xml @@ -3,7 +3,7 @@ 4.0.0 net.sourceforge.pmd pmd - 6.47.0 + 6.48.0-SNAPSHOT pom PMD @@ -55,7 +55,7 @@ scm:git:git://github.com/pmd/pmd.git scm:git:ssh://git@github.com/pmd/pmd.git https://github.com/pmd/pmd - pmd_releases/6.47.0 + HEAD @@ -76,7 +76,7 @@ - 2022-06-25T07:16:23Z + 2022-06-25T07:30:42Z 7 From 129674e0d5a86a2cc9ad3394239885f0a007e1c9 Mon Sep 17 00:00:00 2001 From: Andreas Dangel Date: Sat, 25 Jun 2022 09:33:00 +0200 Subject: [PATCH 49/50] Prepare next development version [skip ci] --- docs/_config.yml | 6 ++-- docs/pages/release_notes.md | 32 ++------------------- docs/pages/release_notes_old.md | 49 +++++++++++++++++++++++++++++++++ 3 files changed, 54 insertions(+), 33 deletions(-) diff --git a/docs/_config.yml b/docs/_config.yml index c4367fc735f..a75b2e740a2 100644 --- a/docs/_config.yml +++ b/docs/_config.yml @@ -1,9 +1,9 @@ repository: pmd/pmd pmd: - version: 6.47.0 - previous_version: 6.46.0 - date: 25-June-2022 + version: 6.48.0-SNAPSHOT + previous_version: 6.47.0 + date: 30-July-2022 release_type: minor # release types: major, minor, bugfix diff --git a/docs/pages/release_notes.md b/docs/pages/release_notes.md index a716be02e8d..b8f8783555e 100644 --- a/docs/pages/release_notes.md +++ b/docs/pages/release_notes.md @@ -12,41 +12,13 @@ This is a {{ site.pmd.release_type }} release. {% tocmaker is_release_notes_processor %} +### New and noteworthy + ### Fixed Issues -* core - * [#3999](https://github.com/pmd/pmd/issues/3999): \[cli] All files are analyzed despite parameter `--file-list` - * [#4009](https://github.com/pmd/pmd/issues/4009): \[core] Cannot build PMD with Temurin 17 -* java-bestpractices - * [#3824](https://github.com/pmd/pmd/issues/3824): \[java] UnusedPrivateField: Do not flag fields annotated with @Version - * [#3825](https://github.com/pmd/pmd/issues/3825): \[java] UnusedPrivateField: Do not flag fields annotated with @Id or @EmbeddedId -* java-design - * [#3823](https://github.com/pmd/pmd/issues/3823): \[java] ImmutableField: Do not flag fields in @Entity - * [#3981](https://github.com/pmd/pmd/issues/3981): \[java] ImmutableField reports fields annotated with @Value (Spring) - * [#3998](https://github.com/pmd/pmd/issues/3998): \[java] ImmutableField reports fields annotated with @Captor (Mockito) - * [#4004](https://github.com/pmd/pmd/issues/4004): \[java] ImmutableField reports fields annotated with @GwtMock (GwtMockito) and @Spy (Mockito) - * [#4008](https://github.com/pmd/pmd/issues/4008): \[java] ImmutableField not reporting fields that are only initialized in the declaration - * [#4011](https://github.com/pmd/pmd/issues/4011): \[java] ImmutableField: Do not flag fields annotated with @Inject - * [#4020](https://github.com/pmd/pmd/issues/4020): \[java] ImmutableField reports fields annotated with @FindBy and @FindBys (Selenium) -* java-errorprone - * [#3936](https://github.com/pmd/pmd/issues/3936): \[java] AvoidFieldNameMatchingMethodName should consider enum class - * [#3937](https://github.com/pmd/pmd/issues/3937): \[java] AvoidDuplicateLiterals - uncompilable test cases ### API Changes -No changes. - ### External Contributions -* [#3985](https://github.com/pmd/pmd/pull/3985): \[java] Fix false negative problem about Enum in AvoidFieldNameMatchingMethodName #3936 - [@Scrsloota](https://github.com/Scrsloota) -* [#3993](https://github.com/pmd/pmd/pull/3993): \[java] AvoidDuplicateLiterals - Add the method "buz" definition to test cases - [@dalizi007](https://github.com/dalizi007) -* [#4002](https://github.com/pmd/pmd/pull/4002): \[java] ImmutableField - Ignore fields annotated with @Value (Spring) or @Captor (Mockito) - [@jjlharrison](https://github.com/jjlharrison) -* [#4003](https://github.com/pmd/pmd/pull/4003): \[java] UnusedPrivateField - Ignore fields annotated with @Id/@EmbeddedId/@Version (JPA) or @Mock/@Spy/@MockBean (Mockito/Spring) - [@jjlharrison](https://github.com/jjlharrison) -* [#4006](https://github.com/pmd/pmd/pull/4006): \[doc] Fix eclipse plugin update site URL - [@shiomiyan](https://github.com/shiomiyan) -* [#4010](https://github.com/pmd/pmd/pull/4010): \[core] Bump kotlin to version 1.7.0 - [@maikelsteneker](https://github.com/maikelsteneker) - -### Stats -* 45 commits -* 23 closed tickets & PRs -* Days since last release: 27 {% endtocmaker %} diff --git a/docs/pages/release_notes_old.md b/docs/pages/release_notes_old.md index 0dc2d9c9f1e..e5b53bc05df 100644 --- a/docs/pages/release_notes_old.md +++ b/docs/pages/release_notes_old.md @@ -5,6 +5,55 @@ permalink: pmd_release_notes_old.html Previous versions of PMD can be downloaded here: https://github.com/pmd/pmd/releases +## 25-June-2022 - 6.47.0 + +The PMD team is pleased to announce PMD 6.47.0. + +This is a minor release. + +### Table Of Contents + +* [Fixed Issues](#fixed-issues) +* [API Changes](#api-changes) +* [External Contributions](#external-contributions) +* [Stats](#stats) + +### Fixed Issues +* core + * [#3999](https://github.com/pmd/pmd/issues/3999): \[cli] All files are analyzed despite parameter `--file-list` + * [#4009](https://github.com/pmd/pmd/issues/4009): \[core] Cannot build PMD with Temurin 17 +* java-bestpractices + * [#3824](https://github.com/pmd/pmd/issues/3824): \[java] UnusedPrivateField: Do not flag fields annotated with @Version + * [#3825](https://github.com/pmd/pmd/issues/3825): \[java] UnusedPrivateField: Do not flag fields annotated with @Id or @EmbeddedId +* java-design + * [#3823](https://github.com/pmd/pmd/issues/3823): \[java] ImmutableField: Do not flag fields in @Entity + * [#3981](https://github.com/pmd/pmd/issues/3981): \[java] ImmutableField reports fields annotated with @Value (Spring) + * [#3998](https://github.com/pmd/pmd/issues/3998): \[java] ImmutableField reports fields annotated with @Captor (Mockito) + * [#4004](https://github.com/pmd/pmd/issues/4004): \[java] ImmutableField reports fields annotated with @GwtMock (GwtMockito) and @Spy (Mockito) + * [#4008](https://github.com/pmd/pmd/issues/4008): \[java] ImmutableField not reporting fields that are only initialized in the declaration + * [#4011](https://github.com/pmd/pmd/issues/4011): \[java] ImmutableField: Do not flag fields annotated with @Inject + * [#4020](https://github.com/pmd/pmd/issues/4020): \[java] ImmutableField reports fields annotated with @FindBy and @FindBys (Selenium) +* java-errorprone + * [#3936](https://github.com/pmd/pmd/issues/3936): \[java] AvoidFieldNameMatchingMethodName should consider enum class + * [#3937](https://github.com/pmd/pmd/issues/3937): \[java] AvoidDuplicateLiterals - uncompilable test cases + +### API Changes + +No changes. + +### External Contributions +* [#3985](https://github.com/pmd/pmd/pull/3985): \[java] Fix false negative problem about Enum in AvoidFieldNameMatchingMethodName #3936 - [@Scrsloota](https://github.com/Scrsloota) +* [#3993](https://github.com/pmd/pmd/pull/3993): \[java] AvoidDuplicateLiterals - Add the method "buz" definition to test cases - [@dalizi007](https://github.com/dalizi007) +* [#4002](https://github.com/pmd/pmd/pull/4002): \[java] ImmutableField - Ignore fields annotated with @Value (Spring) or @Captor (Mockito) - [@jjlharrison](https://github.com/jjlharrison) +* [#4003](https://github.com/pmd/pmd/pull/4003): \[java] UnusedPrivateField - Ignore fields annotated with @Id/@EmbeddedId/@Version (JPA) or @Mock/@Spy/@MockBean (Mockito/Spring) - [@jjlharrison](https://github.com/jjlharrison) +* [#4006](https://github.com/pmd/pmd/pull/4006): \[doc] Fix eclipse plugin update site URL - [@shiomiyan](https://github.com/shiomiyan) +* [#4010](https://github.com/pmd/pmd/pull/4010): \[core] Bump kotlin to version 1.7.0 - [@maikelsteneker](https://github.com/maikelsteneker) + +### Stats +* 45 commits +* 23 closed tickets & PRs +* Days since last release: 27 + ## 28-May-2022 - 6.46.0 The PMD team is pleased to announce PMD 6.46.0. From e98d2006df4930d2c9c5b94ac3ef91905cf9709e Mon Sep 17 00:00:00 2001 From: Andreas Dangel Date: Sat, 25 Jun 2022 11:39:17 +0200 Subject: [PATCH 50/50] Bump pmd from 6.46.0 to 6.47.0 --- pom.xml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/pom.xml b/pom.xml index 4a7d758d4db..3291fc39d68 100644 --- a/pom.xml +++ b/pom.xml @@ -406,22 +406,22 @@ net.sourceforge.pmd pmd-core - 6.46.0 + 6.47.0 net.sourceforge.pmd pmd-java - 6.46.0 + 6.47.0 net.sourceforge.pmd pmd-jsp - 6.46.0 + 6.47.0 net.sourceforge.pmd pmd-javascript - 6.46.0 + 6.47.0