{"id":29602,"name":"pmdVersion","ecosystem":"maven","repository_url":null,"issues_count":14,"created_at":"2025-06-07T06:15:26.975Z","updated_at":"2025-06-07T06:15:26.975Z","purl":"pkg:maven/pmdVersion","unique_repositories_count":4,"unique_repositories_count_past_30_days":1,"recent_issues":[{"uuid":"3580373115","node_id":"PR_kwDOG8B9086xGZWK","number":1500,"state":"closed","title":"Bump pmdVersion from 7.17.0 to 7.18.0","user":"dependabot[bot]","labels":["dependencies","java"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2025-11-03T21:32:06.000Z","author_association":null,"state_reason":null,"created_at":"2025-11-03T03:05:48.000Z","updated_at":"2025-11-03T21:32:16.000Z","time_to_close":66378,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","packages":[{"name":"pmdVersion","old_version":"7.17.0","new_version":"7.18.0","repository_url":null}],"path":null,"ecosystem":"maven"},"body":"Bumps `pmdVersion` from 7.17.0 to 7.18.0.\nUpdates `net.sourceforge.pmd:pmd-core` from 7.17.0 to 7.18.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pmd/pmd/releases\"\u003enet.sourceforge.pmd:pmd-core's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ePMD 7.18.0 (31-October-2025)\u003c/h2\u003e\n\u003ch2\u003e31-October-2025 - 7.18.0\u003c/h2\u003e\n\u003cp\u003eThe PMD team is pleased to announce PMD 7.18.0.\u003c/p\u003e\n\u003cp\u003eThis is a minor release.\u003c/p\u003e\n\u003ch3\u003eTable Of Contents\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-and-noteworthy\"\u003e🚀️ New and noteworthy\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#build-requirement-is-java-17\"\u003eBuild Requirement is Java 17\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-and-changed-rules\"\u003e🌟️ New and Changed Rules\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-rules\"\u003eNew Rules\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#changed-rules\"\u003eChanged Rules\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#deprecated-rules\"\u003eDeprecated Rules\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#fixed-issues\"\u003e🐛️ Fixed Issues\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#api-changes\"\u003e🚨️ API Changes\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#deprecations\"\u003eDeprecations\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#merged-pull-requests\"\u003e✨️ Merged pull requests\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#dependency-updates\"\u003e📦️ Dependency updates\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#stats\"\u003e📈️ Stats\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🚀️ New and noteworthy\u003c/h3\u003e\n\u003ch4\u003eBuild Requirement is Java 17\u003c/h4\u003e\n\u003cp\u003eFrom now on, Java 17 or newer is required to build PMD. PMD itself still remains compatible with Java 8,\nso that it still can be used in a pure Java 8 environment. This allows us to use the latest\ncheckstyle version during the build.\u003c/p\u003e\n\u003ch3\u003e🌟️ New and Changed Rules\u003c/h3\u003e\n\u003ch4\u003eNew Rules\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eThe new Java rule \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.18.0/pmd_rules_java_errorprone.html#identicalconditionalbranches\"\u003e\u003ccode\u003eIdenticalConditionalBranches\u003c/code\u003e\u003c/a\u003e finds conditional statements\nthat do the same thing when the condition is true and false. This is either incorrect or redundant.\u003c/li\u003e\n\u003cli\u003eThe new Java rule \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.18.0/pmd_rules_java_bestpractices.html#labeledstatement\"\u003e\u003ccode\u003eLabeledStatement\u003c/code\u003e\u003c/a\u003e finds labeled statements in code.\nLabels make control flow difficult to understand and should be avoided. By default, the rule allows labeled\nloops (do, while, for). But it has a property to flag also those labeled loops.\u003c/li\u003e\n\u003cli\u003eThe new Java rule \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.18.0/pmd_rules_java_bestpractices.html#unusedlabel\"\u003e\u003ccode\u003eUnusedLabel\u003c/code\u003e\u003c/a\u003e finds unused labels which are unnecessary and\nonly make the code hard to read. This new rule will be part of the quickstart ruleset.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003eChanged Rules\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.18.0/pmd_rules_java_codestyle.html#confusingternary\"\u003e\u003ccode\u003eConfusingTernary\u003c/code\u003e\u003c/a\u003e has a new property \u003ccode\u003enullCheckBranch\u003c/code\u003e to control, whether null-checks\nshould be allowed (the default case) or should lead to a violation.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.18.0/pmd_rules_java_errorprone.html#avoidcatchinggenericexception\"\u003e\u003ccode\u003eAvoidCatchingGenericException\u003c/code\u003e\u003c/a\u003e is now configurable with the new property\n\u003ccode\u003etypesThatShouldNotBeCaught\u003c/code\u003e.\u003cbr /\u003e\n⚠️ The rule has also been moved from category \u0026quot;Design\u0026quot; to category \u0026quot;Error Prone\u0026quot;. If you are currently bulk-adding\nall the rules from the \u0026quot;Design\u0026quot; category into your custom ruleset, then you need to add the rule explicitly\nagain (otherwise it won't be included anymore):\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/c37a323e288202e21f69449a95d3d4c024455ec8\"\u003e\u003ccode\u003ec37a323\u003c/code\u003e\u003c/a\u003e [release] prepare release pmd_releases/7.18.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/825f6797829681ed0bea67bd8057beb3dc1d55d9\"\u003e\u003ccode\u003e825f679\u003c/code\u003e\u003c/a\u003e Prepare pmd release 7.18.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/f59b4d545b92189141ba366bb01ee50a783e4e93\"\u003e\u003ccode\u003ef59b4d5\u003c/code\u003e\u003c/a\u003e Update SPONSORS.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/aed481242341162e74dd16efcbec31f4052e9cfe\"\u003e\u003ccode\u003eaed4812\u003c/code\u003e\u003c/a\u003e chore(deps): bump io.github.apex-dev-tools:apex-ls_2.13 from 5.10.0 to 6.0.1 ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/7fdf46607c426702279f6c398f7844e40204c081\"\u003e\u003ccode\u003e7fdf466\u003c/code\u003e\u003c/a\u003e Update contributors\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/46f8b5fd20dea6a803c4b90c070fa672fb930bc3\"\u003e\u003ccode\u003e46f8b5f\u003c/code\u003e\u003c/a\u003e [doc] Update release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/db8d30584da35d60962c1a72dd560809ea2d4513\"\u003e\u003ccode\u003edb8d305\u003c/code\u003e\u003c/a\u003e [java] Fix \u003ca href=\"https://redirect.github.com/pmd/pmd/issues/6131\"\u003e#6131\u003c/a\u003e: Correct enum values for ModifierOrder (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/6185\"\u003e#6185\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/e4f94a681052127b15b6be30a33ff8bdfc1e44f1\"\u003e\u003ccode\u003ee4f94a6\u003c/code\u003e\u003c/a\u003e [java] Fix \u003ca href=\"https://redirect.github.com/pmd/pmd/issues/6131\"\u003e#6131\u003c/a\u003e: Correct enum values for ModifierOrder\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/d679f5d51ab770f5ee218f5ae70c5a95835c624d\"\u003e\u003ccode\u003ed679f5d\u003c/code\u003e\u003c/a\u003e [java] InefficientEmptyStringCheck should include String#strip (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/6172\"\u003e#6172\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/c04e4284ace4917969549af4767443699692a025\"\u003e\u003ccode\u003ec04e428\u003c/code\u003e\u003c/a\u003e [doc] Update release notes (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/6172\"\u003e#6172\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pmd/pmd/compare/pmd_releases/7.17.0...pmd_releases/7.18.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `net.sourceforge.pmd:pmd-java` from 7.17.0 to 7.18.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pmd/pmd/releases\"\u003enet.sourceforge.pmd:pmd-java's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ePMD 7.18.0 (31-October-2025)\u003c/h2\u003e\n\u003ch2\u003e31-October-2025 - 7.18.0\u003c/h2\u003e\n\u003cp\u003eThe PMD team is pleased to announce PMD 7.18.0.\u003c/p\u003e\n\u003cp\u003eThis is a minor release.\u003c/p\u003e\n\u003ch3\u003eTable Of Contents\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-and-noteworthy\"\u003e🚀️ New and noteworthy\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#build-requirement-is-java-17\"\u003eBuild Requirement is Java 17\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-and-changed-rules\"\u003e🌟️ New and Changed Rules\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-rules\"\u003eNew Rules\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#changed-rules\"\u003eChanged Rules\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#deprecated-rules\"\u003eDeprecated Rules\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#fixed-issues\"\u003e🐛️ Fixed Issues\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#api-changes\"\u003e🚨️ API Changes\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#deprecations\"\u003eDeprecations\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#merged-pull-requests\"\u003e✨️ Merged pull requests\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#dependency-updates\"\u003e📦️ Dependency updates\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#stats\"\u003e📈️ Stats\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🚀️ New and noteworthy\u003c/h3\u003e\n\u003ch4\u003eBuild Requirement is Java 17\u003c/h4\u003e\n\u003cp\u003eFrom now on, Java 17 or newer is required to build PMD. PMD itself still remains compatible with Java 8,\nso that it still can be used in a pure Java 8 environment. This allows us to use the latest\ncheckstyle version during the build.\u003c/p\u003e\n\u003ch3\u003e🌟️ New and Changed Rules\u003c/h3\u003e\n\u003ch4\u003eNew Rules\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eThe new Java rule \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.18.0/pmd_rules_java_errorprone.html#identicalconditionalbranches\"\u003e\u003ccode\u003eIdenticalConditionalBranches\u003c/code\u003e\u003c/a\u003e finds conditional statements\nthat do the same thing when the condition is true and false. This is either incorrect or redundant.\u003c/li\u003e\n\u003cli\u003eThe new Java rule \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.18.0/pmd_rules_java_bestpractices.html#labeledstatement\"\u003e\u003ccode\u003eLabeledStatement\u003c/code\u003e\u003c/a\u003e finds labeled statements in code.\nLabels make control flow difficult to understand and should be avoided. By default, the rule allows labeled\nloops (do, while, for). But it has a property to flag also those labeled loops.\u003c/li\u003e\n\u003cli\u003eThe new Java rule \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.18.0/pmd_rules_java_bestpractices.html#unusedlabel\"\u003e\u003ccode\u003eUnusedLabel\u003c/code\u003e\u003c/a\u003e finds unused labels which are unnecessary and\nonly make the code hard to read. This new rule will be part of the quickstart ruleset.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003eChanged Rules\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.18.0/pmd_rules_java_codestyle.html#confusingternary\"\u003e\u003ccode\u003eConfusingTernary\u003c/code\u003e\u003c/a\u003e has a new property \u003ccode\u003enullCheckBranch\u003c/code\u003e to control, whether null-checks\nshould be allowed (the default case) or should lead to a violation.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.18.0/pmd_rules_java_errorprone.html#avoidcatchinggenericexception\"\u003e\u003ccode\u003eAvoidCatchingGenericException\u003c/code\u003e\u003c/a\u003e is now configurable with the new property\n\u003ccode\u003etypesThatShouldNotBeCaught\u003c/code\u003e.\u003cbr /\u003e\n⚠️ The rule has also been moved from category \u0026quot;Design\u0026quot; to category \u0026quot;Error Prone\u0026quot;. If you are currently bulk-adding\nall the rules from the \u0026quot;Design\u0026quot; category into your custom ruleset, then you need to add the rule explicitly\nagain (otherwise it won't be included anymore):\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/c37a323e288202e21f69449a95d3d4c024455ec8\"\u003e\u003ccode\u003ec37a323\u003c/code\u003e\u003c/a\u003e [release] prepare release pmd_releases/7.18.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/825f6797829681ed0bea67bd8057beb3dc1d55d9\"\u003e\u003ccode\u003e825f679\u003c/code\u003e\u003c/a\u003e Prepare pmd release 7.18.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/f59b4d545b92189141ba366bb01ee50a783e4e93\"\u003e\u003ccode\u003ef59b4d5\u003c/code\u003e\u003c/a\u003e Update SPONSORS.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/aed481242341162e74dd16efcbec31f4052e9cfe\"\u003e\u003ccode\u003eaed4812\u003c/code\u003e\u003c/a\u003e chore(deps): bump io.github.apex-dev-tools:apex-ls_2.13 from 5.10.0 to 6.0.1 ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/7fdf46607c426702279f6c398f7844e40204c081\"\u003e\u003ccode\u003e7fdf466\u003c/code\u003e\u003c/a\u003e Update contributors\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/46f8b5fd20dea6a803c4b90c070fa672fb930bc3\"\u003e\u003ccode\u003e46f8b5f\u003c/code\u003e\u003c/a\u003e [doc] Update release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/db8d30584da35d60962c1a72dd560809ea2d4513\"\u003e\u003ccode\u003edb8d305\u003c/code\u003e\u003c/a\u003e [java] Fix \u003ca href=\"https://redirect.github.com/pmd/pmd/issues/6131\"\u003e#6131\u003c/a\u003e: Correct enum values for ModifierOrder (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/6185\"\u003e#6185\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/e4f94a681052127b15b6be30a33ff8bdfc1e44f1\"\u003e\u003ccode\u003ee4f94a6\u003c/code\u003e\u003c/a\u003e [java] Fix \u003ca href=\"https://redirect.github.com/pmd/pmd/issues/6131\"\u003e#6131\u003c/a\u003e: Correct enum values for ModifierOrder\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/d679f5d51ab770f5ee218f5ae70c5a95835c624d\"\u003e\u003ccode\u003ed679f5d\u003c/code\u003e\u003c/a\u003e [java] InefficientEmptyStringCheck should include String#strip (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/6172\"\u003e#6172\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/c04e4284ace4917969549af4767443699692a025\"\u003e\u003ccode\u003ec04e428\u003c/code\u003e\u003c/a\u003e [doc] Update release notes (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/6172\"\u003e#6172\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pmd/pmd/compare/pmd_releases/7.17.0...pmd_releases/7.18.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `net.sourceforge.pmd:pmd-javascript` from 7.17.0 to 7.18.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pmd/pmd/releases\"\u003enet.sourceforge.pmd:pmd-javascript's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ePMD 7.18.0 (31-October-2025)\u003c/h2\u003e\n\u003ch2\u003e31-October-2025 - 7.18.0\u003c/h2\u003e\n\u003cp\u003eThe PMD team is pleased to announce PMD 7.18.0.\u003c/p\u003e\n\u003cp\u003eThis is a minor release.\u003c/p\u003e\n\u003ch3\u003eTable Of Contents\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-and-noteworthy\"\u003e🚀️ New and noteworthy\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#build-requirement-is-java-17\"\u003eBuild Requirement is Java 17\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-and-changed-rules\"\u003e🌟️ New and Changed Rules\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-rules\"\u003eNew Rules\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#changed-rules\"\u003eChanged Rules\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#deprecated-rules\"\u003eDeprecated Rules\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#fixed-issues\"\u003e🐛️ Fixed Issues\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#api-changes\"\u003e🚨️ API Changes\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#deprecations\"\u003eDeprecations\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#merged-pull-requests\"\u003e✨️ Merged pull requests\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#dependency-updates\"\u003e📦️ Dependency updates\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#stats\"\u003e📈️ Stats\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🚀️ New and noteworthy\u003c/h3\u003e\n\u003ch4\u003eBuild Requirement is Java 17\u003c/h4\u003e\n\u003cp\u003eFrom now on, Java 17 or newer is required to build PMD. PMD itself still remains compatible with Java 8,\nso that it still can be used in a pure Java 8 environment. This allows us to use the latest\ncheckstyle version during the build.\u003c/p\u003e\n\u003ch3\u003e🌟️ New and Changed Rules\u003c/h3\u003e\n\u003ch4\u003eNew Rules\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eThe new Java rule \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.18.0/pmd_rules_java_errorprone.html#identicalconditionalbranches\"\u003e\u003ccode\u003eIdenticalConditionalBranches\u003c/code\u003e\u003c/a\u003e finds conditional statements\nthat do the same thing when the condition is true and false. This is either incorrect or redundant.\u003c/li\u003e\n\u003cli\u003eThe new Java rule \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.18.0/pmd_rules_java_bestpractices.html#labeledstatement\"\u003e\u003ccode\u003eLabeledStatement\u003c/code\u003e\u003c/a\u003e finds labeled statements in code.\nLabels make control flow difficult to understand and should be avoided. By default, the rule allows labeled\nloops (do, while, for). But it has a property to flag also those labeled loops.\u003c/li\u003e\n\u003cli\u003eThe new Java rule \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.18.0/pmd_rules_java_bestpractices.html#unusedlabel\"\u003e\u003ccode\u003eUnusedLabel\u003c/code\u003e\u003c/a\u003e finds unused labels which are unnecessary and\nonly make the code hard to read. This new rule will be part of the quickstart ruleset.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003eChanged Rules\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.18.0/pmd_rules_java_codestyle.html#confusingternary\"\u003e\u003ccode\u003eConfusingTernary\u003c/code\u003e\u003c/a\u003e has a new property \u003ccode\u003enullCheckBranch\u003c/code\u003e to control, whether null-checks\nshould be allowed (the default case) or should lead to a violation.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.18.0/pmd_rules_java_errorprone.html#avoidcatchinggenericexception\"\u003e\u003ccode\u003eAvoidCatchingGenericException\u003c/code\u003e\u003c/a\u003e is now configurable with the new property\n\u003ccode\u003etypesThatShouldNotBeCaught\u003c/code\u003e.\u003cbr /\u003e\n⚠️ The rule has also been moved from category \u0026quot;Design\u0026quot; to category \u0026quot;Error Prone\u0026quot;. If you are currently bulk-adding\nall the rules from the \u0026quot;Design\u0026quot; category into your custom ruleset, then you need to add the rule explicitly\nagain (otherwise it won't be included anymore):\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/c37a323e288202e21f69449a95d3d4c024455ec8\"\u003e\u003ccode\u003ec37a323\u003c/code\u003e\u003c/a\u003e [release] prepare release pmd_releases/7.18.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/825f6797829681ed0bea67bd8057beb3dc1d55d9\"\u003e\u003ccode\u003e825f679\u003c/code\u003e\u003c/a\u003e Prepare pmd release 7.18.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/f59b4d545b92189141ba366bb01ee50a783e4e93\"\u003e\u003ccode\u003ef59b4d5\u003c/code\u003e\u003c/a\u003e Update SPONSORS.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/aed481242341162e74dd16efcbec31f4052e9cfe\"\u003e\u003ccode\u003eaed4812\u003c/code\u003e\u003c/a\u003e chore(deps): bump io.github.apex-dev-tools:apex-ls_2.13 from 5.10.0 to 6.0.1 ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/7fdf46607c426702279f6c398f7844e40204c081\"\u003e\u003ccode\u003e7fdf466\u003c/code\u003e\u003c/a\u003e Update contributors\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/46f8b5fd20dea6a803c4b90c070fa672fb930bc3\"\u003e\u003ccode\u003e46f8b5f\u003c/code\u003e\u003c/a\u003e [doc] Update release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/db8d30584da35d60962c1a72dd560809ea2d4513\"\u003e\u003ccode\u003edb8d305\u003c/code\u003e\u003c/a\u003e [java] Fix \u003ca href=\"https://redirect.github.com/pmd/pmd/issues/6131\"\u003e#6131\u003c/a\u003e: Correct enum values for ModifierOrder (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/6185\"\u003e#6185\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/e4f94a681052127b15b6be30a33ff8bdfc1e44f1\"\u003e\u003ccode\u003ee4f94a6\u003c/code\u003e\u003c/a\u003e [java] Fix \u003ca href=\"https://redirect.github.com/pmd/pmd/issues/6131\"\u003e#6131\u003c/a\u003e: Correct enum values for ModifierOrder\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/d679f5d51ab770f5ee218f5ae70c5a95835c624d\"\u003e\u003ccode\u003ed679f5d\u003c/code\u003e\u003c/a\u003e [java] InefficientEmptyStringCheck should include String#strip (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/6172\"\u003e#6172\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/c04e4284ace4917969549af4767443699692a025\"\u003e\u003ccode\u003ec04e428\u003c/code\u003e\u003c/a\u003e [doc] Update release notes (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/6172\"\u003e#6172\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pmd/pmd/compare/pmd_releases/7.17.0...pmd_releases/7.18.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `net.sourceforge.pmd:pmd-jsp` from 7.17.0 to 7.18.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pmd/pmd/releases\"\u003enet.sourceforge.pmd:pmd-jsp's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ePMD 7.18.0 (31-October-2025)\u003c/h2\u003e\n\u003ch2\u003e31-October-2025 - 7.18.0\u003c/h2\u003e\n\u003cp\u003eThe PMD team is pleased to announce PMD 7.18.0.\u003c/p\u003e\n\u003cp\u003eThis is a minor release.\u003c/p\u003e\n\u003ch3\u003eTable Of Contents\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-and-noteworthy\"\u003e🚀️ New and noteworthy\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#build-requirement-is-java-17\"\u003eBuild Requirement is Java 17\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-and-changed-rules\"\u003e🌟️ New and Changed Rules\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-rules\"\u003eNew Rules\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#changed-rules\"\u003eChanged Rules\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#deprecated-rules\"\u003eDeprecated Rules\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#fixed-issues\"\u003e🐛️ Fixed Issues\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#api-changes\"\u003e🚨️ API Changes\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#deprecations\"\u003eDeprecations\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#merged-pull-requests\"\u003e✨️ Merged pull requests\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#dependency-updates\"\u003e📦️ Dependency updates\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#stats\"\u003e📈️ Stats\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🚀️ New and noteworthy\u003c/h3\u003e\n\u003ch4\u003eBuild Requirement is Java 17\u003c/h4\u003e\n\u003cp\u003eFrom now on, Java 17 or newer is required to build PMD. PMD itself still remains compatible with Java 8,\nso that it still can be used in a pure Java 8 environment. This allows us to use the latest\ncheckstyle version during the build.\u003c/p\u003e\n\u003ch3\u003e🌟️ New and Changed Rules\u003c/h3\u003e\n\u003ch4\u003eNew Rules\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eThe new Java rule \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.18.0/pmd_rules_java_errorprone.html#identicalconditionalbranches\"\u003e\u003ccode\u003eIdenticalConditionalBranches\u003c/code\u003e\u003c/a\u003e finds conditional statements\nthat do the same thing when the condition is true and false. This is either incorrect or redundant.\u003c/li\u003e\n\u003cli\u003eThe new Java rule \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.18.0/pmd_rules_java_bestpractices.html#labeledstatement\"\u003e\u003ccode\u003eLabeledStatement\u003c/code\u003e\u003c/a\u003e finds labeled statements in code.\nLabels make control flow difficult to understand and should be avoided. By default, the rule allows labeled\nloops (do, while, for). But it has a property to flag also those labeled loops.\u003c/li\u003e\n\u003cli\u003eThe new Java rule \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.18.0/pmd_rules_java_bestpractices.html#unusedlabel\"\u003e\u003ccode\u003eUnusedLabel\u003c/code\u003e\u003c/a\u003e finds unused labels which are unnecessary and\nonly make the code hard to read. This new rule will be part of the quickstart ruleset.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003eChanged Rules\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.18.0/pmd_rules_java_codestyle.html#confusingternary\"\u003e\u003ccode\u003eConfusingTernary\u003c/code\u003e\u003c/a\u003e has a new property \u003ccode\u003enullCheckBranch\u003c/code\u003e to control, whether null-checks\nshould be allowed (the default case) or should lead to a violation.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.18.0/pmd_rules_java_errorprone.html#avoidcatchinggenericexception\"\u003e\u003ccode\u003eAvoidCatchingGenericException\u003c/code\u003e\u003c/a\u003e is now configurable with the new property\n\u003ccode\u003etypesThatShouldNotBeCaught\u003c/code\u003e.\u003cbr /\u003e\n⚠️ The rule has also been moved from category \u0026quot;Design\u0026quot; to category \u0026quot;Error Prone\u0026quot;. If you are currently bulk-adding\nall the rules from the \u0026quot;Design\u0026quot; category into your custom ruleset, then you need to add the rule explicitly\nagain (otherwise it won't be included anymore):\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/c37a323e288202e21f69449a95d3d4c024455ec8\"\u003e\u003ccode\u003ec37a323\u003c/code\u003e\u003c/a\u003e [release] prepare release pmd_releases/7.18.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/825f6797829681ed0bea67bd8057beb3dc1d55d9\"\u003e\u003ccode\u003e825f679\u003c/code\u003e\u003c/a\u003e Prepare pmd release 7.18.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/f59b4d545b92189141ba366bb01ee50a783e4e93\"\u003e\u003ccode\u003ef59b4d5\u003c/code\u003e\u003c/a\u003e Update SPONSORS.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/aed481242341162e74dd16efcbec31f4052e9cfe\"\u003e\u003ccode\u003eaed4812\u003c/code\u003e\u003c/a\u003e chore(deps): bump io.github.apex-dev-tools:apex-ls_2.13 from 5.10.0 to 6.0.1 ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/7fdf46607c426702279f6c398f7844e40204c081\"\u003e\u003ccode\u003e7fdf466\u003c/code\u003e\u003c/a\u003e Update contributors\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/46f8b5fd20dea6a803c4b90c070fa672fb930bc3\"\u003e\u003ccode\u003e46f8b5f\u003c/code\u003e\u003c/a\u003e [doc] Update release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/db8d30584da35d60962c1a72dd560809ea2d4513\"\u003e\u003ccode\u003edb8d305\u003c/code\u003e\u003c/a\u003e [java] Fix \u003ca href=\"https://redirect.github.com/pmd/pmd/issues/6131\"\u003e#6131\u003c/a\u003e: Correct enum values for ModifierOrder (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/6185\"\u003e#6185\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/e4f94a681052127b15b6be30a33ff8bdfc1e44f1\"\u003e\u003ccode\u003ee4f94a6\u003c/code\u003e\u003c/a\u003e [java] Fix \u003ca href=\"https://redirect.github.com/pmd/pmd/issues/6131\"\u003e#6131\u003c/a\u003e: Correct enum values for ModifierOrder\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/d679f5d51ab770f5ee218f5ae70c5a95835c624d\"\u003e\u003ccode\u003ed679f5d\u003c/code\u003e\u003c/a\u003e [java] InefficientEmptyStringCheck should include String#strip (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/6172\"\u003e#6172\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/c04e4284ace4917969549af4767443699692a025\"\u003e\u003ccode\u003ec04e428\u003c/code\u003e\u003c/a\u003e [doc] Update release notes (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/6172\"\u003e#6172\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pmd/pmd/compare/pmd_releases/7.17.0...pmd_releases/7.18.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot merge` will merge this PR after your CI passes on it\n- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it\n- `@dependabot cancel merge` will cancel a previously requested merge and block automerging\n- `@dependabot reopen` will reopen this PR if it is closed\n- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)\n\n\n\u003c/details\u003e","html_url":"https://github.com/instancio/instancio/pull/1500","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/instancio%2Finstancio/issues/1500","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/1500/packages"},{"uuid":"2827739389","node_id":"PR_kwDOEZ_GmM6oi-D9","number":936,"state":"closed","title":"Bump pmdVersion from 7.16.0 to 7.17.0 in /java","user":"dependabot[bot]","labels":["dependencies","java"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2025-09-18T10:35:45.000Z","author_association":"CONTRIBUTOR","state_reason":null,"created_at":"2025-09-15T04:26:47.000Z","updated_at":"2025-09-18T10:35:46.000Z","time_to_close":281338,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","packages":[{"name":"pmdVersion","old_version":"7.16.0","new_version":"7.17.0","repository_url":null}],"path":"/java","ecosystem":"maven"},"body":"Bumps `pmdVersion` from 7.16.0 to 7.17.0.\nUpdates `net.sourceforge.pmd:pmd-core` from 7.16.0 to 7.17.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pmd/pmd/releases\"\u003enet.sourceforge.pmd:pmd-core's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ePMD 7.17.0 (12-September-2025)\u003c/h2\u003e\n\u003ch2\u003e12-September-2025 - 7.17.0\u003c/h2\u003e\n\u003cp\u003eThe PMD team is pleased to announce PMD 7.17.0.\u003c/p\u003e\n\u003cp\u003eThis is a minor release.\u003c/p\u003e\n\u003ch3\u003eTable Of Contents\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-and-noteworthy\"\u003e🚀 New and noteworthy\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-rules\"\u003e✨ New Rules\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#deprecated-rules\"\u003eDeprecated Rules\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#cpd-new-markdown-report-format\"\u003eCPD: New Markdown Report Format\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#fixed-issues\"\u003e🐛 Fixed Issues\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#api-changes\"\u003e🚨 API Changes\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#deprecations\"\u003eDeprecations\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#experimental-api\"\u003eExperimental API\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#pmd-report-format-csv\"\u003ePMD Report Format CSV\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#rule-test-schema\"\u003eRule Test Schema\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#deprecations\"\u003eDeprecations\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#merged-pull-requests\"\u003e✨ Merged pull requests\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#dependency-updates\"\u003e📦 Dependency updates\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#stats\"\u003e📈 Stats\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🚀 New and noteworthy\u003c/h3\u003e\n\u003ch4\u003e✨ New Rules\u003c/h4\u003e\n\u003cp\u003eThis release brings several new rules for both Java and Apex. Please try them out\nand submit feedback on \u003ca href=\"https://github.com/pmd/pmd/issues\"\u003eour issue tracker\u003c/a\u003e!\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eThe new apex rule \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.17.0/pmd_rules_apex_codestyle.html#annotationsnamingconventions\"\u003e\u003ccode\u003eAnnotationsNamingConventions\u003c/code\u003e\u003c/a\u003e enforces that annotations\nare used consistently in PascalCase.\u003cbr /\u003e\nThe rule is referenced in the quickstart.xml ruleset for Apex.\u003c/li\u003e\n\u003cli\u003eThe new java rule \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.17.0/pmd_rules_java_codestyle.html#typeparameternamingconventions\"\u003e\u003ccode\u003eTypeParameterNamingConventions\u003c/code\u003e\u003c/a\u003e replaces the now deprecated rule\nGenericsNaming. The new rule is configurable and checks for naming conventions of type parameters in\ngeneric types and methods. It can be configured via a regular expression.\u003cbr /\u003e\nBy default, this rule uses the standard Java naming convention (single uppercase letter).\u003cbr /\u003e\nThe rule is referenced in the quickstart.xml ruleset for Java.\u003c/li\u003e\n\u003cli\u003eThe new java rule \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.17.0/pmd_rules_java_errorprone.html#overridebothequalsandhashcodeoncomparable\"\u003e\u003ccode\u003eOverrideBothEqualsAndHashCodeOnComparable\u003c/code\u003e\u003c/a\u003e finds missing\n\u003ccode\u003ehashCode()\u003c/code\u003e and/or \u003ccode\u003eequals()\u003c/code\u003e methods on types that implement \u003ccode\u003eComparable\u003c/code\u003e. This is important if\ninstances of these classes are used in collections. Failing to do so can lead to unexpected behavior in sets\nwhich then do not conform to the \u003ccode\u003eSet\u003c/code\u003e interface. While the \u003ccode\u003eSet\u003c/code\u003e interface relies on\n\u003ccode\u003eequals()\u003c/code\u003e to determine object equality, sorted sets like \u003ccode\u003eTreeSet\u003c/code\u003e use\n\u003ccode\u003ecompareTo()\u003c/code\u003e instead. The same issue can arise when such objects are used\nas keys in sorted maps.\u003cbr /\u003e\nThis rule is very similar to \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.17.0/pmd_rules_java_errorprone.html#overridebothequalsandhashcode\"\u003e\u003ccode\u003eOverrideBothEqualsAndHashcode\u003c/code\u003e\u003c/a\u003e which has always been\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/d2942d5ded8e3f967ba8872f3dc58a7bdffa73bf\"\u003e\u003ccode\u003ed2942d5\u003c/code\u003e\u003c/a\u003e [release] prepare release pmd_releases/7.17.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/76cc98aac0f9aadc62cb6b3795069b3a552d5a51\"\u003e\u003ccode\u003e76cc98a\u003c/code\u003e\u003c/a\u003e Prepare pmd release 7.17.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/58dfb170213b1d1e4dc2b2e4e020ff4f28ea60b7\"\u003e\u003ccode\u003e58dfb17\u003c/code\u003e\u003c/a\u003e [doc] Update release notes - add missing new rule fix issues\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/1b23cb3301bc156e67603f37c4593efe8925712b\"\u003e\u003ccode\u003e1b23cb3\u003c/code\u003e\u003c/a\u003e [java] More detailed message for AvoidInstanceofChecksInCatchClause (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/6009\"\u003e#6009\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/f8a962ac220293df7c26a612398306499d9ea5c2\"\u003e\u003ccode\u003ef8a962a\u003c/code\u003e\u003c/a\u003e Merge branch 'main' into instanceof-message\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/ce3b01fe8a67c7f45e958861b2ab390f74cf534b\"\u003e\u003ccode\u003ece3b01f\u003c/code\u003e\u003c/a\u003e [core] Fix \u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5849\"\u003e#5849\u003c/a\u003e: Support Markdown Output for CPD Reports (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/6008\"\u003e#6008\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/2e84a82c432d53755d81bd06c98a478d6bb69ecb\"\u003e\u003ccode\u003e2e84a82\u003c/code\u003e\u003c/a\u003e Merge branch 'main' into pr-6009\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/d55bea2ea019e52c60089f0be946ccfcfe03d7ce\"\u003e\u003ccode\u003ed55bea2\u003c/code\u003e\u003c/a\u003e [doc] Update release notes (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/6009\"\u003e#6009\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/59ff6419ca22ccf27f335cd6fe5d58b94bf102be\"\u003e\u003ccode\u003e59ff641\u003c/code\u003e\u003c/a\u003e Merge branch 'main' into pr-6008\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/d34dbfcbeeb4004f5bb2ae14bda48045d8f9e0da\"\u003e\u003ccode\u003ed34dbfc\u003c/code\u003e\u003c/a\u003e [doc] Update release notes (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/6008\"\u003e#6008\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5849\"\u003e#5849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pmd/pmd/compare/pmd_releases/7.16.0...pmd_releases/7.17.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `net.sourceforge.pmd:pmd-java` from 7.16.0 to 7.17.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pmd/pmd/releases\"\u003enet.sourceforge.pmd:pmd-java's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ePMD 7.17.0 (12-September-2025)\u003c/h2\u003e\n\u003ch2\u003e12-September-2025 - 7.17.0\u003c/h2\u003e\n\u003cp\u003eThe PMD team is pleased to announce PMD 7.17.0.\u003c/p\u003e\n\u003cp\u003eThis is a minor release.\u003c/p\u003e\n\u003ch3\u003eTable Of Contents\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-and-noteworthy\"\u003e🚀 New and noteworthy\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-rules\"\u003e✨ New Rules\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#deprecated-rules\"\u003eDeprecated Rules\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#cpd-new-markdown-report-format\"\u003eCPD: New Markdown Report Format\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#fixed-issues\"\u003e🐛 Fixed Issues\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#api-changes\"\u003e🚨 API Changes\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#deprecations\"\u003eDeprecations\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#experimental-api\"\u003eExperimental API\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#pmd-report-format-csv\"\u003ePMD Report Format CSV\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#rule-test-schema\"\u003eRule Test Schema\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#deprecations\"\u003eDeprecations\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#merged-pull-requests\"\u003e✨ Merged pull requests\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#dependency-updates\"\u003e📦 Dependency updates\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#stats\"\u003e📈 Stats\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🚀 New and noteworthy\u003c/h3\u003e\n\u003ch4\u003e✨ New Rules\u003c/h4\u003e\n\u003cp\u003eThis release brings several new rules for both Java and Apex. Please try them out\nand submit feedback on \u003ca href=\"https://github.com/pmd/pmd/issues\"\u003eour issue tracker\u003c/a\u003e!\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eThe new apex rule \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.17.0/pmd_rules_apex_codestyle.html#annotationsnamingconventions\"\u003e\u003ccode\u003eAnnotationsNamingConventions\u003c/code\u003e\u003c/a\u003e enforces that annotations\nare used consistently in PascalCase.\u003cbr /\u003e\nThe rule is referenced in the quickstart.xml ruleset for Apex.\u003c/li\u003e\n\u003cli\u003eThe new java rule \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.17.0/pmd_rules_java_codestyle.html#typeparameternamingconventions\"\u003e\u003ccode\u003eTypeParameterNamingConventions\u003c/code\u003e\u003c/a\u003e replaces the now deprecated rule\nGenericsNaming. The new rule is configurable and checks for naming conventions of type parameters in\ngeneric types and methods. It can be configured via a regular expression.\u003cbr /\u003e\nBy default, this rule uses the standard Java naming convention (single uppercase letter).\u003cbr /\u003e\nThe rule is referenced in the quickstart.xml ruleset for Java.\u003c/li\u003e\n\u003cli\u003eThe new java rule \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.17.0/pmd_rules_java_errorprone.html#overridebothequalsandhashcodeoncomparable\"\u003e\u003ccode\u003eOverrideBothEqualsAndHashCodeOnComparable\u003c/code\u003e\u003c/a\u003e finds missing\n\u003ccode\u003ehashCode()\u003c/code\u003e and/or \u003ccode\u003eequals()\u003c/code\u003e methods on types that implement \u003ccode\u003eComparable\u003c/code\u003e. This is important if\ninstances of these classes are used in collections. Failing to do so can lead to unexpected behavior in sets\nwhich then do not conform to the \u003ccode\u003eSet\u003c/code\u003e interface. While the \u003ccode\u003eSet\u003c/code\u003e interface relies on\n\u003ccode\u003eequals()\u003c/code\u003e to determine object equality, sorted sets like \u003ccode\u003eTreeSet\u003c/code\u003e use\n\u003ccode\u003ecompareTo()\u003c/code\u003e instead. The same issue can arise when such objects are used\nas keys in sorted maps.\u003cbr /\u003e\nThis rule is very similar to \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.17.0/pmd_rules_java_errorprone.html#overridebothequalsandhashcode\"\u003e\u003ccode\u003eOverrideBothEqualsAndHashcode\u003c/code\u003e\u003c/a\u003e which has always been\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/d2942d5ded8e3f967ba8872f3dc58a7bdffa73bf\"\u003e\u003ccode\u003ed2942d5\u003c/code\u003e\u003c/a\u003e [release] prepare release pmd_releases/7.17.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/76cc98aac0f9aadc62cb6b3795069b3a552d5a51\"\u003e\u003ccode\u003e76cc98a\u003c/code\u003e\u003c/a\u003e Prepare pmd release 7.17.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/58dfb170213b1d1e4dc2b2e4e020ff4f28ea60b7\"\u003e\u003ccode\u003e58dfb17\u003c/code\u003e\u003c/a\u003e [doc] Update release notes - add missing new rule fix issues\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/1b23cb3301bc156e67603f37c4593efe8925712b\"\u003e\u003ccode\u003e1b23cb3\u003c/code\u003e\u003c/a\u003e [java] More detailed message for AvoidInstanceofChecksInCatchClause (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/6009\"\u003e#6009\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/f8a962ac220293df7c26a612398306499d9ea5c2\"\u003e\u003ccode\u003ef8a962a\u003c/code\u003e\u003c/a\u003e Merge branch 'main' into instanceof-message\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/ce3b01fe8a67c7f45e958861b2ab390f74cf534b\"\u003e\u003ccode\u003ece3b01f\u003c/code\u003e\u003c/a\u003e [core] Fix \u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5849\"\u003e#5849\u003c/a\u003e: Support Markdown Output for CPD Reports (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/6008\"\u003e#6008\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/2e84a82c432d53755d81bd06c98a478d6bb69ecb\"\u003e\u003ccode\u003e2e84a82\u003c/code\u003e\u003c/a\u003e Merge branch 'main' into pr-6009\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/d55bea2ea019e52c60089f0be946ccfcfe03d7ce\"\u003e\u003ccode\u003ed55bea2\u003c/code\u003e\u003c/a\u003e [doc] Update release notes (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/6009\"\u003e#6009\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/59ff6419ca22ccf27f335cd6fe5d58b94bf102be\"\u003e\u003ccode\u003e59ff641\u003c/code\u003e\u003c/a\u003e Merge branch 'main' into pr-6008\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/d34dbfcbeeb4004f5bb2ae14bda48045d8f9e0da\"\u003e\u003ccode\u003ed34dbfc\u003c/code\u003e\u003c/a\u003e [doc] Update release notes (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/6008\"\u003e#6008\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5849\"\u003e#5849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pmd/pmd/compare/pmd_releases/7.16.0...pmd_releases/7.17.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `net.sourceforge.pmd:pmd-javascript` from 7.16.0 to 7.17.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pmd/pmd/releases\"\u003enet.sourceforge.pmd:pmd-javascript's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ePMD 7.17.0 (12-September-2025)\u003c/h2\u003e\n\u003ch2\u003e12-September-2025 - 7.17.0\u003c/h2\u003e\n\u003cp\u003eThe PMD team is pleased to announce PMD 7.17.0.\u003c/p\u003e\n\u003cp\u003eThis is a minor release.\u003c/p\u003e\n\u003ch3\u003eTable Of Contents\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-and-noteworthy\"\u003e🚀 New and noteworthy\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-rules\"\u003e✨ New Rules\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#deprecated-rules\"\u003eDeprecated Rules\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#cpd-new-markdown-report-format\"\u003eCPD: New Markdown Report Format\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#fixed-issues\"\u003e🐛 Fixed Issues\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#api-changes\"\u003e🚨 API Changes\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#deprecations\"\u003eDeprecations\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#experimental-api\"\u003eExperimental API\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#pmd-report-format-csv\"\u003ePMD Report Format CSV\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#rule-test-schema\"\u003eRule Test Schema\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#deprecations\"\u003eDeprecations\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#merged-pull-requests\"\u003e✨ Merged pull requests\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#dependency-updates\"\u003e📦 Dependency updates\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#stats\"\u003e📈 Stats\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🚀 New and noteworthy\u003c/h3\u003e\n\u003ch4\u003e✨ New Rules\u003c/h4\u003e\n\u003cp\u003eThis release brings several new rules for both Java and Apex. Please try them out\nand submit feedback on \u003ca href=\"https://github.com/pmd/pmd/issues\"\u003eour issue tracker\u003c/a\u003e!\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eThe new apex rule \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.17.0/pmd_rules_apex_codestyle.html#annotationsnamingconventions\"\u003e\u003ccode\u003eAnnotationsNamingConventions\u003c/code\u003e\u003c/a\u003e enforces that annotations\nare used consistently in PascalCase.\u003cbr /\u003e\nThe rule is referenced in the quickstart.xml ruleset for Apex.\u003c/li\u003e\n\u003cli\u003eThe new java rule \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.17.0/pmd_rules_java_codestyle.html#typeparameternamingconventions\"\u003e\u003ccode\u003eTypeParameterNamingConventions\u003c/code\u003e\u003c/a\u003e replaces the now deprecated rule\nGenericsNaming. The new rule is configurable and checks for naming conventions of type parameters in\ngeneric types and methods. It can be configured via a regular expression.\u003cbr /\u003e\nBy default, this rule uses the standard Java naming convention (single uppercase letter).\u003cbr /\u003e\nThe rule is referenced in the quickstart.xml ruleset for Java.\u003c/li\u003e\n\u003cli\u003eThe new java rule \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.17.0/pmd_rules_java_errorprone.html#overridebothequalsandhashcodeoncomparable\"\u003e\u003ccode\u003eOverrideBothEqualsAndHashCodeOnComparable\u003c/code\u003e\u003c/a\u003e finds missing\n\u003ccode\u003ehashCode()\u003c/code\u003e and/or \u003ccode\u003eequals()\u003c/code\u003e methods on types that implement \u003ccode\u003eComparable\u003c/code\u003e. This is important if\ninstances of these classes are used in collections. Failing to do so can lead to unexpected behavior in sets\nwhich then do not conform to the \u003ccode\u003eSet\u003c/code\u003e interface. While the \u003ccode\u003eSet\u003c/code\u003e interface relies on\n\u003ccode\u003eequals()\u003c/code\u003e to determine object equality, sorted sets like \u003ccode\u003eTreeSet\u003c/code\u003e use\n\u003ccode\u003ecompareTo()\u003c/code\u003e instead. The same issue can arise when such objects are used\nas keys in sorted maps.\u003cbr /\u003e\nThis rule is very similar to \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.17.0/pmd_rules_java_errorprone.html#overridebothequalsandhashcode\"\u003e\u003ccode\u003eOverrideBothEqualsAndHashcode\u003c/code\u003e\u003c/a\u003e which has always been\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/d2942d5ded8e3f967ba8872f3dc58a7bdffa73bf\"\u003e\u003ccode\u003ed2942d5\u003c/code\u003e\u003c/a\u003e [release] prepare release pmd_releases/7.17.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/76cc98aac0f9aadc62cb6b3795069b3a552d5a51\"\u003e\u003ccode\u003e76cc98a\u003c/code\u003e\u003c/a\u003e Prepare pmd release 7.17.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/58dfb170213b1d1e4dc2b2e4e020ff4f28ea60b7\"\u003e\u003ccode\u003e58dfb17\u003c/code\u003e\u003c/a\u003e [doc] Update release notes - add missing new rule fix issues\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/1b23cb3301bc156e67603f37c4593efe8925712b\"\u003e\u003ccode\u003e1b23cb3\u003c/code\u003e\u003c/a\u003e [java] More detailed message for AvoidInstanceofChecksInCatchClause (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/6009\"\u003e#6009\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/f8a962ac220293df7c26a612398306499d9ea5c2\"\u003e\u003ccode\u003ef8a962a\u003c/code\u003e\u003c/a\u003e Merge branch 'main' into instanceof-message\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/ce3b01fe8a67c7f45e958861b2ab390f74cf534b\"\u003e\u003ccode\u003ece3b01f\u003c/code\u003e\u003c/a\u003e [core] Fix \u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5849\"\u003e#5849\u003c/a\u003e: Support Markdown Output for CPD Reports (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/6008\"\u003e#6008\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/2e84a82c432d53755d81bd06c98a478d6bb69ecb\"\u003e\u003ccode\u003e2e84a82\u003c/code\u003e\u003c/a\u003e Merge branch 'main' into pr-6009\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/d55bea2ea019e52c60089f0be946ccfcfe03d7ce\"\u003e\u003ccode\u003ed55bea2\u003c/code\u003e\u003c/a\u003e [doc] Update release notes (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/6009\"\u003e#6009\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/59ff6419ca22ccf27f335cd6fe5d58b94bf102be\"\u003e\u003ccode\u003e59ff641\u003c/code\u003e\u003c/a\u003e Merge branch 'main' into pr-6008\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/d34dbfcbeeb4004f5bb2ae14bda48045d8f9e0da\"\u003e\u003ccode\u003ed34dbfc\u003c/code\u003e\u003c/a\u003e [doc] Update release notes (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/6008\"\u003e#6008\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5849\"\u003e#5849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pmd/pmd/compare/pmd_releases/7.16.0...pmd_releases/7.17.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `net.sourceforge.pmd:pmd-jsp` from 7.16.0 to 7.17.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pmd/pmd/releases\"\u003enet.sourceforge.pmd:pmd-jsp's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ePMD 7.17.0 (12-September-2025)\u003c/h2\u003e\n\u003ch2\u003e12-September-2025 - 7.17.0\u003c/h2\u003e\n\u003cp\u003eThe PMD team is pleased to announce PMD 7.17.0.\u003c/p\u003e\n\u003cp\u003eThis is a minor release.\u003c/p\u003e\n\u003ch3\u003eTable Of Contents\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-and-noteworthy\"\u003e🚀 New and noteworthy\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-rules\"\u003e✨ New Rules\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#deprecated-rules\"\u003eDeprecated Rules\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#cpd-new-markdown-report-format\"\u003eCPD: New Markdown Report Format\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#fixed-issues\"\u003e🐛 Fixed Issues\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#api-changes\"\u003e🚨 API Changes\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#deprecations\"\u003eDeprecations\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#experimental-api\"\u003eExperimental API\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#pmd-report-format-csv\"\u003ePMD Report Format CSV\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#rule-test-schema\"\u003eRule Test Schema\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#deprecations\"\u003eDeprecations\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#merged-pull-requests\"\u003e✨ Merged pull requests\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#dependency-updates\"\u003e📦 Dependency updates\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#stats\"\u003e📈 Stats\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🚀 New and noteworthy\u003c/h3\u003e\n\u003ch4\u003e✨ New Rules\u003c/h4\u003e\n\u003cp\u003eThis release brings several new rules for both Java and Apex. Please try them out\nand submit feedback on \u003ca href=\"https://github.com/pmd/pmd/issues\"\u003eour issue tracker\u003c/a\u003e!\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eThe new apex rule \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.17.0/pmd_rules_apex_codestyle.html#annotationsnamingconventions\"\u003e\u003ccode\u003eAnnotationsNamingConventions\u003c/code\u003e\u003c/a\u003e enforces that annotations\nare used consistently in PascalCase.\u003cbr /\u003e\nThe rule is referenced in the quickstart.xml ruleset for Apex.\u003c/li\u003e\n\u003cli\u003eThe new java rule \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.17.0/pmd_rules_java_codestyle.html#typeparameternamingconventions\"\u003e\u003ccode\u003eTypeParameterNamingConventions\u003c/code\u003e\u003c/a\u003e replaces the now deprecated rule\nGenericsNaming. The new rule is configurable and checks for naming conventions of type parameters in\ngeneric types and methods. It can be configured via a regular expression.\u003cbr /\u003e\nBy default, this rule uses the standard Java naming convention (single uppercase letter).\u003cbr /\u003e\nThe rule is referenced in the quickstart.xml ruleset for Java.\u003c/li\u003e\n\u003cli\u003eThe new java rule \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.17.0/pmd_rules_java_errorprone.html#overridebothequalsandhashcodeoncomparable\"\u003e\u003ccode\u003eOverrideBothEqualsAndHashCodeOnComparable\u003c/code\u003e\u003c/a\u003e finds missing\n\u003ccode\u003ehashCode()\u003c/code\u003e and/or \u003ccode\u003eequals()\u003c/code\u003e methods on types that implement \u003ccode\u003eComparable\u003c/code\u003e. This is important if\ninstances of these classes are used in collections. Failing to do so can lead to unexpected behavior in sets\nwhich then do not conform to the \u003ccode\u003eSet\u003c/code\u003e interface. While the \u003ccode\u003eSet\u003c/code\u003e interface relies on\n\u003ccode\u003eequals()\u003c/code\u003e to determine object equality, sorted sets like \u003ccode\u003eTreeSet\u003c/code\u003e use\n\u003ccode\u003ecompareTo()\u003c/code\u003e instead. The same issue can arise when such objects are used\nas keys in sorted maps.\u003cbr /\u003e\nThis rule is very similar to \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.17.0/pmd_rules_java_errorprone.html#overridebothequalsandhashcode\"\u003e\u003ccode\u003eOverrideBothEqualsAndHashcode\u003c/code\u003e\u003c/a\u003e which has always been\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/d2942d5ded8e3f967ba8872f3dc58a7bdffa73bf\"\u003e\u003ccode\u003ed2942d5\u003c/code\u003e\u003c/a\u003e [release] prepare release pmd_releases/7.17.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/76cc98aac0f9aadc62cb6b3795069b3a552d5a51\"\u003e\u003ccode\u003e76cc98a\u003c/code\u003e\u003c/a\u003e Prepare pmd release 7.17.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/58dfb170213b1d1e4dc2b2e4e020ff4f28ea60b7\"\u003e\u003ccode\u003e58dfb17\u003c/code\u003e\u003c/a\u003e [doc] Update release notes - add missing new rule fix issues\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/1b23cb3301bc156e67603f37c4593efe8925712b\"\u003e\u003ccode\u003e1b23cb3\u003c/code\u003e\u003c/a\u003e [java] More detailed message for AvoidInstanceofChecksInCatchClause (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/6009\"\u003e#6009\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/f8a962ac220293df7c26a612398306499d9ea5c2\"\u003e\u003ccode\u003ef8a962a\u003c/code\u003e\u003c/a\u003e Merge branch 'main' into instanceof-message\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/ce3b01fe8a67c7f45e958861b2ab390f74cf534b\"\u003e\u003ccode\u003ece3b01f\u003c/code\u003e\u003c/a\u003e [core] Fix \u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5849\"\u003e#5849\u003c/a\u003e: Support Markdown Output for CPD Reports (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/6008\"\u003e#6008\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/2e84a82c432d53755d81bd06c98a478d6bb69ecb\"\u003e\u003ccode\u003e2e84a82\u003c/code\u003e\u003c/a\u003e Merge branch 'main' into pr-6009\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/d55bea2ea019e52c60089f0be946ccfcfe03d7ce\"\u003e\u003ccode\u003ed55bea2\u003c/code\u003e\u003c/a\u003e [doc] Update release notes (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/6009\"\u003e#6009\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/59ff6419ca22ccf27f335cd6fe5d58b94bf102be\"\u003e\u003ccode\u003e59ff641\u003c/code\u003e\u003c/a\u003e Merge branch 'main' into pr-6008\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/d34dbfcbeeb4004f5bb2ae14bda48045d8f9e0da\"\u003e\u003ccode\u003ed34dbfc\u003c/code\u003e\u003c/a\u003e [doc] Update release notes (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/6008\"\u003e#6008\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5849\"\u003e#5849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pmd/pmd/compare/pmd_releases/7.16.0...pmd_releases/7.17.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot merge` will merge this PR after your CI passes on it\n- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it\n- `@dependabot cancel merge` will cancel a previously requested merge and block automerging\n- `@dependabot reopen` will reopen this PR if it is closed\n- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)\n\n\n\u003c/details\u003e","html_url":"https://github.com/hyperledger/fabric-gateway/pull/936","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/hyperledger%2Ffabric-gateway/issues/936","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/936/packages"},{"uuid":"3416096788","node_id":"PR_kwDOG8B9086oif8g","number":1451,"state":"open","title":"Bump pmdVersion from 7.16.0 to 7.17.0","user":"dependabot[bot]","labels":["dependencies","java"],"assignees":[],"locked":false,"comments_count":3,"pull_request":true,"closed_at":null,"author_association":"CONTRIBUTOR","state_reason":null,"created_at":"2025-09-15T03:08:27.000Z","updated_at":"2025-09-16T07:07:16.250Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","packages":[{"name":"pmdVersion","old_version":"7.16.0","new_version":"7.17.0","repository_url":null}],"path":null,"ecosystem":"maven"},"body":"Bumps `pmdVersion` from 7.16.0 to 7.17.0.\nUpdates `net.sourceforge.pmd:pmd-core` from 7.16.0 to 7.17.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pmd/pmd/releases\"\u003enet.sourceforge.pmd:pmd-core's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ePMD 7.17.0 (12-September-2025)\u003c/h2\u003e\n\u003ch2\u003e12-September-2025 - 7.17.0\u003c/h2\u003e\n\u003cp\u003eThe PMD team is pleased to announce PMD 7.17.0.\u003c/p\u003e\n\u003cp\u003eThis is a minor release.\u003c/p\u003e\n\u003ch3\u003eTable Of Contents\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-and-noteworthy\"\u003e🚀 New and noteworthy\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-rules\"\u003e✨ New Rules\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#deprecated-rules\"\u003eDeprecated Rules\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#cpd-new-markdown-report-format\"\u003eCPD: New Markdown Report Format\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#fixed-issues\"\u003e🐛 Fixed Issues\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#api-changes\"\u003e🚨 API Changes\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#deprecations\"\u003eDeprecations\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#experimental-api\"\u003eExperimental API\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#pmd-report-format-csv\"\u003ePMD Report Format CSV\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#rule-test-schema\"\u003eRule Test Schema\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#deprecations\"\u003eDeprecations\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#merged-pull-requests\"\u003e✨ Merged pull requests\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#dependency-updates\"\u003e📦 Dependency updates\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#stats\"\u003e📈 Stats\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🚀 New and noteworthy\u003c/h3\u003e\n\u003ch4\u003e✨ New Rules\u003c/h4\u003e\n\u003cp\u003eThis release brings several new rules for both Java and Apex. Please try them out\nand submit feedback on \u003ca href=\"https://github.com/pmd/pmd/issues\"\u003eour issue tracker\u003c/a\u003e!\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eThe new apex rule \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.17.0/pmd_rules_apex_codestyle.html#annotationsnamingconventions\"\u003e\u003ccode\u003eAnnotationsNamingConventions\u003c/code\u003e\u003c/a\u003e enforces that annotations\nare used consistently in PascalCase.\u003cbr /\u003e\nThe rule is referenced in the quickstart.xml ruleset for Apex.\u003c/li\u003e\n\u003cli\u003eThe new java rule \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.17.0/pmd_rules_java_codestyle.html#typeparameternamingconventions\"\u003e\u003ccode\u003eTypeParameterNamingConventions\u003c/code\u003e\u003c/a\u003e replaces the now deprecated rule\nGenericsNaming. The new rule is configurable and checks for naming conventions of type parameters in\ngeneric types and methods. It can be configured via a regular expression.\u003cbr /\u003e\nBy default, this rule uses the standard Java naming convention (single uppercase letter).\u003cbr /\u003e\nThe rule is referenced in the quickstart.xml ruleset for Java.\u003c/li\u003e\n\u003cli\u003eThe new java rule \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.17.0/pmd_rules_java_errorprone.html#overridebothequalsandhashcodeoncomparable\"\u003e\u003ccode\u003eOverrideBothEqualsAndHashCodeOnComparable\u003c/code\u003e\u003c/a\u003e finds missing\n\u003ccode\u003ehashCode()\u003c/code\u003e and/or \u003ccode\u003eequals()\u003c/code\u003e methods on types that implement \u003ccode\u003eComparable\u003c/code\u003e. This is important if\ninstances of these classes are used in collections. Failing to do so can lead to unexpected behavior in sets\nwhich then do not conform to the \u003ccode\u003eSet\u003c/code\u003e interface. While the \u003ccode\u003eSet\u003c/code\u003e interface relies on\n\u003ccode\u003eequals()\u003c/code\u003e to determine object equality, sorted sets like \u003ccode\u003eTreeSet\u003c/code\u003e use\n\u003ccode\u003ecompareTo()\u003c/code\u003e instead. The same issue can arise when such objects are used\nas keys in sorted maps.\u003cbr /\u003e\nThis rule is very similar to \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.17.0/pmd_rules_java_errorprone.html#overridebothequalsandhashcode\"\u003e\u003ccode\u003eOverrideBothEqualsAndHashcode\u003c/code\u003e\u003c/a\u003e which has always been\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/d2942d5ded8e3f967ba8872f3dc58a7bdffa73bf\"\u003e\u003ccode\u003ed2942d5\u003c/code\u003e\u003c/a\u003e [release] prepare release pmd_releases/7.17.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/76cc98aac0f9aadc62cb6b3795069b3a552d5a51\"\u003e\u003ccode\u003e76cc98a\u003c/code\u003e\u003c/a\u003e Prepare pmd release 7.17.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/58dfb170213b1d1e4dc2b2e4e020ff4f28ea60b7\"\u003e\u003ccode\u003e58dfb17\u003c/code\u003e\u003c/a\u003e [doc] Update release notes - add missing new rule fix issues\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/1b23cb3301bc156e67603f37c4593efe8925712b\"\u003e\u003ccode\u003e1b23cb3\u003c/code\u003e\u003c/a\u003e [java] More detailed message for AvoidInstanceofChecksInCatchClause (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/6009\"\u003e#6009\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/f8a962ac220293df7c26a612398306499d9ea5c2\"\u003e\u003ccode\u003ef8a962a\u003c/code\u003e\u003c/a\u003e Merge branch 'main' into instanceof-message\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/ce3b01fe8a67c7f45e958861b2ab390f74cf534b\"\u003e\u003ccode\u003ece3b01f\u003c/code\u003e\u003c/a\u003e [core] Fix \u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5849\"\u003e#5849\u003c/a\u003e: Support Markdown Output for CPD Reports (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/6008\"\u003e#6008\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/2e84a82c432d53755d81bd06c98a478d6bb69ecb\"\u003e\u003ccode\u003e2e84a82\u003c/code\u003e\u003c/a\u003e Merge branch 'main' into pr-6009\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/d55bea2ea019e52c60089f0be946ccfcfe03d7ce\"\u003e\u003ccode\u003ed55bea2\u003c/code\u003e\u003c/a\u003e [doc] Update release notes (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/6009\"\u003e#6009\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/59ff6419ca22ccf27f335cd6fe5d58b94bf102be\"\u003e\u003ccode\u003e59ff641\u003c/code\u003e\u003c/a\u003e Merge branch 'main' into pr-6008\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/d34dbfcbeeb4004f5bb2ae14bda48045d8f9e0da\"\u003e\u003ccode\u003ed34dbfc\u003c/code\u003e\u003c/a\u003e [doc] Update release notes (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/6008\"\u003e#6008\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5849\"\u003e#5849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pmd/pmd/compare/pmd_releases/7.16.0...pmd_releases/7.17.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `net.sourceforge.pmd:pmd-java` from 7.16.0 to 7.17.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pmd/pmd/releases\"\u003enet.sourceforge.pmd:pmd-java's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ePMD 7.17.0 (12-September-2025)\u003c/h2\u003e\n\u003ch2\u003e12-September-2025 - 7.17.0\u003c/h2\u003e\n\u003cp\u003eThe PMD team is pleased to announce PMD 7.17.0.\u003c/p\u003e\n\u003cp\u003eThis is a minor release.\u003c/p\u003e\n\u003ch3\u003eTable Of Contents\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-and-noteworthy\"\u003e🚀 New and noteworthy\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-rules\"\u003e✨ New Rules\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#deprecated-rules\"\u003eDeprecated Rules\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#cpd-new-markdown-report-format\"\u003eCPD: New Markdown Report Format\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#fixed-issues\"\u003e🐛 Fixed Issues\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#api-changes\"\u003e🚨 API Changes\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#deprecations\"\u003eDeprecations\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#experimental-api\"\u003eExperimental API\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#pmd-report-format-csv\"\u003ePMD Report Format CSV\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#rule-test-schema\"\u003eRule Test Schema\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#deprecations\"\u003eDeprecations\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#merged-pull-requests\"\u003e✨ Merged pull requests\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#dependency-updates\"\u003e📦 Dependency updates\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#stats\"\u003e📈 Stats\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🚀 New and noteworthy\u003c/h3\u003e\n\u003ch4\u003e✨ New Rules\u003c/h4\u003e\n\u003cp\u003eThis release brings several new rules for both Java and Apex. Please try them out\nand submit feedback on \u003ca href=\"https://github.com/pmd/pmd/issues\"\u003eour issue tracker\u003c/a\u003e!\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eThe new apex rule \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.17.0/pmd_rules_apex_codestyle.html#annotationsnamingconventions\"\u003e\u003ccode\u003eAnnotationsNamingConventions\u003c/code\u003e\u003c/a\u003e enforces that annotations\nare used consistently in PascalCase.\u003cbr /\u003e\nThe rule is referenced in the quickstart.xml ruleset for Apex.\u003c/li\u003e\n\u003cli\u003eThe new java rule \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.17.0/pmd_rules_java_codestyle.html#typeparameternamingconventions\"\u003e\u003ccode\u003eTypeParameterNamingConventions\u003c/code\u003e\u003c/a\u003e replaces the now deprecated rule\nGenericsNaming. The new rule is configurable and checks for naming conventions of type parameters in\ngeneric types and methods. It can be configured via a regular expression.\u003cbr /\u003e\nBy default, this rule uses the standard Java naming convention (single uppercase letter).\u003cbr /\u003e\nThe rule is referenced in the quickstart.xml ruleset for Java.\u003c/li\u003e\n\u003cli\u003eThe new java rule \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.17.0/pmd_rules_java_errorprone.html#overridebothequalsandhashcodeoncomparable\"\u003e\u003ccode\u003eOverrideBothEqualsAndHashCodeOnComparable\u003c/code\u003e\u003c/a\u003e finds missing\n\u003ccode\u003ehashCode()\u003c/code\u003e and/or \u003ccode\u003eequals()\u003c/code\u003e methods on types that implement \u003ccode\u003eComparable\u003c/code\u003e. This is important if\ninstances of these classes are used in collections. Failing to do so can lead to unexpected behavior in sets\nwhich then do not conform to the \u003ccode\u003eSet\u003c/code\u003e interface. While the \u003ccode\u003eSet\u003c/code\u003e interface relies on\n\u003ccode\u003eequals()\u003c/code\u003e to determine object equality, sorted sets like \u003ccode\u003eTreeSet\u003c/code\u003e use\n\u003ccode\u003ecompareTo()\u003c/code\u003e instead. The same issue can arise when such objects are used\nas keys in sorted maps.\u003cbr /\u003e\nThis rule is very similar to \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.17.0/pmd_rules_java_errorprone.html#overridebothequalsandhashcode\"\u003e\u003ccode\u003eOverrideBothEqualsAndHashcode\u003c/code\u003e\u003c/a\u003e which has always been\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/d2942d5ded8e3f967ba8872f3dc58a7bdffa73bf\"\u003e\u003ccode\u003ed2942d5\u003c/code\u003e\u003c/a\u003e [release] prepare release pmd_releases/7.17.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/76cc98aac0f9aadc62cb6b3795069b3a552d5a51\"\u003e\u003ccode\u003e76cc98a\u003c/code\u003e\u003c/a\u003e Prepare pmd release 7.17.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/58dfb170213b1d1e4dc2b2e4e020ff4f28ea60b7\"\u003e\u003ccode\u003e58dfb17\u003c/code\u003e\u003c/a\u003e [doc] Update release notes - add missing new rule fix issues\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/1b23cb3301bc156e67603f37c4593efe8925712b\"\u003e\u003ccode\u003e1b23cb3\u003c/code\u003e\u003c/a\u003e [java] More detailed message for AvoidInstanceofChecksInCatchClause (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/6009\"\u003e#6009\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/f8a962ac220293df7c26a612398306499d9ea5c2\"\u003e\u003ccode\u003ef8a962a\u003c/code\u003e\u003c/a\u003e Merge branch 'main' into instanceof-message\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/ce3b01fe8a67c7f45e958861b2ab390f74cf534b\"\u003e\u003ccode\u003ece3b01f\u003c/code\u003e\u003c/a\u003e [core] Fix \u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5849\"\u003e#5849\u003c/a\u003e: Support Markdown Output for CPD Reports (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/6008\"\u003e#6008\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/2e84a82c432d53755d81bd06c98a478d6bb69ecb\"\u003e\u003ccode\u003e2e84a82\u003c/code\u003e\u003c/a\u003e Merge branch 'main' into pr-6009\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/d55bea2ea019e52c60089f0be946ccfcfe03d7ce\"\u003e\u003ccode\u003ed55bea2\u003c/code\u003e\u003c/a\u003e [doc] Update release notes (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/6009\"\u003e#6009\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/59ff6419ca22ccf27f335cd6fe5d58b94bf102be\"\u003e\u003ccode\u003e59ff641\u003c/code\u003e\u003c/a\u003e Merge branch 'main' into pr-6008\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/d34dbfcbeeb4004f5bb2ae14bda48045d8f9e0da\"\u003e\u003ccode\u003ed34dbfc\u003c/code\u003e\u003c/a\u003e [doc] Update release notes (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/6008\"\u003e#6008\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5849\"\u003e#5849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pmd/pmd/compare/pmd_releases/7.16.0...pmd_releases/7.17.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `net.sourceforge.pmd:pmd-javascript` from 7.16.0 to 7.17.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pmd/pmd/releases\"\u003enet.sourceforge.pmd:pmd-javascript's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ePMD 7.17.0 (12-September-2025)\u003c/h2\u003e\n\u003ch2\u003e12-September-2025 - 7.17.0\u003c/h2\u003e\n\u003cp\u003eThe PMD team is pleased to announce PMD 7.17.0.\u003c/p\u003e\n\u003cp\u003eThis is a minor release.\u003c/p\u003e\n\u003ch3\u003eTable Of Contents\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-and-noteworthy\"\u003e🚀 New and noteworthy\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-rules\"\u003e✨ New Rules\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#deprecated-rules\"\u003eDeprecated Rules\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#cpd-new-markdown-report-format\"\u003eCPD: New Markdown Report Format\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#fixed-issues\"\u003e🐛 Fixed Issues\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#api-changes\"\u003e🚨 API Changes\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#deprecations\"\u003eDeprecations\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#experimental-api\"\u003eExperimental API\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#pmd-report-format-csv\"\u003ePMD Report Format CSV\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#rule-test-schema\"\u003eRule Test Schema\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#deprecations\"\u003eDeprecations\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#merged-pull-requests\"\u003e✨ Merged pull requests\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#dependency-updates\"\u003e📦 Dependency updates\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#stats\"\u003e📈 Stats\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🚀 New and noteworthy\u003c/h3\u003e\n\u003ch4\u003e✨ New Rules\u003c/h4\u003e\n\u003cp\u003eThis release brings several new rules for both Java and Apex. Please try them out\nand submit feedback on \u003ca href=\"https://github.com/pmd/pmd/issues\"\u003eour issue tracker\u003c/a\u003e!\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eThe new apex rule \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.17.0/pmd_rules_apex_codestyle.html#annotationsnamingconventions\"\u003e\u003ccode\u003eAnnotationsNamingConventions\u003c/code\u003e\u003c/a\u003e enforces that annotations\nare used consistently in PascalCase.\u003cbr /\u003e\nThe rule is referenced in the quickstart.xml ruleset for Apex.\u003c/li\u003e\n\u003cli\u003eThe new java rule \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.17.0/pmd_rules_java_codestyle.html#typeparameternamingconventions\"\u003e\u003ccode\u003eTypeParameterNamingConventions\u003c/code\u003e\u003c/a\u003e replaces the now deprecated rule\nGenericsNaming. The new rule is configurable and checks for naming conventions of type parameters in\ngeneric types and methods. It can be configured via a regular expression.\u003cbr /\u003e\nBy default, this rule uses the standard Java naming convention (single uppercase letter).\u003cbr /\u003e\nThe rule is referenced in the quickstart.xml ruleset for Java.\u003c/li\u003e\n\u003cli\u003eThe new java rule \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.17.0/pmd_rules_java_errorprone.html#overridebothequalsandhashcodeoncomparable\"\u003e\u003ccode\u003eOverrideBothEqualsAndHashCodeOnComparable\u003c/code\u003e\u003c/a\u003e finds missing\n\u003ccode\u003ehashCode()\u003c/code\u003e and/or \u003ccode\u003eequals()\u003c/code\u003e methods on types that implement \u003ccode\u003eComparable\u003c/code\u003e. This is important if\ninstances of these classes are used in collections. Failing to do so can lead to unexpected behavior in sets\nwhich then do not conform to the \u003ccode\u003eSet\u003c/code\u003e interface. While the \u003ccode\u003eSet\u003c/code\u003e interface relies on\n\u003ccode\u003eequals()\u003c/code\u003e to determine object equality, sorted sets like \u003ccode\u003eTreeSet\u003c/code\u003e use\n\u003ccode\u003ecompareTo()\u003c/code\u003e instead. The same issue can arise when such objects are used\nas keys in sorted maps.\u003cbr /\u003e\nThis rule is very similar to \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.17.0/pmd_rules_java_errorprone.html#overridebothequalsandhashcode\"\u003e\u003ccode\u003eOverrideBothEqualsAndHashcode\u003c/code\u003e\u003c/a\u003e which has always been\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/d2942d5ded8e3f967ba8872f3dc58a7bdffa73bf\"\u003e\u003ccode\u003ed2942d5\u003c/code\u003e\u003c/a\u003e [release] prepare release pmd_releases/7.17.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/76cc98aac0f9aadc62cb6b3795069b3a552d5a51\"\u003e\u003ccode\u003e76cc98a\u003c/code\u003e\u003c/a\u003e Prepare pmd release 7.17.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/58dfb170213b1d1e4dc2b2e4e020ff4f28ea60b7\"\u003e\u003ccode\u003e58dfb17\u003c/code\u003e\u003c/a\u003e [doc] Update release notes - add missing new rule fix issues\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/1b23cb3301bc156e67603f37c4593efe8925712b\"\u003e\u003ccode\u003e1b23cb3\u003c/code\u003e\u003c/a\u003e [java] More detailed message for AvoidInstanceofChecksInCatchClause (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/6009\"\u003e#6009\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/f8a962ac220293df7c26a612398306499d9ea5c2\"\u003e\u003ccode\u003ef8a962a\u003c/code\u003e\u003c/a\u003e Merge branch 'main' into instanceof-message\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/ce3b01fe8a67c7f45e958861b2ab390f74cf534b\"\u003e\u003ccode\u003ece3b01f\u003c/code\u003e\u003c/a\u003e [core] Fix \u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5849\"\u003e#5849\u003c/a\u003e: Support Markdown Output for CPD Reports (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/6008\"\u003e#6008\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/2e84a82c432d53755d81bd06c98a478d6bb69ecb\"\u003e\u003ccode\u003e2e84a82\u003c/code\u003e\u003c/a\u003e Merge branch 'main' into pr-6009\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/d55bea2ea019e52c60089f0be946ccfcfe03d7ce\"\u003e\u003ccode\u003ed55bea2\u003c/code\u003e\u003c/a\u003e [doc] Update release notes (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/6009\"\u003e#6009\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/59ff6419ca22ccf27f335cd6fe5d58b94bf102be\"\u003e\u003ccode\u003e59ff641\u003c/code\u003e\u003c/a\u003e Merge branch 'main' into pr-6008\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/d34dbfcbeeb4004f5bb2ae14bda48045d8f9e0da\"\u003e\u003ccode\u003ed34dbfc\u003c/code\u003e\u003c/a\u003e [doc] Update release notes (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/6008\"\u003e#6008\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5849\"\u003e#5849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pmd/pmd/compare/pmd_releases/7.16.0...pmd_releases/7.17.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `net.sourceforge.pmd:pmd-jsp` from 7.16.0 to 7.17.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pmd/pmd/releases\"\u003enet.sourceforge.pmd:pmd-jsp's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ePMD 7.17.0 (12-September-2025)\u003c/h2\u003e\n\u003ch2\u003e12-September-2025 - 7.17.0\u003c/h2\u003e\n\u003cp\u003eThe PMD team is pleased to announce PMD 7.17.0.\u003c/p\u003e\n\u003cp\u003eThis is a minor release.\u003c/p\u003e\n\u003ch3\u003eTable Of Contents\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-and-noteworthy\"\u003e🚀 New and noteworthy\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-rules\"\u003e✨ New Rules\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#deprecated-rules\"\u003eDeprecated Rules\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#cpd-new-markdown-report-format\"\u003eCPD: New Markdown Report Format\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#fixed-issues\"\u003e🐛 Fixed Issues\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#api-changes\"\u003e🚨 API Changes\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#deprecations\"\u003eDeprecations\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#experimental-api\"\u003eExperimental API\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#pmd-report-format-csv\"\u003ePMD Report Format CSV\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#rule-test-schema\"\u003eRule Test Schema\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#deprecations\"\u003eDeprecations\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#merged-pull-requests\"\u003e✨ Merged pull requests\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#dependency-updates\"\u003e📦 Dependency updates\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#stats\"\u003e📈 Stats\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🚀 New and noteworthy\u003c/h3\u003e\n\u003ch4\u003e✨ New Rules\u003c/h4\u003e\n\u003cp\u003eThis release brings several new rules for both Java and Apex. Please try them out\nand submit feedback on \u003ca href=\"https://github.com/pmd/pmd/issues\"\u003eour issue tracker\u003c/a\u003e!\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eThe new apex rule \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.17.0/pmd_rules_apex_codestyle.html#annotationsnamingconventions\"\u003e\u003ccode\u003eAnnotationsNamingConventions\u003c/code\u003e\u003c/a\u003e enforces that annotations\nare used consistently in PascalCase.\u003cbr /\u003e\nThe rule is referenced in the quickstart.xml ruleset for Apex.\u003c/li\u003e\n\u003cli\u003eThe new java rule \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.17.0/pmd_rules_java_codestyle.html#typeparameternamingconventions\"\u003e\u003ccode\u003eTypeParameterNamingConventions\u003c/code\u003e\u003c/a\u003e replaces the now deprecated rule\nGenericsNaming. The new rule is configurable and checks for naming conventions of type parameters in\ngeneric types and methods. It can be configured via a regular expression.\u003cbr /\u003e\nBy default, this rule uses the standard Java naming convention (single uppercase letter).\u003cbr /\u003e\nThe rule is referenced in the quickstart.xml ruleset for Java.\u003c/li\u003e\n\u003cli\u003eThe new java rule \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.17.0/pmd_rules_java_errorprone.html#overridebothequalsandhashcodeoncomparable\"\u003e\u003ccode\u003eOverrideBothEqualsAndHashCodeOnComparable\u003c/code\u003e\u003c/a\u003e finds missing\n\u003ccode\u003ehashCode()\u003c/code\u003e and/or \u003ccode\u003eequals()\u003c/code\u003e methods on types that implement \u003ccode\u003eComparable\u003c/code\u003e. This is important if\ninstances of these classes are used in collections. Failing to do so can lead to unexpected behavior in sets\nwhich then do not conform to the \u003ccode\u003eSet\u003c/code\u003e interface. While the \u003ccode\u003eSet\u003c/code\u003e interface relies on\n\u003ccode\u003eequals()\u003c/code\u003e to determine object equality, sorted sets like \u003ccode\u003eTreeSet\u003c/code\u003e use\n\u003ccode\u003ecompareTo()\u003c/code\u003e instead. The same issue can arise when such objects are used\nas keys in sorted maps.\u003cbr /\u003e\nThis rule is very similar to \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.17.0/pmd_rules_java_errorprone.html#overridebothequalsandhashcode\"\u003e\u003ccode\u003eOverrideBothEqualsAndHashcode\u003c/code\u003e\u003c/a\u003e which has always been\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/d2942d5ded8e3f967ba8872f3dc58a7bdffa73bf\"\u003e\u003ccode\u003ed2942d5\u003c/code\u003e\u003c/a\u003e [release] prepare release pmd_releases/7.17.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/76cc98aac0f9aadc62cb6b3795069b3a552d5a51\"\u003e\u003ccode\u003e76cc98a\u003c/code\u003e\u003c/a\u003e Prepare pmd release 7.17.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/58dfb170213b1d1e4dc2b2e4e020ff4f28ea60b7\"\u003e\u003ccode\u003e58dfb17\u003c/code\u003e\u003c/a\u003e [doc] Update release notes - add missing new rule fix issues\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/1b23cb3301bc156e67603f37c4593efe8925712b\"\u003e\u003ccode\u003e1b23cb3\u003c/code\u003e\u003c/a\u003e [java] More detailed message for AvoidInstanceofChecksInCatchClause (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/6009\"\u003e#6009\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/f8a962ac220293df7c26a612398306499d9ea5c2\"\u003e\u003ccode\u003ef8a962a\u003c/code\u003e\u003c/a\u003e Merge branch 'main' into instanceof-message\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/ce3b01fe8a67c7f45e958861b2ab390f74cf534b\"\u003e\u003ccode\u003ece3b01f\u003c/code\u003e\u003c/a\u003e [core] Fix \u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5849\"\u003e#5849\u003c/a\u003e: Support Markdown Output for CPD Reports (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/6008\"\u003e#6008\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/2e84a82c432d53755d81bd06c98a478d6bb69ecb\"\u003e\u003ccode\u003e2e84a82\u003c/code\u003e\u003c/a\u003e Merge branch 'main' into pr-6009\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/d55bea2ea019e52c60089f0be946ccfcfe03d7ce\"\u003e\u003ccode\u003ed55bea2\u003c/code\u003e\u003c/a\u003e [doc] Update release notes (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/6009\"\u003e#6009\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/59ff6419ca22ccf27f335cd6fe5d58b94bf102be\"\u003e\u003ccode\u003e59ff641\u003c/code\u003e\u003c/a\u003e Merge branch 'main' into pr-6008\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/d34dbfcbeeb4004f5bb2ae14bda48045d8f9e0da\"\u003e\u003ccode\u003ed34dbfc\u003c/code\u003e\u003c/a\u003e [doc] Update release notes (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/6008\"\u003e#6008\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5849\"\u003e#5849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pmd/pmd/compare/pmd_releases/7.16.0...pmd_releases/7.17.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot merge` will merge this PR after your CI passes on it\n- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it\n- `@dependabot cancel merge` will cancel a previously requested merge and block automerging\n- `@dependabot reopen` will reopen this PR if it is closed\n- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)\n\n\n\u003c/details\u003e","html_url":"https://github.com/instancio/instancio/pull/1451","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/instancio%2Finstancio/issues/1451","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/1451/packages"},{"uuid":"2822290076","node_id":"PR_kwDOBsaZJs6oOLqc","number":657,"state":"closed","title":"Bump pmdVersion from 7.16.0 to 7.17.0","user":"dependabot[bot]","labels":["dependencies","java"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2025-10-06T05:42:31.000Z","author_association":"CONTRIBUTOR","state_reason":null,"created_at":"2025-09-12T11:03:44.000Z","updated_at":"2025-10-06T05:42:32.000Z","time_to_close":2054327,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","packages":[{"name":"pmdVersion","old_version":"7.16.0","new_version":"7.17.0","repository_url":null}],"path":null,"ecosystem":"maven"},"body":"Bumps `pmdVersion` from 7.16.0 to 7.17.0.\nUpdates `net.sourceforge.pmd:pmd-core` from 7.16.0 to 7.17.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pmd/pmd/releases\"\u003enet.sourceforge.pmd:pmd-core's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ePMD 7.17.0 (12-September-2025)\u003c/h2\u003e\n\u003ch2\u003e12-September-2025 - 7.17.0\u003c/h2\u003e\n\u003cp\u003eThe PMD team is pleased to announce PMD 7.17.0.\u003c/p\u003e\n\u003cp\u003eThis is a minor release.\u003c/p\u003e\n\u003ch3\u003eTable Of Contents\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-and-noteworthy\"\u003e🚀 New and noteworthy\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-rules\"\u003e✨ New Rules\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#deprecated-rules\"\u003eDeprecated Rules\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#cpd-new-markdown-report-format\"\u003eCPD: New Markdown Report Format\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#fixed-issues\"\u003e🐛 Fixed Issues\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#api-changes\"\u003e🚨 API Changes\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#deprecations\"\u003eDeprecations\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#experimental-api\"\u003eExperimental API\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#pmd-report-format-csv\"\u003ePMD Report Format CSV\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#rule-test-schema\"\u003eRule Test Schema\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#deprecations\"\u003eDeprecations\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#merged-pull-requests\"\u003e✨ Merged pull requests\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#dependency-updates\"\u003e📦 Dependency updates\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#stats\"\u003e📈 Stats\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🚀 New and noteworthy\u003c/h3\u003e\n\u003ch4\u003e✨ New Rules\u003c/h4\u003e\n\u003cp\u003eThis release brings several new rules for both Java and Apex. Please try them out\nand submit feedback on \u003ca href=\"https://github.com/pmd/pmd/issues\"\u003eour issue tracker\u003c/a\u003e!\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eThe new apex rule \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.17.0/pmd_rules_apex_codestyle.html#annotationsnamingconventions\"\u003e\u003ccode\u003eAnnotationsNamingConventions\u003c/code\u003e\u003c/a\u003e enforces that annotations\nare used consistently in PascalCase.\u003cbr /\u003e\nThe rule is referenced in the quickstart.xml ruleset for Apex.\u003c/li\u003e\n\u003cli\u003eThe new java rule \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.17.0/pmd_rules_java_codestyle.html#typeparameternamingconventions\"\u003e\u003ccode\u003eTypeParameterNamingConventions\u003c/code\u003e\u003c/a\u003e replaces the now deprecated rule\nGenericsNaming. The new rule is configurable and checks for naming conventions of type parameters in\ngeneric types and methods. It can be configured via a regular expression.\u003cbr /\u003e\nBy default, this rule uses the standard Java naming convention (single uppercase letter).\u003cbr /\u003e\nThe rule is referenced in the quickstart.xml ruleset for Java.\u003c/li\u003e\n\u003cli\u003eThe new java rule \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.17.0/pmd_rules_java_errorprone.html#overridebothequalsandhashcodeoncomparable\"\u003e\u003ccode\u003eOverrideBothEqualsAndHashCodeOnComparable\u003c/code\u003e\u003c/a\u003e finds missing\n\u003ccode\u003ehashCode()\u003c/code\u003e and/or \u003ccode\u003eequals()\u003c/code\u003e methods on types that implement \u003ccode\u003eComparable\u003c/code\u003e. This is important if\ninstances of these classes are used in collections. Failing to do so can lead to unexpected behavior in sets\nwhich then do not conform to the \u003ccode\u003eSet\u003c/code\u003e interface. While the \u003ccode\u003eSet\u003c/code\u003e interface relies on\n\u003ccode\u003eequals()\u003c/code\u003e to determine object equality, sorted sets like \u003ccode\u003eTreeSet\u003c/code\u003e use\n\u003ccode\u003ecompareTo()\u003c/code\u003e instead. The same issue can arise when such objects are used\nas keys in sorted maps.\u003cbr /\u003e\nThis rule is very similar to \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.17.0/pmd_rules_java_errorprone.html#overridebothequalsandhashcode\"\u003e\u003ccode\u003eOverrideBothEqualsAndHashcode\u003c/code\u003e\u003c/a\u003e which has always been\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/d2942d5ded8e3f967ba8872f3dc58a7bdffa73bf\"\u003e\u003ccode\u003ed2942d5\u003c/code\u003e\u003c/a\u003e [release] prepare release pmd_releases/7.17.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/76cc98aac0f9aadc62cb6b3795069b3a552d5a51\"\u003e\u003ccode\u003e76cc98a\u003c/code\u003e\u003c/a\u003e Prepare pmd release 7.17.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/58dfb170213b1d1e4dc2b2e4e020ff4f28ea60b7\"\u003e\u003ccode\u003e58dfb17\u003c/code\u003e\u003c/a\u003e [doc] Update release notes - add missing new rule fix issues\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/1b23cb3301bc156e67603f37c4593efe8925712b\"\u003e\u003ccode\u003e1b23cb3\u003c/code\u003e\u003c/a\u003e [java] More detailed message for AvoidInstanceofChecksInCatchClause (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/6009\"\u003e#6009\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/f8a962ac220293df7c26a612398306499d9ea5c2\"\u003e\u003ccode\u003ef8a962a\u003c/code\u003e\u003c/a\u003e Merge branch 'main' into instanceof-message\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/ce3b01fe8a67c7f45e958861b2ab390f74cf534b\"\u003e\u003ccode\u003ece3b01f\u003c/code\u003e\u003c/a\u003e [core] Fix \u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5849\"\u003e#5849\u003c/a\u003e: Support Markdown Output for CPD Reports (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/6008\"\u003e#6008\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/2e84a82c432d53755d81bd06c98a478d6bb69ecb\"\u003e\u003ccode\u003e2e84a82\u003c/code\u003e\u003c/a\u003e Merge branch 'main' into pr-6009\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/d55bea2ea019e52c60089f0be946ccfcfe03d7ce\"\u003e\u003ccode\u003ed55bea2\u003c/code\u003e\u003c/a\u003e [doc] Update release notes (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/6009\"\u003e#6009\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/59ff6419ca22ccf27f335cd6fe5d58b94bf102be\"\u003e\u003ccode\u003e59ff641\u003c/code\u003e\u003c/a\u003e Merge branch 'main' into pr-6008\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/d34dbfcbeeb4004f5bb2ae14bda48045d8f9e0da\"\u003e\u003ccode\u003ed34dbfc\u003c/code\u003e\u003c/a\u003e [doc] Update release notes (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/6008\"\u003e#6008\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5849\"\u003e#5849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pmd/pmd/compare/pmd_releases/7.16.0...pmd_releases/7.17.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `net.sourceforge.pmd:pmd-java` from 7.16.0 to 7.17.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pmd/pmd/releases\"\u003enet.sourceforge.pmd:pmd-java's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ePMD 7.17.0 (12-September-2025)\u003c/h2\u003e\n\u003ch2\u003e12-September-2025 - 7.17.0\u003c/h2\u003e\n\u003cp\u003eThe PMD team is pleased to announce PMD 7.17.0.\u003c/p\u003e\n\u003cp\u003eThis is a minor release.\u003c/p\u003e\n\u003ch3\u003eTable Of Contents\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-and-noteworthy\"\u003e🚀 New and noteworthy\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-rules\"\u003e✨ New Rules\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#deprecated-rules\"\u003eDeprecated Rules\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#cpd-new-markdown-report-format\"\u003eCPD: New Markdown Report Format\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#fixed-issues\"\u003e🐛 Fixed Issues\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#api-changes\"\u003e🚨 API Changes\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#deprecations\"\u003eDeprecations\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#experimental-api\"\u003eExperimental API\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#pmd-report-format-csv\"\u003ePMD Report Format CSV\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#rule-test-schema\"\u003eRule Test Schema\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#deprecations\"\u003eDeprecations\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#merged-pull-requests\"\u003e✨ Merged pull requests\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#dependency-updates\"\u003e📦 Dependency updates\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#stats\"\u003e📈 Stats\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🚀 New and noteworthy\u003c/h3\u003e\n\u003ch4\u003e✨ New Rules\u003c/h4\u003e\n\u003cp\u003eThis release brings several new rules for both Java and Apex. Please try them out\nand submit feedback on \u003ca href=\"https://github.com/pmd/pmd/issues\"\u003eour issue tracker\u003c/a\u003e!\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eThe new apex rule \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.17.0/pmd_rules_apex_codestyle.html#annotationsnamingconventions\"\u003e\u003ccode\u003eAnnotationsNamingConventions\u003c/code\u003e\u003c/a\u003e enforces that annotations\nare used consistently in PascalCase.\u003cbr /\u003e\nThe rule is referenced in the quickstart.xml ruleset for Apex.\u003c/li\u003e\n\u003cli\u003eThe new java rule \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.17.0/pmd_rules_java_codestyle.html#typeparameternamingconventions\"\u003e\u003ccode\u003eTypeParameterNamingConventions\u003c/code\u003e\u003c/a\u003e replaces the now deprecated rule\nGenericsNaming. The new rule is configurable and checks for naming conventions of type parameters in\ngeneric types and methods. It can be configured via a regular expression.\u003cbr /\u003e\nBy default, this rule uses the standard Java naming convention (single uppercase letter).\u003cbr /\u003e\nThe rule is referenced in the quickstart.xml ruleset for Java.\u003c/li\u003e\n\u003cli\u003eThe new java rule \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.17.0/pmd_rules_java_errorprone.html#overridebothequalsandhashcodeoncomparable\"\u003e\u003ccode\u003eOverrideBothEqualsAndHashCodeOnComparable\u003c/code\u003e\u003c/a\u003e finds missing\n\u003ccode\u003ehashCode()\u003c/code\u003e and/or \u003ccode\u003eequals()\u003c/code\u003e methods on types that implement \u003ccode\u003eComparable\u003c/code\u003e. This is important if\ninstances of these classes are used in collections. Failing to do so can lead to unexpected behavior in sets\nwhich then do not conform to the \u003ccode\u003eSet\u003c/code\u003e interface. While the \u003ccode\u003eSet\u003c/code\u003e interface relies on\n\u003ccode\u003eequals()\u003c/code\u003e to determine object equality, sorted sets like \u003ccode\u003eTreeSet\u003c/code\u003e use\n\u003ccode\u003ecompareTo()\u003c/code\u003e instead. The same issue can arise when such objects are used\nas keys in sorted maps.\u003cbr /\u003e\nThis rule is very similar to \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.17.0/pmd_rules_java_errorprone.html#overridebothequalsandhashcode\"\u003e\u003ccode\u003eOverrideBothEqualsAndHashcode\u003c/code\u003e\u003c/a\u003e which has always been\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/d2942d5ded8e3f967ba8872f3dc58a7bdffa73bf\"\u003e\u003ccode\u003ed2942d5\u003c/code\u003e\u003c/a\u003e [release] prepare release pmd_releases/7.17.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/76cc98aac0f9aadc62cb6b3795069b3a552d5a51\"\u003e\u003ccode\u003e76cc98a\u003c/code\u003e\u003c/a\u003e Prepare pmd release 7.17.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/58dfb170213b1d1e4dc2b2e4e020ff4f28ea60b7\"\u003e\u003ccode\u003e58dfb17\u003c/code\u003e\u003c/a\u003e [doc] Update release notes - add missing new rule fix issues\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/1b23cb3301bc156e67603f37c4593efe8925712b\"\u003e\u003ccode\u003e1b23cb3\u003c/code\u003e\u003c/a\u003e [java] More detailed message for AvoidInstanceofChecksInCatchClause (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/6009\"\u003e#6009\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/f8a962ac220293df7c26a612398306499d9ea5c2\"\u003e\u003ccode\u003ef8a962a\u003c/code\u003e\u003c/a\u003e Merge branch 'main' into instanceof-message\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/ce3b01fe8a67c7f45e958861b2ab390f74cf534b\"\u003e\u003ccode\u003ece3b01f\u003c/code\u003e\u003c/a\u003e [core] Fix \u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5849\"\u003e#5849\u003c/a\u003e: Support Markdown Output for CPD Reports (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/6008\"\u003e#6008\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/2e84a82c432d53755d81bd06c98a478d6bb69ecb\"\u003e\u003ccode\u003e2e84a82\u003c/code\u003e\u003c/a\u003e Merge branch 'main' into pr-6009\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/d55bea2ea019e52c60089f0be946ccfcfe03d7ce\"\u003e\u003ccode\u003ed55bea2\u003c/code\u003e\u003c/a\u003e [doc] Update release notes (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/6009\"\u003e#6009\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/59ff6419ca22ccf27f335cd6fe5d58b94bf102be\"\u003e\u003ccode\u003e59ff641\u003c/code\u003e\u003c/a\u003e Merge branch 'main' into pr-6008\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/d34dbfcbeeb4004f5bb2ae14bda48045d8f9e0da\"\u003e\u003ccode\u003ed34dbfc\u003c/code\u003e\u003c/a\u003e [doc] Update release notes (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/6008\"\u003e#6008\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5849\"\u003e#5849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pmd/pmd/compare/pmd_releases/7.16.0...pmd_releases/7.17.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `net.sourceforge.pmd:pmd-javascript` from 7.16.0 to 7.17.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pmd/pmd/releases\"\u003enet.sourceforge.pmd:pmd-javascript's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ePMD 7.17.0 (12-September-2025)\u003c/h2\u003e\n\u003ch2\u003e12-September-2025 - 7.17.0\u003c/h2\u003e\n\u003cp\u003eThe PMD team is pleased to announce PMD 7.17.0.\u003c/p\u003e\n\u003cp\u003eThis is a minor release.\u003c/p\u003e\n\u003ch3\u003eTable Of Contents\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-and-noteworthy\"\u003e🚀 New and noteworthy\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-rules\"\u003e✨ New Rules\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#deprecated-rules\"\u003eDeprecated Rules\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#cpd-new-markdown-report-format\"\u003eCPD: New Markdown Report Format\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#fixed-issues\"\u003e🐛 Fixed Issues\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#api-changes\"\u003e🚨 API Changes\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#deprecations\"\u003eDeprecations\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#experimental-api\"\u003eExperimental API\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#pmd-report-format-csv\"\u003ePMD Report Format CSV\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#rule-test-schema\"\u003eRule Test Schema\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#deprecations\"\u003eDeprecations\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#merged-pull-requests\"\u003e✨ Merged pull requests\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#dependency-updates\"\u003e📦 Dependency updates\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#stats\"\u003e📈 Stats\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🚀 New and noteworthy\u003c/h3\u003e\n\u003ch4\u003e✨ New Rules\u003c/h4\u003e\n\u003cp\u003eThis release brings several new rules for both Java and Apex. Please try them out\nand submit feedback on \u003ca href=\"https://github.com/pmd/pmd/issues\"\u003eour issue tracker\u003c/a\u003e!\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eThe new apex rule \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.17.0/pmd_rules_apex_codestyle.html#annotationsnamingconventions\"\u003e\u003ccode\u003eAnnotationsNamingConventions\u003c/code\u003e\u003c/a\u003e enforces that annotations\nare used consistently in PascalCase.\u003cbr /\u003e\nThe rule is referenced in the quickstart.xml ruleset for Apex.\u003c/li\u003e\n\u003cli\u003eThe new java rule \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.17.0/pmd_rules_java_codestyle.html#typeparameternamingconventions\"\u003e\u003ccode\u003eTypeParameterNamingConventions\u003c/code\u003e\u003c/a\u003e replaces the now deprecated rule\nGenericsNaming. The new rule is configurable and checks for naming conventions of type parameters in\ngeneric types and methods. It can be configured via a regular expression.\u003cbr /\u003e\nBy default, this rule uses the standard Java naming convention (single uppercase letter).\u003cbr /\u003e\nThe rule is referenced in the quickstart.xml ruleset for Java.\u003c/li\u003e\n\u003cli\u003eThe new java rule \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.17.0/pmd_rules_java_errorprone.html#overridebothequalsandhashcodeoncomparable\"\u003e\u003ccode\u003eOverrideBothEqualsAndHashCodeOnComparable\u003c/code\u003e\u003c/a\u003e finds missing\n\u003ccode\u003ehashCode()\u003c/code\u003e and/or \u003ccode\u003eequals()\u003c/code\u003e methods on types that implement \u003ccode\u003eComparable\u003c/code\u003e. This is important if\ninstances of these classes are used in collections. Failing to do so can lead to unexpected behavior in sets\nwhich then do not conform to the \u003ccode\u003eSet\u003c/code\u003e interface. While the \u003ccode\u003eSet\u003c/code\u003e interface relies on\n\u003ccode\u003eequals()\u003c/code\u003e to determine object equality, sorted sets like \u003ccode\u003eTreeSet\u003c/code\u003e use\n\u003ccode\u003ecompareTo()\u003c/code\u003e instead. The same issue can arise when such objects are used\nas keys in sorted maps.\u003cbr /\u003e\nThis rule is very similar to \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.17.0/pmd_rules_java_errorprone.html#overridebothequalsandhashcode\"\u003e\u003ccode\u003eOverrideBothEqualsAndHashcode\u003c/code\u003e\u003c/a\u003e which has always been\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/d2942d5ded8e3f967ba8872f3dc58a7bdffa73bf\"\u003e\u003ccode\u003ed2942d5\u003c/code\u003e\u003c/a\u003e [release] prepare release pmd_releases/7.17.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/76cc98aac0f9aadc62cb6b3795069b3a552d5a51\"\u003e\u003ccode\u003e76cc98a\u003c/code\u003e\u003c/a\u003e Prepare pmd release 7.17.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/58dfb170213b1d1e4dc2b2e4e020ff4f28ea60b7\"\u003e\u003ccode\u003e58dfb17\u003c/code\u003e\u003c/a\u003e [doc] Update release notes - add missing new rule fix issues\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/1b23cb3301bc156e67603f37c4593efe8925712b\"\u003e\u003ccode\u003e1b23cb3\u003c/code\u003e\u003c/a\u003e [java] More detailed message for AvoidInstanceofChecksInCatchClause (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/6009\"\u003e#6009\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/f8a962ac220293df7c26a612398306499d9ea5c2\"\u003e\u003ccode\u003ef8a962a\u003c/code\u003e\u003c/a\u003e Merge branch 'main' into instanceof-message\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/ce3b01fe8a67c7f45e958861b2ab390f74cf534b\"\u003e\u003ccode\u003ece3b01f\u003c/code\u003e\u003c/a\u003e [core] Fix \u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5849\"\u003e#5849\u003c/a\u003e: Support Markdown Output for CPD Reports (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/6008\"\u003e#6008\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/2e84a82c432d53755d81bd06c98a478d6bb69ecb\"\u003e\u003ccode\u003e2e84a82\u003c/code\u003e\u003c/a\u003e Merge branch 'main' into pr-6009\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/d55bea2ea019e52c60089f0be946ccfcfe03d7ce\"\u003e\u003ccode\u003ed55bea2\u003c/code\u003e\u003c/a\u003e [doc] Update release notes (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/6009\"\u003e#6009\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/59ff6419ca22ccf27f335cd6fe5d58b94bf102be\"\u003e\u003ccode\u003e59ff641\u003c/code\u003e\u003c/a\u003e Merge branch 'main' into pr-6008\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/d34dbfcbeeb4004f5bb2ae14bda48045d8f9e0da\"\u003e\u003ccode\u003ed34dbfc\u003c/code\u003e\u003c/a\u003e [doc] Update release notes (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/6008\"\u003e#6008\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5849\"\u003e#5849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pmd/pmd/compare/pmd_releases/7.16.0...pmd_releases/7.17.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `net.sourceforge.pmd:pmd-jsp` from 7.16.0 to 7.17.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pmd/pmd/releases\"\u003enet.sourceforge.pmd:pmd-jsp's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ePMD 7.17.0 (12-September-2025)\u003c/h2\u003e\n\u003ch2\u003e12-September-2025 - 7.17.0\u003c/h2\u003e\n\u003cp\u003eThe PMD team is pleased to announce PMD 7.17.0.\u003c/p\u003e\n\u003cp\u003eThis is a minor release.\u003c/p\u003e\n\u003ch3\u003eTable Of Contents\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-and-noteworthy\"\u003e🚀 New and noteworthy\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-rules\"\u003e✨ New Rules\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#deprecated-rules\"\u003eDeprecated Rules\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#cpd-new-markdown-report-format\"\u003eCPD: New Markdown Report Format\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#fixed-issues\"\u003e🐛 Fixed Issues\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#api-changes\"\u003e🚨 API Changes\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#deprecations\"\u003eDeprecations\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#experimental-api\"\u003eExperimental API\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#pmd-report-format-csv\"\u003ePMD Report Format CSV\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#rule-test-schema\"\u003eRule Test Schema\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#deprecations\"\u003eDeprecations\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#merged-pull-requests\"\u003e✨ Merged pull requests\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#dependency-updates\"\u003e📦 Dependency updates\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#stats\"\u003e📈 Stats\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🚀 New and noteworthy\u003c/h3\u003e\n\u003ch4\u003e✨ New Rules\u003c/h4\u003e\n\u003cp\u003eThis release brings several new rules for both Java and Apex. Please try them out\nand submit feedback on \u003ca href=\"https://github.com/pmd/pmd/issues\"\u003eour issue tracker\u003c/a\u003e!\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eThe new apex rule \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.17.0/pmd_rules_apex_codestyle.html#annotationsnamingconventions\"\u003e\u003ccode\u003eAnnotationsNamingConventions\u003c/code\u003e\u003c/a\u003e enforces that annotations\nare used consistently in PascalCase.\u003cbr /\u003e\nThe rule is referenced in the quickstart.xml ruleset for Apex.\u003c/li\u003e\n\u003cli\u003eThe new java rule \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.17.0/pmd_rules_java_codestyle.html#typeparameternamingconventions\"\u003e\u003ccode\u003eTypeParameterNamingConventions\u003c/code\u003e\u003c/a\u003e replaces the now deprecated rule\nGenericsNaming. The new rule is configurable and checks for naming conventions of type parameters in\ngeneric types and methods. It can be configured via a regular expression.\u003cbr /\u003e\nBy default, this rule uses the standard Java naming convention (single uppercase letter).\u003cbr /\u003e\nThe rule is referenced in the quickstart.xml ruleset for Java.\u003c/li\u003e\n\u003cli\u003eThe new java rule \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.17.0/pmd_rules_java_errorprone.html#overridebothequalsandhashcodeoncomparable\"\u003e\u003ccode\u003eOverrideBothEqualsAndHashCodeOnComparable\u003c/code\u003e\u003c/a\u003e finds missing\n\u003ccode\u003ehashCode()\u003c/code\u003e and/or \u003ccode\u003eequals()\u003c/code\u003e methods on types that implement \u003ccode\u003eComparable\u003c/code\u003e. This is important if\ninstances of these classes are used in collections. Failing to do so can lead to unexpected behavior in sets\nwhich then do not conform to the \u003ccode\u003eSet\u003c/code\u003e interface. While the \u003ccode\u003eSet\u003c/code\u003e interface relies on\n\u003ccode\u003eequals()\u003c/code\u003e to determine object equality, sorted sets like \u003ccode\u003eTreeSet\u003c/code\u003e use\n\u003ccode\u003ecompareTo()\u003c/code\u003e instead. The same issue can arise when such objects are used\nas keys in sorted maps.\u003cbr /\u003e\nThis rule is very similar to \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.17.0/pmd_rules_java_errorprone.html#overridebothequalsandhashcode\"\u003e\u003ccode\u003eOverrideBothEqualsAndHashcode\u003c/code\u003e\u003c/a\u003e which has always been\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/d2942d5ded8e3f967ba8872f3dc58a7bdffa73bf\"\u003e\u003ccode\u003ed2942d5\u003c/code\u003e\u003c/a\u003e [release] prepare release pmd_releases/7.17.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/76cc98aac0f9aadc62cb6b3795069b3a552d5a51\"\u003e\u003ccode\u003e76cc98a\u003c/code\u003e\u003c/a\u003e Prepare pmd release 7.17.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/58dfb170213b1d1e4dc2b2e4e020ff4f28ea60b7\"\u003e\u003ccode\u003e58dfb17\u003c/code\u003e\u003c/a\u003e [doc] Update release notes - add missing new rule fix issues\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/1b23cb3301bc156e67603f37c4593efe8925712b\"\u003e\u003ccode\u003e1b23cb3\u003c/code\u003e\u003c/a\u003e [java] More detailed message for AvoidInstanceofChecksInCatchClause (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/6009\"\u003e#6009\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/f8a962ac220293df7c26a612398306499d9ea5c2\"\u003e\u003ccode\u003ef8a962a\u003c/code\u003e\u003c/a\u003e Merge branch 'main' into instanceof-message\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/ce3b01fe8a67c7f45e958861b2ab390f74cf534b\"\u003e\u003ccode\u003ece3b01f\u003c/code\u003e\u003c/a\u003e [core] Fix \u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5849\"\u003e#5849\u003c/a\u003e: Support Markdown Output for CPD Reports (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/6008\"\u003e#6008\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/2e84a82c432d53755d81bd06c98a478d6bb69ecb\"\u003e\u003ccode\u003e2e84a82\u003c/code\u003e\u003c/a\u003e Merge branch 'main' into pr-6009\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/d55bea2ea019e52c60089f0be946ccfcfe03d7ce\"\u003e\u003ccode\u003ed55bea2\u003c/code\u003e\u003c/a\u003e [doc] Update release notes (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/6009\"\u003e#6009\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/59ff6419ca22ccf27f335cd6fe5d58b94bf102be\"\u003e\u003ccode\u003e59ff641\u003c/code\u003e\u003c/a\u003e Merge branch 'main' into pr-6008\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/d34dbfcbeeb4004f5bb2ae14bda48045d8f9e0da\"\u003e\u003ccode\u003ed34dbfc\u003c/code\u003e\u003c/a\u003e [doc] Update release notes (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/6008\"\u003e#6008\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5849\"\u003e#5849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pmd/pmd/compare/pmd_releases/7.16.0...pmd_releases/7.17.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot merge` will merge this PR after your CI passes on it\n- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it\n- `@dependabot cancel merge` will cancel a previously requested merge and block automerging\n- `@dependabot reopen` will reopen this PR if it is closed\n- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)\n\n\n\u003c/details\u003e","html_url":"https://github.com/apache/maven-pmd-plugin/pull/657","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/apache%2Fmaven-pmd-plugin/issues/657","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/657/packages"},{"uuid":"2699373523","node_id":"PR_kwDOEZ_GmM6g5SvT","number":882,"state":"closed","title":"Bump pmdVersion from 7.15.0 to 7.16.0 in /java","user":"dependabot[bot]","labels":["dependencies","java"],"assignees":[],"locked":false,"comments_count":0,"pull_request":true,"closed_at":"2025-07-28T10:14:48.000Z","author_association":"CONTRIBUTOR","state_reason":null,"created_at":"2025-07-28T06:39:50.000Z","updated_at":"2025-07-28T10:14:48.000Z","time_to_close":12898,"merged_at":"2025-07-28T10:14:48.000Z","merged_by":"bestbeforetoday","closed_by":null,"dependency_metadata":{"prefix":"Bump","packages":[{"name":"pmdVersion","old_version":"7.15.0","new_version":"7.16.0","repository_url":null}],"path":"/java","ecosystem":"maven"},"body":"Bumps `pmdVersion` from 7.15.0 to 7.16.0.\nUpdates `net.sourceforge.pmd:pmd-core` from 7.15.0 to 7.16.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pmd/pmd/releases\"\u003enet.sourceforge.pmd:pmd-core's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ePMD 7.16.0 (25-July-2025)\u003c/h2\u003e\n\u003ch2\u003e25-July-2025 - 7.16.0\u003c/h2\u003e\n\u003cp\u003eThe PMD team is pleased to announce PMD 7.16.0.\u003c/p\u003e\n\u003cp\u003eThis is a minor release.\u003c/p\u003e\n\u003ch3\u003eTable Of Contents\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-and-noteworthy\"\u003e🚀 New and noteworthy\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-java-25-support\"\u003e🚀 New: Java 25 Support\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-cpd-support-for-css\"\u003eNew: CPD support for CSS\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-rules\"\u003e✨ New Rules\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#fixed-issues\"\u003e🐛 Fixed Issues\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#api-changes\"\u003e🚨 API Changes\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#experimental-apis-that-are-now-considered-stable\"\u003eExperimental APIs that are now considered stable\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#merged-pull-requests\"\u003e✨ Merged pull requests\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#dependency-updates\"\u003e📦 Dependency updates\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#stats\"\u003e📈 Stats\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🚀 New and noteworthy\u003c/h3\u003e\n\u003ch4\u003e🚀 New: Java 25 Support\u003c/h4\u003e\n\u003cp\u003eThis release of PMD brings support for Java 25.\u003c/p\u003e\n\u003cp\u003eThere are the following new standard language features:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://openjdk.org/jeps/511\"\u003eJEP 511: Module Import Declarations\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://openjdk.org/jeps/512\"\u003eJEP 512: Compact Source Files and Instance Main Methods\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://openjdk.org/jeps/513\"\u003eJEP 513: Flexible Constructor Bodies\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eAnd one preview language feature:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://openjdk.org/jeps/507\"\u003eJEP 507: Primitive Types in Patterns, instanceof, and switch (Third Preview)\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eIn order to analyze a project with PMD that uses these preview language features,\nyou'll need to enable it via the environment variable \u003ccode\u003ePMD_JAVA_OPTS\u003c/code\u003e and select the new language\nversion \u003ccode\u003e25-preview\u003c/code\u003e:\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eexport PMD_JAVA_OPTS=--enable-preview\npmd check --use-version java-25-preview ...\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eNote: Support for Java 23 preview language features have been removed. The version \u0026quot;23-preview\u0026quot;\nis no longer available.\u003c/p\u003e\n\u003ch4\u003eNew: CPD support for CSS\u003c/h4\u003e\n\u003cp\u003eCPD now supports CSS (Cascading Style Sheets), a language for describing the rendering of structured\ndocuments (such as HTML) on screen, on paper etc.\u003cbr /\u003e\nIt is shipped with the new module \u003ccode\u003epmd-css\u003c/code\u003e.\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/d60e2685371e1970ad836bfea824cc98dd689a10\"\u003e\u003ccode\u003ed60e268\u003c/code\u003e\u003c/a\u003e [release] prepare release pmd_releases/7.16.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/0b80d904080f9321472dd649ca45c87e6dc2d6f3\"\u003e\u003ccode\u003e0b80d90\u003c/code\u003e\u003c/a\u003e Prepare pmd release 7.16.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/7d391f6e5af1cbcf540fed7e9061c05ea418a380\"\u003e\u003ccode\u003e7d391f6\u003c/code\u003e\u003c/a\u003e chore(deps): Update gems (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5929\"\u003e#5929\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/e3bb9ec4668d54240e294ab2121969a211fc2e8d\"\u003e\u003ccode\u003ee3bb9ec\u003c/code\u003e\u003c/a\u003e chore: [scala] Fix javadoc config (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5920\"\u003e#5920\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/a5b3fe4ea202ed604458859382ac20c35a604f4c\"\u003e\u003ccode\u003ea5b3fe4\u003c/code\u003e\u003c/a\u003e chore(deps): bump marocchino/sticky-pull-request-comment from 2.9.3 to 2.9.4 ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/5cf96ff0c9f58e93dada97a3f403e49c28d3b4e7\"\u003e\u003ccode\u003e5cf96ff\u003c/code\u003e\u003c/a\u003e chore(deps): bump ostruct from 0.6.2 to 0.6.3 in /.ci/files in the all-gems g...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/25950f3088c81560beb42c28c53a6b38216e58f0\"\u003e\u003ccode\u003e25950f3\u003c/code\u003e\u003c/a\u003e chore(deps): bump org.apache.maven.plugins:maven-enforcer-plugin from 3.6.0 t...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/a3cbe4c3688669f6a1a6ad7ef59761ccab208cf3\"\u003e\u003ccode\u003ea3cbe4c\u003c/code\u003e\u003c/a\u003e Merge branch 'main' into chore/scala-javadoc\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/8ea3dc0e854fe980c03af5c8eb074467ac5ee7b9\"\u003e\u003ccode\u003e8ea3dc0\u003c/code\u003e\u003c/a\u003e chore: [cli] Improve symbolic link tests for Windows (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5918\"\u003e#5918\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/a0e0ed0a9a81f49fd5503fbb6bb7d9c5149951ef\"\u003e\u003ccode\u003ea0e0ed0\u003c/code\u003e\u003c/a\u003e [doc] Reference CPD Capable Languages in CPD CLI docu (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5911\"\u003e#5911\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pmd/pmd/compare/pmd_releases/7.15.0...pmd_releases/7.16.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `net.sourceforge.pmd:pmd-java` from 7.15.0 to 7.16.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pmd/pmd/releases\"\u003enet.sourceforge.pmd:pmd-java's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ePMD 7.16.0 (25-July-2025)\u003c/h2\u003e\n\u003ch2\u003e25-July-2025 - 7.16.0\u003c/h2\u003e\n\u003cp\u003eThe PMD team is pleased to announce PMD 7.16.0.\u003c/p\u003e\n\u003cp\u003eThis is a minor release.\u003c/p\u003e\n\u003ch3\u003eTable Of Contents\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-and-noteworthy\"\u003e🚀 New and noteworthy\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-java-25-support\"\u003e🚀 New: Java 25 Support\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-cpd-support-for-css\"\u003eNew: CPD support for CSS\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-rules\"\u003e✨ New Rules\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#fixed-issues\"\u003e🐛 Fixed Issues\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#api-changes\"\u003e🚨 API Changes\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#experimental-apis-that-are-now-considered-stable\"\u003eExperimental APIs that are now considered stable\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#merged-pull-requests\"\u003e✨ Merged pull requests\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#dependency-updates\"\u003e📦 Dependency updates\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#stats\"\u003e📈 Stats\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🚀 New and noteworthy\u003c/h3\u003e\n\u003ch4\u003e🚀 New: Java 25 Support\u003c/h4\u003e\n\u003cp\u003eThis release of PMD brings support for Java 25.\u003c/p\u003e\n\u003cp\u003eThere are the following new standard language features:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://openjdk.org/jeps/511\"\u003eJEP 511: Module Import Declarations\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://openjdk.org/jeps/512\"\u003eJEP 512: Compact Source Files and Instance Main Methods\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://openjdk.org/jeps/513\"\u003eJEP 513: Flexible Constructor Bodies\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eAnd one preview language feature:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://openjdk.org/jeps/507\"\u003eJEP 507: Primitive Types in Patterns, instanceof, and switch (Third Preview)\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eIn order to analyze a project with PMD that uses these preview language features,\nyou'll need to enable it via the environment variable \u003ccode\u003ePMD_JAVA_OPTS\u003c/code\u003e and select the new language\nversion \u003ccode\u003e25-preview\u003c/code\u003e:\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eexport PMD_JAVA_OPTS=--enable-preview\npmd check --use-version java-25-preview ...\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eNote: Support for Java 23 preview language features have been removed. The version \u0026quot;23-preview\u0026quot;\nis no longer available.\u003c/p\u003e\n\u003ch4\u003eNew: CPD support for CSS\u003c/h4\u003e\n\u003cp\u003eCPD now supports CSS (Cascading Style Sheets), a language for describing the rendering of structured\ndocuments (such as HTML) on screen, on paper etc.\u003cbr /\u003e\nIt is shipped with the new module \u003ccode\u003epmd-css\u003c/code\u003e.\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/d60e2685371e1970ad836bfea824cc98dd689a10\"\u003e\u003ccode\u003ed60e268\u003c/code\u003e\u003c/a\u003e [release] prepare release pmd_releases/7.16.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/0b80d904080f9321472dd649ca45c87e6dc2d6f3\"\u003e\u003ccode\u003e0b80d90\u003c/code\u003e\u003c/a\u003e Prepare pmd release 7.16.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/7d391f6e5af1cbcf540fed7e9061c05ea418a380\"\u003e\u003ccode\u003e7d391f6\u003c/code\u003e\u003c/a\u003e chore(deps): Update gems (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5929\"\u003e#5929\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/e3bb9ec4668d54240e294ab2121969a211fc2e8d\"\u003e\u003ccode\u003ee3bb9ec\u003c/code\u003e\u003c/a\u003e chore: [scala] Fix javadoc config (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5920\"\u003e#5920\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/a5b3fe4ea202ed604458859382ac20c35a604f4c\"\u003e\u003ccode\u003ea5b3fe4\u003c/code\u003e\u003c/a\u003e chore(deps): bump marocchino/sticky-pull-request-comment from 2.9.3 to 2.9.4 ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/5cf96ff0c9f58e93dada97a3f403e49c28d3b4e7\"\u003e\u003ccode\u003e5cf96ff\u003c/code\u003e\u003c/a\u003e chore(deps): bump ostruct from 0.6.2 to 0.6.3 in /.ci/files in the all-gems g...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/25950f3088c81560beb42c28c53a6b38216e58f0\"\u003e\u003ccode\u003e25950f3\u003c/code\u003e\u003c/a\u003e chore(deps): bump org.apache.maven.plugins:maven-enforcer-plugin from 3.6.0 t...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/a3cbe4c3688669f6a1a6ad7ef59761ccab208cf3\"\u003e\u003ccode\u003ea3cbe4c\u003c/code\u003e\u003c/a\u003e Merge branch 'main' into chore/scala-javadoc\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/8ea3dc0e854fe980c03af5c8eb074467ac5ee7b9\"\u003e\u003ccode\u003e8ea3dc0\u003c/code\u003e\u003c/a\u003e chore: [cli] Improve symbolic link tests for Windows (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5918\"\u003e#5918\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/a0e0ed0a9a81f49fd5503fbb6bb7d9c5149951ef\"\u003e\u003ccode\u003ea0e0ed0\u003c/code\u003e\u003c/a\u003e [doc] Reference CPD Capable Languages in CPD CLI docu (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5911\"\u003e#5911\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pmd/pmd/compare/pmd_releases/7.15.0...pmd_releases/7.16.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `net.sourceforge.pmd:pmd-javascript` from 7.15.0 to 7.16.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pmd/pmd/releases\"\u003enet.sourceforge.pmd:pmd-javascript's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ePMD 7.16.0 (25-July-2025)\u003c/h2\u003e\n\u003ch2\u003e25-July-2025 - 7.16.0\u003c/h2\u003e\n\u003cp\u003eThe PMD team is pleased to announce PMD 7.16.0.\u003c/p\u003e\n\u003cp\u003eThis is a minor release.\u003c/p\u003e\n\u003ch3\u003eTable Of Contents\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-and-noteworthy\"\u003e🚀 New and noteworthy\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-java-25-support\"\u003e🚀 New: Java 25 Support\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-cpd-support-for-css\"\u003eNew: CPD support for CSS\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-rules\"\u003e✨ New Rules\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#fixed-issues\"\u003e🐛 Fixed Issues\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#api-changes\"\u003e🚨 API Changes\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#experimental-apis-that-are-now-considered-stable\"\u003eExperimental APIs that are now considered stable\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#merged-pull-requests\"\u003e✨ Merged pull requests\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#dependency-updates\"\u003e📦 Dependency updates\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#stats\"\u003e📈 Stats\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🚀 New and noteworthy\u003c/h3\u003e\n\u003ch4\u003e🚀 New: Java 25 Support\u003c/h4\u003e\n\u003cp\u003eThis release of PMD brings support for Java 25.\u003c/p\u003e\n\u003cp\u003eThere are the following new standard language features:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://openjdk.org/jeps/511\"\u003eJEP 511: Module Import Declarations\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://openjdk.org/jeps/512\"\u003eJEP 512: Compact Source Files and Instance Main Methods\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://openjdk.org/jeps/513\"\u003eJEP 513: Flexible Constructor Bodies\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eAnd one preview language feature:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://openjdk.org/jeps/507\"\u003eJEP 507: Primitive Types in Patterns, instanceof, and switch (Third Preview)\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eIn order to analyze a project with PMD that uses these preview language features,\nyou'll need to enable it via the environment variable \u003ccode\u003ePMD_JAVA_OPTS\u003c/code\u003e and select the new language\nversion \u003ccode\u003e25-preview\u003c/code\u003e:\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eexport PMD_JAVA_OPTS=--enable-preview\npmd check --use-version java-25-preview ...\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eNote: Support for Java 23 preview language features have been removed. The version \u0026quot;23-preview\u0026quot;\nis no longer available.\u003c/p\u003e\n\u003ch4\u003eNew: CPD support for CSS\u003c/h4\u003e\n\u003cp\u003eCPD now supports CSS (Cascading Style Sheets), a language for describing the rendering of structured\ndocuments (such as HTML) on screen, on paper etc.\u003cbr /\u003e\nIt is shipped with the new module \u003ccode\u003epmd-css\u003c/code\u003e.\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/d60e2685371e1970ad836bfea824cc98dd689a10\"\u003e\u003ccode\u003ed60e268\u003c/code\u003e\u003c/a\u003e [release] prepare release pmd_releases/7.16.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/0b80d904080f9321472dd649ca45c87e6dc2d6f3\"\u003e\u003ccode\u003e0b80d90\u003c/code\u003e\u003c/a\u003e Prepare pmd release 7.16.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/7d391f6e5af1cbcf540fed7e9061c05ea418a380\"\u003e\u003ccode\u003e7d391f6\u003c/code\u003e\u003c/a\u003e chore(deps): Update gems (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5929\"\u003e#5929\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/e3bb9ec4668d54240e294ab2121969a211fc2e8d\"\u003e\u003ccode\u003ee3bb9ec\u003c/code\u003e\u003c/a\u003e chore: [scala] Fix javadoc config (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5920\"\u003e#5920\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/a5b3fe4ea202ed604458859382ac20c35a604f4c\"\u003e\u003ccode\u003ea5b3fe4\u003c/code\u003e\u003c/a\u003e chore(deps): bump marocchino/sticky-pull-request-comment from 2.9.3 to 2.9.4 ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/5cf96ff0c9f58e93dada97a3f403e49c28d3b4e7\"\u003e\u003ccode\u003e5cf96ff\u003c/code\u003e\u003c/a\u003e chore(deps): bump ostruct from 0.6.2 to 0.6.3 in /.ci/files in the all-gems g...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/25950f3088c81560beb42c28c53a6b38216e58f0\"\u003e\u003ccode\u003e25950f3\u003c/code\u003e\u003c/a\u003e chore(deps): bump org.apache.maven.plugins:maven-enforcer-plugin from 3.6.0 t...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/a3cbe4c3688669f6a1a6ad7ef59761ccab208cf3\"\u003e\u003ccode\u003ea3cbe4c\u003c/code\u003e\u003c/a\u003e Merge branch 'main' into chore/scala-javadoc\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/8ea3dc0e854fe980c03af5c8eb074467ac5ee7b9\"\u003e\u003ccode\u003e8ea3dc0\u003c/code\u003e\u003c/a\u003e chore: [cli] Improve symbolic link tests for Windows (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5918\"\u003e#5918\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/a0e0ed0a9a81f49fd5503fbb6bb7d9c5149951ef\"\u003e\u003ccode\u003ea0e0ed0\u003c/code\u003e\u003c/a\u003e [doc] Reference CPD Capable Languages in CPD CLI docu (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5911\"\u003e#5911\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pmd/pmd/compare/pmd_releases/7.15.0...pmd_releases/7.16.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `net.sourceforge.pmd:pmd-jsp` from 7.15.0 to 7.16.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pmd/pmd/releases\"\u003enet.sourceforge.pmd:pmd-jsp's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ePMD 7.16.0 (25-July-2025)\u003c/h2\u003e\n\u003ch2\u003e25-July-2025 - 7.16.0\u003c/h2\u003e\n\u003cp\u003eThe PMD team is pleased to announce PMD 7.16.0.\u003c/p\u003e\n\u003cp\u003eThis is a minor release.\u003c/p\u003e\n\u003ch3\u003eTable Of Contents\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-and-noteworthy\"\u003e🚀 New and noteworthy\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-java-25-support\"\u003e🚀 New: Java 25 Support\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-cpd-support-for-css\"\u003eNew: CPD support for CSS\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-rules\"\u003e✨ New Rules\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#fixed-issues\"\u003e🐛 Fixed Issues\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#api-changes\"\u003e🚨 API Changes\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#experimental-apis-that-are-now-considered-stable\"\u003eExperimental APIs that are now considered stable\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#merged-pull-requests\"\u003e✨ Merged pull requests\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#dependency-updates\"\u003e📦 Dependency updates\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#stats\"\u003e📈 Stats\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🚀 New and noteworthy\u003c/h3\u003e\n\u003ch4\u003e🚀 New: Java 25 Support\u003c/h4\u003e\n\u003cp\u003eThis release of PMD brings support for Java 25.\u003c/p\u003e\n\u003cp\u003eThere are the following new standard language features:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://openjdk.org/jeps/511\"\u003eJEP 511: Module Import Declarations\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://openjdk.org/jeps/512\"\u003eJEP 512: Compact Source Files and Instance Main Methods\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://openjdk.org/jeps/513\"\u003eJEP 513: Flexible Constructor Bodies\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eAnd one preview language feature:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://openjdk.org/jeps/507\"\u003eJEP 507: Primitive Types in Patterns, instanceof, and switch (Third Preview)\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eIn order to analyze a project with PMD that uses these preview language features,\nyou'll need to enable it via the environment variable \u003ccode\u003ePMD_JAVA_OPTS\u003c/code\u003e and select the new language\nversion \u003ccode\u003e25-preview\u003c/code\u003e:\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eexport PMD_JAVA_OPTS=--enable-preview\npmd check --use-version java-25-preview ...\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eNote: Support for Java 23 preview language features have been removed. The version \u0026quot;23-preview\u0026quot;\nis no longer available.\u003c/p\u003e\n\u003ch4\u003eNew: CPD support for CSS\u003c/h4\u003e\n\u003cp\u003eCPD now supports CSS (Cascading Style Sheets), a language for describing the rendering of structured\ndocuments (such as HTML) on screen, on paper etc.\u003cbr /\u003e\nIt is shipped with the new module \u003ccode\u003epmd-css\u003c/code\u003e.\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/d60e2685371e1970ad836bfea824cc98dd689a10\"\u003e\u003ccode\u003ed60e268\u003c/code\u003e\u003c/a\u003e [release] prepare release pmd_releases/7.16.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/0b80d904080f9321472dd649ca45c87e6dc2d6f3\"\u003e\u003ccode\u003e0b80d90\u003c/code\u003e\u003c/a\u003e Prepare pmd release 7.16.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/7d391f6e5af1cbcf540fed7e9061c05ea418a380\"\u003e\u003ccode\u003e7d391f6\u003c/code\u003e\u003c/a\u003e chore(deps): Update gems (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5929\"\u003e#5929\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/e3bb9ec4668d54240e294ab2121969a211fc2e8d\"\u003e\u003ccode\u003ee3bb9ec\u003c/code\u003e\u003c/a\u003e chore: [scala] Fix javadoc config (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5920\"\u003e#5920\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/a5b3fe4ea202ed604458859382ac20c35a604f4c\"\u003e\u003ccode\u003ea5b3fe4\u003c/code\u003e\u003c/a\u003e chore(deps): bump marocchino/sticky-pull-request-comment from 2.9.3 to 2.9.4 ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/5cf96ff0c9f58e93dada97a3f403e49c28d3b4e7\"\u003e\u003ccode\u003e5cf96ff\u003c/code\u003e\u003c/a\u003e chore(deps): bump ostruct from 0.6.2 to 0.6.3 in /.ci/files in the all-gems g...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/25950f3088c81560beb42c28c53a6b38216e58f0\"\u003e\u003ccode\u003e25950f3\u003c/code\u003e\u003c/a\u003e chore(deps): bump org.apache.maven.plugins:maven-enforcer-plugin from 3.6.0 t...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/a3cbe4c3688669f6a1a6ad7ef59761ccab208cf3\"\u003e\u003ccode\u003ea3cbe4c\u003c/code\u003e\u003c/a\u003e Merge branch 'main' into chore/scala-javadoc\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/8ea3dc0e854fe980c03af5c8eb074467ac5ee7b9\"\u003e\u003ccode\u003e8ea3dc0\u003c/code\u003e\u003c/a\u003e chore: [cli] Improve symbolic link tests for Windows (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5918\"\u003e#5918\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/a0e0ed0a9a81f49fd5503fbb6bb7d9c5149951ef\"\u003e\u003ccode\u003ea0e0ed0\u003c/code\u003e\u003c/a\u003e [doc] Reference CPD Capable Languages in CPD CLI docu (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5911\"\u003e#5911\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pmd/pmd/compare/pmd_releases/7.15.0...pmd_releases/7.16.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot merge` will merge this PR after your CI passes on it\n- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it\n- `@dependabot cancel merge` will cancel a previously requested merge and block automerging\n- `@dependabot reopen` will reopen this PR if it is closed\n- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)\n\n\n\u003c/details\u003e","html_url":"https://github.com/hyperledger/fabric-gateway/pull/882","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/hyperledger%2Ffabric-gateway/issues/882","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/882/packages"},{"uuid":"2699051985","node_id":"PR_kwDOG8B9086g4EPR","number":1409,"state":"open","title":"Bump pmdVersion from 7.15.0 to 7.16.0","user":"dependabot[bot]","labels":["dependencies","java"],"assignees":[],"locked":false,"comments_count":0,"pull_request":true,"closed_at":null,"author_association":"CONTRIBUTOR","state_reason":null,"created_at":"2025-07-28T04:12:26.000Z","updated_at":"2025-07-28T04:12:26.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","packages":[{"name":"pmdVersion","old_version":"7.15.0","new_version":"7.16.0","repository_url":null}],"path":null,"ecosystem":"maven"},"body":"Bumps `pmdVersion` from 7.15.0 to 7.16.0.\nUpdates `net.sourceforge.pmd:pmd-core` from 7.15.0 to 7.16.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pmd/pmd/releases\"\u003enet.sourceforge.pmd:pmd-core's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ePMD 7.16.0 (25-July-2025)\u003c/h2\u003e\n\u003ch2\u003e25-July-2025 - 7.16.0\u003c/h2\u003e\n\u003cp\u003eThe PMD team is pleased to announce PMD 7.16.0.\u003c/p\u003e\n\u003cp\u003eThis is a minor release.\u003c/p\u003e\n\u003ch3\u003eTable Of Contents\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-and-noteworthy\"\u003e🚀 New and noteworthy\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-java-25-support\"\u003e🚀 New: Java 25 Support\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-cpd-support-for-css\"\u003eNew: CPD support for CSS\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-rules\"\u003e✨ New Rules\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#fixed-issues\"\u003e🐛 Fixed Issues\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#api-changes\"\u003e🚨 API Changes\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#experimental-apis-that-are-now-considered-stable\"\u003eExperimental APIs that are now considered stable\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#merged-pull-requests\"\u003e✨ Merged pull requests\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#dependency-updates\"\u003e📦 Dependency updates\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#stats\"\u003e📈 Stats\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🚀 New and noteworthy\u003c/h3\u003e\n\u003ch4\u003e🚀 New: Java 25 Support\u003c/h4\u003e\n\u003cp\u003eThis release of PMD brings support for Java 25.\u003c/p\u003e\n\u003cp\u003eThere are the following new standard language features:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://openjdk.org/jeps/511\"\u003eJEP 511: Module Import Declarations\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://openjdk.org/jeps/512\"\u003eJEP 512: Compact Source Files and Instance Main Methods\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://openjdk.org/jeps/513\"\u003eJEP 513: Flexible Constructor Bodies\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eAnd one preview language feature:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://openjdk.org/jeps/507\"\u003eJEP 507: Primitive Types in Patterns, instanceof, and switch (Third Preview)\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eIn order to analyze a project with PMD that uses these preview language features,\nyou'll need to enable it via the environment variable \u003ccode\u003ePMD_JAVA_OPTS\u003c/code\u003e and select the new language\nversion \u003ccode\u003e25-preview\u003c/code\u003e:\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eexport PMD_JAVA_OPTS=--enable-preview\npmd check --use-version java-25-preview ...\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eNote: Support for Java 23 preview language features have been removed. The version \u0026quot;23-preview\u0026quot;\nis no longer available.\u003c/p\u003e\n\u003ch4\u003eNew: CPD support for CSS\u003c/h4\u003e\n\u003cp\u003eCPD now supports CSS (Cascading Style Sheets), a language for describing the rendering of structured\ndocuments (such as HTML) on screen, on paper etc.\u003cbr /\u003e\nIt is shipped with the new module \u003ccode\u003epmd-css\u003c/code\u003e.\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/d60e2685371e1970ad836bfea824cc98dd689a10\"\u003e\u003ccode\u003ed60e268\u003c/code\u003e\u003c/a\u003e [release] prepare release pmd_releases/7.16.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/0b80d904080f9321472dd649ca45c87e6dc2d6f3\"\u003e\u003ccode\u003e0b80d90\u003c/code\u003e\u003c/a\u003e Prepare pmd release 7.16.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/7d391f6e5af1cbcf540fed7e9061c05ea418a380\"\u003e\u003ccode\u003e7d391f6\u003c/code\u003e\u003c/a\u003e chore(deps): Update gems (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5929\"\u003e#5929\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/e3bb9ec4668d54240e294ab2121969a211fc2e8d\"\u003e\u003ccode\u003ee3bb9ec\u003c/code\u003e\u003c/a\u003e chore: [scala] Fix javadoc config (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5920\"\u003e#5920\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/a5b3fe4ea202ed604458859382ac20c35a604f4c\"\u003e\u003ccode\u003ea5b3fe4\u003c/code\u003e\u003c/a\u003e chore(deps): bump marocchino/sticky-pull-request-comment from 2.9.3 to 2.9.4 ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/5cf96ff0c9f58e93dada97a3f403e49c28d3b4e7\"\u003e\u003ccode\u003e5cf96ff\u003c/code\u003e\u003c/a\u003e chore(deps): bump ostruct from 0.6.2 to 0.6.3 in /.ci/files in the all-gems g...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/25950f3088c81560beb42c28c53a6b38216e58f0\"\u003e\u003ccode\u003e25950f3\u003c/code\u003e\u003c/a\u003e chore(deps): bump org.apache.maven.plugins:maven-enforcer-plugin from 3.6.0 t...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/a3cbe4c3688669f6a1a6ad7ef59761ccab208cf3\"\u003e\u003ccode\u003ea3cbe4c\u003c/code\u003e\u003c/a\u003e Merge branch 'main' into chore/scala-javadoc\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/8ea3dc0e854fe980c03af5c8eb074467ac5ee7b9\"\u003e\u003ccode\u003e8ea3dc0\u003c/code\u003e\u003c/a\u003e chore: [cli] Improve symbolic link tests for Windows (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5918\"\u003e#5918\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/a0e0ed0a9a81f49fd5503fbb6bb7d9c5149951ef\"\u003e\u003ccode\u003ea0e0ed0\u003c/code\u003e\u003c/a\u003e [doc] Reference CPD Capable Languages in CPD CLI docu (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5911\"\u003e#5911\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pmd/pmd/compare/pmd_releases/7.15.0...pmd_releases/7.16.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `net.sourceforge.pmd:pmd-java` from 7.15.0 to 7.16.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pmd/pmd/releases\"\u003enet.sourceforge.pmd:pmd-java's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ePMD 7.16.0 (25-July-2025)\u003c/h2\u003e\n\u003ch2\u003e25-July-2025 - 7.16.0\u003c/h2\u003e\n\u003cp\u003eThe PMD team is pleased to announce PMD 7.16.0.\u003c/p\u003e\n\u003cp\u003eThis is a minor release.\u003c/p\u003e\n\u003ch3\u003eTable Of Contents\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-and-noteworthy\"\u003e🚀 New and noteworthy\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-java-25-support\"\u003e🚀 New: Java 25 Support\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-cpd-support-for-css\"\u003eNew: CPD support for CSS\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-rules\"\u003e✨ New Rules\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#fixed-issues\"\u003e🐛 Fixed Issues\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#api-changes\"\u003e🚨 API Changes\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#experimental-apis-that-are-now-considered-stable\"\u003eExperimental APIs that are now considered stable\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#merged-pull-requests\"\u003e✨ Merged pull requests\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#dependency-updates\"\u003e📦 Dependency updates\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#stats\"\u003e📈 Stats\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🚀 New and noteworthy\u003c/h3\u003e\n\u003ch4\u003e🚀 New: Java 25 Support\u003c/h4\u003e\n\u003cp\u003eThis release of PMD brings support for Java 25.\u003c/p\u003e\n\u003cp\u003eThere are the following new standard language features:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://openjdk.org/jeps/511\"\u003eJEP 511: Module Import Declarations\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://openjdk.org/jeps/512\"\u003eJEP 512: Compact Source Files and Instance Main Methods\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://openjdk.org/jeps/513\"\u003eJEP 513: Flexible Constructor Bodies\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eAnd one preview language feature:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://openjdk.org/jeps/507\"\u003eJEP 507: Primitive Types in Patterns, instanceof, and switch (Third Preview)\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eIn order to analyze a project with PMD that uses these preview language features,\nyou'll need to enable it via the environment variable \u003ccode\u003ePMD_JAVA_OPTS\u003c/code\u003e and select the new language\nversion \u003ccode\u003e25-preview\u003c/code\u003e:\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eexport PMD_JAVA_OPTS=--enable-preview\npmd check --use-version java-25-preview ...\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eNote: Support for Java 23 preview language features have been removed. The version \u0026quot;23-preview\u0026quot;\nis no longer available.\u003c/p\u003e\n\u003ch4\u003eNew: CPD support for CSS\u003c/h4\u003e\n\u003cp\u003eCPD now supports CSS (Cascading Style Sheets), a language for describing the rendering of structured\ndocuments (such as HTML) on screen, on paper etc.\u003cbr /\u003e\nIt is shipped with the new module \u003ccode\u003epmd-css\u003c/code\u003e.\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/d60e2685371e1970ad836bfea824cc98dd689a10\"\u003e\u003ccode\u003ed60e268\u003c/code\u003e\u003c/a\u003e [release] prepare release pmd_releases/7.16.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/0b80d904080f9321472dd649ca45c87e6dc2d6f3\"\u003e\u003ccode\u003e0b80d90\u003c/code\u003e\u003c/a\u003e Prepare pmd release 7.16.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/7d391f6e5af1cbcf540fed7e9061c05ea418a380\"\u003e\u003ccode\u003e7d391f6\u003c/code\u003e\u003c/a\u003e chore(deps): Update gems (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5929\"\u003e#5929\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/e3bb9ec4668d54240e294ab2121969a211fc2e8d\"\u003e\u003ccode\u003ee3bb9ec\u003c/code\u003e\u003c/a\u003e chore: [scala] Fix javadoc config (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5920\"\u003e#5920\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/a5b3fe4ea202ed604458859382ac20c35a604f4c\"\u003e\u003ccode\u003ea5b3fe4\u003c/code\u003e\u003c/a\u003e chore(deps): bump marocchino/sticky-pull-request-comment from 2.9.3 to 2.9.4 ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/5cf96ff0c9f58e93dada97a3f403e49c28d3b4e7\"\u003e\u003ccode\u003e5cf96ff\u003c/code\u003e\u003c/a\u003e chore(deps): bump ostruct from 0.6.2 to 0.6.3 in /.ci/files in the all-gems g...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/25950f3088c81560beb42c28c53a6b38216e58f0\"\u003e\u003ccode\u003e25950f3\u003c/code\u003e\u003c/a\u003e chore(deps): bump org.apache.maven.plugins:maven-enforcer-plugin from 3.6.0 t...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/a3cbe4c3688669f6a1a6ad7ef59761ccab208cf3\"\u003e\u003ccode\u003ea3cbe4c\u003c/code\u003e\u003c/a\u003e Merge branch 'main' into chore/scala-javadoc\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/8ea3dc0e854fe980c03af5c8eb074467ac5ee7b9\"\u003e\u003ccode\u003e8ea3dc0\u003c/code\u003e\u003c/a\u003e chore: [cli] Improve symbolic link tests for Windows (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5918\"\u003e#5918\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/a0e0ed0a9a81f49fd5503fbb6bb7d9c5149951ef\"\u003e\u003ccode\u003ea0e0ed0\u003c/code\u003e\u003c/a\u003e [doc] Reference CPD Capable Languages in CPD CLI docu (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5911\"\u003e#5911\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pmd/pmd/compare/pmd_releases/7.15.0...pmd_releases/7.16.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `net.sourceforge.pmd:pmd-javascript` from 7.15.0 to 7.16.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pmd/pmd/releases\"\u003enet.sourceforge.pmd:pmd-javascript's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ePMD 7.16.0 (25-July-2025)\u003c/h2\u003e\n\u003ch2\u003e25-July-2025 - 7.16.0\u003c/h2\u003e\n\u003cp\u003eThe PMD team is pleased to announce PMD 7.16.0.\u003c/p\u003e\n\u003cp\u003eThis is a minor release.\u003c/p\u003e\n\u003ch3\u003eTable Of Contents\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-and-noteworthy\"\u003e🚀 New and noteworthy\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-java-25-support\"\u003e🚀 New: Java 25 Support\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-cpd-support-for-css\"\u003eNew: CPD support for CSS\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-rules\"\u003e✨ New Rules\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#fixed-issues\"\u003e🐛 Fixed Issues\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#api-changes\"\u003e🚨 API Changes\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#experimental-apis-that-are-now-considered-stable\"\u003eExperimental APIs that are now considered stable\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#merged-pull-requests\"\u003e✨ Merged pull requests\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#dependency-updates\"\u003e📦 Dependency updates\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#stats\"\u003e📈 Stats\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🚀 New and noteworthy\u003c/h3\u003e\n\u003ch4\u003e🚀 New: Java 25 Support\u003c/h4\u003e\n\u003cp\u003eThis release of PMD brings support for Java 25.\u003c/p\u003e\n\u003cp\u003eThere are the following new standard language features:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://openjdk.org/jeps/511\"\u003eJEP 511: Module Import Declarations\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://openjdk.org/jeps/512\"\u003eJEP 512: Compact Source Files and Instance Main Methods\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://openjdk.org/jeps/513\"\u003eJEP 513: Flexible Constructor Bodies\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eAnd one preview language feature:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://openjdk.org/jeps/507\"\u003eJEP 507: Primitive Types in Patterns, instanceof, and switch (Third Preview)\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eIn order to analyze a project with PMD that uses these preview language features,\nyou'll need to enable it via the environment variable \u003ccode\u003ePMD_JAVA_OPTS\u003c/code\u003e and select the new language\nversion \u003ccode\u003e25-preview\u003c/code\u003e:\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eexport PMD_JAVA_OPTS=--enable-preview\npmd check --use-version java-25-preview ...\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eNote: Support for Java 23 preview language features have been removed. The version \u0026quot;23-preview\u0026quot;\nis no longer available.\u003c/p\u003e\n\u003ch4\u003eNew: CPD support for CSS\u003c/h4\u003e\n\u003cp\u003eCPD now supports CSS (Cascading Style Sheets), a language for describing the rendering of structured\ndocuments (such as HTML) on screen, on paper etc.\u003cbr /\u003e\nIt is shipped with the new module \u003ccode\u003epmd-css\u003c/code\u003e.\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/d60e2685371e1970ad836bfea824cc98dd689a10\"\u003e\u003ccode\u003ed60e268\u003c/code\u003e\u003c/a\u003e [release] prepare release pmd_releases/7.16.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/0b80d904080f9321472dd649ca45c87e6dc2d6f3\"\u003e\u003ccode\u003e0b80d90\u003c/code\u003e\u003c/a\u003e Prepare pmd release 7.16.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/7d391f6e5af1cbcf540fed7e9061c05ea418a380\"\u003e\u003ccode\u003e7d391f6\u003c/code\u003e\u003c/a\u003e chore(deps): Update gems (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5929\"\u003e#5929\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/e3bb9ec4668d54240e294ab2121969a211fc2e8d\"\u003e\u003ccode\u003ee3bb9ec\u003c/code\u003e\u003c/a\u003e chore: [scala] Fix javadoc config (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5920\"\u003e#5920\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/a5b3fe4ea202ed604458859382ac20c35a604f4c\"\u003e\u003ccode\u003ea5b3fe4\u003c/code\u003e\u003c/a\u003e chore(deps): bump marocchino/sticky-pull-request-comment from 2.9.3 to 2.9.4 ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/5cf96ff0c9f58e93dada97a3f403e49c28d3b4e7\"\u003e\u003ccode\u003e5cf96ff\u003c/code\u003e\u003c/a\u003e chore(deps): bump ostruct from 0.6.2 to 0.6.3 in /.ci/files in the all-gems g...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/25950f3088c81560beb42c28c53a6b38216e58f0\"\u003e\u003ccode\u003e25950f3\u003c/code\u003e\u003c/a\u003e chore(deps): bump org.apache.maven.plugins:maven-enforcer-plugin from 3.6.0 t...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/a3cbe4c3688669f6a1a6ad7ef59761ccab208cf3\"\u003e\u003ccode\u003ea3cbe4c\u003c/code\u003e\u003c/a\u003e Merge branch 'main' into chore/scala-javadoc\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/8ea3dc0e854fe980c03af5c8eb074467ac5ee7b9\"\u003e\u003ccode\u003e8ea3dc0\u003c/code\u003e\u003c/a\u003e chore: [cli] Improve symbolic link tests for Windows (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5918\"\u003e#5918\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/a0e0ed0a9a81f49fd5503fbb6bb7d9c5149951ef\"\u003e\u003ccode\u003ea0e0ed0\u003c/code\u003e\u003c/a\u003e [doc] Reference CPD Capable Languages in CPD CLI docu (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5911\"\u003e#5911\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pmd/pmd/compare/pmd_releases/7.15.0...pmd_releases/7.16.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `net.sourceforge.pmd:pmd-jsp` from 7.15.0 to 7.16.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pmd/pmd/releases\"\u003enet.sourceforge.pmd:pmd-jsp's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ePMD 7.16.0 (25-July-2025)\u003c/h2\u003e\n\u003ch2\u003e25-July-2025 - 7.16.0\u003c/h2\u003e\n\u003cp\u003eThe PMD team is pleased to announce PMD 7.16.0.\u003c/p\u003e\n\u003cp\u003eThis is a minor release.\u003c/p\u003e\n\u003ch3\u003eTable Of Contents\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-and-noteworthy\"\u003e🚀 New and noteworthy\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-java-25-support\"\u003e🚀 New: Java 25 Support\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-cpd-support-for-css\"\u003eNew: CPD support for CSS\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-rules\"\u003e✨ New Rules\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#fixed-issues\"\u003e🐛 Fixed Issues\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#api-changes\"\u003e🚨 API Changes\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#experimental-apis-that-are-now-considered-stable\"\u003eExperimental APIs that are now considered stable\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#merged-pull-requests\"\u003e✨ Merged pull requests\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#dependency-updates\"\u003e📦 Dependency updates\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#stats\"\u003e📈 Stats\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🚀 New and noteworthy\u003c/h3\u003e\n\u003ch4\u003e🚀 New: Java 25 Support\u003c/h4\u003e\n\u003cp\u003eThis release of PMD brings support for Java 25.\u003c/p\u003e\n\u003cp\u003eThere are the following new standard language features:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://openjdk.org/jeps/511\"\u003eJEP 511: Module Import Declarations\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://openjdk.org/jeps/512\"\u003eJEP 512: Compact Source Files and Instance Main Methods\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://openjdk.org/jeps/513\"\u003eJEP 513: Flexible Constructor Bodies\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eAnd one preview language feature:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://openjdk.org/jeps/507\"\u003eJEP 507: Primitive Types in Patterns, instanceof, and switch (Third Preview)\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eIn order to analyze a project with PMD that uses these preview language features,\nyou'll need to enable it via the environment variable \u003ccode\u003ePMD_JAVA_OPTS\u003c/code\u003e and select the new language\nversion \u003ccode\u003e25-preview\u003c/code\u003e:\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eexport PMD_JAVA_OPTS=--enable-preview\npmd check --use-version java-25-preview ...\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eNote: Support for Java 23 preview language features have been removed. The version \u0026quot;23-preview\u0026quot;\nis no longer available.\u003c/p\u003e\n\u003ch4\u003eNew: CPD support for CSS\u003c/h4\u003e\n\u003cp\u003eCPD now supports CSS (Cascading Style Sheets), a language for describing the rendering of structured\ndocuments (such as HTML) on screen, on paper etc.\u003cbr /\u003e\nIt is shipped with the new module \u003ccode\u003epmd-css\u003c/code\u003e.\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/d60e2685371e1970ad836bfea824cc98dd689a10\"\u003e\u003ccode\u003ed60e268\u003c/code\u003e\u003c/a\u003e [release] prepare release pmd_releases/7.16.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/0b80d904080f9321472dd649ca45c87e6dc2d6f3\"\u003e\u003ccode\u003e0b80d90\u003c/code\u003e\u003c/a\u003e Prepare pmd release 7.16.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/7d391f6e5af1cbcf540fed7e9061c05ea418a380\"\u003e\u003ccode\u003e7d391f6\u003c/code\u003e\u003c/a\u003e chore(deps): Update gems (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5929\"\u003e#5929\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/e3bb9ec4668d54240e294ab2121969a211fc2e8d\"\u003e\u003ccode\u003ee3bb9ec\u003c/code\u003e\u003c/a\u003e chore: [scala] Fix javadoc config (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5920\"\u003e#5920\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/a5b3fe4ea202ed604458859382ac20c35a604f4c\"\u003e\u003ccode\u003ea5b3fe4\u003c/code\u003e\u003c/a\u003e chore(deps): bump marocchino/sticky-pull-request-comment from 2.9.3 to 2.9.4 ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/5cf96ff0c9f58e93dada97a3f403e49c28d3b4e7\"\u003e\u003ccode\u003e5cf96ff\u003c/code\u003e\u003c/a\u003e chore(deps): bump ostruct from 0.6.2 to 0.6.3 in /.ci/files in the all-gems g...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/25950f3088c81560beb42c28c53a6b38216e58f0\"\u003e\u003ccode\u003e25950f3\u003c/code\u003e\u003c/a\u003e chore(deps): bump org.apache.maven.plugins:maven-enforcer-plugin from 3.6.0 t...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/a3cbe4c3688669f6a1a6ad7ef59761ccab208cf3\"\u003e\u003ccode\u003ea3cbe4c\u003c/code\u003e\u003c/a\u003e Merge branch 'main' into chore/scala-javadoc\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/8ea3dc0e854fe980c03af5c8eb074467ac5ee7b9\"\u003e\u003ccode\u003e8ea3dc0\u003c/code\u003e\u003c/a\u003e chore: [cli] Improve symbolic link tests for Windows (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5918\"\u003e#5918\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/a0e0ed0a9a81f49fd5503fbb6bb7d9c5149951ef\"\u003e\u003ccode\u003ea0e0ed0\u003c/code\u003e\u003c/a\u003e [doc] Reference CPD Capable Languages in CPD CLI docu (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5911\"\u003e#5911\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pmd/pmd/compare/pmd_releases/7.15.0...pmd_releases/7.16.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot merge` will merge this PR after your CI passes on it\n- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it\n- `@dependabot cancel merge` will cancel a previously requested merge and block automerging\n- `@dependabot reopen` will reopen this PR if it is closed\n- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)\n\n\n\u003c/details\u003e","html_url":"https://github.com/instancio/instancio/pull/1409","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/instancio%2Finstancio/issues/1409","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/1409/packages"},{"uuid":"2694634801","node_id":"PR_kwDOBsaZJs6gnN0x","number":652,"state":"closed","title":"Bump pmdVersion from 7.15.0 to 7.16.0","user":"dependabot[bot]","labels":["dependencies","java"],"assignees":["Bukama"],"locked":false,"comments_count":0,"pull_request":true,"closed_at":"2025-07-25T13:22:37.000Z","author_association":"CONTRIBUTOR","state_reason":null,"created_at":"2025-07-25T11:10:06.000Z","updated_at":"2025-07-25T13:22:37.000Z","time_to_close":7951,"merged_at":"2025-07-25T13:22:37.000Z","merged_by":"Bukama","closed_by":null,"dependency_metadata":{"prefix":"Bump","packages":[{"name":"pmdVersion","old_version":"7.15.0","new_version":"7.16.0","repository_url":null}],"path":null,"ecosystem":"maven"},"body":"Bumps `pmdVersion` from 7.15.0 to 7.16.0.\nUpdates `net.sourceforge.pmd:pmd-core` from 7.15.0 to 7.16.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pmd/pmd/releases\"\u003enet.sourceforge.pmd:pmd-core's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ePMD 7.16.0 (25-July-2025)\u003c/h2\u003e\n\u003ch2\u003e25-July-2025 - 7.16.0\u003c/h2\u003e\n\u003cp\u003eThe PMD team is pleased to announce PMD 7.16.0.\u003c/p\u003e\n\u003cp\u003eThis is a minor release.\u003c/p\u003e\n\u003ch3\u003eTable Of Contents\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-and-noteworthy\"\u003e🚀 New and noteworthy\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-java-25-support\"\u003e🚀 New: Java 25 Support\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-cpd-support-for-css\"\u003eNew: CPD support for CSS\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-rules\"\u003e✨ New Rules\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#fixed-issues\"\u003e🐛 Fixed Issues\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#api-changes\"\u003e🚨 API Changes\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#experimental-apis-that-are-now-considered-stable\"\u003eExperimental APIs that are now considered stable\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#merged-pull-requests\"\u003e✨ Merged pull requests\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#dependency-updates\"\u003e📦 Dependency updates\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#stats\"\u003e📈 Stats\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🚀 New and noteworthy\u003c/h3\u003e\n\u003ch4\u003e🚀 New: Java 25 Support\u003c/h4\u003e\n\u003cp\u003eThis release of PMD brings support for Java 25.\u003c/p\u003e\n\u003cp\u003eThere are the following new standard language features:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://openjdk.org/jeps/511\"\u003eJEP 511: Module Import Declarations\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://openjdk.org/jeps/512\"\u003eJEP 512: Compact Source Files and Instance Main Methods\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://openjdk.org/jeps/513\"\u003eJEP 513: Flexible Constructor Bodies\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eAnd one preview language feature:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://openjdk.org/jeps/507\"\u003eJEP 507: Primitive Types in Patterns, instanceof, and switch (Third Preview)\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eIn order to analyze a project with PMD that uses these preview language features,\nyou'll need to enable it via the environment variable \u003ccode\u003ePMD_JAVA_OPTS\u003c/code\u003e and select the new language\nversion \u003ccode\u003e25-preview\u003c/code\u003e:\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eexport PMD_JAVA_OPTS=--enable-preview\npmd check --use-version java-25-preview ...\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eNote: Support for Java 23 preview language features have been removed. The version \u0026quot;23-preview\u0026quot;\nis no longer available.\u003c/p\u003e\n\u003ch4\u003eNew: CPD support for CSS\u003c/h4\u003e\n\u003cp\u003eCPD now supports CSS (Cascading Style Sheets), a language for describing the rendering of structured\ndocuments (such as HTML) on screen, on paper etc.\u003cbr /\u003e\nIt is shipped with the new module \u003ccode\u003epmd-css\u003c/code\u003e.\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/d60e2685371e1970ad836bfea824cc98dd689a10\"\u003e\u003ccode\u003ed60e268\u003c/code\u003e\u003c/a\u003e [release] prepare release pmd_releases/7.16.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/0b80d904080f9321472dd649ca45c87e6dc2d6f3\"\u003e\u003ccode\u003e0b80d90\u003c/code\u003e\u003c/a\u003e Prepare pmd release 7.16.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/7d391f6e5af1cbcf540fed7e9061c05ea418a380\"\u003e\u003ccode\u003e7d391f6\u003c/code\u003e\u003c/a\u003e chore(deps): Update gems (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5929\"\u003e#5929\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/e3bb9ec4668d54240e294ab2121969a211fc2e8d\"\u003e\u003ccode\u003ee3bb9ec\u003c/code\u003e\u003c/a\u003e chore: [scala] Fix javadoc config (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5920\"\u003e#5920\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/a5b3fe4ea202ed604458859382ac20c35a604f4c\"\u003e\u003ccode\u003ea5b3fe4\u003c/code\u003e\u003c/a\u003e chore(deps): bump marocchino/sticky-pull-request-comment from 2.9.3 to 2.9.4 ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/5cf96ff0c9f58e93dada97a3f403e49c28d3b4e7\"\u003e\u003ccode\u003e5cf96ff\u003c/code\u003e\u003c/a\u003e chore(deps): bump ostruct from 0.6.2 to 0.6.3 in /.ci/files in the all-gems g...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/25950f3088c81560beb42c28c53a6b38216e58f0\"\u003e\u003ccode\u003e25950f3\u003c/code\u003e\u003c/a\u003e chore(deps): bump org.apache.maven.plugins:maven-enforcer-plugin from 3.6.0 t...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/a3cbe4c3688669f6a1a6ad7ef59761ccab208cf3\"\u003e\u003ccode\u003ea3cbe4c\u003c/code\u003e\u003c/a\u003e Merge branch 'main' into chore/scala-javadoc\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/8ea3dc0e854fe980c03af5c8eb074467ac5ee7b9\"\u003e\u003ccode\u003e8ea3dc0\u003c/code\u003e\u003c/a\u003e chore: [cli] Improve symbolic link tests for Windows (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5918\"\u003e#5918\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/a0e0ed0a9a81f49fd5503fbb6bb7d9c5149951ef\"\u003e\u003ccode\u003ea0e0ed0\u003c/code\u003e\u003c/a\u003e [doc] Reference CPD Capable Languages in CPD CLI docu (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5911\"\u003e#5911\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pmd/pmd/compare/pmd_releases/7.15.0...pmd_releases/7.16.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `net.sourceforge.pmd:pmd-java` from 7.15.0 to 7.16.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pmd/pmd/releases\"\u003enet.sourceforge.pmd:pmd-java's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ePMD 7.16.0 (25-July-2025)\u003c/h2\u003e\n\u003ch2\u003e25-July-2025 - 7.16.0\u003c/h2\u003e\n\u003cp\u003eThe PMD team is pleased to announce PMD 7.16.0.\u003c/p\u003e\n\u003cp\u003eThis is a minor release.\u003c/p\u003e\n\u003ch3\u003eTable Of Contents\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-and-noteworthy\"\u003e🚀 New and noteworthy\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-java-25-support\"\u003e🚀 New: Java 25 Support\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-cpd-support-for-css\"\u003eNew: CPD support for CSS\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-rules\"\u003e✨ New Rules\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#fixed-issues\"\u003e🐛 Fixed Issues\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#api-changes\"\u003e🚨 API Changes\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#experimental-apis-that-are-now-considered-stable\"\u003eExperimental APIs that are now considered stable\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#merged-pull-requests\"\u003e✨ Merged pull requests\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#dependency-updates\"\u003e📦 Dependency updates\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#stats\"\u003e📈 Stats\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🚀 New and noteworthy\u003c/h3\u003e\n\u003ch4\u003e🚀 New: Java 25 Support\u003c/h4\u003e\n\u003cp\u003eThis release of PMD brings support for Java 25.\u003c/p\u003e\n\u003cp\u003eThere are the following new standard language features:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://openjdk.org/jeps/511\"\u003eJEP 511: Module Import Declarations\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://openjdk.org/jeps/512\"\u003eJEP 512: Compact Source Files and Instance Main Methods\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://openjdk.org/jeps/513\"\u003eJEP 513: Flexible Constructor Bodies\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eAnd one preview language feature:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://openjdk.org/jeps/507\"\u003eJEP 507: Primitive Types in Patterns, instanceof, and switch (Third Preview)\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eIn order to analyze a project with PMD that uses these preview language features,\nyou'll need to enable it via the environment variable \u003ccode\u003ePMD_JAVA_OPTS\u003c/code\u003e and select the new language\nversion \u003ccode\u003e25-preview\u003c/code\u003e:\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eexport PMD_JAVA_OPTS=--enable-preview\npmd check --use-version java-25-preview ...\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eNote: Support for Java 23 preview language features have been removed. The version \u0026quot;23-preview\u0026quot;\nis no longer available.\u003c/p\u003e\n\u003ch4\u003eNew: CPD support for CSS\u003c/h4\u003e\n\u003cp\u003eCPD now supports CSS (Cascading Style Sheets), a language for describing the rendering of structured\ndocuments (such as HTML) on screen, on paper etc.\u003cbr /\u003e\nIt is shipped with the new module \u003ccode\u003epmd-css\u003c/code\u003e.\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/d60e2685371e1970ad836bfea824cc98dd689a10\"\u003e\u003ccode\u003ed60e268\u003c/code\u003e\u003c/a\u003e [release] prepare release pmd_releases/7.16.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/0b80d904080f9321472dd649ca45c87e6dc2d6f3\"\u003e\u003ccode\u003e0b80d90\u003c/code\u003e\u003c/a\u003e Prepare pmd release 7.16.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/7d391f6e5af1cbcf540fed7e9061c05ea418a380\"\u003e\u003ccode\u003e7d391f6\u003c/code\u003e\u003c/a\u003e chore(deps): Update gems (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5929\"\u003e#5929\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/e3bb9ec4668d54240e294ab2121969a211fc2e8d\"\u003e\u003ccode\u003ee3bb9ec\u003c/code\u003e\u003c/a\u003e chore: [scala] Fix javadoc config (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5920\"\u003e#5920\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/a5b3fe4ea202ed604458859382ac20c35a604f4c\"\u003e\u003ccode\u003ea5b3fe4\u003c/code\u003e\u003c/a\u003e chore(deps): bump marocchino/sticky-pull-request-comment from 2.9.3 to 2.9.4 ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/5cf96ff0c9f58e93dada97a3f403e49c28d3b4e7\"\u003e\u003ccode\u003e5cf96ff\u003c/code\u003e\u003c/a\u003e chore(deps): bump ostruct from 0.6.2 to 0.6.3 in /.ci/files in the all-gems g...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/25950f3088c81560beb42c28c53a6b38216e58f0\"\u003e\u003ccode\u003e25950f3\u003c/code\u003e\u003c/a\u003e chore(deps): bump org.apache.maven.plugins:maven-enforcer-plugin from 3.6.0 t...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/a3cbe4c3688669f6a1a6ad7ef59761ccab208cf3\"\u003e\u003ccode\u003ea3cbe4c\u003c/code\u003e\u003c/a\u003e Merge branch 'main' into chore/scala-javadoc\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/8ea3dc0e854fe980c03af5c8eb074467ac5ee7b9\"\u003e\u003ccode\u003e8ea3dc0\u003c/code\u003e\u003c/a\u003e chore: [cli] Improve symbolic link tests for Windows (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5918\"\u003e#5918\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/a0e0ed0a9a81f49fd5503fbb6bb7d9c5149951ef\"\u003e\u003ccode\u003ea0e0ed0\u003c/code\u003e\u003c/a\u003e [doc] Reference CPD Capable Languages in CPD CLI docu (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5911\"\u003e#5911\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pmd/pmd/compare/pmd_releases/7.15.0...pmd_releases/7.16.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `net.sourceforge.pmd:pmd-javascript` from 7.15.0 to 7.16.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pmd/pmd/releases\"\u003enet.sourceforge.pmd:pmd-javascript's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ePMD 7.16.0 (25-July-2025)\u003c/h2\u003e\n\u003ch2\u003e25-July-2025 - 7.16.0\u003c/h2\u003e\n\u003cp\u003eThe PMD team is pleased to announce PMD 7.16.0.\u003c/p\u003e\n\u003cp\u003eThis is a minor release.\u003c/p\u003e\n\u003ch3\u003eTable Of Contents\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-and-noteworthy\"\u003e🚀 New and noteworthy\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-java-25-support\"\u003e🚀 New: Java 25 Support\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-cpd-support-for-css\"\u003eNew: CPD support for CSS\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-rules\"\u003e✨ New Rules\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#fixed-issues\"\u003e🐛 Fixed Issues\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#api-changes\"\u003e🚨 API Changes\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#experimental-apis-that-are-now-considered-stable\"\u003eExperimental APIs that are now considered stable\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#merged-pull-requests\"\u003e✨ Merged pull requests\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#dependency-updates\"\u003e📦 Dependency updates\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#stats\"\u003e📈 Stats\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🚀 New and noteworthy\u003c/h3\u003e\n\u003ch4\u003e🚀 New: Java 25 Support\u003c/h4\u003e\n\u003cp\u003eThis release of PMD brings support for Java 25.\u003c/p\u003e\n\u003cp\u003eThere are the following new standard language features:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://openjdk.org/jeps/511\"\u003eJEP 511: Module Import Declarations\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://openjdk.org/jeps/512\"\u003eJEP 512: Compact Source Files and Instance Main Methods\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://openjdk.org/jeps/513\"\u003eJEP 513: Flexible Constructor Bodies\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eAnd one preview language feature:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://openjdk.org/jeps/507\"\u003eJEP 507: Primitive Types in Patterns, instanceof, and switch (Third Preview)\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eIn order to analyze a project with PMD that uses these preview language features,\nyou'll need to enable it via the environment variable \u003ccode\u003ePMD_JAVA_OPTS\u003c/code\u003e and select the new language\nversion \u003ccode\u003e25-preview\u003c/code\u003e:\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eexport PMD_JAVA_OPTS=--enable-preview\npmd check --use-version java-25-preview ...\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eNote: Support for Java 23 preview language features have been removed. The version \u0026quot;23-preview\u0026quot;\nis no longer available.\u003c/p\u003e\n\u003ch4\u003eNew: CPD support for CSS\u003c/h4\u003e\n\u003cp\u003eCPD now supports CSS (Cascading Style Sheets), a language for describing the rendering of structured\ndocuments (such as HTML) on screen, on paper etc.\u003cbr /\u003e\nIt is shipped with the new module \u003ccode\u003epmd-css\u003c/code\u003e.\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/d60e2685371e1970ad836bfea824cc98dd689a10\"\u003e\u003ccode\u003ed60e268\u003c/code\u003e\u003c/a\u003e [release] prepare release pmd_releases/7.16.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/0b80d904080f9321472dd649ca45c87e6dc2d6f3\"\u003e\u003ccode\u003e0b80d90\u003c/code\u003e\u003c/a\u003e Prepare pmd release 7.16.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/7d391f6e5af1cbcf540fed7e9061c05ea418a380\"\u003e\u003ccode\u003e7d391f6\u003c/code\u003e\u003c/a\u003e chore(deps): Update gems (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5929\"\u003e#5929\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/e3bb9ec4668d54240e294ab2121969a211fc2e8d\"\u003e\u003ccode\u003ee3bb9ec\u003c/code\u003e\u003c/a\u003e chore: [scala] Fix javadoc config (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5920\"\u003e#5920\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/a5b3fe4ea202ed604458859382ac20c35a604f4c\"\u003e\u003ccode\u003ea5b3fe4\u003c/code\u003e\u003c/a\u003e chore(deps): bump marocchino/sticky-pull-request-comment from 2.9.3 to 2.9.4 ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/5cf96ff0c9f58e93dada97a3f403e49c28d3b4e7\"\u003e\u003ccode\u003e5cf96ff\u003c/code\u003e\u003c/a\u003e chore(deps): bump ostruct from 0.6.2 to 0.6.3 in /.ci/files in the all-gems g...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/25950f3088c81560beb42c28c53a6b38216e58f0\"\u003e\u003ccode\u003e25950f3\u003c/code\u003e\u003c/a\u003e chore(deps): bump org.apache.maven.plugins:maven-enforcer-plugin from 3.6.0 t...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/a3cbe4c3688669f6a1a6ad7ef59761ccab208cf3\"\u003e\u003ccode\u003ea3cbe4c\u003c/code\u003e\u003c/a\u003e Merge branch 'main' into chore/scala-javadoc\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/8ea3dc0e854fe980c03af5c8eb074467ac5ee7b9\"\u003e\u003ccode\u003e8ea3dc0\u003c/code\u003e\u003c/a\u003e chore: [cli] Improve symbolic link tests for Windows (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5918\"\u003e#5918\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/a0e0ed0a9a81f49fd5503fbb6bb7d9c5149951ef\"\u003e\u003ccode\u003ea0e0ed0\u003c/code\u003e\u003c/a\u003e [doc] Reference CPD Capable Languages in CPD CLI docu (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5911\"\u003e#5911\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pmd/pmd/compare/pmd_releases/7.15.0...pmd_releases/7.16.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `net.sourceforge.pmd:pmd-jsp` from 7.15.0 to 7.16.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pmd/pmd/releases\"\u003enet.sourceforge.pmd:pmd-jsp's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ePMD 7.16.0 (25-July-2025)\u003c/h2\u003e\n\u003ch2\u003e25-July-2025 - 7.16.0\u003c/h2\u003e\n\u003cp\u003eThe PMD team is pleased to announce PMD 7.16.0.\u003c/p\u003e\n\u003cp\u003eThis is a minor release.\u003c/p\u003e\n\u003ch3\u003eTable Of Contents\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-and-noteworthy\"\u003e🚀 New and noteworthy\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-java-25-support\"\u003e🚀 New: Java 25 Support\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-cpd-support-for-css\"\u003eNew: CPD support for CSS\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-rules\"\u003e✨ New Rules\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#fixed-issues\"\u003e🐛 Fixed Issues\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#api-changes\"\u003e🚨 API Changes\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#experimental-apis-that-are-now-considered-stable\"\u003eExperimental APIs that are now considered stable\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#merged-pull-requests\"\u003e✨ Merged pull requests\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#dependency-updates\"\u003e📦 Dependency updates\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#stats\"\u003e📈 Stats\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🚀 New and noteworthy\u003c/h3\u003e\n\u003ch4\u003e🚀 New: Java 25 Support\u003c/h4\u003e\n\u003cp\u003eThis release of PMD brings support for Java 25.\u003c/p\u003e\n\u003cp\u003eThere are the following new standard language features:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://openjdk.org/jeps/511\"\u003eJEP 511: Module Import Declarations\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://openjdk.org/jeps/512\"\u003eJEP 512: Compact Source Files and Instance Main Methods\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://openjdk.org/jeps/513\"\u003eJEP 513: Flexible Constructor Bodies\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eAnd one preview language feature:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://openjdk.org/jeps/507\"\u003eJEP 507: Primitive Types in Patterns, instanceof, and switch (Third Preview)\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eIn order to analyze a project with PMD that uses these preview language features,\nyou'll need to enable it via the environment variable \u003ccode\u003ePMD_JAVA_OPTS\u003c/code\u003e and select the new language\nversion \u003ccode\u003e25-preview\u003c/code\u003e:\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eexport PMD_JAVA_OPTS=--enable-preview\npmd check --use-version java-25-preview ...\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eNote: Support for Java 23 preview language features have been removed. The version \u0026quot;23-preview\u0026quot;\nis no longer available.\u003c/p\u003e\n\u003ch4\u003eNew: CPD support for CSS\u003c/h4\u003e\n\u003cp\u003eCPD now supports CSS (Cascading Style Sheets), a language for describing the rendering of structured\ndocuments (such as HTML) on screen, on paper etc.\u003cbr /\u003e\nIt is shipped with the new module \u003ccode\u003epmd-css\u003c/code\u003e.\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/d60e2685371e1970ad836bfea824cc98dd689a10\"\u003e\u003ccode\u003ed60e268\u003c/code\u003e\u003c/a\u003e [release] prepare release pmd_releases/7.16.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/0b80d904080f9321472dd649ca45c87e6dc2d6f3\"\u003e\u003ccode\u003e0b80d90\u003c/code\u003e\u003c/a\u003e Prepare pmd release 7.16.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/7d391f6e5af1cbcf540fed7e9061c05ea418a380\"\u003e\u003ccode\u003e7d391f6\u003c/code\u003e\u003c/a\u003e chore(deps): Update gems (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5929\"\u003e#5929\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/e3bb9ec4668d54240e294ab2121969a211fc2e8d\"\u003e\u003ccode\u003ee3bb9ec\u003c/code\u003e\u003c/a\u003e chore: [scala] Fix javadoc config (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5920\"\u003e#5920\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/a5b3fe4ea202ed604458859382ac20c35a604f4c\"\u003e\u003ccode\u003ea5b3fe4\u003c/code\u003e\u003c/a\u003e chore(deps): bump marocchino/sticky-pull-request-comment from 2.9.3 to 2.9.4 ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/5cf96ff0c9f58e93dada97a3f403e49c28d3b4e7\"\u003e\u003ccode\u003e5cf96ff\u003c/code\u003e\u003c/a\u003e chore(deps): bump ostruct from 0.6.2 to 0.6.3 in /.ci/files in the all-gems g...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/25950f3088c81560beb42c28c53a6b38216e58f0\"\u003e\u003ccode\u003e25950f3\u003c/code\u003e\u003c/a\u003e chore(deps): bump org.apache.maven.plugins:maven-enforcer-plugin from 3.6.0 t...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/a3cbe4c3688669f6a1a6ad7ef59761ccab208cf3\"\u003e\u003ccode\u003ea3cbe4c\u003c/code\u003e\u003c/a\u003e Merge branch 'main' into chore/scala-javadoc\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/8ea3dc0e854fe980c03af5c8eb074467ac5ee7b9\"\u003e\u003ccode\u003e8ea3dc0\u003c/code\u003e\u003c/a\u003e chore: [cli] Improve symbolic link tests for Windows (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5918\"\u003e#5918\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/a0e0ed0a9a81f49fd5503fbb6bb7d9c5149951ef\"\u003e\u003ccode\u003ea0e0ed0\u003c/code\u003e\u003c/a\u003e [doc] Reference CPD Capable Languages in CPD CLI docu (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5911\"\u003e#5911\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pmd/pmd/compare/pmd_releases/7.15.0...pmd_releases/7.16.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot merge` will merge this PR after your CI passes on it\n- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it\n- `@dependabot cancel merge` will cancel a previously requested merge and block automerging\n- `@dependabot reopen` will reopen this PR if it is closed\n- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)\n\n\n\u003c/details\u003e","html_url":"https://github.com/apache/maven-pmd-plugin/pull/652","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/apache%2Fmaven-pmd-plugin/issues/652","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/652/packages"},{"uuid":"2627682454","node_id":"PR_kwDOG8B9086cn0CW","number":1391,"state":"open","title":"Bump pmdVersion from 7.14.0 to 7.15.0","user":"dependabot[bot]","labels":["dependencies","java"],"assignees":[],"locked":false,"comments_count":0,"pull_request":true,"closed_at":null,"author_association":"CONTRIBUTOR","state_reason":null,"created_at":"2025-06-30T04:06:11.000Z","updated_at":"2025-06-30T05:26:30.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","packages":[{"name":"pmdVersion","old_version":"7.14.0","new_version":"7.15.0","repository_url":null}],"path":null,"ecosystem":"maven"},"body":"Bumps `pmdVersion` from 7.14.0 to 7.15.0.\nUpdates `net.sourceforge.pmd:pmd-core` from 7.14.0 to 7.15.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pmd/pmd/releases\"\u003enet.sourceforge.pmd:pmd-core's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ePMD 7.15.0 (27-June-2025)\u003c/h2\u003e\n\u003ch2\u003e27-June-2025 - 7.15.0\u003c/h2\u003e\n\u003cp\u003eThe PMD team is pleased to announce PMD 7.15.0.\u003c/p\u003e\n\u003cp\u003eThis is a minor release.\u003c/p\u003e\n\u003ch3\u003eTable Of Contents\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-and-noteworthy\"\u003e🚀 New and noteworthy\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-rules\"\u003e✨ New Rules\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#fixed-issues\"\u003e🐛 Fixed Issues\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#api-changes\"\u003e🚨 API Changes\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#rule-test-schema\"\u003eRule Test Schema\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#financial-contributions\"\u003e💵 Financial Contributions\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#merged-pull-requests\"\u003e✨ Merged pull requests\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#dependency-updates\"\u003e📦 Dependency updates\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#stats\"\u003e📈 Stats\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🚀 New and noteworthy\u003c/h3\u003e\n\u003ch4\u003e✨ New Rules\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eThe new Apex rule \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.15.0/pmd_rules_apex_design.html#avoidbooleanmethodparameters\"\u003e\u003ccode\u003eAvoidBooleanMethodParameters\u003c/code\u003e\u003c/a\u003e finds methods that take a\nboolean parameter. This can make method calls difficult to understand and maintain as the method is clearly\ndoing two things.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🐛 Fixed Issues\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eapex-design\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5427\"\u003e#5427\u003c/a\u003e: [apex] New Rule: Avoid Boolean Method Parameters\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003eapex-security\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5788\"\u003e#5788\u003c/a\u003e: [apex] ApexCRUDViolation unable to detect insecure SOQL if it is a direct input argument\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003edoc\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5790\"\u003e#5790\u003c/a\u003e: [doc] Website rule reference pages are returning 404\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003ejava-bestpractices\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5785\"\u003e#5785\u003c/a\u003e: [java] UnusedPrivateField doesn't play well with UnnecessaryWarningSuppression\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5793\"\u003e#5793\u003c/a\u003e: [java] NonExhaustiveSwitch fails on exhaustive switch with sealed class\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003ejava-codestyle\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/1639\"\u003e#1639\u003c/a\u003e: [java] UnnecessaryImport false positive for multiline @\u003c!-- raw HTML omitted --\u003elink Javadoc\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/2304\"\u003e#2304\u003c/a\u003e: [java] UnnecessaryImport false positive for on-demand imports in JavaDoc\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5832\"\u003e#5832\u003c/a\u003e: [java] UnnecessaryImport false positive for multiline @\u003c!-- raw HTML omitted --\u003esee Javadoc\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003ejava-design\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5804\"\u003e#5804\u003c/a\u003e: [java] UselessOverridingMethod doesn't play well with UnnecessarySuppressWarning\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🚨 API Changes\u003c/h3\u003e\n\u003ch4\u003eRule Test Schema\u003c/h4\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/f06835e0afc59b11f440fffd999d13ebe48a43d2\"\u003e\u003ccode\u003ef06835e\u003c/code\u003e\u003c/a\u003e [release] prepare release pmd_releases/7.15.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/e84f47ade44726923f65d60a66fa39677ab41328\"\u003e\u003ccode\u003ee84f47a\u003c/code\u003e\u003c/a\u003e Prepare pmd release 7.15.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/8e5654fa786955f969b6904241fd56b2d10bb6b3\"\u003e\u003ccode\u003e8e5654f\u003c/code\u003e\u003c/a\u003e [ci] publish-snapshot/release: also create javadocs for kotlin (dokka)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/48e6c5fb906858bce774dcdf1aa54684705be54e\"\u003e\u003ccode\u003e48e6c5f\u003c/code\u003e\u003c/a\u003e [doc] Fix javadoc plugin offline link configuration\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/77276fb5453220a3951c29004645f44552ff111b\"\u003e\u003ccode\u003e77276fb\u003c/code\u003e\u003c/a\u003e [ci] Fix condition for publish-release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/2b40c9eac39b4f4b450edde6a316d568e03de900\"\u003e\u003ccode\u003e2b40c9e\u003c/code\u003e\u003c/a\u003e [ci] Fix regression tester script for release builds\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/888eb624616dcc660c096d5136a8c3768a32851d\"\u003e\u003ccode\u003e888eb62\u003c/code\u003e\u003c/a\u003e [ci] Fix dogfood check during release builds\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/59e32be4d8a807c4ef378aa1a2869e89df1aa660\"\u003e\u003ccode\u003e59e32be\u003c/code\u003e\u003c/a\u003e Bump build-tools from 30 to 32 (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5853\"\u003e#5853\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/5e2bf355ae7af818cc5f81f52008e524fc4693d5\"\u003e\u003ccode\u003e5e2bf35\u003c/code\u003e\u003c/a\u003e [ci] New \u0026quot;Publish Release\u0026quot; workflow (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5745\"\u003e#5745\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/6462b0cf0993b72e9093e0bbd095bc0b9aebecef\"\u003e\u003ccode\u003e6462b0c\u003c/code\u003e\u003c/a\u003e [ci] Small fixes\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pmd/pmd/compare/pmd_releases/7.14.0...pmd_releases/7.15.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `net.sourceforge.pmd:pmd-java` from 7.14.0 to 7.15.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pmd/pmd/releases\"\u003enet.sourceforge.pmd:pmd-java's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ePMD 7.15.0 (27-June-2025)\u003c/h2\u003e\n\u003ch2\u003e27-June-2025 - 7.15.0\u003c/h2\u003e\n\u003cp\u003eThe PMD team is pleased to announce PMD 7.15.0.\u003c/p\u003e\n\u003cp\u003eThis is a minor release.\u003c/p\u003e\n\u003ch3\u003eTable Of Contents\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-and-noteworthy\"\u003e🚀 New and noteworthy\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-rules\"\u003e✨ New Rules\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#fixed-issues\"\u003e🐛 Fixed Issues\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#api-changes\"\u003e🚨 API Changes\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#rule-test-schema\"\u003eRule Test Schema\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#financial-contributions\"\u003e💵 Financial Contributions\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#merged-pull-requests\"\u003e✨ Merged pull requests\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#dependency-updates\"\u003e📦 Dependency updates\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#stats\"\u003e📈 Stats\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🚀 New and noteworthy\u003c/h3\u003e\n\u003ch4\u003e✨ New Rules\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eThe new Apex rule \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.15.0/pmd_rules_apex_design.html#avoidbooleanmethodparameters\"\u003e\u003ccode\u003eAvoidBooleanMethodParameters\u003c/code\u003e\u003c/a\u003e finds methods that take a\nboolean parameter. This can make method calls difficult to understand and maintain as the method is clearly\ndoing two things.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🐛 Fixed Issues\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eapex-design\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5427\"\u003e#5427\u003c/a\u003e: [apex] New Rule: Avoid Boolean Method Parameters\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003eapex-security\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5788\"\u003e#5788\u003c/a\u003e: [apex] ApexCRUDViolation unable to detect insecure SOQL if it is a direct input argument\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003edoc\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5790\"\u003e#5790\u003c/a\u003e: [doc] Website rule reference pages are returning 404\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003ejava-bestpractices\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5785\"\u003e#5785\u003c/a\u003e: [java] UnusedPrivateField doesn't play well with UnnecessaryWarningSuppression\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5793\"\u003e#5793\u003c/a\u003e: [java] NonExhaustiveSwitch fails on exhaustive switch with sealed class\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003ejava-codestyle\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/1639\"\u003e#1639\u003c/a\u003e: [java] UnnecessaryImport false positive for multiline @\u003c!-- raw HTML omitted --\u003elink Javadoc\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/2304\"\u003e#2304\u003c/a\u003e: [java] UnnecessaryImport false positive for on-demand imports in JavaDoc\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5832\"\u003e#5832\u003c/a\u003e: [java] UnnecessaryImport false positive for multiline @\u003c!-- raw HTML omitted --\u003esee Javadoc\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003ejava-design\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5804\"\u003e#5804\u003c/a\u003e: [java] UselessOverridingMethod doesn't play well with UnnecessarySuppressWarning\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🚨 API Changes\u003c/h3\u003e\n\u003ch4\u003eRule Test Schema\u003c/h4\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/f06835e0afc59b11f440fffd999d13ebe48a43d2\"\u003e\u003ccode\u003ef06835e\u003c/code\u003e\u003c/a\u003e [release] prepare release pmd_releases/7.15.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/e84f47ade44726923f65d60a66fa39677ab41328\"\u003e\u003ccode\u003ee84f47a\u003c/code\u003e\u003c/a\u003e Prepare pmd release 7.15.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/8e5654fa786955f969b6904241fd56b2d10bb6b3\"\u003e\u003ccode\u003e8e5654f\u003c/code\u003e\u003c/a\u003e [ci] publish-snapshot/release: also create javadocs for kotlin (dokka)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/48e6c5fb906858bce774dcdf1aa54684705be54e\"\u003e\u003ccode\u003e48e6c5f\u003c/code\u003e\u003c/a\u003e [doc] Fix javadoc plugin offline link configuration\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/77276fb5453220a3951c29004645f44552ff111b\"\u003e\u003ccode\u003e77276fb\u003c/code\u003e\u003c/a\u003e [ci] Fix condition for publish-release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/2b40c9eac39b4f4b450edde6a316d568e03de900\"\u003e\u003ccode\u003e2b40c9e\u003c/code\u003e\u003c/a\u003e [ci] Fix regression tester script for release builds\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/888eb624616dcc660c096d5136a8c3768a32851d\"\u003e\u003ccode\u003e888eb62\u003c/code\u003e\u003c/a\u003e [ci] Fix dogfood check during release builds\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/59e32be4d8a807c4ef378aa1a2869e89df1aa660\"\u003e\u003ccode\u003e59e32be\u003c/code\u003e\u003c/a\u003e Bump build-tools from 30 to 32 (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5853\"\u003e#5853\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/5e2bf355ae7af818cc5f81f52008e524fc4693d5\"\u003e\u003ccode\u003e5e2bf35\u003c/code\u003e\u003c/a\u003e [ci] New \u0026quot;Publish Release\u0026quot; workflow (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5745\"\u003e#5745\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/6462b0cf0993b72e9093e0bbd095bc0b9aebecef\"\u003e\u003ccode\u003e6462b0c\u003c/code\u003e\u003c/a\u003e [ci] Small fixes\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pmd/pmd/compare/pmd_releases/7.14.0...pmd_releases/7.15.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `net.sourceforge.pmd:pmd-javascript` from 7.14.0 to 7.15.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pmd/pmd/releases\"\u003enet.sourceforge.pmd:pmd-javascript's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ePMD 7.15.0 (27-June-2025)\u003c/h2\u003e\n\u003ch2\u003e27-June-2025 - 7.15.0\u003c/h2\u003e\n\u003cp\u003eThe PMD team is pleased to announce PMD 7.15.0.\u003c/p\u003e\n\u003cp\u003eThis is a minor release.\u003c/p\u003e\n\u003ch3\u003eTable Of Contents\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-and-noteworthy\"\u003e🚀 New and noteworthy\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-rules\"\u003e✨ New Rules\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#fixed-issues\"\u003e🐛 Fixed Issues\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#api-changes\"\u003e🚨 API Changes\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#rule-test-schema\"\u003eRule Test Schema\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#financial-contributions\"\u003e💵 Financial Contributions\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#merged-pull-requests\"\u003e✨ Merged pull requests\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#dependency-updates\"\u003e📦 Dependency updates\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#stats\"\u003e📈 Stats\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🚀 New and noteworthy\u003c/h3\u003e\n\u003ch4\u003e✨ New Rules\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eThe new Apex rule \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.15.0/pmd_rules_apex_design.html#avoidbooleanmethodparameters\"\u003e\u003ccode\u003eAvoidBooleanMethodParameters\u003c/code\u003e\u003c/a\u003e finds methods that take a\nboolean parameter. This can make method calls difficult to understand and maintain as the method is clearly\ndoing two things.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🐛 Fixed Issues\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eapex-design\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5427\"\u003e#5427\u003c/a\u003e: [apex] New Rule: Avoid Boolean Method Parameters\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003eapex-security\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5788\"\u003e#5788\u003c/a\u003e: [apex] ApexCRUDViolation unable to detect insecure SOQL if it is a direct input argument\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003edoc\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5790\"\u003e#5790\u003c/a\u003e: [doc] Website rule reference pages are returning 404\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003ejava-bestpractices\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5785\"\u003e#5785\u003c/a\u003e: [java] UnusedPrivateField doesn't play well with UnnecessaryWarningSuppression\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5793\"\u003e#5793\u003c/a\u003e: [java] NonExhaustiveSwitch fails on exhaustive switch with sealed class\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003ejava-codestyle\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/1639\"\u003e#1639\u003c/a\u003e: [java] UnnecessaryImport false positive for multiline @\u003c!-- raw HTML omitted --\u003elink Javadoc\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/2304\"\u003e#2304\u003c/a\u003e: [java] UnnecessaryImport false positive for on-demand imports in JavaDoc\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5832\"\u003e#5832\u003c/a\u003e: [java] UnnecessaryImport false positive for multiline @\u003c!-- raw HTML omitted --\u003esee Javadoc\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003ejava-design\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5804\"\u003e#5804\u003c/a\u003e: [java] UselessOverridingMethod doesn't play well with UnnecessarySuppressWarning\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🚨 API Changes\u003c/h3\u003e\n\u003ch4\u003eRule Test Schema\u003c/h4\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/f06835e0afc59b11f440fffd999d13ebe48a43d2\"\u003e\u003ccode\u003ef06835e\u003c/code\u003e\u003c/a\u003e [release] prepare release pmd_releases/7.15.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/e84f47ade44726923f65d60a66fa39677ab41328\"\u003e\u003ccode\u003ee84f47a\u003c/code\u003e\u003c/a\u003e Prepare pmd release 7.15.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/8e5654fa786955f969b6904241fd56b2d10bb6b3\"\u003e\u003ccode\u003e8e5654f\u003c/code\u003e\u003c/a\u003e [ci] publish-snapshot/release: also create javadocs for kotlin (dokka)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/48e6c5fb906858bce774dcdf1aa54684705be54e\"\u003e\u003ccode\u003e48e6c5f\u003c/code\u003e\u003c/a\u003e [doc] Fix javadoc plugin offline link configuration\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/77276fb5453220a3951c29004645f44552ff111b\"\u003e\u003ccode\u003e77276fb\u003c/code\u003e\u003c/a\u003e [ci] Fix condition for publish-release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/2b40c9eac39b4f4b450edde6a316d568e03de900\"\u003e\u003ccode\u003e2b40c9e\u003c/code\u003e\u003c/a\u003e [ci] Fix regression tester script for release builds\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/888eb624616dcc660c096d5136a8c3768a32851d\"\u003e\u003ccode\u003e888eb62\u003c/code\u003e\u003c/a\u003e [ci] Fix dogfood check during release builds\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/59e32be4d8a807c4ef378aa1a2869e89df1aa660\"\u003e\u003ccode\u003e59e32be\u003c/code\u003e\u003c/a\u003e Bump build-tools from 30 to 32 (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5853\"\u003e#5853\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/5e2bf355ae7af818cc5f81f52008e524fc4693d5\"\u003e\u003ccode\u003e5e2bf35\u003c/code\u003e\u003c/a\u003e [ci] New \u0026quot;Publish Release\u0026quot; workflow (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5745\"\u003e#5745\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/6462b0cf0993b72e9093e0bbd095bc0b9aebecef\"\u003e\u003ccode\u003e6462b0c\u003c/code\u003e\u003c/a\u003e [ci] Small fixes\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pmd/pmd/compare/pmd_releases/7.14.0...pmd_releases/7.15.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `net.sourceforge.pmd:pmd-jsp` from 7.14.0 to 7.15.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pmd/pmd/releases\"\u003enet.sourceforge.pmd:pmd-jsp's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ePMD 7.15.0 (27-June-2025)\u003c/h2\u003e\n\u003ch2\u003e27-June-2025 - 7.15.0\u003c/h2\u003e\n\u003cp\u003eThe PMD team is pleased to announce PMD 7.15.0.\u003c/p\u003e\n\u003cp\u003eThis is a minor release.\u003c/p\u003e\n\u003ch3\u003eTable Of Contents\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-and-noteworthy\"\u003e🚀 New and noteworthy\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-rules\"\u003e✨ New Rules\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#fixed-issues\"\u003e🐛 Fixed Issues\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#api-changes\"\u003e🚨 API Changes\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#rule-test-schema\"\u003eRule Test Schema\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#financial-contributions\"\u003e💵 Financial Contributions\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#merged-pull-requests\"\u003e✨ Merged pull requests\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#dependency-updates\"\u003e📦 Dependency updates\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#stats\"\u003e📈 Stats\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🚀 New and noteworthy\u003c/h3\u003e\n\u003ch4\u003e✨ New Rules\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eThe new Apex rule \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.15.0/pmd_rules_apex_design.html#avoidbooleanmethodparameters\"\u003e\u003ccode\u003eAvoidBooleanMethodParameters\u003c/code\u003e\u003c/a\u003e finds methods that take a\nboolean parameter. This can make method calls difficult to understand and maintain as the method is clearly\ndoing two things.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🐛 Fixed Issues\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eapex-design\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5427\"\u003e#5427\u003c/a\u003e: [apex] New Rule: Avoid Boolean Method Parameters\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003eapex-security\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5788\"\u003e#5788\u003c/a\u003e: [apex] ApexCRUDViolation unable to detect insecure SOQL if it is a direct input argument\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003edoc\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5790\"\u003e#5790\u003c/a\u003e: [doc] Website rule reference pages are returning 404\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003ejava-bestpractices\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5785\"\u003e#5785\u003c/a\u003e: [java] UnusedPrivateField doesn't play well with UnnecessaryWarningSuppression\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5793\"\u003e#5793\u003c/a\u003e: [java] NonExhaustiveSwitch fails on exhaustive switch with sealed class\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003ejava-codestyle\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/1639\"\u003e#1639\u003c/a\u003e: [java] UnnecessaryImport false positive for multiline @\u003c!-- raw HTML omitted --\u003elink Javadoc\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/2304\"\u003e#2304\u003c/a\u003e: [java] UnnecessaryImport false positive for on-demand imports in JavaDoc\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5832\"\u003e#5832\u003c/a\u003e: [java] UnnecessaryImport false positive for multiline @\u003c!-- raw HTML omitted --\u003esee Javadoc\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003ejava-design\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5804\"\u003e#5804\u003c/a\u003e: [java] UselessOverridingMethod doesn't play well with UnnecessarySuppressWarning\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🚨 API Changes\u003c/h3\u003e\n\u003ch4\u003eRule Test Schema\u003c/h4\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/f06835e0afc59b11f440fffd999d13ebe48a43d2\"\u003e\u003ccode\u003ef06835e\u003c/code\u003e\u003c/a\u003e [release] prepare release pmd_releases/7.15.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/e84f47ade44726923f65d60a66fa39677ab41328\"\u003e\u003ccode\u003ee84f47a\u003c/code\u003e\u003c/a\u003e Prepare pmd release 7.15.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/8e5654fa786955f969b6904241fd56b2d10bb6b3\"\u003e\u003ccode\u003e8e5654f\u003c/code\u003e\u003c/a\u003e [ci] publish-snapshot/release: also create javadocs for kotlin (dokka)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/48e6c5fb906858bce774dcdf1aa54684705be54e\"\u003e\u003ccode\u003e48e6c5f\u003c/code\u003e\u003c/a\u003e [doc] Fix javadoc plugin offline link configuration\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/77276fb5453220a3951c29004645f44552ff111b\"\u003e\u003ccode\u003e77276fb\u003c/code\u003e\u003c/a\u003e [ci] Fix condition for publish-release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/2b40c9eac39b4f4b450edde6a316d568e03de900\"\u003e\u003ccode\u003e2b40c9e\u003c/code\u003e\u003c/a\u003e [ci] Fix regression tester script for release builds\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/888eb624616dcc660c096d5136a8c3768a32851d\"\u003e\u003ccode\u003e888eb62\u003c/code\u003e\u003c/a\u003e [ci] Fix dogfood check during release builds\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/59e32be4d8a807c4ef378aa1a2869e89df1aa660\"\u003e\u003ccode\u003e59e32be\u003c/code\u003e\u003c/a\u003e Bump build-tools from 30 to 32 (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5853\"\u003e#5853\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/5e2bf355ae7af818cc5f81f52008e524fc4693d5\"\u003e\u003ccode\u003e5e2bf35\u003c/code\u003e\u003c/a\u003e [ci] New \u0026quot;Publish Release\u0026quot; workflow (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5745\"\u003e#5745\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/6462b0cf0993b72e9093e0bbd095bc0b9aebecef\"\u003e\u003ccode\u003e6462b0c\u003c/code\u003e\u003c/a\u003e [ci] Small fixes\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pmd/pmd/compare/pmd_releases/7.14.0...pmd_releases/7.15.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot merge` will merge this PR after your CI passes on it\n- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it\n- `@dependabot cancel merge` will cancel a previously requested merge and block automerging\n- `@dependabot reopen` will reopen this PR if it is closed\n- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)\n\n\n\u003c/details\u003e","html_url":"https://github.com/instancio/instancio/pull/1391","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/instancio%2Finstancio/issues/1391","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/1391/packages"},{"uuid":"2624156365","node_id":"PR_kwDOBsaZJs6caXLN","number":643,"state":"closed","title":"Bump pmdVersion from 7.14.0 to 7.15.0","user":"dependabot[bot]","labels":["dependencies","java"],"assignees":[],"locked":false,"comments_count":0,"pull_request":true,"closed_at":"2025-07-02T21:16:08.000Z","author_association":"CONTRIBUTOR","state_reason":null,"created_at":"2025-06-27T11:52:20.000Z","updated_at":"2025-07-02T21:16:09.000Z","time_to_close":465828,"merged_at":"2025-07-02T21:16:08.000Z","merged_by":"slachiewicz","closed_by":null,"dependency_metadata":{"prefix":"Bump","packages":[{"name":"pmdVersion","old_version":"7.14.0","new_version":"7.15.0","repository_url":null}],"path":null,"ecosystem":"maven"},"body":"Bumps `pmdVersion` from 7.14.0 to 7.15.0.\nUpdates `net.sourceforge.pmd:pmd-core` from 7.14.0 to 7.15.0\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/f06835e0afc59b11f440fffd999d13ebe48a43d2\"\u003e\u003ccode\u003ef06835e\u003c/code\u003e\u003c/a\u003e [release] prepare release pmd_releases/7.15.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/e84f47ade44726923f65d60a66fa39677ab41328\"\u003e\u003ccode\u003ee84f47a\u003c/code\u003e\u003c/a\u003e Prepare pmd release 7.15.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/8e5654fa786955f969b6904241fd56b2d10bb6b3\"\u003e\u003ccode\u003e8e5654f\u003c/code\u003e\u003c/a\u003e [ci] publish-snapshot/release: also create javadocs for kotlin (dokka)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/48e6c5fb906858bce774dcdf1aa54684705be54e\"\u003e\u003ccode\u003e48e6c5f\u003c/code\u003e\u003c/a\u003e [doc] Fix javadoc plugin offline link configuration\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/77276fb5453220a3951c29004645f44552ff111b\"\u003e\u003ccode\u003e77276fb\u003c/code\u003e\u003c/a\u003e [ci] Fix condition for publish-release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/2b40c9eac39b4f4b450edde6a316d568e03de900\"\u003e\u003ccode\u003e2b40c9e\u003c/code\u003e\u003c/a\u003e [ci] Fix regression tester script for release builds\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/888eb624616dcc660c096d5136a8c3768a32851d\"\u003e\u003ccode\u003e888eb62\u003c/code\u003e\u003c/a\u003e [ci] Fix dogfood check during release builds\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/59e32be4d8a807c4ef378aa1a2869e89df1aa660\"\u003e\u003ccode\u003e59e32be\u003c/code\u003e\u003c/a\u003e Bump build-tools from 30 to 32 (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5853\"\u003e#5853\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/5e2bf355ae7af818cc5f81f52008e524fc4693d5\"\u003e\u003ccode\u003e5e2bf35\u003c/code\u003e\u003c/a\u003e [ci] New \u0026quot;Publish Release\u0026quot; workflow (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5745\"\u003e#5745\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/6462b0cf0993b72e9093e0bbd095bc0b9aebecef\"\u003e\u003ccode\u003e6462b0c\u003c/code\u003e\u003c/a\u003e [ci] Small fixes\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pmd/pmd/compare/pmd_releases/7.14.0...pmd_releases/7.15.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `net.sourceforge.pmd:pmd-java` from 7.14.0 to 7.15.0\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/f06835e0afc59b11f440fffd999d13ebe48a43d2\"\u003e\u003ccode\u003ef06835e\u003c/code\u003e\u003c/a\u003e [release] prepare release pmd_releases/7.15.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/e84f47ade44726923f65d60a66fa39677ab41328\"\u003e\u003ccode\u003ee84f47a\u003c/code\u003e\u003c/a\u003e Prepare pmd release 7.15.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/8e5654fa786955f969b6904241fd56b2d10bb6b3\"\u003e\u003ccode\u003e8e5654f\u003c/code\u003e\u003c/a\u003e [ci] publish-snapshot/release: also create javadocs for kotlin (dokka)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/48e6c5fb906858bce774dcdf1aa54684705be54e\"\u003e\u003ccode\u003e48e6c5f\u003c/code\u003e\u003c/a\u003e [doc] Fix javadoc plugin offline link configuration\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/77276fb5453220a3951c29004645f44552ff111b\"\u003e\u003ccode\u003e77276fb\u003c/code\u003e\u003c/a\u003e [ci] Fix condition for publish-release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/2b40c9eac39b4f4b450edde6a316d568e03de900\"\u003e\u003ccode\u003e2b40c9e\u003c/code\u003e\u003c/a\u003e [ci] Fix regression tester script for release builds\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/888eb624616dcc660c096d5136a8c3768a32851d\"\u003e\u003ccode\u003e888eb62\u003c/code\u003e\u003c/a\u003e [ci] Fix dogfood check during release builds\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/59e32be4d8a807c4ef378aa1a2869e89df1aa660\"\u003e\u003ccode\u003e59e32be\u003c/code\u003e\u003c/a\u003e Bump build-tools from 30 to 32 (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5853\"\u003e#5853\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/5e2bf355ae7af818cc5f81f52008e524fc4693d5\"\u003e\u003ccode\u003e5e2bf35\u003c/code\u003e\u003c/a\u003e [ci] New \u0026quot;Publish Release\u0026quot; workflow (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5745\"\u003e#5745\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/6462b0cf0993b72e9093e0bbd095bc0b9aebecef\"\u003e\u003ccode\u003e6462b0c\u003c/code\u003e\u003c/a\u003e [ci] Small fixes\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pmd/pmd/compare/pmd_releases/7.14.0...pmd_releases/7.15.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `net.sourceforge.pmd:pmd-javascript` from 7.14.0 to 7.15.0\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/f06835e0afc59b11f440fffd999d13ebe48a43d2\"\u003e\u003ccode\u003ef06835e\u003c/code\u003e\u003c/a\u003e [release] prepare release pmd_releases/7.15.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/e84f47ade44726923f65d60a66fa39677ab41328\"\u003e\u003ccode\u003ee84f47a\u003c/code\u003e\u003c/a\u003e Prepare pmd release 7.15.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/8e5654fa786955f969b6904241fd56b2d10bb6b3\"\u003e\u003ccode\u003e8e5654f\u003c/code\u003e\u003c/a\u003e [ci] publish-snapshot/release: also create javadocs for kotlin (dokka)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/48e6c5fb906858bce774dcdf1aa54684705be54e\"\u003e\u003ccode\u003e48e6c5f\u003c/code\u003e\u003c/a\u003e [doc] Fix javadoc plugin offline link configuration\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/77276fb5453220a3951c29004645f44552ff111b\"\u003e\u003ccode\u003e77276fb\u003c/code\u003e\u003c/a\u003e [ci] Fix condition for publish-release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/2b40c9eac39b4f4b450edde6a316d568e03de900\"\u003e\u003ccode\u003e2b40c9e\u003c/code\u003e\u003c/a\u003e [ci] Fix regression tester script for release builds\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/888eb624616dcc660c096d5136a8c3768a32851d\"\u003e\u003ccode\u003e888eb62\u003c/code\u003e\u003c/a\u003e [ci] Fix dogfood check during release builds\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/59e32be4d8a807c4ef378aa1a2869e89df1aa660\"\u003e\u003ccode\u003e59e32be\u003c/code\u003e\u003c/a\u003e Bump build-tools from 30 to 32 (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5853\"\u003e#5853\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/5e2bf355ae7af818cc5f81f52008e524fc4693d5\"\u003e\u003ccode\u003e5e2bf35\u003c/code\u003e\u003c/a\u003e [ci] New \u0026quot;Publish Release\u0026quot; workflow (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5745\"\u003e#5745\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/6462b0cf0993b72e9093e0bbd095bc0b9aebecef\"\u003e\u003ccode\u003e6462b0c\u003c/code\u003e\u003c/a\u003e [ci] Small fixes\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pmd/pmd/compare/pmd_releases/7.14.0...pmd_releases/7.15.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `net.sourceforge.pmd:pmd-jsp` from 7.14.0 to 7.15.0\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/f06835e0afc59b11f440fffd999d13ebe48a43d2\"\u003e\u003ccode\u003ef06835e\u003c/code\u003e\u003c/a\u003e [release] prepare release pmd_releases/7.15.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/e84f47ade44726923f65d60a66fa39677ab41328\"\u003e\u003ccode\u003ee84f47a\u003c/code\u003e\u003c/a\u003e Prepare pmd release 7.15.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/8e5654fa786955f969b6904241fd56b2d10bb6b3\"\u003e\u003ccode\u003e8e5654f\u003c/code\u003e\u003c/a\u003e [ci] publish-snapshot/release: also create javadocs for kotlin (dokka)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/48e6c5fb906858bce774dcdf1aa54684705be54e\"\u003e\u003ccode\u003e48e6c5f\u003c/code\u003e\u003c/a\u003e [doc] Fix javadoc plugin offline link configuration\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/77276fb5453220a3951c29004645f44552ff111b\"\u003e\u003ccode\u003e77276fb\u003c/code\u003e\u003c/a\u003e [ci] Fix condition for publish-release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/2b40c9eac39b4f4b450edde6a316d568e03de900\"\u003e\u003ccode\u003e2b40c9e\u003c/code\u003e\u003c/a\u003e [ci] Fix regression tester script for release builds\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/888eb624616dcc660c096d5136a8c3768a32851d\"\u003e\u003ccode\u003e888eb62\u003c/code\u003e\u003c/a\u003e [ci] Fix dogfood check during release builds\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/59e32be4d8a807c4ef378aa1a2869e89df1aa660\"\u003e\u003ccode\u003e59e32be\u003c/code\u003e\u003c/a\u003e Bump build-tools from 30 to 32 (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5853\"\u003e#5853\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/5e2bf355ae7af818cc5f81f52008e524fc4693d5\"\u003e\u003ccode\u003e5e2bf35\u003c/code\u003e\u003c/a\u003e [ci] New \u0026quot;Publish Release\u0026quot; workflow (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5745\"\u003e#5745\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/6462b0cf0993b72e9093e0bbd095bc0b9aebecef\"\u003e\u003ccode\u003e6462b0c\u003c/code\u003e\u003c/a\u003e [ci] Small fixes\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pmd/pmd/compare/pmd_releases/7.14.0...pmd_releases/7.15.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot merge` will merge this PR after your CI passes on it\n- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it\n- `@dependabot cancel merge` will cancel a previously requested merge and block automerging\n- `@dependabot reopen` will reopen this PR if it is closed\n- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)\n\n\n\u003c/details\u003e","html_url":"https://github.com/apache/maven-pmd-plugin/pull/643","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/apache%2Fmaven-pmd-plugin/issues/643","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/643/packages"},{"uuid":"3109141574","node_id":"PR_kwDOLWJuBc6YkoxK","number":44,"state":"open","title":"Bump pmdVersion from 7.0.0 to 7.2.0","user":"dependabot[bot]","labels":["dependencies","java"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":"CONTRIBUTOR","state_reason":null,"created_at":"2025-06-02T08:24:48.000Z","updated_at":"2025-07-08T16:45:59.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","packages":[{"name":"pmdVersion","old_version":"7.0.0","new_version":"7.2.0","repository_url":null}],"path":null,"ecosystem":"maven"},"body":"Bumps `pmdVersion` from 7.0.0 to 7.2.0.\nUpdates `net.sourceforge.pmd:pmd-compat6` from 7.0.0 to 7.2.0\n\nUpdates `net.sourceforge.pmd:pmd-core` from 7.0.0 to 7.2.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pmd/pmd/releases\"\u003enet.sourceforge.pmd:pmd-core's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ePMD 7.2.0 (31-May-2024)\u003c/h2\u003e\n\u003ch2\u003e31-May-2024 - 7.2.0\u003c/h2\u003e\n\u003cp\u003eThe PMD team is pleased to announce PMD 7.2.0.\u003c/p\u003e\n\u003cp\u003eThis is a minor release.\u003c/p\u003e\n\u003ch3\u003eTable Of Contents\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-and-noteworthy\"\u003e🚀 New and noteworthy\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#collections-exposed-as-xpath-attributes\"\u003eCollections exposed as XPath attributes\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#updated-pmd-designer\"\u003eUpdated PMD Designer\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#fixed-issues\"\u003e🐛 Fixed Issues\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#api-changes\"\u003e🚨 API Changes\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#deprecated-api\"\u003eDeprecated API\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#external-contributions\"\u003e✨ External Contributions\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#stats\"\u003e📈 Stats\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🚀 New and noteworthy\u003c/h3\u003e\n\u003ch4\u003eCollections exposed as XPath attributes\u003c/h4\u003e\n\u003cp\u003eUp to now, all AST node getters would be exposed to XPath, as long as the return type was a primitive (boxed or unboxed), String or Enum. That meant that collections, even of these basic types, were not exposed, so for instance accessing Apex's \u003ccode\u003eASTUserClass.getInterfaceNames()\u003c/code\u003e to list the interfaces implemented by a class was impossible from XPath, and would require writing a Java rule to check it.\u003c/p\u003e\n\u003cp\u003eSince this release, PMD will also expose any getter returning a collection of any supported type as a sequence through an XPath attribute. They would require to use apropriate XQuery functions to manipulate the sequence. So for instance, to detect any given \u003ccode\u003eASTUserClass\u003c/code\u003e in Apex that implements \u003ccode\u003eQueueable\u003c/code\u003e, it is now possible to write:\u003c/p\u003e\n\u003cpre lang=\"xml\"\u003e\u003ccode\u003e/UserClass[@InterfaceNames = 'Queueable']\n\u003c/code\u003e\u003c/pre\u003e\n\u003ch4\u003eUpdated PMD Designer\u003c/h4\u003e\n\u003cp\u003eThis PMD release ships a new version of the pmd-designer.\nFor the changes, see \u003ca href=\"https://github.com/pmd/pmd-designer/releases/tag/7.2.0\"\u003ePMD Designer Changelog (7.2.0)\u003c/a\u003e.\u003c/p\u003e\n\u003ch3\u003e🐛 Fixed Issues\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ecore\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/4467\"\u003e#4467\u003c/a\u003e: [core] Expose collections from getters as XPath sequence attributes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/4978\"\u003e#4978\u003c/a\u003e: [core] Referenced Rulesets do not emit details on validation errors\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/pull/4983\"\u003e#4983\u003c/a\u003e: [cpd] Fix CPD crashes about unicode escapes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5009\"\u003e#5009\u003c/a\u003e: [core] Kotest tests aren't picked up by surefire\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003ejava\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/4912\"\u003e#4912\u003c/a\u003e: [java] Unable to parse some Java9+ resource references\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/pull/4973\"\u003e#4973\u003c/a\u003e: [java] Stop parsing Java for CPD\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/4980\"\u003e#4980\u003c/a\u003e: [java] Bad intersection, unrelated class types java.lang.Object[] and java.lang.Number\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/pull/4988\"\u003e#4988\u003c/a\u003e: [java] Fix impl of ASTVariableId::isResourceDeclaration / VariableId/@\u003c!-- raw HTML omitted --\u003eResourceDeclaration\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/4990\"\u003e#4990\u003c/a\u003e: [java] Add an attribute @\u003c!-- raw HTML omitted --\u003ePackageQualifier to ASTClassType\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5006\"\u003e#5006\u003c/a\u003e: [java] Bad intersection, unrelated class types Child and Parent\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5029\"\u003e#5029\u003c/a\u003e: [java] PMD 7.x throws stack overflow in TypeOps$ProjectionVisitor while parsing a Java class\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/38bc997d4e7f4b29cee86829915f17f925211800\"\u003e\u003ccode\u003e38bc997\u003c/code\u003e\u003c/a\u003e [release] prepare release pmd_releases/7.2.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/27a14cc61e4659447125422756e545fe2a7b96f0\"\u003e\u003ccode\u003e27a14cc\u003c/code\u003e\u003c/a\u003e Prepare pmd release 7.2.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/e27b30e0b52229f66c5dae8aab0c2b95d877a135\"\u003e\u003ccode\u003ee27b30e\u003c/code\u003e\u003c/a\u003e Bump pmd-designer from 7.2.0-SNAPSHOT to 7.2.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/d37769e71c64b9c8ffdea521bade7a17b0da39a8\"\u003e\u003ccode\u003ed37769e\u003c/code\u003e\u003c/a\u003e Bump builds-tools from 25-SNAPSHOT to 25\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/2a0cba7b9155505a2a065339cf439dcd8e986692\"\u003e\u003ccode\u003e2a0cba7\u003c/code\u003e\u003c/a\u003e [java] Improve LocalVariableCouldBeFinal (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5003\"\u003e#5003\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/8a8402a0bd255c46375d452092643ef31bde7ba2\"\u003e\u003ccode\u003e8a8402a\u003c/code\u003e\u003c/a\u003e [doc] Update release notes (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/1619\"\u003e#1619\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/pmd/pmd/issues/3122\"\u003e#3122\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5003\"\u003e#5003\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/3890b561a13191af49a71d19aab81ba11e6b5129\"\u003e\u003ccode\u003e3890b56\u003c/code\u003e\u003c/a\u003e [java] Remove FPs in UnnecessaryBoxing (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5019\"\u003e#5019\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/224f5b83039b646c1dd5f29b9453346006425159\"\u003e\u003ccode\u003e224f5b8\u003c/code\u003e\u003c/a\u003e [doc] Update release notes (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/4903\"\u003e#4903\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/pmd/pmd/issues/4924\"\u003e#4924\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5019\"\u003e#5019\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/910c0985ca952c3ef68c372d06f67661c31d7a97\"\u003e\u003ccode\u003e910c098\u003c/code\u003e\u003c/a\u003e [core] Fix Kotest based tests (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5022\"\u003e#5022\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/37451931dc0b290c7de44691bea2b175f6d34612\"\u003e\u003ccode\u003e3745193\u003c/code\u003e\u003c/a\u003e [test] Add missing junit jupiter engine\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pmd/pmd/compare/pmd_releases/7.0.0...pmd_releases/7.2.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `net.sourceforge.pmd:pmd-java` from 7.0.0 to 7.2.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pmd/pmd/releases\"\u003enet.sourceforge.pmd:pmd-java's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ePMD 7.2.0 (31-May-2024)\u003c/h2\u003e\n\u003ch2\u003e31-May-2024 - 7.2.0\u003c/h2\u003e\n\u003cp\u003eThe PMD team is pleased to announce PMD 7.2.0.\u003c/p\u003e\n\u003cp\u003eThis is a minor release.\u003c/p\u003e\n\u003ch3\u003eTable Of Contents\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-and-noteworthy\"\u003e🚀 New and noteworthy\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#collections-exposed-as-xpath-attributes\"\u003eCollections exposed as XPath attributes\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#updated-pmd-designer\"\u003eUpdated PMD Designer\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#fixed-issues\"\u003e🐛 Fixed Issues\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#api-changes\"\u003e🚨 API Changes\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#deprecated-api\"\u003eDeprecated API\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#external-contributions\"\u003e✨ External Contributions\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#stats\"\u003e📈 Stats\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🚀 New and noteworthy\u003c/h3\u003e\n\u003ch4\u003eCollections exposed as XPath attributes\u003c/h4\u003e\n\u003cp\u003eUp to now, all AST node getters would be exposed to XPath, as long as the return type was a primitive (boxed or unboxed), String or Enum. That meant that collections, even of these basic types, were not exposed, so for instance accessing Apex's \u003ccode\u003eASTUserClass.getInterfaceNames()\u003c/code\u003e to list the interfaces implemented by a class was impossible from XPath, and would require writing a Java rule to check it.\u003c/p\u003e\n\u003cp\u003eSince this release, PMD will also expose any getter returning a collection of any supported type as a sequence through an XPath attribute. They would require to use apropriate XQuery functions to manipulate the sequence. So for instance, to detect any given \u003ccode\u003eASTUserClass\u003c/code\u003e in Apex that implements \u003ccode\u003eQueueable\u003c/code\u003e, it is now possible to write:\u003c/p\u003e\n\u003cpre lang=\"xml\"\u003e\u003ccode\u003e/UserClass[@InterfaceNames = 'Queueable']\n\u003c/code\u003e\u003c/pre\u003e\n\u003ch4\u003eUpdated PMD Designer\u003c/h4\u003e\n\u003cp\u003eThis PMD release ships a new version of the pmd-designer.\nFor the changes, see \u003ca href=\"https://github.com/pmd/pmd-designer/releases/tag/7.2.0\"\u003ePMD Designer Changelog (7.2.0)\u003c/a\u003e.\u003c/p\u003e\n\u003ch3\u003e🐛 Fixed Issues\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ecore\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/4467\"\u003e#4467\u003c/a\u003e: [core] Expose collections from getters as XPath sequence attributes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/4978\"\u003e#4978\u003c/a\u003e: [core] Referenced Rulesets do not emit details on validation errors\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/pull/4983\"\u003e#4983\u003c/a\u003e: [cpd] Fix CPD crashes about unicode escapes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5009\"\u003e#5009\u003c/a\u003e: [core] Kotest tests aren't picked up by surefire\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003ejava\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/4912\"\u003e#4912\u003c/a\u003e: [java] Unable to parse some Java9+ resource references\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/pull/4973\"\u003e#4973\u003c/a\u003e: [java] Stop parsing Java for CPD\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/4980\"\u003e#4980\u003c/a\u003e: [java] Bad intersection, unrelated class types java.lang.Object[] and java.lang.Number\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/pull/4988\"\u003e#4988\u003c/a\u003e: [java] Fix impl of ASTVariableId::isResourceDeclaration / VariableId/@\u003c!-- raw HTML omitted --\u003eResourceDeclaration\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/4990\"\u003e#4990\u003c/a\u003e: [java] Add an attribute @\u003c!-- raw HTML omitted --\u003ePackageQualifier to ASTClassType\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5006\"\u003e#5006\u003c/a\u003e: [java] Bad intersection, unrelated class types Child and Parent\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5029\"\u003e#5029\u003c/a\u003e: [java] PMD 7.x throws stack overflow in TypeOps$ProjectionVisitor while parsing a Java class\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/38bc997d4e7f4b29cee86829915f17f925211800\"\u003e\u003ccode\u003e38bc997\u003c/code\u003e\u003c/a\u003e [release] prepare release pmd_releases/7.2.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/27a14cc61e4659447125422756e545fe2a7b96f0\"\u003e\u003ccode\u003e27a14cc\u003c/code\u003e\u003c/a\u003e Prepare pmd release 7.2.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/e27b30e0b52229f66c5dae8aab0c2b95d877a135\"\u003e\u003ccode\u003ee27b30e\u003c/code\u003e\u003c/a\u003e Bump pmd-designer from 7.2.0-SNAPSHOT to 7.2.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/d37769e71c64b9c8ffdea521bade7a17b0da39a8\"\u003e\u003ccode\u003ed37769e\u003c/code\u003e\u003c/a\u003e Bump builds-tools from 25-SNAPSHOT to 25\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/2a0cba7b9155505a2a065339cf439dcd8e986692\"\u003e\u003ccode\u003e2a0cba7\u003c/code\u003e\u003c/a\u003e [java] Improve LocalVariableCouldBeFinal (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5003\"\u003e#5003\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/8a8402a0bd255c46375d452092643ef31bde7ba2\"\u003e\u003ccode\u003e8a8402a\u003c/code\u003e\u003c/a\u003e [doc] Update release notes (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/1619\"\u003e#1619\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/pmd/pmd/issues/3122\"\u003e#3122\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5003\"\u003e#5003\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/3890b561a13191af49a71d19aab81ba11e6b5129\"\u003e\u003ccode\u003e3890b56\u003c/code\u003e\u003c/a\u003e [java] Remove FPs in UnnecessaryBoxing (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5019\"\u003e#5019\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/224f5b83039b646c1dd5f29b9453346006425159\"\u003e\u003ccode\u003e224f5b8\u003c/code\u003e\u003c/a\u003e [doc] Update release notes (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/4903\"\u003e#4903\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/pmd/pmd/issues/4924\"\u003e#4924\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5019\"\u003e#5019\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/910c0985ca952c3ef68c372d06f67661c31d7a97\"\u003e\u003ccode\u003e910c098\u003c/code\u003e\u003c/a\u003e [core] Fix Kotest based tests (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5022\"\u003e#5022\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/37451931dc0b290c7de44691bea2b175f6d34612\"\u003e\u003ccode\u003e3745193\u003c/code\u003e\u003c/a\u003e [test] Add missing junit jupiter engine\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pmd/pmd/compare/pmd_releases/7.0.0...pmd_releases/7.2.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `net.sourceforge.pmd:pmd-javascript` from 7.0.0 to 7.2.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pmd/pmd/releases\"\u003enet.sourceforge.pmd:pmd-javascript's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ePMD 7.2.0 (31-May-2024)\u003c/h2\u003e\n\u003ch2\u003e31-May-2024 - 7.2.0\u003c/h2\u003e\n\u003cp\u003eThe PMD team is pleased to announce PMD 7.2.0.\u003c/p\u003e\n\u003cp\u003eThis is a minor release.\u003c/p\u003e\n\u003ch3\u003eTable Of Contents\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-and-noteworthy\"\u003e🚀 New and noteworthy\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#collections-exposed-as-xpath-attributes\"\u003eCollections exposed as XPath attributes\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#updated-pmd-designer\"\u003eUpdated PMD Designer\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#fixed-issues\"\u003e🐛 Fixed Issues\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#api-changes\"\u003e🚨 API Changes\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#deprecated-api\"\u003eDeprecated API\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#external-contributions\"\u003e✨ External Contributions\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#stats\"\u003e📈 Stats\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🚀 New and noteworthy\u003c/h3\u003e\n\u003ch4\u003eCollections exposed as XPath attributes\u003c/h4\u003e\n\u003cp\u003eUp to now, all AST node getters would be exposed to XPath, as long as the return type was a primitive (boxed or unboxed), String or Enum. That meant that collections, even of these basic types, were not exposed, so for instance accessing Apex's \u003ccode\u003eASTUserClass.getInterfaceNames()\u003c/code\u003e to list the interfaces implemented by a class was impossible from XPath, and would require writing a Java rule to check it.\u003c/p\u003e\n\u003cp\u003eSince this release, PMD will also expose any getter returning a collection of any supported type as a sequence through an XPath attribute. They would require to use apropriate XQuery functions to manipulate the sequence. So for instance, to detect any given \u003ccode\u003eASTUserClass\u003c/code\u003e in Apex that implements \u003ccode\u003eQueueable\u003c/code\u003e, it is now possible to write:\u003c/p\u003e\n\u003cpre lang=\"xml\"\u003e\u003ccode\u003e/UserClass[@InterfaceNames = 'Queueable']\n\u003c/code\u003e\u003c/pre\u003e\n\u003ch4\u003eUpdated PMD Designer\u003c/h4\u003e\n\u003cp\u003eThis PMD release ships a new version of the pmd-designer.\nFor the changes, see \u003ca href=\"https://github.com/pmd/pmd-designer/releases/tag/7.2.0\"\u003ePMD Designer Changelog (7.2.0)\u003c/a\u003e.\u003c/p\u003e\n\u003ch3\u003e🐛 Fixed Issues\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ecore\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/4467\"\u003e#4467\u003c/a\u003e: [core] Expose collections from getters as XPath sequence attributes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/4978\"\u003e#4978\u003c/a\u003e: [core] Referenced Rulesets do not emit details on validation errors\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/pull/4983\"\u003e#4983\u003c/a\u003e: [cpd] Fix CPD crashes about unicode escapes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5009\"\u003e#5009\u003c/a\u003e: [core] Kotest tests aren't picked up by surefire\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003ejava\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/4912\"\u003e#4912\u003c/a\u003e: [java] Unable to parse some Java9+ resource references\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/pull/4973\"\u003e#4973\u003c/a\u003e: [java] Stop parsing Java for CPD\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/4980\"\u003e#4980\u003c/a\u003e: [java] Bad intersection, unrelated class types java.lang.Object[] and java.lang.Number\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/pull/4988\"\u003e#4988\u003c/a\u003e: [java] Fix impl of ASTVariableId::isResourceDeclaration / VariableId/@\u003c!-- raw HTML omitted --\u003eResourceDeclaration\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/4990\"\u003e#4990\u003c/a\u003e: [java] Add an attribute @\u003c!-- raw HTML omitted --\u003ePackageQualifier to ASTClassType\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5006\"\u003e#5006\u003c/a\u003e: [java] Bad intersection, unrelated class types Child and Parent\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5029\"\u003e#5029\u003c/a\u003e: [java] PMD 7.x throws stack overflow in TypeOps$ProjectionVisitor while parsing a Java class\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/38bc997d4e7f4b29cee86829915f17f925211800\"\u003e\u003ccode\u003e38bc997\u003c/code\u003e\u003c/a\u003e [release] prepare release pmd_releases/7.2.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/27a14cc61e4659447125422756e545fe2a7b96f0\"\u003e\u003ccode\u003e27a14cc\u003c/code\u003e\u003c/a\u003e Prepare pmd release 7.2.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/e27b30e0b52229f66c5dae8aab0c2b95d877a135\"\u003e\u003ccode\u003ee27b30e\u003c/code\u003e\u003c/a\u003e Bump pmd-designer from 7.2.0-SNAPSHOT to 7.2.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/d37769e71c64b9c8ffdea521bade7a17b0da39a8\"\u003e\u003ccode\u003ed37769e\u003c/code\u003e\u003c/a\u003e Bump builds-tools from 25-SNAPSHOT to 25\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/2a0cba7b9155505a2a065339cf439dcd8e986692\"\u003e\u003ccode\u003e2a0cba7\u003c/code\u003e\u003c/a\u003e [java] Improve LocalVariableCouldBeFinal (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5003\"\u003e#5003\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/8a8402a0bd255c46375d452092643ef31bde7ba2\"\u003e\u003ccode\u003e8a8402a\u003c/code\u003e\u003c/a\u003e [doc] Update release notes (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/1619\"\u003e#1619\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/pmd/pmd/issues/3122\"\u003e#3122\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5003\"\u003e#5003\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/3890b561a13191af49a71d19aab81ba11e6b5129\"\u003e\u003ccode\u003e3890b56\u003c/code\u003e\u003c/a\u003e [java] Remove FPs in UnnecessaryBoxing (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5019\"\u003e#5019\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/224f5b83039b646c1dd5f29b9453346006425159\"\u003e\u003ccode\u003e224f5b8\u003c/code\u003e\u003c/a\u003e [doc] Update release notes (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/4903\"\u003e#4903\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/pmd/pmd/issues/4924\"\u003e#4924\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5019\"\u003e#5019\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/910c0985ca952c3ef68c372d06f67661c31d7a97\"\u003e\u003ccode\u003e910c098\u003c/code\u003e\u003c/a\u003e [core] Fix Kotest based tests (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5022\"\u003e#5022\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/37451931dc0b290c7de44691bea2b175f6d34612\"\u003e\u003ccode\u003e3745193\u003c/code\u003e\u003c/a\u003e [test] Add missing junit jupiter engine\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pmd/pmd/compare/pmd_releases/7.0.0...pmd_releases/7.2.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `net.sourceforge.pmd:pmd-jsp` from 7.0.0 to 7.2.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pmd/pmd/releases\"\u003enet.sourceforge.pmd:pmd-jsp's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ePMD 7.2.0 (31-May-2024)\u003c/h2\u003e\n\u003ch2\u003e31-May-2024 - 7.2.0\u003c/h2\u003e\n\u003cp\u003eThe PMD team is pleased to announce PMD 7.2.0.\u003c/p\u003e\n\u003cp\u003eThis is a minor release.\u003c/p\u003e\n\u003ch3\u003eTable Of Contents\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-and-noteworthy\"\u003e🚀 New and noteworthy\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#collections-exposed-as-xpath-attributes\"\u003eCollections exposed as XPath attributes\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#updated-pmd-designer\"\u003eUpdated PMD Designer\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#fixed-issues\"\u003e🐛 Fixed Issues\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#api-changes\"\u003e🚨 API Changes\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#deprecated-api\"\u003eDeprecated API\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#external-contributions\"\u003e✨ External Contributions\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#stats\"\u003e📈 Stats\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🚀 New and noteworthy\u003c/h3\u003e\n\u003ch4\u003eCollections exposed as XPath attributes\u003c/h4\u003e\n\u003cp\u003eUp to now, all AST node getters would be exposed to XPath, as long as the return type was a primitive (boxed or unboxed), String or Enum. That meant that collections, even of these basic types, were not exposed, so for instance accessing Apex's \u003ccode\u003eASTUserClass.getInterfaceNames()\u003c/code\u003e to list the interfaces implemented by a class was impossible from XPath, and would require writing a Java rule to check it.\u003c/p\u003e\n\u003cp\u003eSince this release, PMD will also expose any getter returning a collection of any supported type as a sequence through an XPath attribute. They would require to use apropriate XQuery functions to manipulate the sequence. So for instance, to detect any given \u003ccode\u003eASTUserClass\u003c/code\u003e in Apex that implements \u003ccode\u003eQueueable\u003c/code\u003e, it is now possible to write:\u003c/p\u003e\n\u003cpre lang=\"xml\"\u003e\u003ccode\u003e/UserClass[@InterfaceNames = 'Queueable']\n\u003c/code\u003e\u003c/pre\u003e\n\u003ch4\u003eUpdated PMD Designer\u003c/h4\u003e\n\u003cp\u003eThis PMD release ships a new version of the pmd-designer.\nFor the changes, see \u003ca href=\"https://github.com/pmd/pmd-designer/releases/tag/7.2.0\"\u003ePMD Designer Changelog (7.2.0)\u003c/a\u003e.\u003c/p\u003e\n\u003ch3\u003e🐛 Fixed Issues\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ecore\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/4467\"\u003e#4467\u003c/a\u003e: [core] Expose collections from getters as XPath sequence attributes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/4978\"\u003e#4978\u003c/a\u003e: [core] Referenced Rulesets do not emit details on validation errors\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/pull/4983\"\u003e#4983\u003c/a\u003e: [cpd] Fix CPD crashes about unicode escapes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5009\"\u003e#5009\u003c/a\u003e: [core] Kotest tests aren't picked up by surefire\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003ejava\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/4912\"\u003e#4912\u003c/a\u003e: [java] Unable to parse some Java9+ resource references\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/pull/4973\"\u003e#4973\u003c/a\u003e: [java] Stop parsing Java for CPD\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/4980\"\u003e#4980\u003c/a\u003e: [java] Bad intersection, unrelated class types java.lang.Object[] and java.lang.Number\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/pull/4988\"\u003e#4988\u003c/a\u003e: [java] Fix impl of ASTVariableId::isResourceDeclaration / VariableId/@\u003c!-- raw HTML omitted --\u003eResourceDeclaration\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/4990\"\u003e#4990\u003c/a\u003e: [java] Add an attribute @\u003c!-- raw HTML omitted --\u003ePackageQualifier to ASTClassType\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5006\"\u003e#5006\u003c/a\u003e: [java] Bad intersection, unrelated class types Child and Parent\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5029\"\u003e#5029\u003c/a\u003e: [java] PMD 7.x throws stack overflow in TypeOps$ProjectionVisitor while parsing a Java class\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/38bc997d4e7f4b29cee86829915f17f925211800\"\u003e\u003ccode\u003e38bc997\u003c/code\u003e\u003c/a\u003e [release] prepare release pmd_releases/7.2.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/27a14cc61e4659447125422756e545fe2a7b96f0\"\u003e\u003ccode\u003e27a14cc\u003c/code\u003e\u003c/a\u003e Prepare pmd release 7.2.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/e27b30e0b52229f66c5dae8aab0c2b95d877a135\"\u003e\u003ccode\u003ee27b30e\u003c/code\u003e\u003c/a\u003e Bump pmd-designer from 7.2.0-SNAPSHOT to 7.2.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/d37769e71c64b9c8ffdea521bade7a17b0da39a8\"\u003e\u003ccode\u003ed37769e\u003c/code\u003e\u003c/a\u003e Bump builds-tools from 25-SNAPSHOT to 25\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/2a0cba7b9155505a2a065339cf439dcd8e986692\"\u003e\u003ccode\u003e2a0cba7\u003c/code\u003e\u003c/a\u003e [java] Improve LocalVariableCouldBeFinal (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5003\"\u003e#5003\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/8a8402a0bd255c46375d452092643ef31bde7ba2\"\u003e\u003ccode\u003e8a8402a\u003c/code\u003e\u003c/a\u003e [doc] Update release notes (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/1619\"\u003e#1619\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/pmd/pmd/issues/3122\"\u003e#3122\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5003\"\u003e#5003\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/3890b561a13191af49a71d19aab81ba11e6b5129\"\u003e\u003ccode\u003e3890b56\u003c/code\u003e\u003c/a\u003e [java] Remove FPs in UnnecessaryBoxing (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5019\"\u003e#5019\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/224f5b83039b646c1dd5f29b9453346006425159\"\u003e\u003ccode\u003e224f5b8\u003c/code\u003e\u003c/a\u003e [doc] Update release notes (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/4903\"\u003e#4903\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/pmd/pmd/issues/4924\"\u003e#4924\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5019\"\u003e#5019\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/910c0985ca952c3ef68c372d06f67661c31d7a97\"\u003e\u003ccode\u003e910c098\u003c/code\u003e\u003c/a\u003e [core] Fix Kotest based tests (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5022\"\u003e#5022\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/37451931dc0b290c7de44691bea2b175f6d34612\"\u003e\u003ccode\u003e3745193\u003c/code\u003e\u003c/a\u003e [test] Add missing junit jupiter engine\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pmd/pmd/compare/pmd_releases/7.0.0...pmd_releases/7.2.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\nYou can trigger a rebase of this PR by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot merge` will merge this PR after your CI passes on it\n- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it\n- `@dependabot cancel merge` will cancel a previously requested merge and block automerging\n- `@dependabot reopen` will reopen this PR if it is closed\n- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)\n\n\n\u003c/details\u003e\n\n\u003e **Note**\n\u003e Automatic rebases have been disabled on this pull request as it has been open for over 30 days.\n","html_url":"https://github.com/ApplauseOSS/auto-sdk-java/pull/44","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/ApplauseOSS%2Fauto-sdk-java/issues/44","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/44/packages"},{"uuid":"2559565036","node_id":"PR_kwDOBsaZJs6Yj9zs","number":213,"state":"open","title":"Bump pmdVersion from 7.12.0 to 7.14.0","user":"dependabot[bot]","labels":["enhancement","dependencies","java"],"assignees":["slawekjaranowski"],"locked":false,"comments_count":0,"pull_request":true,"closed_at":null,"author_association":"CONTRIBUTOR","state_reason":null,"created_at":"2025-06-02T07:19:24.000Z","updated_at":"2025-06-05T04:54:40.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","packages":[{"name":"pmdVersion","old_version":"7.12.0","new_version":"7.14.0","repository_url":null}],"path":null,"ecosystem":"maven"},"body":"Bumps `pmdVersion` from 7.12.0 to 7.14.0.\nUpdates `net.sourceforge.pmd:pmd-core` from 7.12.0 to 7.14.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pmd/pmd/releases\"\u003enet.sourceforge.pmd:pmd-core's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ePMD 7.14.0 (30-May-2025)\u003c/h2\u003e\n\u003ch2\u003e30-May-2025 - 7.14.0\u003c/h2\u003e\n\u003cp\u003eThe PMD team is pleased to announce PMD 7.14.0.\u003c/p\u003e\n\u003cp\u003eThis is a minor release.\u003c/p\u003e\n\u003ch3\u003eTable Of Contents\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-and-noteworthy\"\u003e🚀 New and noteworthy\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#pmd-cli-now-uses-threaded-execution-by-default\"\u003ePMD CLI now uses threaded execution by default\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"#new-rule-unnecessarywarningsuppression-https://github.com/pmd/pmd/blob/HEAD/experimental\"\u003eNew Rule UnnecessaryWarningSuppression (https://github.com/pmd/pmd/blob/HEAD/experimental)\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#migrating-to-central-publisher-portal\"\u003eMigrating to Central Publisher Portal\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#more-cli-parameters-shared-between-pmd-and-cpd\"\u003eMore CLI parameters shared between PMD and CPD\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#fixed-issues\"\u003e🐛 Fixed Issues\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#api-changes\"\u003e🚨 API Changes\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#cli\"\u003eCLI\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#deprecations\"\u003eDeprecations\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#experimental\"\u003eExperimental\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#merged-pull-requests\"\u003e✨ Merged pull requests\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#dependency-updates\"\u003e📦 Dependency updates\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#stats\"\u003e📈 Stats\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🚀 New and noteworthy\u003c/h3\u003e\n\u003ch4\u003ePMD CLI now uses threaded execution by default\u003c/h4\u003e\n\u003cp\u003eIn the PMD CLI, the \u003ccode\u003e--threads\u003c/code\u003e (\u003ccode\u003e-t\u003c/code\u003e) option can now accept a thread\ncount given relative to the number of cores of the machine. For instance,\nit is now possible to write \u003ccode\u003e-t 1C\u003c/code\u003e to spawn one thread per core, or \u003ccode\u003e-t 0.5C\u003c/code\u003e\nto spawn one thread for every other core.\u003c/p\u003e\n\u003cp\u003eThe thread count option now defaults to \u003ccode\u003e1C\u003c/code\u003e, meaning parallel execution\nis used by default. You can disable this by using \u003ccode\u003e-t 1\u003c/code\u003e.\u003c/p\u003e\n\u003ch4\u003eNew Rule UnnecessaryWarningSuppression (experimental)\u003c/h4\u003e\n\u003cp\u003eThis new Java rule \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.14.0/pmd_rules_java_bestpractices.html#unnecessarywarningsuppression\"\u003e\u003ccode\u003eUnnecessaryWarningSuppression\u003c/code\u003e\u003c/a\u003e reports unused suppression\nannotations and comments. Violations of this rule cannot be suppressed.\u003c/p\u003e\n\u003cp\u003eHow to use it? Just include it in your ruleset:\u003c/p\u003e\n\u003cpre lang=\"xml\"\u003e\u003ccode\u003e\u0026lt;rule ref=\u0026quot;category/java/bestpractices.xml/UnnecessaryWarningSuppression\u0026quot; /\u0026gt;\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eNote: This rule is currently experimental. It is available for now only for Java.\nThe rule for now only reports annotations specific to PMD, like \u003ccode\u003e@SuppressWarnings(\u0026quot;PMD\u0026quot;)\u003c/code\u003e.\nIn the future we might be able to check for other common ones like \u003ccode\u003e@SuppressWarnings(\u0026quot;unchecked\u0026quot;)\u003c/code\u003e or \u003ccode\u003e\u0026quot;fallthrough\u0026quot;\u003c/code\u003e.\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/876d4ab8ac5fb0940cd545b9c7a41866029cd519\"\u003e\u003ccode\u003e876d4ab\u003c/code\u003e\u003c/a\u003e [ci] Use correct credentials for central deployment\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/3a6e7a464dc14fa3315ced668680f442160db18b\"\u003e\u003ccode\u003e3a6e7a4\u003c/code\u003e\u003c/a\u003e [release] prepare release pmd_releases/7.14.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/0cdb9c8795f227abc8d63cfa64617453c0a4c9f4\"\u003e\u003ccode\u003e0cdb9c8\u003c/code\u003e\u003c/a\u003e Prepare pmd release 7.14.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/1c1ef837b7ee523e4cbd8a21d939ba72f3e0882d\"\u003e\u003ccode\u003e1c1ef83\u003c/code\u003e\u003c/a\u003e Add \u003ca href=\"https://github.com/Ledmington\"\u003e\u003ccode\u003e@​Ledmington\u003c/code\u003e\u003c/a\u003e as a contributor\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/49a321dd5472430d4ad6e9cf9568748e8730063a\"\u003e\u003ccode\u003e49a321d\u003c/code\u003e\u003c/a\u003e Add \u003ca href=\"https://github.com/Daniel-Ventura-25\"\u003e\u003ccode\u003e@​Daniel-Ventura-25\u003c/code\u003e\u003c/a\u003e as a contributor\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/3bd234c2edabf2d1bfcc51c185bd229f32661e4d\"\u003e\u003ccode\u003e3bd234c\u003c/code\u003e\u003c/a\u003e [core] Add rule to report unnecessary suppression comments/annotations (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5609\"\u003e#5609\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/4f9df6f48cdc9f643ccb40433d6be1f5eaa91d1c\"\u003e\u003ccode\u003e4f9df6f\u003c/code\u003e\u003c/a\u003e [cli] Make CLI default to multithreaded (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5741\"\u003e#5741\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/1924d235964cc987f32b9b8fc108eda7a36e157f\"\u003e\u003ccode\u003e1924d23\u003c/code\u003e\u003c/a\u003e Fix unit tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/f479b7de272453108e7b7adef045605619767bcc\"\u003e\u003ccode\u003ef479b7d\u003c/code\u003e\u003c/a\u003e Apply suggestions from review\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/c69c881bc5fb3be73c5ff331b3d804c348b191e1\"\u003e\u003ccode\u003ec69c881\u003c/code\u003e\u003c/a\u003e Fix unit tests\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pmd/pmd/compare/pmd_releases/7.12.0...pmd_releases/7.14.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `net.sourceforge.pmd:pmd-java` from 7.12.0 to 7.14.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pmd/pmd/releases\"\u003enet.sourceforge.pmd:pmd-java's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ePMD 7.14.0 (30-May-2025)\u003c/h2\u003e\n\u003ch2\u003e30-May-2025 - 7.14.0\u003c/h2\u003e\n\u003cp\u003eThe PMD team is pleased to announce PMD 7.14.0.\u003c/p\u003e\n\u003cp\u003eThis is a minor release.\u003c/p\u003e\n\u003ch3\u003eTable Of Contents\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-and-noteworthy\"\u003e🚀 New and noteworthy\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#pmd-cli-now-uses-threaded-execution-by-default\"\u003ePMD CLI now uses threaded execution by default\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"#new-rule-unnecessarywarningsuppression-https://github.com/pmd/pmd/blob/HEAD/experimental\"\u003eNew Rule UnnecessaryWarningSuppression (https://github.com/pmd/pmd/blob/HEAD/experimental)\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#migrating-to-central-publisher-portal\"\u003eMigrating to Central Publisher Portal\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#more-cli-parameters-shared-between-pmd-and-cpd\"\u003eMore CLI parameters shared between PMD and CPD\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#fixed-issues\"\u003e🐛 Fixed Issues\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#api-changes\"\u003e🚨 API Changes\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#cli\"\u003eCLI\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#deprecations\"\u003eDeprecations\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#experimental\"\u003eExperimental\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#merged-pull-requests\"\u003e✨ Merged pull requests\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#dependency-updates\"\u003e📦 Dependency updates\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#stats\"\u003e📈 Stats\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🚀 New and noteworthy\u003c/h3\u003e\n\u003ch4\u003ePMD CLI now uses threaded execution by default\u003c/h4\u003e\n\u003cp\u003eIn the PMD CLI, the \u003ccode\u003e--threads\u003c/code\u003e (\u003ccode\u003e-t\u003c/code\u003e) option can now accept a thread\ncount given relative to the number of cores of the machine. For instance,\nit is now possible to write \u003ccode\u003e-t 1C\u003c/code\u003e to spawn one thread per core, or \u003ccode\u003e-t 0.5C\u003c/code\u003e\nto spawn one thread for every other core.\u003c/p\u003e\n\u003cp\u003eThe thread count option now defaults to \u003ccode\u003e1C\u003c/code\u003e, meaning parallel execution\nis used by default. You can disable this by using \u003ccode\u003e-t 1\u003c/code\u003e.\u003c/p\u003e\n\u003ch4\u003eNew Rule UnnecessaryWarningSuppression (experimental)\u003c/h4\u003e\n\u003cp\u003eThis new Java rule \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.14.0/pmd_rules_java_bestpractices.html#unnecessarywarningsuppression\"\u003e\u003ccode\u003eUnnecessaryWarningSuppression\u003c/code\u003e\u003c/a\u003e reports unused suppression\nannotations and comments. Violations of this rule cannot be suppressed.\u003c/p\u003e\n\u003cp\u003eHow to use it? Just include it in your ruleset:\u003c/p\u003e\n\u003cpre lang=\"xml\"\u003e\u003ccode\u003e\u0026lt;rule ref=\u0026quot;category/java/bestpractices.xml/UnnecessaryWarningSuppression\u0026quot; /\u0026gt;\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eNote: This rule is currently experimental. It is available for now only for Java.\nThe rule for now only reports annotations specific to PMD, like \u003ccode\u003e@SuppressWarnings(\u0026quot;PMD\u0026quot;)\u003c/code\u003e.\nIn the future we might be able to check for other common ones like \u003ccode\u003e@SuppressWarnings(\u0026quot;unchecked\u0026quot;)\u003c/code\u003e or \u003ccode\u003e\u0026quot;fallthrough\u0026quot;\u003c/code\u003e.\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/876d4ab8ac5fb0940cd545b9c7a41866029cd519\"\u003e\u003ccode\u003e876d4ab\u003c/code\u003e\u003c/a\u003e [ci] Use correct credentials for central deployment\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/3a6e7a464dc14fa3315ced668680f442160db18b\"\u003e\u003ccode\u003e3a6e7a4\u003c/code\u003e\u003c/a\u003e [release] prepare release pmd_releases/7.14.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/0cdb9c8795f227abc8d63cfa64617453c0a4c9f4\"\u003e\u003ccode\u003e0cdb9c8\u003c/code\u003e\u003c/a\u003e Prepare pmd release 7.14.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/1c1ef837b7ee523e4cbd8a21d939ba72f3e0882d\"\u003e\u003ccode\u003e1c1ef83\u003c/code\u003e\u003c/a\u003e Add \u003ca href=\"https://github.com/Ledmington\"\u003e\u003ccode\u003e@​Ledmington\u003c/code\u003e\u003c/a\u003e as a contributor\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/49a321dd5472430d4ad6e9cf9568748e8730063a\"\u003e\u003ccode\u003e49a321d\u003c/code\u003e\u003c/a\u003e Add \u003ca href=\"https://github.com/Daniel-Ventura-25\"\u003e\u003ccode\u003e@​Daniel-Ventura-25\u003c/code\u003e\u003c/a\u003e as a contributor\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/3bd234c2edabf2d1bfcc51c185bd229f32661e4d\"\u003e\u003ccode\u003e3bd234c\u003c/code\u003e\u003c/a\u003e [core] Add rule to report unnecessary suppression comments/annotations (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5609\"\u003e#5609\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/4f9df6f48cdc9f643ccb40433d6be1f5eaa91d1c\"\u003e\u003ccode\u003e4f9df6f\u003c/code\u003e\u003c/a\u003e [cli] Make CLI default to multithreaded (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5741\"\u003e#5741\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/1924d235964cc987f32b9b8fc108eda7a36e157f\"\u003e\u003ccode\u003e1924d23\u003c/code\u003e\u003c/a\u003e Fix unit tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/f479b7de272453108e7b7adef045605619767bcc\"\u003e\u003ccode\u003ef479b7d\u003c/code\u003e\u003c/a\u003e Apply suggestions from review\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/c69c881bc5fb3be73c5ff331b3d804c348b191e1\"\u003e\u003ccode\u003ec69c881\u003c/code\u003e\u003c/a\u003e Fix unit tests\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pmd/pmd/compare/pmd_releases/7.12.0...pmd_releases/7.14.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `net.sourceforge.pmd:pmd-javascript` from 7.12.0 to 7.14.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pmd/pmd/releases\"\u003enet.sourceforge.pmd:pmd-javascript's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ePMD 7.14.0 (30-May-2025)\u003c/h2\u003e\n\u003ch2\u003e30-May-2025 - 7.14.0\u003c/h2\u003e\n\u003cp\u003eThe PMD team is pleased to announce PMD 7.14.0.\u003c/p\u003e\n\u003cp\u003eThis is a minor release.\u003c/p\u003e\n\u003ch3\u003eTable Of Contents\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-and-noteworthy\"\u003e🚀 New and noteworthy\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#pmd-cli-now-uses-threaded-execution-by-default\"\u003ePMD CLI now uses threaded execution by default\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"#new-rule-unnecessarywarningsuppression-https://github.com/pmd/pmd/blob/HEAD/experimental\"\u003eNew Rule UnnecessaryWarningSuppression (https://github.com/pmd/pmd/blob/HEAD/experimental)\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#migrating-to-central-publisher-portal\"\u003eMigrating to Central Publisher Portal\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#more-cli-parameters-shared-between-pmd-and-cpd\"\u003eMore CLI parameters shared between PMD and CPD\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#fixed-issues\"\u003e🐛 Fixed Issues\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#api-changes\"\u003e🚨 API Changes\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#cli\"\u003eCLI\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#deprecations\"\u003eDeprecations\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#experimental\"\u003eExperimental\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#merged-pull-requests\"\u003e✨ Merged pull requests\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#dependency-updates\"\u003e📦 Dependency updates\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#stats\"\u003e📈 Stats\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🚀 New and noteworthy\u003c/h3\u003e\n\u003ch4\u003ePMD CLI now uses threaded execution by default\u003c/h4\u003e\n\u003cp\u003eIn the PMD CLI, the \u003ccode\u003e--threads\u003c/code\u003e (\u003ccode\u003e-t\u003c/code\u003e) option can now accept a thread\ncount given relative to the number of cores of the machine. For instance,\nit is now possible to write \u003ccode\u003e-t 1C\u003c/code\u003e to spawn one thread per core, or \u003ccode\u003e-t 0.5C\u003c/code\u003e\nto spawn one thread for every other core.\u003c/p\u003e\n\u003cp\u003eThe thread count option now defaults to \u003ccode\u003e1C\u003c/code\u003e, meaning parallel execution\nis used by default. You can disable this by using \u003ccode\u003e-t 1\u003c/code\u003e.\u003c/p\u003e\n\u003ch4\u003eNew Rule UnnecessaryWarningSuppression (experimental)\u003c/h4\u003e\n\u003cp\u003eThis new Java rule \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.14.0/pmd_rules_java_bestpractices.html#unnecessarywarningsuppression\"\u003e\u003ccode\u003eUnnecessaryWarningSuppression\u003c/code\u003e\u003c/a\u003e reports unused suppression\nannotations and comments. Violations of this rule cannot be suppressed.\u003c/p\u003e\n\u003cp\u003eHow to use it? Just include it in your ruleset:\u003c/p\u003e\n\u003cpre lang=\"xml\"\u003e\u003ccode\u003e\u0026lt;rule ref=\u0026quot;category/java/bestpractices.xml/UnnecessaryWarningSuppression\u0026quot; /\u0026gt;\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eNote: This rule is currently experimental. It is available for now only for Java.\nThe rule for now only reports annotations specific to PMD, like \u003ccode\u003e@SuppressWarnings(\u0026quot;PMD\u0026quot;)\u003c/code\u003e.\nIn the future we might be able to check for other common ones like \u003ccode\u003e@SuppressWarnings(\u0026quot;unchecked\u0026quot;)\u003c/code\u003e or \u003ccode\u003e\u0026quot;fallthrough\u0026quot;\u003c/code\u003e.\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/876d4ab8ac5fb0940cd545b9c7a41866029cd519\"\u003e\u003ccode\u003e876d4ab\u003c/code\u003e\u003c/a\u003e [ci] Use correct credentials for central deployment\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/3a6e7a464dc14fa3315ced668680f442160db18b\"\u003e\u003ccode\u003e3a6e7a4\u003c/code\u003e\u003c/a\u003e [release] prepare release pmd_releases/7.14.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/0cdb9c8795f227abc8d63cfa64617453c0a4c9f4\"\u003e\u003ccode\u003e0cdb9c8\u003c/code\u003e\u003c/a\u003e Prepare pmd release 7.14.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/1c1ef837b7ee523e4cbd8a21d939ba72f3e0882d\"\u003e\u003ccode\u003e1c1ef83\u003c/code\u003e\u003c/a\u003e Add \u003ca href=\"https://github.com/Ledmington\"\u003e\u003ccode\u003e@​Ledmington\u003c/code\u003e\u003c/a\u003e as a contributor\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/49a321dd5472430d4ad6e9cf9568748e8730063a\"\u003e\u003ccode\u003e49a321d\u003c/code\u003e\u003c/a\u003e Add \u003ca href=\"https://github.com/Daniel-Ventura-25\"\u003e\u003ccode\u003e@​Daniel-Ventura-25\u003c/code\u003e\u003c/a\u003e as a contributor\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/3bd234c2edabf2d1bfcc51c185bd229f32661e4d\"\u003e\u003ccode\u003e3bd234c\u003c/code\u003e\u003c/a\u003e [core] Add rule to report unnecessary suppression comments/annotations (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5609\"\u003e#5609\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/4f9df6f48cdc9f643ccb40433d6be1f5eaa91d1c\"\u003e\u003ccode\u003e4f9df6f\u003c/code\u003e\u003c/a\u003e [cli] Make CLI default to multithreaded (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5741\"\u003e#5741\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/1924d235964cc987f32b9b8fc108eda7a36e157f\"\u003e\u003ccode\u003e1924d23\u003c/code\u003e\u003c/a\u003e Fix unit tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/f479b7de272453108e7b7adef045605619767bcc\"\u003e\u003ccode\u003ef479b7d\u003c/code\u003e\u003c/a\u003e Apply suggestions from review\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/c69c881bc5fb3be73c5ff331b3d804c348b191e1\"\u003e\u003ccode\u003ec69c881\u003c/code\u003e\u003c/a\u003e Fix unit tests\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pmd/pmd/compare/pmd_releases/7.12.0...pmd_releases/7.14.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `net.sourceforge.pmd:pmd-jsp` from 7.12.0 to 7.14.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pmd/pmd/releases\"\u003enet.sourceforge.pmd:pmd-jsp's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ePMD 7.14.0 (30-May-2025)\u003c/h2\u003e\n\u003ch2\u003e30-May-2025 - 7.14.0\u003c/h2\u003e\n\u003cp\u003eThe PMD team is pleased to announce PMD 7.14.0.\u003c/p\u003e\n\u003cp\u003eThis is a minor release.\u003c/p\u003e\n\u003ch3\u003eTable Of Contents\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-and-noteworthy\"\u003e🚀 New and noteworthy\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#pmd-cli-now-uses-threaded-execution-by-default\"\u003ePMD CLI now uses threaded execution by default\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"#new-rule-unnecessarywarningsuppression-https://github.com/pmd/pmd/blob/HEAD/experimental\"\u003eNew Rule UnnecessaryWarningSuppression (https://github.com/pmd/pmd/blob/HEAD/experimental)\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#migrating-to-central-publisher-portal\"\u003eMigrating to Central Publisher Portal\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#more-cli-parameters-shared-between-pmd-and-cpd\"\u003eMore CLI parameters shared between PMD and CPD\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#fixed-issues\"\u003e🐛 Fixed Issues\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#api-changes\"\u003e🚨 API Changes\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#cli\"\u003eCLI\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#deprecations\"\u003eDeprecations\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#experimental\"\u003eExperimental\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#merged-pull-requests\"\u003e✨ Merged pull requests\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#dependency-updates\"\u003e📦 Dependency updates\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#stats\"\u003e📈 Stats\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🚀 New and noteworthy\u003c/h3\u003e\n\u003ch4\u003ePMD CLI now uses threaded execution by default\u003c/h4\u003e\n\u003cp\u003eIn the PMD CLI, the \u003ccode\u003e--threads\u003c/code\u003e (\u003ccode\u003e-t\u003c/code\u003e) option can now accept a thread\ncount given relative to the number of cores of the machine. For instance,\nit is now possible to write \u003ccode\u003e-t 1C\u003c/code\u003e to spawn one thread per core, or \u003ccode\u003e-t 0.5C\u003c/code\u003e\nto spawn one thread for every other core.\u003c/p\u003e\n\u003cp\u003eThe thread count option now defaults to \u003ccode\u003e1C\u003c/code\u003e, meaning parallel execution\nis used by default. You can disable this by using \u003ccode\u003e-t 1\u003c/code\u003e.\u003c/p\u003e\n\u003ch4\u003eNew Rule UnnecessaryWarningSuppression (experimental)\u003c/h4\u003e\n\u003cp\u003eThis new Java rule \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.14.0/pmd_rules_java_bestpractices.html#unnecessarywarningsuppression\"\u003e\u003ccode\u003eUnnecessaryWarningSuppression\u003c/code\u003e\u003c/a\u003e reports unused suppression\nannotations and comments. Violations of this rule cannot be suppressed.\u003c/p\u003e\n\u003cp\u003eHow to use it? Just include it in your ruleset:\u003c/p\u003e\n\u003cpre lang=\"xml\"\u003e\u003ccode\u003e\u0026lt;rule ref=\u0026quot;category/java/bestpractices.xml/UnnecessaryWarningSuppression\u0026quot; /\u0026gt;\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eNote: This rule is currently experimental. It is available for now only for Java.\nThe rule for now only reports annotations specific to PMD, like \u003ccode\u003e@SuppressWarnings(\u0026quot;PMD\u0026quot;)\u003c/code\u003e.\nIn the future we might be able to check for other common ones like \u003ccode\u003e@SuppressWarnings(\u0026quot;unchecked\u0026quot;)\u003c/code\u003e or \u003ccode\u003e\u0026quot;fallthrough\u0026quot;\u003c/code\u003e.\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/876d4ab8ac5fb0940cd545b9c7a41866029cd519\"\u003e\u003ccode\u003e876d4ab\u003c/code\u003e\u003c/a\u003e [ci] Use correct credentials for central deployment\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/3a6e7a464dc14fa3315ced668680f442160db18b\"\u003e\u003ccode\u003e3a6e7a4\u003c/code\u003e\u003c/a\u003e [release] prepare release pmd_releases/7.14.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/0cdb9c8795f227abc8d63cfa64617453c0a4c9f4\"\u003e\u003ccode\u003e0cdb9c8\u003c/code\u003e\u003c/a\u003e Prepare pmd release 7.14.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/1c1ef837b7ee523e4cbd8a21d939ba72f3e0882d\"\u003e\u003ccode\u003e1c1ef83\u003c/code\u003e\u003c/a\u003e Add \u003ca href=\"https://github.com/Ledmington\"\u003e\u003ccode\u003e@​Ledmington\u003c/code\u003e\u003c/a\u003e as a contributor\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/49a321dd5472430d4ad6e9cf9568748e8730063a\"\u003e\u003ccode\u003e49a321d\u003c/code\u003e\u003c/a\u003e Add \u003ca href=\"https://github.com/Daniel-Ventura-25\"\u003e\u003ccode\u003e@​Daniel-Ventura-25\u003c/code\u003e\u003c/a\u003e as a contributor\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/3bd234c2edabf2d1bfcc51c185bd229f32661e4d\"\u003e\u003ccode\u003e3bd234c\u003c/code\u003e\u003c/a\u003e [core] Add rule to report unnecessary suppression comments/annotations (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5609\"\u003e#5609\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/4f9df6f48cdc9f643ccb40433d6be1f5eaa91d1c\"\u003e\u003ccode\u003e4f9df6f\u003c/code\u003e\u003c/a\u003e [cli] Make CLI default to multithreaded (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5741\"\u003e#5741\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/1924d235964cc987f32b9b8fc108eda7a36e157f\"\u003e\u003ccode\u003e1924d23\u003c/code\u003e\u003c/a\u003e Fix unit tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/f479b7de272453108e7b7adef045605619767bcc\"\u003e\u003ccode\u003ef479b7d\u003c/code\u003e\u003c/a\u003e Apply suggestions from review\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/c69c881bc5fb3be73c5ff331b3d804c348b191e1\"\u003e\u003ccode\u003ec69c881\u003c/code\u003e\u003c/a\u003e Fix unit tests\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pmd/pmd/compare/pmd_releases/7.12.0...pmd_releases/7.14.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot merge` will merge this PR after your CI passes on it\n- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it\n- `@dependabot cancel merge` will cancel a previously requested merge and block automerging\n- `@dependabot reopen` will reopen this PR if it is closed\n- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)\n\n\n\u003c/details\u003e","html_url":"https://github.com/apache/maven-pmd-plugin/pull/213","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/apache%2Fmaven-pmd-plugin/issues/213","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/213/packages"},{"uuid":"3108377889","node_id":"PR_kwDOG8B9086YiFFl","number":1363,"state":"open","title":"Bump pmdVersion from 7.13.0 to 7.14.0","user":"dependabot[bot]","labels":["dependencies","java"],"assignees":["EvaristeGalois11"],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":"CONTRIBUTOR","state_reason":null,"created_at":"2025-06-02T03:16:28.000Z","updated_at":"2025-06-02T10:16:52.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","packages":[{"name":"pmdVersion","old_version":"7.13.0","new_version":"7.14.0","repository_url":null}],"path":null,"ecosystem":"maven"},"body":"Bumps `pmdVersion` from 7.13.0 to 7.14.0.\nUpdates `net.sourceforge.pmd:pmd-core` from 7.13.0 to 7.14.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pmd/pmd/releases\"\u003enet.sourceforge.pmd:pmd-core's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ePMD 7.14.0 (30-May-2025)\u003c/h2\u003e\n\u003ch2\u003e30-May-2025 - 7.14.0\u003c/h2\u003e\n\u003cp\u003eThe PMD team is pleased to announce PMD 7.14.0.\u003c/p\u003e\n\u003cp\u003eThis is a minor release.\u003c/p\u003e\n\u003ch3\u003eTable Of Contents\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-and-noteworthy\"\u003e🚀 New and noteworthy\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#pmd-cli-now-uses-threaded-execution-by-default\"\u003ePMD CLI now uses threaded execution by default\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"#new-rule-unnecessarywarningsuppression-https://github.com/pmd/pmd/blob/HEAD/experimental\"\u003eNew Rule UnnecessaryWarningSuppression (https://github.com/pmd/pmd/blob/HEAD/experimental)\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#migrating-to-central-publisher-portal\"\u003eMigrating to Central Publisher Portal\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#more-cli-parameters-shared-between-pmd-and-cpd\"\u003eMore CLI parameters shared between PMD and CPD\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#fixed-issues\"\u003e🐛 Fixed Issues\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#api-changes\"\u003e🚨 API Changes\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#cli\"\u003eCLI\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#deprecations\"\u003eDeprecations\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#experimental\"\u003eExperimental\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#merged-pull-requests\"\u003e✨ Merged pull requests\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#dependency-updates\"\u003e📦 Dependency updates\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#stats\"\u003e📈 Stats\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🚀 New and noteworthy\u003c/h3\u003e\n\u003ch4\u003ePMD CLI now uses threaded execution by default\u003c/h4\u003e\n\u003cp\u003eIn the PMD CLI, the \u003ccode\u003e--threads\u003c/code\u003e (\u003ccode\u003e-t\u003c/code\u003e) option can now accept a thread\ncount given relative to the number of cores of the machine. For instance,\nit is now possible to write \u003ccode\u003e-t 1C\u003c/code\u003e to spawn one thread per core, or \u003ccode\u003e-t 0.5C\u003c/code\u003e\nto spawn one thread for every other core.\u003c/p\u003e\n\u003cp\u003eThe thread count option now defaults to \u003ccode\u003e1C\u003c/code\u003e, meaning parallel execution\nis used by default. You can disable this by using \u003ccode\u003e-t 1\u003c/code\u003e.\u003c/p\u003e\n\u003ch4\u003eNew Rule UnnecessaryWarningSuppression (experimental)\u003c/h4\u003e\n\u003cp\u003eThis new Java rule \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.14.0/pmd_rules_java_bestpractices.html#unnecessarywarningsuppression\"\u003e\u003ccode\u003eUnnecessaryWarningSuppression\u003c/code\u003e\u003c/a\u003e reports unused suppression\nannotations and comments. Violations of this rule cannot be suppressed.\u003c/p\u003e\n\u003cp\u003eHow to use it? Just include it in your ruleset:\u003c/p\u003e\n\u003cpre lang=\"xml\"\u003e\u003ccode\u003e\u0026lt;rule ref=\u0026quot;category/java/bestpractices.xml/UnnecessaryWarningSuppression\u0026quot; /\u0026gt;\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eNote: This rule is currently experimental. It is available for now only for Java.\nThe rule for now only reports annotations specific to PMD, like \u003ccode\u003e@SuppressWarnings(\u0026quot;PMD\u0026quot;)\u003c/code\u003e.\nIn the future we might be able to check for other common ones like \u003ccode\u003e@SuppressWarnings(\u0026quot;unchecked\u0026quot;)\u003c/code\u003e or \u003ccode\u003e\u0026quot;fallthrough\u0026quot;\u003c/code\u003e.\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/876d4ab8ac5fb0940cd545b9c7a41866029cd519\"\u003e\u003ccode\u003e876d4ab\u003c/code\u003e\u003c/a\u003e [ci] Use correct credentials for central deployment\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/3a6e7a464dc14fa3315ced668680f442160db18b\"\u003e\u003ccode\u003e3a6e7a4\u003c/code\u003e\u003c/a\u003e [release] prepare release pmd_releases/7.14.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/0cdb9c8795f227abc8d63cfa64617453c0a4c9f4\"\u003e\u003ccode\u003e0cdb9c8\u003c/code\u003e\u003c/a\u003e Prepare pmd release 7.14.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/1c1ef837b7ee523e4cbd8a21d939ba72f3e0882d\"\u003e\u003ccode\u003e1c1ef83\u003c/code\u003e\u003c/a\u003e Add \u003ca href=\"https://github.com/Ledmington\"\u003e\u003ccode\u003e@​Ledmington\u003c/code\u003e\u003c/a\u003e as a contributor\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/49a321dd5472430d4ad6e9cf9568748e8730063a\"\u003e\u003ccode\u003e49a321d\u003c/code\u003e\u003c/a\u003e Add \u003ca href=\"https://github.com/Daniel-Ventura-25\"\u003e\u003ccode\u003e@​Daniel-Ventura-25\u003c/code\u003e\u003c/a\u003e as a contributor\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/3bd234c2edabf2d1bfcc51c185bd229f32661e4d\"\u003e\u003ccode\u003e3bd234c\u003c/code\u003e\u003c/a\u003e [core] Add rule to report unnecessary suppression comments/annotations (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5609\"\u003e#5609\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/4f9df6f48cdc9f643ccb40433d6be1f5eaa91d1c\"\u003e\u003ccode\u003e4f9df6f\u003c/code\u003e\u003c/a\u003e [cli] Make CLI default to multithreaded (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5741\"\u003e#5741\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/1924d235964cc987f32b9b8fc108eda7a36e157f\"\u003e\u003ccode\u003e1924d23\u003c/code\u003e\u003c/a\u003e Fix unit tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/f479b7de272453108e7b7adef045605619767bcc\"\u003e\u003ccode\u003ef479b7d\u003c/code\u003e\u003c/a\u003e Apply suggestions from review\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/c69c881bc5fb3be73c5ff331b3d804c348b191e1\"\u003e\u003ccode\u003ec69c881\u003c/code\u003e\u003c/a\u003e Fix unit tests\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pmd/pmd/compare/pmd_releases/7.13.0...pmd_releases/7.14.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `net.sourceforge.pmd:pmd-java` from 7.13.0 to 7.14.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pmd/pmd/releases\"\u003enet.sourceforge.pmd:pmd-java's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ePMD 7.14.0 (30-May-2025)\u003c/h2\u003e\n\u003ch2\u003e30-May-2025 - 7.14.0\u003c/h2\u003e\n\u003cp\u003eThe PMD team is pleased to announce PMD 7.14.0.\u003c/p\u003e\n\u003cp\u003eThis is a minor release.\u003c/p\u003e\n\u003ch3\u003eTable Of Contents\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-and-noteworthy\"\u003e🚀 New and noteworthy\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#pmd-cli-now-uses-threaded-execution-by-default\"\u003ePMD CLI now uses threaded execution by default\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"#new-rule-unnecessarywarningsuppression-https://github.com/pmd/pmd/blob/HEAD/experimental\"\u003eNew Rule UnnecessaryWarningSuppression (https://github.com/pmd/pmd/blob/HEAD/experimental)\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#migrating-to-central-publisher-portal\"\u003eMigrating to Central Publisher Portal\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#more-cli-parameters-shared-between-pmd-and-cpd\"\u003eMore CLI parameters shared between PMD and CPD\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#fixed-issues\"\u003e🐛 Fixed Issues\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#api-changes\"\u003e🚨 API Changes\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#cli\"\u003eCLI\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#deprecations\"\u003eDeprecations\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#experimental\"\u003eExperimental\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#merged-pull-requests\"\u003e✨ Merged pull requests\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#dependency-updates\"\u003e📦 Dependency updates\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#stats\"\u003e📈 Stats\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🚀 New and noteworthy\u003c/h3\u003e\n\u003ch4\u003ePMD CLI now uses threaded execution by default\u003c/h4\u003e\n\u003cp\u003eIn the PMD CLI, the \u003ccode\u003e--threads\u003c/code\u003e (\u003ccode\u003e-t\u003c/code\u003e) option can now accept a thread\ncount given relative to the number of cores of the machine. For instance,\nit is now possible to write \u003ccode\u003e-t 1C\u003c/code\u003e to spawn one thread per core, or \u003ccode\u003e-t 0.5C\u003c/code\u003e\nto spawn one thread for every other core.\u003c/p\u003e\n\u003cp\u003eThe thread count option now defaults to \u003ccode\u003e1C\u003c/code\u003e, meaning parallel execution\nis used by default. You can disable this by using \u003ccode\u003e-t 1\u003c/code\u003e.\u003c/p\u003e\n\u003ch4\u003eNew Rule UnnecessaryWarningSuppression (experimental)\u003c/h4\u003e\n\u003cp\u003eThis new Java rule \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.14.0/pmd_rules_java_bestpractices.html#unnecessarywarningsuppression\"\u003e\u003ccode\u003eUnnecessaryWarningSuppression\u003c/code\u003e\u003c/a\u003e reports unused suppression\nannotations and comments. Violations of this rule cannot be suppressed.\u003c/p\u003e\n\u003cp\u003eHow to use it? Just include it in your ruleset:\u003c/p\u003e\n\u003cpre lang=\"xml\"\u003e\u003ccode\u003e\u0026lt;rule ref=\u0026quot;category/java/bestpractices.xml/UnnecessaryWarningSuppression\u0026quot; /\u0026gt;\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eNote: This rule is currently experimental. It is available for now only for Java.\nThe rule for now only reports annotations specific to PMD, like \u003ccode\u003e@SuppressWarnings(\u0026quot;PMD\u0026quot;)\u003c/code\u003e.\nIn the future we might be able to check for other common ones like \u003ccode\u003e@SuppressWarnings(\u0026quot;unchecked\u0026quot;)\u003c/code\u003e or \u003ccode\u003e\u0026quot;fallthrough\u0026quot;\u003c/code\u003e.\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/876d4ab8ac5fb0940cd545b9c7a41866029cd519\"\u003e\u003ccode\u003e876d4ab\u003c/code\u003e\u003c/a\u003e [ci] Use correct credentials for central deployment\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/3a6e7a464dc14fa3315ced668680f442160db18b\"\u003e\u003ccode\u003e3a6e7a4\u003c/code\u003e\u003c/a\u003e [release] prepare release pmd_releases/7.14.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/0cdb9c8795f227abc8d63cfa64617453c0a4c9f4\"\u003e\u003ccode\u003e0cdb9c8\u003c/code\u003e\u003c/a\u003e Prepare pmd release 7.14.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/1c1ef837b7ee523e4cbd8a21d939ba72f3e0882d\"\u003e\u003ccode\u003e1c1ef83\u003c/code\u003e\u003c/a\u003e Add \u003ca href=\"https://github.com/Ledmington\"\u003e\u003ccode\u003e@​Ledmington\u003c/code\u003e\u003c/a\u003e as a contributor\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/49a321dd5472430d4ad6e9cf9568748e8730063a\"\u003e\u003ccode\u003e49a321d\u003c/code\u003e\u003c/a\u003e Add \u003ca href=\"https://github.com/Daniel-Ventura-25\"\u003e\u003ccode\u003e@​Daniel-Ventura-25\u003c/code\u003e\u003c/a\u003e as a contributor\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/3bd234c2edabf2d1bfcc51c185bd229f32661e4d\"\u003e\u003ccode\u003e3bd234c\u003c/code\u003e\u003c/a\u003e [core] Add rule to report unnecessary suppression comments/annotations (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5609\"\u003e#5609\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/4f9df6f48cdc9f643ccb40433d6be1f5eaa91d1c\"\u003e\u003ccode\u003e4f9df6f\u003c/code\u003e\u003c/a\u003e [cli] Make CLI default to multithreaded (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5741\"\u003e#5741\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/1924d235964cc987f32b9b8fc108eda7a36e157f\"\u003e\u003ccode\u003e1924d23\u003c/code\u003e\u003c/a\u003e Fix unit tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/f479b7de272453108e7b7adef045605619767bcc\"\u003e\u003ccode\u003ef479b7d\u003c/code\u003e\u003c/a\u003e Apply suggestions from review\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/c69c881bc5fb3be73c5ff331b3d804c348b191e1\"\u003e\u003ccode\u003ec69c881\u003c/code\u003e\u003c/a\u003e Fix unit tests\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pmd/pmd/compare/pmd_releases/7.13.0...pmd_releases/7.14.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `net.sourceforge.pmd:pmd-javascript` from 7.13.0 to 7.14.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pmd/pmd/releases\"\u003enet.sourceforge.pmd:pmd-javascript's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ePMD 7.14.0 (30-May-2025)\u003c/h2\u003e\n\u003ch2\u003e30-May-2025 - 7.14.0\u003c/h2\u003e\n\u003cp\u003eThe PMD team is pleased to announce PMD 7.14.0.\u003c/p\u003e\n\u003cp\u003eThis is a minor release.\u003c/p\u003e\n\u003ch3\u003eTable Of Contents\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-and-noteworthy\"\u003e🚀 New and noteworthy\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#pmd-cli-now-uses-threaded-execution-by-default\"\u003ePMD CLI now uses threaded execution by default\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"#new-rule-unnecessarywarningsuppression-https://github.com/pmd/pmd/blob/HEAD/experimental\"\u003eNew Rule UnnecessaryWarningSuppression (https://github.com/pmd/pmd/blob/HEAD/experimental)\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#migrating-to-central-publisher-portal\"\u003eMigrating to Central Publisher Portal\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#more-cli-parameters-shared-between-pmd-and-cpd\"\u003eMore CLI parameters shared between PMD and CPD\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#fixed-issues\"\u003e🐛 Fixed Issues\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#api-changes\"\u003e🚨 API Changes\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#cli\"\u003eCLI\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#deprecations\"\u003eDeprecations\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#experimental\"\u003eExperimental\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#merged-pull-requests\"\u003e✨ Merged pull requests\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#dependency-updates\"\u003e📦 Dependency updates\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#stats\"\u003e📈 Stats\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🚀 New and noteworthy\u003c/h3\u003e\n\u003ch4\u003ePMD CLI now uses threaded execution by default\u003c/h4\u003e\n\u003cp\u003eIn the PMD CLI, the \u003ccode\u003e--threads\u003c/code\u003e (\u003ccode\u003e-t\u003c/code\u003e) option can now accept a thread\ncount given relative to the number of cores of the machine. For instance,\nit is now possible to write \u003ccode\u003e-t 1C\u003c/code\u003e to spawn one thread per core, or \u003ccode\u003e-t 0.5C\u003c/code\u003e\nto spawn one thread for every other core.\u003c/p\u003e\n\u003cp\u003eThe thread count option now defaults to \u003ccode\u003e1C\u003c/code\u003e, meaning parallel execution\nis used by default. You can disable this by using \u003ccode\u003e-t 1\u003c/code\u003e.\u003c/p\u003e\n\u003ch4\u003eNew Rule UnnecessaryWarningSuppression (experimental)\u003c/h4\u003e\n\u003cp\u003eThis new Java rule \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.14.0/pmd_rules_java_bestpractices.html#unnecessarywarningsuppression\"\u003e\u003ccode\u003eUnnecessaryWarningSuppression\u003c/code\u003e\u003c/a\u003e reports unused suppression\nannotations and comments. Violations of this rule cannot be suppressed.\u003c/p\u003e\n\u003cp\u003eHow to use it? Just include it in your ruleset:\u003c/p\u003e\n\u003cpre lang=\"xml\"\u003e\u003ccode\u003e\u0026lt;rule ref=\u0026quot;category/java/bestpractices.xml/UnnecessaryWarningSuppression\u0026quot; /\u0026gt;\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eNote: This rule is currently experimental. It is available for now only for Java.\nThe rule for now only reports annotations specific to PMD, like \u003ccode\u003e@SuppressWarnings(\u0026quot;PMD\u0026quot;)\u003c/code\u003e.\nIn the future we might be able to check for other common ones like \u003ccode\u003e@SuppressWarnings(\u0026quot;unchecked\u0026quot;)\u003c/code\u003e or \u003ccode\u003e\u0026quot;fallthrough\u0026quot;\u003c/code\u003e.\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/876d4ab8ac5fb0940cd545b9c7a41866029cd519\"\u003e\u003ccode\u003e876d4ab\u003c/code\u003e\u003c/a\u003e [ci] Use correct credentials for central deployment\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/3a6e7a464dc14fa3315ced668680f442160db18b\"\u003e\u003ccode\u003e3a6e7a4\u003c/code\u003e\u003c/a\u003e [release] prepare release pmd_releases/7.14.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/0cdb9c8795f227abc8d63cfa64617453c0a4c9f4\"\u003e\u003ccode\u003e0cdb9c8\u003c/code\u003e\u003c/a\u003e Prepare pmd release 7.14.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/1c1ef837b7ee523e4cbd8a21d939ba72f3e0882d\"\u003e\u003ccode\u003e1c1ef83\u003c/code\u003e\u003c/a\u003e Add \u003ca href=\"https://github.com/Ledmington\"\u003e\u003ccode\u003e@​Ledmington\u003c/code\u003e\u003c/a\u003e as a contributor\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/49a321dd5472430d4ad6e9cf9568748e8730063a\"\u003e\u003ccode\u003e49a321d\u003c/code\u003e\u003c/a\u003e Add \u003ca href=\"https://github.com/Daniel-Ventura-25\"\u003e\u003ccode\u003e@​Daniel-Ventura-25\u003c/code\u003e\u003c/a\u003e as a contributor\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/3bd234c2edabf2d1bfcc51c185bd229f32661e4d\"\u003e\u003ccode\u003e3bd234c\u003c/code\u003e\u003c/a\u003e [core] Add rule to report unnecessary suppression comments/annotations (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5609\"\u003e#5609\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/4f9df6f48cdc9f643ccb40433d6be1f5eaa91d1c\"\u003e\u003ccode\u003e4f9df6f\u003c/code\u003e\u003c/a\u003e [cli] Make CLI default to multithreaded (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5741\"\u003e#5741\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/1924d235964cc987f32b9b8fc108eda7a36e157f\"\u003e\u003ccode\u003e1924d23\u003c/code\u003e\u003c/a\u003e Fix unit tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/f479b7de272453108e7b7adef045605619767bcc\"\u003e\u003ccode\u003ef479b7d\u003c/code\u003e\u003c/a\u003e Apply suggestions from review\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/c69c881bc5fb3be73c5ff331b3d804c348b191e1\"\u003e\u003ccode\u003ec69c881\u003c/code\u003e\u003c/a\u003e Fix unit tests\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pmd/pmd/compare/pmd_releases/7.13.0...pmd_releases/7.14.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `net.sourceforge.pmd:pmd-jsp` from 7.13.0 to 7.14.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pmd/pmd/releases\"\u003enet.sourceforge.pmd:pmd-jsp's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ePMD 7.14.0 (30-May-2025)\u003c/h2\u003e\n\u003ch2\u003e30-May-2025 - 7.14.0\u003c/h2\u003e\n\u003cp\u003eThe PMD team is pleased to announce PMD 7.14.0.\u003c/p\u003e\n\u003cp\u003eThis is a minor release.\u003c/p\u003e\n\u003ch3\u003eTable Of Contents\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-and-noteworthy\"\u003e🚀 New and noteworthy\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#pmd-cli-now-uses-threaded-execution-by-default\"\u003ePMD CLI now uses threaded execution by default\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"#new-rule-unnecessarywarningsuppression-https://github.com/pmd/pmd/blob/HEAD/experimental\"\u003eNew Rule UnnecessaryWarningSuppression (https://github.com/pmd/pmd/blob/HEAD/experimental)\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#migrating-to-central-publisher-portal\"\u003eMigrating to Central Publisher Portal\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#more-cli-parameters-shared-between-pmd-and-cpd\"\u003eMore CLI parameters shared between PMD and CPD\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#fixed-issues\"\u003e🐛 Fixed Issues\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#api-changes\"\u003e🚨 API Changes\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#cli\"\u003eCLI\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#deprecations\"\u003eDeprecations\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#experimental\"\u003eExperimental\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#merged-pull-requests\"\u003e✨ Merged pull requests\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#dependency-updates\"\u003e📦 Dependency updates\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#stats\"\u003e📈 Stats\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🚀 New and noteworthy\u003c/h3\u003e\n\u003ch4\u003ePMD CLI now uses threaded execution by default\u003c/h4\u003e\n\u003cp\u003eIn the PMD CLI, the \u003ccode\u003e--threads\u003c/code\u003e (\u003ccode\u003e-t\u003c/code\u003e) option can now accept a thread\ncount given relative to the number of cores of the machine. For instance,\nit is now possible to write \u003ccode\u003e-t 1C\u003c/code\u003e to spawn one thread per core, or \u003ccode\u003e-t 0.5C\u003c/code\u003e\nto spawn one thread for every other core.\u003c/p\u003e\n\u003cp\u003eThe thread count option now defaults to \u003ccode\u003e1C\u003c/code\u003e, meaning parallel execution\nis used by default. You can disable this by using \u003ccode\u003e-t 1\u003c/code\u003e.\u003c/p\u003e\n\u003ch4\u003eNew Rule UnnecessaryWarningSuppression (experimental)\u003c/h4\u003e\n\u003cp\u003eThis new Java rule \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.14.0/pmd_rules_java_bestpractices.html#unnecessarywarningsuppression\"\u003e\u003ccode\u003eUnnecessaryWarningSuppression\u003c/code\u003e\u003c/a\u003e reports unused suppression\nannotations and comments. Violations of this rule cannot be suppressed.\u003c/p\u003e\n\u003cp\u003eHow to use it? Just include it in your ruleset:\u003c/p\u003e\n\u003cpre lang=\"xml\"\u003e\u003ccode\u003e\u0026lt;rule ref=\u0026quot;category/java/bestpractices.xml/UnnecessaryWarningSuppression\u0026quot; /\u0026gt;\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eNote: This rule is currently experimental. It is available for now only for Java.\nThe rule for now only reports annotations specific to PMD, like \u003ccode\u003e@SuppressWarnings(\u0026quot;PMD\u0026quot;)\u003c/code\u003e.\nIn the future we might be able to check for other common ones like \u003ccode\u003e@SuppressWarnings(\u0026quot;unchecked\u0026quot;)\u003c/code\u003e or \u003ccode\u003e\u0026quot;fallthrough\u0026quot;\u003c/code\u003e.\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/876d4ab8ac5fb0940cd545b9c7a41866029cd519\"\u003e\u003ccode\u003e876d4ab\u003c/code\u003e\u003c/a\u003e [ci] Use correct credentials for central deployment\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/3a6e7a464dc14fa3315ced668680f442160db18b\"\u003e\u003ccode\u003e3a6e7a4\u003c/code\u003e\u003c/a\u003e [release] prepare release pmd_releases/7.14.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/0cdb9c8795f227abc8d63cfa64617453c0a4c9f4\"\u003e\u003ccode\u003e0cdb9c8\u003c/code\u003e\u003c/a\u003e Prepare pmd release 7.14.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/1c1ef837b7ee523e4cbd8a21d939ba72f3e0882d\"\u003e\u003ccode\u003e1c1ef83\u003c/code\u003e\u003c/a\u003e Add \u003ca href=\"https://github.com/Ledmington\"\u003e\u003ccode\u003e@​Ledmington\u003c/code\u003e\u003c/a\u003e as a contributor\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/49a321dd5472430d4ad6e9cf9568748e8730063a\"\u003e\u003ccode\u003e49a321d\u003c/code\u003e\u003c/a\u003e Add \u003ca href=\"https://github.com/Daniel-Ventura-25\"\u003e\u003ccode\u003e@​Daniel-Ventura-25\u003c/code\u003e\u003c/a\u003e as a contributor\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/3bd234c2edabf2d1bfcc51c185bd229f32661e4d\"\u003e\u003ccode\u003e3bd234c\u003c/code\u003e\u003c/a\u003e [core] Add rule to report unnecessary suppression comments/annotations (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5609\"\u003e#5609\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/4f9df6f48cdc9f643ccb40433d6be1f5eaa91d1c\"\u003e\u003ccode\u003e4f9df6f\u003c/code\u003e\u003c/a\u003e [cli] Make CLI default to multithreaded (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5741\"\u003e#5741\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/1924d235964cc987f32b9b8fc108eda7a36e157f\"\u003e\u003ccode\u003e1924d23\u003c/code\u003e\u003c/a\u003e Fix unit tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/f479b7de272453108e7b7adef045605619767bcc\"\u003e\u003ccode\u003ef479b7d\u003c/code\u003e\u003c/a\u003e Apply suggestions from review\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/c69c881bc5fb3be73c5ff331b3d804c348b191e1\"\u003e\u003ccode\u003ec69c881\u003c/code\u003e\u003c/a\u003e Fix unit tests\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pmd/pmd/compare/pmd_releases/7.13.0...pmd_releases/7.14.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot merge` will merge this PR after your CI passes on it\n- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it\n- `@dependabot cancel merge` will cancel a previously requested merge and block automerging\n- `@dependabot reopen` will reopen this PR if it is closed\n- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)\n\n\n\u003c/details\u003e","html_url":"https://github.com/instancio/instancio/pull/1363","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/instancio%2Finstancio/issues/1363","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/1363/packages"},{"uuid":"2265574501","node_id":"PR_kwDOBsaZJs5t1N06","number":149,"state":"closed","title":"Bump pmdVersion from 7.0.0 to 7.1.0","user":"dependabot[bot]","labels":["dependencies","java"],"assignees":[],"locked":false,"comments_count":5,"pull_request":true,"closed_at":"2025-06-02T07:17:41.000Z","author_association":"CONTRIBUTOR","state_reason":null,"created_at":"2024-04-26T11:21:29.000Z","updated_at":"2025-06-08T01:53:20.873Z","time_to_close":34718172,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","packages":[{"name":"pmdVersion","old_version":"7.0.0","new_version":"7.1.0","repository_url":null}],"path":null,"ecosystem":"maven"},"body":"Bumps `pmdVersion` from 7.0.0 to 7.1.0.\nUpdates `net.sourceforge.pmd:pmd-core` from 7.0.0 to 7.1.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pmd/pmd/releases\"\u003enet.sourceforge.pmd:pmd-core's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ePMD 7.1.0 (26-April-2024)\u003c/h2\u003e\n\u003ch2\u003e26-April-2024 - 7.1.0\u003c/h2\u003e\n\u003cp\u003eThe PMD team is pleased to announce PMD 7.1.0.\u003c/p\u003e\n\u003cp\u003eThis is a minor release.\u003c/p\u003e\n\u003ch3\u003eTable Of Contents\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-and-noteworthy\"\u003e🚀 New and noteworthy\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#more-robust-cpd-reports\"\u003eMore robust CPD reports\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-rules\"\u003e✨ New Rules\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#rule-changes\"\u003e🌟 Rule Changes\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#fixed-issues\"\u003e🐛 Fixed Issues\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#api-changes\"\u003e🚨 API Changes\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#deprecated-methods\"\u003eDeprecated methods\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#external-contributions\"\u003e✨ External Contributions\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#stats\"\u003e📈 Stats\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🚀 New and noteworthy\u003c/h3\u003e\n\u003ch4\u003eMore robust CPD reports\u003c/h4\u003e\n\u003cp\u003eThere were a number of circumstances, specially around (but not limited to) literal sequences, were CPD would\nreport duplicate overlapping or partially overlapping matches. These have now been fixed, and CPD will report\nonly the longest non-overlapping duplicate.\u003c/p\u003e\n\u003cp\u003eThese improvements apply to all supported languages, irrespective of supported flags.\u003c/p\u003e\n\u003ch4\u003e✨ New Rules\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eThe new Java rule \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.1.0/pmd_rules_java_bestpractices.html#unnecessaryvarargsarraycreation\"\u003e\u003ccode\u003eUnnecessaryVarargsArrayCreation\u003c/code\u003e\u003c/a\u003e reports explicit array creation\nwhen a varargs is expected. This is more heavy to read and could be simplified.\u003c/li\u003e\n\u003cli\u003eThe new Java rule \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.1.0/pmd_rules_java_errorprone.html#confusingargumenttovarargsmethod\"\u003e\u003ccode\u003eConfusingArgumentToVarargsMethod\u003c/code\u003e\u003c/a\u003e reports some confusing situations\nwhere a varargs method is called with an inexact argument type. These may end up in a mismatch between the expected\nparameter type and the actual value.\u003c/li\u003e\n\u003cli\u003eThe new Java rule \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.1.0/pmd_rules_java_codestyle.html#lambdacanbemethodreference\"\u003e\u003ccode\u003eLambdaCanBeMethodReference\u003c/code\u003e\u003c/a\u003e reports lambda expressions that can be replaced\nwith a method reference. Please read the documentation of the rule for more info. This rule is now part of the Quickstart\nruleset.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003e🌟 Rule Changes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.1.0/pmd_rules_java_bestpractices.html#junittestsshouldincludeassert\"\u003e\u003ccode\u003eJUnitTestsShouldIncludeAssert\u003c/code\u003e\u003c/a\u003e and \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.1.0/pmd_rules_java_bestpractices.html#junittestcontainstoomanyasserts\"\u003e\u003ccode\u003eJUnitTestContainsTooManyAsserts\u003c/code\u003e\u003c/a\u003e\nhave a new property named \u003ccode\u003eextraAssertMethodNames\u003c/code\u003e. With this property, you can configure which additional static\nmethods should be considered as valid verification methods. This allows to use custom mocking or assertion libraries.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🐛 Fixed Issues\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ecore\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/494\"\u003e#494\u003c/a\u003e: [core] Adopt JApiCmp to enforce control over API changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/4942\"\u003e#4942\u003c/a\u003e: [core] CPD: \u003ccode\u003e--skip-duplicate-files\u003c/code\u003e has no effect (7.0.0 regression)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/pull/4959\"\u003e#4959\u003c/a\u003e: [core] Upgrade saxon to 12.4\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003ecli\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/592e80d4a9e01b4294d10bcad8ead80291c6ffa7\"\u003e\u003ccode\u003e592e80d\u003c/code\u003e\u003c/a\u003e [release] prepare release pmd_releases/7.1.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/7d0dfa0b13e96dbbe678b067853631429c61f02e\"\u003e\u003ccode\u003e7d0dfa0\u003c/code\u003e\u003c/a\u003e Prepare pmd release 7.1.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/31585acc6f5f8aa396d3f1365df348da8e3ca076\"\u003e\u003ccode\u003e31585ac\u003c/code\u003e\u003c/a\u003e Bump build-tools from 24-SNAPSHOT to 24\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/d0870f3aa3ddf8508bb172532bfa4a94a136a661\"\u003e\u003ccode\u003ed0870f3\u003c/code\u003e\u003c/a\u003e [java] New rule ConfusingArgumentToVarargsMethod (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/4971\"\u003e#4971\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/04206ecd80dca03495c85c196365579c299732af\"\u003e\u003ccode\u003e04206ec\u003c/code\u003e\u003c/a\u003e Revert \u0026quot;[ci] Disable auto-gen-config for regression tests\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/f5d47ac36e7975919bfafdd0c386f81da2038591\"\u003e\u003ccode\u003ef5d47ac\u003c/code\u003e\u003c/a\u003e [ci] Disable auto-gen-config for regression tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/102ba1e9625400912548e3ab3a19c765bb2d6727\"\u003e\u003ccode\u003e102ba1e\u003c/code\u003e\u003c/a\u003e [ci] Disable auto-gen-config for regression tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/a154f783bddf8f76ab9cd858eab0701c2e9ce1f8\"\u003e\u003ccode\u003ea154f78\u003c/code\u003e\u003c/a\u003e [doc] Update all-contributors\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/16df3dd4469eae105c104deebfac951894f64e03\"\u003e\u003ccode\u003e16df3dd\u003c/code\u003e\u003c/a\u003e [core] Make CPD report maximal, non-repeating and non-overlapping duplicates ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/202943e0cfc2e5dc4f3b24778460693c5aeb9443\"\u003e\u003ccode\u003e202943e\u003c/code\u003e\u003c/a\u003e [java] Fix \u003ca href=\"https://redirect.github.com/pmd/pmd/issues/4948\"\u003e#4948\u003c/a\u003e - ImplicitSwitchFallthrough false positive with nested switc...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pmd/pmd/compare/pmd_releases/7.0.0...pmd_releases/7.1.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `net.sourceforge.pmd:pmd-java` from 7.0.0 to 7.1.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pmd/pmd/releases\"\u003enet.sourceforge.pmd:pmd-java's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ePMD 7.1.0 (26-April-2024)\u003c/h2\u003e\n\u003ch2\u003e26-April-2024 - 7.1.0\u003c/h2\u003e\n\u003cp\u003eThe PMD team is pleased to announce PMD 7.1.0.\u003c/p\u003e\n\u003cp\u003eThis is a minor release.\u003c/p\u003e\n\u003ch3\u003eTable Of Contents\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-and-noteworthy\"\u003e🚀 New and noteworthy\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#more-robust-cpd-reports\"\u003eMore robust CPD reports\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-rules\"\u003e✨ New Rules\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#rule-changes\"\u003e🌟 Rule Changes\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#fixed-issues\"\u003e🐛 Fixed Issues\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#api-changes\"\u003e🚨 API Changes\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#deprecated-methods\"\u003eDeprecated methods\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#external-contributions\"\u003e✨ External Contributions\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#stats\"\u003e📈 Stats\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🚀 New and noteworthy\u003c/h3\u003e\n\u003ch4\u003eMore robust CPD reports\u003c/h4\u003e\n\u003cp\u003eThere were a number of circumstances, specially around (but not limited to) literal sequences, were CPD would\nreport duplicate overlapping or partially overlapping matches. These have now been fixed, and CPD will report\nonly the longest non-overlapping duplicate.\u003c/p\u003e\n\u003cp\u003eThese improvements apply to all supported languages, irrespective of supported flags.\u003c/p\u003e\n\u003ch4\u003e✨ New Rules\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eThe new Java rule \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.1.0/pmd_rules_java_bestpractices.html#unnecessaryvarargsarraycreation\"\u003e\u003ccode\u003eUnnecessaryVarargsArrayCreation\u003c/code\u003e\u003c/a\u003e reports explicit array creation\nwhen a varargs is expected. This is more heavy to read and could be simplified.\u003c/li\u003e\n\u003cli\u003eThe new Java rule \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.1.0/pmd_rules_java_errorprone.html#confusingargumenttovarargsmethod\"\u003e\u003ccode\u003eConfusingArgumentToVarargsMethod\u003c/code\u003e\u003c/a\u003e reports some confusing situations\nwhere a varargs method is called with an inexact argument type. These may end up in a mismatch between the expected\nparameter type and the actual value.\u003c/li\u003e\n\u003cli\u003eThe new Java rule \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.1.0/pmd_rules_java_codestyle.html#lambdacanbemethodreference\"\u003e\u003ccode\u003eLambdaCanBeMethodReference\u003c/code\u003e\u003c/a\u003e reports lambda expressions that can be replaced\nwith a method reference. Please read the documentation of the rule for more info. This rule is now part of the Quickstart\nruleset.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003e🌟 Rule Changes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.1.0/pmd_rules_java_bestpractices.html#junittestsshouldincludeassert\"\u003e\u003ccode\u003eJUnitTestsShouldIncludeAssert\u003c/code\u003e\u003c/a\u003e and \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.1.0/pmd_rules_java_bestpractices.html#junittestcontainstoomanyasserts\"\u003e\u003ccode\u003eJUnitTestContainsTooManyAsserts\u003c/code\u003e\u003c/a\u003e\nhave a new property named \u003ccode\u003eextraAssertMethodNames\u003c/code\u003e. With this property, you can configure which additional static\nmethods should be considered as valid verification methods. This allows to use custom mocking or assertion libraries.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🐛 Fixed Issues\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ecore\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/494\"\u003e#494\u003c/a\u003e: [core] Adopt JApiCmp to enforce control over API changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/4942\"\u003e#4942\u003c/a\u003e: [core] CPD: \u003ccode\u003e--skip-duplicate-files\u003c/code\u003e has no effect (7.0.0 regression)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/pull/4959\"\u003e#4959\u003c/a\u003e: [core] Upgrade saxon to 12.4\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003ecli\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/592e80d4a9e01b4294d10bcad8ead80291c6ffa7\"\u003e\u003ccode\u003e592e80d\u003c/code\u003e\u003c/a\u003e [release] prepare release pmd_releases/7.1.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/7d0dfa0b13e96dbbe678b067853631429c61f02e\"\u003e\u003ccode\u003e7d0dfa0\u003c/code\u003e\u003c/a\u003e Prepare pmd release 7.1.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/31585acc6f5f8aa396d3f1365df348da8e3ca076\"\u003e\u003ccode\u003e31585ac\u003c/code\u003e\u003c/a\u003e Bump build-tools from 24-SNAPSHOT to 24\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/d0870f3aa3ddf8508bb172532bfa4a94a136a661\"\u003e\u003ccode\u003ed0870f3\u003c/code\u003e\u003c/a\u003e [java] New rule ConfusingArgumentToVarargsMethod (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/4971\"\u003e#4971\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/04206ecd80dca03495c85c196365579c299732af\"\u003e\u003ccode\u003e04206ec\u003c/code\u003e\u003c/a\u003e Revert \u0026quot;[ci] Disable auto-gen-config for regression tests\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/f5d47ac36e7975919bfafdd0c386f81da2038591\"\u003e\u003ccode\u003ef5d47ac\u003c/code\u003e\u003c/a\u003e [ci] Disable auto-gen-config for regression tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/102ba1e9625400912548e3ab3a19c765bb2d6727\"\u003e\u003ccode\u003e102ba1e\u003c/code\u003e\u003c/a\u003e [ci] Disable auto-gen-config for regression tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/a154f783bddf8f76ab9cd858eab0701c2e9ce1f8\"\u003e\u003ccode\u003ea154f78\u003c/code\u003e\u003c/a\u003e [doc] Update all-contributors\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/16df3dd4469eae105c104deebfac951894f64e03\"\u003e\u003ccode\u003e16df3dd\u003c/code\u003e\u003c/a\u003e [core] Make CPD report maximal, non-repeating and non-overlapping duplicates ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/202943e0cfc2e5dc4f3b24778460693c5aeb9443\"\u003e\u003ccode\u003e202943e\u003c/code\u003e\u003c/a\u003e [java] Fix \u003ca href=\"https://redirect.github.com/pmd/pmd/issues/4948\"\u003e#4948\u003c/a\u003e - ImplicitSwitchFallthrough false positive with nested switc...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pmd/pmd/compare/pmd_releases/7.0.0...pmd_releases/7.1.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `net.sourceforge.pmd:pmd-javascript` from 7.0.0 to 7.1.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pmd/pmd/releases\"\u003enet.sourceforge.pmd:pmd-javascript's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ePMD 7.1.0 (26-April-2024)\u003c/h2\u003e\n\u003ch2\u003e26-April-2024 - 7.1.0\u003c/h2\u003e\n\u003cp\u003eThe PMD team is pleased to announce PMD 7.1.0.\u003c/p\u003e\n\u003cp\u003eThis is a minor release.\u003c/p\u003e\n\u003ch3\u003eTable Of Contents\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-and-noteworthy\"\u003e🚀 New and noteworthy\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#more-robust-cpd-reports\"\u003eMore robust CPD reports\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-rules\"\u003e✨ New Rules\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#rule-changes\"\u003e🌟 Rule Changes\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#fixed-issues\"\u003e🐛 Fixed Issues\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#api-changes\"\u003e🚨 API Changes\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#deprecated-methods\"\u003eDeprecated methods\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#external-contributions\"\u003e✨ External Contributions\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#stats\"\u003e📈 Stats\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🚀 New and noteworthy\u003c/h3\u003e\n\u003ch4\u003eMore robust CPD reports\u003c/h4\u003e\n\u003cp\u003eThere were a number of circumstances, specially around (but not limited to) literal sequences, were CPD would\nreport duplicate overlapping or partially overlapping matches. These have now been fixed, and CPD will report\nonly the longest non-overlapping duplicate.\u003c/p\u003e\n\u003cp\u003eThese improvements apply to all supported languages, irrespective of supported flags.\u003c/p\u003e\n\u003ch4\u003e✨ New Rules\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eThe new Java rule \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.1.0/pmd_rules_java_bestpractices.html#unnecessaryvarargsarraycreation\"\u003e\u003ccode\u003eUnnecessaryVarargsArrayCreation\u003c/code\u003e\u003c/a\u003e reports explicit array creation\nwhen a varargs is expected. This is more heavy to read and could be simplified.\u003c/li\u003e\n\u003cli\u003eThe new Java rule \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.1.0/pmd_rules_java_errorprone.html#confusingargumenttovarargsmethod\"\u003e\u003ccode\u003eConfusingArgumentToVarargsMethod\u003c/code\u003e\u003c/a\u003e reports some confusing situations\nwhere a varargs method is called with an inexact argument type. These may end up in a mismatch between the expected\nparameter type and the actual value.\u003c/li\u003e\n\u003cli\u003eThe new Java rule \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.1.0/pmd_rules_java_codestyle.html#lambdacanbemethodreference\"\u003e\u003ccode\u003eLambdaCanBeMethodReference\u003c/code\u003e\u003c/a\u003e reports lambda expressions that can be replaced\nwith a method reference. Please read the documentation of the rule for more info. This rule is now part of the Quickstart\nruleset.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003e🌟 Rule Changes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.1.0/pmd_rules_java_bestpractices.html#junittestsshouldincludeassert\"\u003e\u003ccode\u003eJUnitTestsShouldIncludeAssert\u003c/code\u003e\u003c/a\u003e and \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.1.0/pmd_rules_java_bestpractices.html#junittestcontainstoomanyasserts\"\u003e\u003ccode\u003eJUnitTestContainsTooManyAsserts\u003c/code\u003e\u003c/a\u003e\nhave a new property named \u003ccode\u003eextraAssertMethodNames\u003c/code\u003e. With this property, you can configure which additional static\nmethods should be considered as valid verification methods. This allows to use custom mocking or assertion libraries.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🐛 Fixed Issues\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ecore\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/494\"\u003e#494\u003c/a\u003e: [core] Adopt JApiCmp to enforce control over API changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/4942\"\u003e#4942\u003c/a\u003e: [core] CPD: \u003ccode\u003e--skip-duplicate-files\u003c/code\u003e has no effect (7.0.0 regression)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/pull/4959\"\u003e#4959\u003c/a\u003e: [core] Upgrade saxon to 12.4\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003ecli\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/592e80d4a9e01b4294d10bcad8ead80291c6ffa7\"\u003e\u003ccode\u003e592e80d\u003c/code\u003e\u003c/a\u003e [release] prepare release pmd_releases/7.1.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/7d0dfa0b13e96dbbe678b067853631429c61f02e\"\u003e\u003ccode\u003e7d0dfa0\u003c/code\u003e\u003c/a\u003e Prepare pmd release 7.1.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/31585acc6f5f8aa396d3f1365df348da8e3ca076\"\u003e\u003ccode\u003e31585ac\u003c/code\u003e\u003c/a\u003e Bump build-tools from 24-SNAPSHOT to 24\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/d0870f3aa3ddf8508bb172532bfa4a94a136a661\"\u003e\u003ccode\u003ed0870f3\u003c/code\u003e\u003c/a\u003e [java] New rule ConfusingArgumentToVarargsMethod (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/4971\"\u003e#4971\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/04206ecd80dca03495c85c196365579c299732af\"\u003e\u003ccode\u003e04206ec\u003c/code\u003e\u003c/a\u003e Revert \u0026quot;[ci] Disable auto-gen-config for regression tests\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/f5d47ac36e7975919bfafdd0c386f81da2038591\"\u003e\u003ccode\u003ef5d47ac\u003c/code\u003e\u003c/a\u003e [ci] Disable auto-gen-config for regression tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/102ba1e9625400912548e3ab3a19c765bb2d6727\"\u003e\u003ccode\u003e102ba1e\u003c/code\u003e\u003c/a\u003e [ci] Disable auto-gen-config for regression tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/a154f783bddf8f76ab9cd858eab0701c2e9ce1f8\"\u003e\u003ccode\u003ea154f78\u003c/code\u003e\u003c/a\u003e [doc] Update all-contributors\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/16df3dd4469eae105c104deebfac951894f64e03\"\u003e\u003ccode\u003e16df3dd\u003c/code\u003e\u003c/a\u003e [core] Make CPD report maximal, non-repeating and non-overlapping duplicates ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/202943e0cfc2e5dc4f3b24778460693c5aeb9443\"\u003e\u003ccode\u003e202943e\u003c/code\u003e\u003c/a\u003e [java] Fix \u003ca href=\"https://redirect.github.com/pmd/pmd/issues/4948\"\u003e#4948\u003c/a\u003e - ImplicitSwitchFallthrough false positive with nested switc...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pmd/pmd/compare/pmd_releases/7.0.0...pmd_releases/7.1.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `net.sourceforge.pmd:pmd-jsp` from 7.0.0 to 7.1.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pmd/pmd/releases\"\u003enet.sourceforge.pmd:pmd-jsp's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ePMD 7.1.0 (26-April-2024)\u003c/h2\u003e\n\u003ch2\u003e26-April-2024 - 7.1.0\u003c/h2\u003e\n\u003cp\u003eThe PMD team is pleased to announce PMD 7.1.0.\u003c/p\u003e\n\u003cp\u003eThis is a minor release.\u003c/p\u003e\n\u003ch3\u003eTable Of Contents\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-and-noteworthy\"\u003e🚀 New and noteworthy\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#more-robust-cpd-reports\"\u003eMore robust CPD reports\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-rules\"\u003e✨ New Rules\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#rule-changes\"\u003e🌟 Rule Changes\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#fixed-issues\"\u003e🐛 Fixed Issues\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#api-changes\"\u003e🚨 API Changes\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#deprecated-methods\"\u003eDeprecated methods\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#external-contributions\"\u003e✨ External Contributions\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#stats\"\u003e📈 Stats\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🚀 New and noteworthy\u003c/h3\u003e\n\u003ch4\u003eMore robust CPD reports\u003c/h4\u003e\n\u003cp\u003eThere were a number of circumstances, specially around (but not limited to) literal sequences, were CPD would\nreport duplicate overlapping or partially overlapping matches. These have now been fixed, and CPD will report\nonly the longest non-overlapping duplicate.\u003c/p\u003e\n\u003cp\u003eThese improvements apply to all supported languages, irrespective of supported flags.\u003c/p\u003e\n\u003ch4\u003e✨ New Rules\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eThe new Java rule \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.1.0/pmd_rules_java_bestpractices.html#unnecessaryvarargsarraycreation\"\u003e\u003ccode\u003eUnnecessaryVarargsArrayCreation\u003c/code\u003e\u003c/a\u003e reports explicit array creation\nwhen a varargs is expected. This is more heavy to read and could be simplified.\u003c/li\u003e\n\u003cli\u003eThe new Java rule \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.1.0/pmd_rules_java_errorprone.html#confusingargumenttovarargsmethod\"\u003e\u003ccode\u003eConfusingArgumentToVarargsMethod\u003c/code\u003e\u003c/a\u003e reports some confusing situations\nwhere a varargs method is called with an inexact argument type. These may end up in a mismatch between the expected\nparameter type and the actual value.\u003c/li\u003e\n\u003cli\u003eThe new Java rule \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.1.0/pmd_rules_java_codestyle.html#lambdacanbemethodreference\"\u003e\u003ccode\u003eLambdaCanBeMethodReference\u003c/code\u003e\u003c/a\u003e reports lambda expressions that can be replaced\nwith a method reference. Please read the documentation of the rule for more info. This rule is now part of the Quickstart\nruleset.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003e🌟 Rule Changes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.1.0/pmd_rules_java_bestpractices.html#junittestsshouldincludeassert\"\u003e\u003ccode\u003eJUnitTestsShouldIncludeAssert\u003c/code\u003e\u003c/a\u003e and \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.1.0/pmd_rules_java_bestpractices.html#junittestcontainstoomanyasserts\"\u003e\u003ccode\u003eJUnitTestContainsTooManyAsserts\u003c/code\u003e\u003c/a\u003e\nhave a new property named \u003ccode\u003eextraAssertMethodNames\u003c/code\u003e. With this property, you can configure which additional static\nmethods should be considered as valid verification methods. This allows to use custom mocking or assertion libraries.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🐛 Fixed Issues\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ecore\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/494\"\u003e#494\u003c/a\u003e: [core] Adopt JApiCmp to enforce control over API changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/4942\"\u003e#4942\u003c/a\u003e: [core] CPD: \u003ccode\u003e--skip-duplicate-files\u003c/code\u003e has no effect (7.0.0 regression)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/pull/4959\"\u003e#4959\u003c/a\u003e: [core] Upgrade saxon to 12.4\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003ecli\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/592e80d4a9e01b4294d10bcad8ead80291c6ffa7\"\u003e\u003ccode\u003e592e80d\u003c/code\u003e\u003c/a\u003e [release] prepare release pmd_releases/7.1.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/7d0dfa0b13e96dbbe678b067853631429c61f02e\"\u003e\u003ccode\u003e7d0dfa0\u003c/code\u003e\u003c/a\u003e Prepare pmd release 7.1.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/31585acc6f5f8aa396d3f1365df348da8e3ca076\"\u003e\u003ccode\u003e31585ac\u003c/code\u003e\u003c/a\u003e Bump build-tools from 24-SNAPSHOT to 24\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/d0870f3aa3ddf8508bb172532bfa4a94a136a661\"\u003e\u003ccode\u003ed0870f3\u003c/code\u003e\u003c/a\u003e [java] New rule ConfusingArgumentToVarargsMethod (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/4971\"\u003e#4971\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/04206ecd80dca03495c85c196365579c299732af\"\u003e\u003ccode\u003e04206ec\u003c/code\u003e\u003c/a\u003e Revert \u0026quot;[ci] Disable auto-gen-config for regression tests\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/f5d47ac36e7975919bfafdd0c386f81da2038591\"\u003e\u003ccode\u003ef5d47ac\u003c/code\u003e\u003c/a\u003e [ci] Disable auto-gen-config for regression tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/102ba1e9625400912548e3ab3a19c765bb2d6727\"\u003e\u003ccode\u003e102ba1e\u003c/code\u003e\u003c/a\u003e [ci] Disable auto-gen-config for regression tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/a154f783bddf8f76ab9cd858eab0701c2e9ce1f8\"\u003e\u003ccode\u003ea154f78\u003c/code\u003e\u003c/a\u003e [doc] Update all-contributors\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/16df3dd4469eae105c104deebfac951894f64e03\"\u003e\u003ccode\u003e16df3dd\u003c/code\u003e\u003c/a\u003e [core] Make CPD report maximal, non-repeating and non-overlapping duplicates ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/202943e0cfc2e5dc4f3b24778460693c5aeb9443\"\u003e\u003ccode\u003e202943e\u003c/code\u003e\u003c/a\u003e [java] Fix \u003ca href=\"https://redirect.github.com/pmd/pmd/issues/4948\"\u003e#4948\u003c/a\u003e - ImplicitSwitchFallthrough false positive with nested switc...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pmd/pmd/compare/pmd_releases/7.0.0...pmd_releases/7.1.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot merge` will merge this PR after your CI passes on it\n- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it\n- `@dependabot cancel merge` will cancel a previously requested merge and block automerging\n- `@dependabot reopen` will reopen this PR if it is closed\n- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)\n\n\n\u003c/details\u003e","html_url":"https://github.com/apache/maven-pmd-plugin/pull/149","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/apache%2Fmaven-pmd-plugin/issues/149","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/149/packages"}],"issue_packages":[{"old_version":"7.17.0","new_version":"7.18.0","update_type":"minor","path":null,"pr_created_at":"2025-11-03T03:05:48.000Z","version_change":"7.17.0 → 7.18.0","issue":{"uuid":"3580373115","node_id":"PR_kwDOG8B9086xGZWK","number":1500,"state":"closed","title":"Bump pmdVersion from 7.17.0 to 7.18.0","user":"dependabot[bot]","labels":["dependencies","java"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2025-11-03T21:32:06.000Z","author_association":null,"state_reason":null,"created_at":"2025-11-03T03:05:48.000Z","updated_at":"2025-11-03T21:32:16.000Z","time_to_close":66378,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","packages":[{"name":"pmdVersion","old_version":"7.17.0","new_version":"7.18.0","repository_url":null}],"path":null,"ecosystem":"maven"},"body":"Bumps `pmdVersion` from 7.17.0 to 7.18.0.\nUpdates `net.sourceforge.pmd:pmd-core` from 7.17.0 to 7.18.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pmd/pmd/releases\"\u003enet.sourceforge.pmd:pmd-core's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ePMD 7.18.0 (31-October-2025)\u003c/h2\u003e\n\u003ch2\u003e31-October-2025 - 7.18.0\u003c/h2\u003e\n\u003cp\u003eThe PMD team is pleased to announce PMD 7.18.0.\u003c/p\u003e\n\u003cp\u003eThis is a minor release.\u003c/p\u003e\n\u003ch3\u003eTable Of Contents\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-and-noteworthy\"\u003e🚀️ New and noteworthy\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#build-requirement-is-java-17\"\u003eBuild Requirement is Java 17\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-and-changed-rules\"\u003e🌟️ New and Changed Rules\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-rules\"\u003eNew Rules\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#changed-rules\"\u003eChanged Rules\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#deprecated-rules\"\u003eDeprecated Rules\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#fixed-issues\"\u003e🐛️ Fixed Issues\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#api-changes\"\u003e🚨️ API Changes\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#deprecations\"\u003eDeprecations\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#merged-pull-requests\"\u003e✨️ Merged pull requests\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#dependency-updates\"\u003e📦️ Dependency updates\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#stats\"\u003e📈️ Stats\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🚀️ New and noteworthy\u003c/h3\u003e\n\u003ch4\u003eBuild Requirement is Java 17\u003c/h4\u003e\n\u003cp\u003eFrom now on, Java 17 or newer is required to build PMD. PMD itself still remains compatible with Java 8,\nso that it still can be used in a pure Java 8 environment. This allows us to use the latest\ncheckstyle version during the build.\u003c/p\u003e\n\u003ch3\u003e🌟️ New and Changed Rules\u003c/h3\u003e\n\u003ch4\u003eNew Rules\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eThe new Java rule \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.18.0/pmd_rules_java_errorprone.html#identicalconditionalbranches\"\u003e\u003ccode\u003eIdenticalConditionalBranches\u003c/code\u003e\u003c/a\u003e finds conditional statements\nthat do the same thing when the condition is true and false. This is either incorrect or redundant.\u003c/li\u003e\n\u003cli\u003eThe new Java rule \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.18.0/pmd_rules_java_bestpractices.html#labeledstatement\"\u003e\u003ccode\u003eLabeledStatement\u003c/code\u003e\u003c/a\u003e finds labeled statements in code.\nLabels make control flow difficult to understand and should be avoided. By default, the rule allows labeled\nloops (do, while, for). But it has a property to flag also those labeled loops.\u003c/li\u003e\n\u003cli\u003eThe new Java rule \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.18.0/pmd_rules_java_bestpractices.html#unusedlabel\"\u003e\u003ccode\u003eUnusedLabel\u003c/code\u003e\u003c/a\u003e finds unused labels which are unnecessary and\nonly make the code hard to read. This new rule will be part of the quickstart ruleset.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003eChanged Rules\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.18.0/pmd_rules_java_codestyle.html#confusingternary\"\u003e\u003ccode\u003eConfusingTernary\u003c/code\u003e\u003c/a\u003e has a new property \u003ccode\u003enullCheckBranch\u003c/code\u003e to control, whether null-checks\nshould be allowed (the default case) or should lead to a violation.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.18.0/pmd_rules_java_errorprone.html#avoidcatchinggenericexception\"\u003e\u003ccode\u003eAvoidCatchingGenericException\u003c/code\u003e\u003c/a\u003e is now configurable with the new property\n\u003ccode\u003etypesThatShouldNotBeCaught\u003c/code\u003e.\u003cbr /\u003e\n⚠️ The rule has also been moved from category \u0026quot;Design\u0026quot; to category \u0026quot;Error Prone\u0026quot;. If you are currently bulk-adding\nall the rules from the \u0026quot;Design\u0026quot; category into your custom ruleset, then you need to add the rule explicitly\nagain (otherwise it won't be included anymore):\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/c37a323e288202e21f69449a95d3d4c024455ec8\"\u003e\u003ccode\u003ec37a323\u003c/code\u003e\u003c/a\u003e [release] prepare release pmd_releases/7.18.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/825f6797829681ed0bea67bd8057beb3dc1d55d9\"\u003e\u003ccode\u003e825f679\u003c/code\u003e\u003c/a\u003e Prepare pmd release 7.18.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/f59b4d545b92189141ba366bb01ee50a783e4e93\"\u003e\u003ccode\u003ef59b4d5\u003c/code\u003e\u003c/a\u003e Update SPONSORS.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/aed481242341162e74dd16efcbec31f4052e9cfe\"\u003e\u003ccode\u003eaed4812\u003c/code\u003e\u003c/a\u003e chore(deps): bump io.github.apex-dev-tools:apex-ls_2.13 from 5.10.0 to 6.0.1 ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/7fdf46607c426702279f6c398f7844e40204c081\"\u003e\u003ccode\u003e7fdf466\u003c/code\u003e\u003c/a\u003e Update contributors\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/46f8b5fd20dea6a803c4b90c070fa672fb930bc3\"\u003e\u003ccode\u003e46f8b5f\u003c/code\u003e\u003c/a\u003e [doc] Update release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/db8d30584da35d60962c1a72dd560809ea2d4513\"\u003e\u003ccode\u003edb8d305\u003c/code\u003e\u003c/a\u003e [java] Fix \u003ca href=\"https://redirect.github.com/pmd/pmd/issues/6131\"\u003e#6131\u003c/a\u003e: Correct enum values for ModifierOrder (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/6185\"\u003e#6185\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/e4f94a681052127b15b6be30a33ff8bdfc1e44f1\"\u003e\u003ccode\u003ee4f94a6\u003c/code\u003e\u003c/a\u003e [java] Fix \u003ca href=\"https://redirect.github.com/pmd/pmd/issues/6131\"\u003e#6131\u003c/a\u003e: Correct enum values for ModifierOrder\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/d679f5d51ab770f5ee218f5ae70c5a95835c624d\"\u003e\u003ccode\u003ed679f5d\u003c/code\u003e\u003c/a\u003e [java] InefficientEmptyStringCheck should include String#strip (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/6172\"\u003e#6172\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/c04e4284ace4917969549af4767443699692a025\"\u003e\u003ccode\u003ec04e428\u003c/code\u003e\u003c/a\u003e [doc] Update release notes (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/6172\"\u003e#6172\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pmd/pmd/compare/pmd_releases/7.17.0...pmd_releases/7.18.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `net.sourceforge.pmd:pmd-java` from 7.17.0 to 7.18.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pmd/pmd/releases\"\u003enet.sourceforge.pmd:pmd-java's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ePMD 7.18.0 (31-October-2025)\u003c/h2\u003e\n\u003ch2\u003e31-October-2025 - 7.18.0\u003c/h2\u003e\n\u003cp\u003eThe PMD team is pleased to announce PMD 7.18.0.\u003c/p\u003e\n\u003cp\u003eThis is a minor release.\u003c/p\u003e\n\u003ch3\u003eTable Of Contents\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-and-noteworthy\"\u003e🚀️ New and noteworthy\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#build-requirement-is-java-17\"\u003eBuild Requirement is Java 17\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-and-changed-rules\"\u003e🌟️ New and Changed Rules\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-rules\"\u003eNew Rules\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#changed-rules\"\u003eChanged Rules\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#deprecated-rules\"\u003eDeprecated Rules\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#fixed-issues\"\u003e🐛️ Fixed Issues\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#api-changes\"\u003e🚨️ API Changes\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#deprecations\"\u003eDeprecations\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#merged-pull-requests\"\u003e✨️ Merged pull requests\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#dependency-updates\"\u003e📦️ Dependency updates\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#stats\"\u003e📈️ Stats\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🚀️ New and noteworthy\u003c/h3\u003e\n\u003ch4\u003eBuild Requirement is Java 17\u003c/h4\u003e\n\u003cp\u003eFrom now on, Java 17 or newer is required to build PMD. PMD itself still remains compatible with Java 8,\nso that it still can be used in a pure Java 8 environment. This allows us to use the latest\ncheckstyle version during the build.\u003c/p\u003e\n\u003ch3\u003e🌟️ New and Changed Rules\u003c/h3\u003e\n\u003ch4\u003eNew Rules\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eThe new Java rule \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.18.0/pmd_rules_java_errorprone.html#identicalconditionalbranches\"\u003e\u003ccode\u003eIdenticalConditionalBranches\u003c/code\u003e\u003c/a\u003e finds conditional statements\nthat do the same thing when the condition is true and false. This is either incorrect or redundant.\u003c/li\u003e\n\u003cli\u003eThe new Java rule \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.18.0/pmd_rules_java_bestpractices.html#labeledstatement\"\u003e\u003ccode\u003eLabeledStatement\u003c/code\u003e\u003c/a\u003e finds labeled statements in code.\nLabels make control flow difficult to understand and should be avoided. By default, the rule allows labeled\nloops (do, while, for). But it has a property to flag also those labeled loops.\u003c/li\u003e\n\u003cli\u003eThe new Java rule \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.18.0/pmd_rules_java_bestpractices.html#unusedlabel\"\u003e\u003ccode\u003eUnusedLabel\u003c/code\u003e\u003c/a\u003e finds unused labels which are unnecessary and\nonly make the code hard to read. This new rule will be part of the quickstart ruleset.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003eChanged Rules\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.18.0/pmd_rules_java_codestyle.html#confusingternary\"\u003e\u003ccode\u003eConfusingTernary\u003c/code\u003e\u003c/a\u003e has a new property \u003ccode\u003enullCheckBranch\u003c/code\u003e to control, whether null-checks\nshould be allowed (the default case) or should lead to a violation.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.18.0/pmd_rules_java_errorprone.html#avoidcatchinggenericexception\"\u003e\u003ccode\u003eAvoidCatchingGenericException\u003c/code\u003e\u003c/a\u003e is now configurable with the new property\n\u003ccode\u003etypesThatShouldNotBeCaught\u003c/code\u003e.\u003cbr /\u003e\n⚠️ The rule has also been moved from category \u0026quot;Design\u0026quot; to category \u0026quot;Error Prone\u0026quot;. If you are currently bulk-adding\nall the rules from the \u0026quot;Design\u0026quot; category into your custom ruleset, then you need to add the rule explicitly\nagain (otherwise it won't be included anymore):\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/c37a323e288202e21f69449a95d3d4c024455ec8\"\u003e\u003ccode\u003ec37a323\u003c/code\u003e\u003c/a\u003e [release] prepare release pmd_releases/7.18.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/825f6797829681ed0bea67bd8057beb3dc1d55d9\"\u003e\u003ccode\u003e825f679\u003c/code\u003e\u003c/a\u003e Prepare pmd release 7.18.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/f59b4d545b92189141ba366bb01ee50a783e4e93\"\u003e\u003ccode\u003ef59b4d5\u003c/code\u003e\u003c/a\u003e Update SPONSORS.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/aed481242341162e74dd16efcbec31f4052e9cfe\"\u003e\u003ccode\u003eaed4812\u003c/code\u003e\u003c/a\u003e chore(deps): bump io.github.apex-dev-tools:apex-ls_2.13 from 5.10.0 to 6.0.1 ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/7fdf46607c426702279f6c398f7844e40204c081\"\u003e\u003ccode\u003e7fdf466\u003c/code\u003e\u003c/a\u003e Update contributors\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/46f8b5fd20dea6a803c4b90c070fa672fb930bc3\"\u003e\u003ccode\u003e46f8b5f\u003c/code\u003e\u003c/a\u003e [doc] Update release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/db8d30584da35d60962c1a72dd560809ea2d4513\"\u003e\u003ccode\u003edb8d305\u003c/code\u003e\u003c/a\u003e [java] Fix \u003ca href=\"https://redirect.github.com/pmd/pmd/issues/6131\"\u003e#6131\u003c/a\u003e: Correct enum values for ModifierOrder (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/6185\"\u003e#6185\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/e4f94a681052127b15b6be30a33ff8bdfc1e44f1\"\u003e\u003ccode\u003ee4f94a6\u003c/code\u003e\u003c/a\u003e [java] Fix \u003ca href=\"https://redirect.github.com/pmd/pmd/issues/6131\"\u003e#6131\u003c/a\u003e: Correct enum values for ModifierOrder\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/d679f5d51ab770f5ee218f5ae70c5a95835c624d\"\u003e\u003ccode\u003ed679f5d\u003c/code\u003e\u003c/a\u003e [java] InefficientEmptyStringCheck should include String#strip (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/6172\"\u003e#6172\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/c04e4284ace4917969549af4767443699692a025\"\u003e\u003ccode\u003ec04e428\u003c/code\u003e\u003c/a\u003e [doc] Update release notes (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/6172\"\u003e#6172\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pmd/pmd/compare/pmd_releases/7.17.0...pmd_releases/7.18.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `net.sourceforge.pmd:pmd-javascript` from 7.17.0 to 7.18.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pmd/pmd/releases\"\u003enet.sourceforge.pmd:pmd-javascript's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ePMD 7.18.0 (31-October-2025)\u003c/h2\u003e\n\u003ch2\u003e31-October-2025 - 7.18.0\u003c/h2\u003e\n\u003cp\u003eThe PMD team is pleased to announce PMD 7.18.0.\u003c/p\u003e\n\u003cp\u003eThis is a minor release.\u003c/p\u003e\n\u003ch3\u003eTable Of Contents\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-and-noteworthy\"\u003e🚀️ New and noteworthy\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#build-requirement-is-java-17\"\u003eBuild Requirement is Java 17\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-and-changed-rules\"\u003e🌟️ New and Changed Rules\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-rules\"\u003eNew Rules\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#changed-rules\"\u003eChanged Rules\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#deprecated-rules\"\u003eDeprecated Rules\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#fixed-issues\"\u003e🐛️ Fixed Issues\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#api-changes\"\u003e🚨️ API Changes\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#deprecations\"\u003eDeprecations\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#merged-pull-requests\"\u003e✨️ Merged pull requests\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#dependency-updates\"\u003e📦️ Dependency updates\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#stats\"\u003e📈️ Stats\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🚀️ New and noteworthy\u003c/h3\u003e\n\u003ch4\u003eBuild Requirement is Java 17\u003c/h4\u003e\n\u003cp\u003eFrom now on, Java 17 or newer is required to build PMD. PMD itself still remains compatible with Java 8,\nso that it still can be used in a pure Java 8 environment. This allows us to use the latest\ncheckstyle version during the build.\u003c/p\u003e\n\u003ch3\u003e🌟️ New and Changed Rules\u003c/h3\u003e\n\u003ch4\u003eNew Rules\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eThe new Java rule \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.18.0/pmd_rules_java_errorprone.html#identicalconditionalbranches\"\u003e\u003ccode\u003eIdenticalConditionalBranches\u003c/code\u003e\u003c/a\u003e finds conditional statements\nthat do the same thing when the condition is true and false. This is either incorrect or redundant.\u003c/li\u003e\n\u003cli\u003eThe new Java rule \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.18.0/pmd_rules_java_bestpractices.html#labeledstatement\"\u003e\u003ccode\u003eLabeledStatement\u003c/code\u003e\u003c/a\u003e finds labeled statements in code.\nLabels make control flow difficult to understand and should be avoided. By default, the rule allows labeled\nloops (do, while, for). But it has a property to flag also those labeled loops.\u003c/li\u003e\n\u003cli\u003eThe new Java rule \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.18.0/pmd_rules_java_bestpractices.html#unusedlabel\"\u003e\u003ccode\u003eUnusedLabel\u003c/code\u003e\u003c/a\u003e finds unused labels which are unnecessary and\nonly make the code hard to read. This new rule will be part of the quickstart ruleset.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003eChanged Rules\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.18.0/pmd_rules_java_codestyle.html#confusingternary\"\u003e\u003ccode\u003eConfusingTernary\u003c/code\u003e\u003c/a\u003e has a new property \u003ccode\u003enullCheckBranch\u003c/code\u003e to control, whether null-checks\nshould be allowed (the default case) or should lead to a violation.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.18.0/pmd_rules_java_errorprone.html#avoidcatchinggenericexception\"\u003e\u003ccode\u003eAvoidCatchingGenericException\u003c/code\u003e\u003c/a\u003e is now configurable with the new property\n\u003ccode\u003etypesThatShouldNotBeCaught\u003c/code\u003e.\u003cbr /\u003e\n⚠️ The rule has also been moved from category \u0026quot;Design\u0026quot; to category \u0026quot;Error Prone\u0026quot;. If you are currently bulk-adding\nall the rules from the \u0026quot;Design\u0026quot; category into your custom ruleset, then you need to add the rule explicitly\nagain (otherwise it won't be included anymore):\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/c37a323e288202e21f69449a95d3d4c024455ec8\"\u003e\u003ccode\u003ec37a323\u003c/code\u003e\u003c/a\u003e [release] prepare release pmd_releases/7.18.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/825f6797829681ed0bea67bd8057beb3dc1d55d9\"\u003e\u003ccode\u003e825f679\u003c/code\u003e\u003c/a\u003e Prepare pmd release 7.18.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/f59b4d545b92189141ba366bb01ee50a783e4e93\"\u003e\u003ccode\u003ef59b4d5\u003c/code\u003e\u003c/a\u003e Update SPONSORS.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/aed481242341162e74dd16efcbec31f4052e9cfe\"\u003e\u003ccode\u003eaed4812\u003c/code\u003e\u003c/a\u003e chore(deps): bump io.github.apex-dev-tools:apex-ls_2.13 from 5.10.0 to 6.0.1 ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/7fdf46607c426702279f6c398f7844e40204c081\"\u003e\u003ccode\u003e7fdf466\u003c/code\u003e\u003c/a\u003e Update contributors\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/46f8b5fd20dea6a803c4b90c070fa672fb930bc3\"\u003e\u003ccode\u003e46f8b5f\u003c/code\u003e\u003c/a\u003e [doc] Update release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/db8d30584da35d60962c1a72dd560809ea2d4513\"\u003e\u003ccode\u003edb8d305\u003c/code\u003e\u003c/a\u003e [java] Fix \u003ca href=\"https://redirect.github.com/pmd/pmd/issues/6131\"\u003e#6131\u003c/a\u003e: Correct enum values for ModifierOrder (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/6185\"\u003e#6185\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/e4f94a681052127b15b6be30a33ff8bdfc1e44f1\"\u003e\u003ccode\u003ee4f94a6\u003c/code\u003e\u003c/a\u003e [java] Fix \u003ca href=\"https://redirect.github.com/pmd/pmd/issues/6131\"\u003e#6131\u003c/a\u003e: Correct enum values for ModifierOrder\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/d679f5d51ab770f5ee218f5ae70c5a95835c624d\"\u003e\u003ccode\u003ed679f5d\u003c/code\u003e\u003c/a\u003e [java] InefficientEmptyStringCheck should include String#strip (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/6172\"\u003e#6172\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/c04e4284ace4917969549af4767443699692a025\"\u003e\u003ccode\u003ec04e428\u003c/code\u003e\u003c/a\u003e [doc] Update release notes (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/6172\"\u003e#6172\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pmd/pmd/compare/pmd_releases/7.17.0...pmd_releases/7.18.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `net.sourceforge.pmd:pmd-jsp` from 7.17.0 to 7.18.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pmd/pmd/releases\"\u003enet.sourceforge.pmd:pmd-jsp's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ePMD 7.18.0 (31-October-2025)\u003c/h2\u003e\n\u003ch2\u003e31-October-2025 - 7.18.0\u003c/h2\u003e\n\u003cp\u003eThe PMD team is pleased to announce PMD 7.18.0.\u003c/p\u003e\n\u003cp\u003eThis is a minor release.\u003c/p\u003e\n\u003ch3\u003eTable Of Contents\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-and-noteworthy\"\u003e🚀️ New and noteworthy\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#build-requirement-is-java-17\"\u003eBuild Requirement is Java 17\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-and-changed-rules\"\u003e🌟️ New and Changed Rules\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-rules\"\u003eNew Rules\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#changed-rules\"\u003eChanged Rules\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#deprecated-rules\"\u003eDeprecated Rules\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#fixed-issues\"\u003e🐛️ Fixed Issues\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#api-changes\"\u003e🚨️ API Changes\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#deprecations\"\u003eDeprecations\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#merged-pull-requests\"\u003e✨️ Merged pull requests\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#dependency-updates\"\u003e📦️ Dependency updates\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#stats\"\u003e📈️ Stats\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🚀️ New and noteworthy\u003c/h3\u003e\n\u003ch4\u003eBuild Requirement is Java 17\u003c/h4\u003e\n\u003cp\u003eFrom now on, Java 17 or newer is required to build PMD. PMD itself still remains compatible with Java 8,\nso that it still can be used in a pure Java 8 environment. This allows us to use the latest\ncheckstyle version during the build.\u003c/p\u003e\n\u003ch3\u003e🌟️ New and Changed Rules\u003c/h3\u003e\n\u003ch4\u003eNew Rules\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eThe new Java rule \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.18.0/pmd_rules_java_errorprone.html#identicalconditionalbranches\"\u003e\u003ccode\u003eIdenticalConditionalBranches\u003c/code\u003e\u003c/a\u003e finds conditional statements\nthat do the same thing when the condition is true and false. This is either incorrect or redundant.\u003c/li\u003e\n\u003cli\u003eThe new Java rule \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.18.0/pmd_rules_java_bestpractices.html#labeledstatement\"\u003e\u003ccode\u003eLabeledStatement\u003c/code\u003e\u003c/a\u003e finds labeled statements in code.\nLabels make control flow difficult to understand and should be avoided. By default, the rule allows labeled\nloops (do, while, for). But it has a property to flag also those labeled loops.\u003c/li\u003e\n\u003cli\u003eThe new Java rule \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.18.0/pmd_rules_java_bestpractices.html#unusedlabel\"\u003e\u003ccode\u003eUnusedLabel\u003c/code\u003e\u003c/a\u003e finds unused labels which are unnecessary and\nonly make the code hard to read. This new rule will be part of the quickstart ruleset.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003eChanged Rules\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.18.0/pmd_rules_java_codestyle.html#confusingternary\"\u003e\u003ccode\u003eConfusingTernary\u003c/code\u003e\u003c/a\u003e has a new property \u003ccode\u003enullCheckBranch\u003c/code\u003e to control, whether null-checks\nshould be allowed (the default case) or should lead to a violation.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.18.0/pmd_rules_java_errorprone.html#avoidcatchinggenericexception\"\u003e\u003ccode\u003eAvoidCatchingGenericException\u003c/code\u003e\u003c/a\u003e is now configurable with the new property\n\u003ccode\u003etypesThatShouldNotBeCaught\u003c/code\u003e.\u003cbr /\u003e\n⚠️ The rule has also been moved from category \u0026quot;Design\u0026quot; to category \u0026quot;Error Prone\u0026quot;. If you are currently bulk-adding\nall the rules from the \u0026quot;Design\u0026quot; category into your custom ruleset, then you need to add the rule explicitly\nagain (otherwise it won't be included anymore):\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/c37a323e288202e21f69449a95d3d4c024455ec8\"\u003e\u003ccode\u003ec37a323\u003c/code\u003e\u003c/a\u003e [release] prepare release pmd_releases/7.18.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/825f6797829681ed0bea67bd8057beb3dc1d55d9\"\u003e\u003ccode\u003e825f679\u003c/code\u003e\u003c/a\u003e Prepare pmd release 7.18.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/f59b4d545b92189141ba366bb01ee50a783e4e93\"\u003e\u003ccode\u003ef59b4d5\u003c/code\u003e\u003c/a\u003e Update SPONSORS.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/aed481242341162e74dd16efcbec31f4052e9cfe\"\u003e\u003ccode\u003eaed4812\u003c/code\u003e\u003c/a\u003e chore(deps): bump io.github.apex-dev-tools:apex-ls_2.13 from 5.10.0 to 6.0.1 ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/7fdf46607c426702279f6c398f7844e40204c081\"\u003e\u003ccode\u003e7fdf466\u003c/code\u003e\u003c/a\u003e Update contributors\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/46f8b5fd20dea6a803c4b90c070fa672fb930bc3\"\u003e\u003ccode\u003e46f8b5f\u003c/code\u003e\u003c/a\u003e [doc] Update release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/db8d30584da35d60962c1a72dd560809ea2d4513\"\u003e\u003ccode\u003edb8d305\u003c/code\u003e\u003c/a\u003e [java] Fix \u003ca href=\"https://redirect.github.com/pmd/pmd/issues/6131\"\u003e#6131\u003c/a\u003e: Correct enum values for ModifierOrder (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/6185\"\u003e#6185\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/e4f94a681052127b15b6be30a33ff8bdfc1e44f1\"\u003e\u003ccode\u003ee4f94a6\u003c/code\u003e\u003c/a\u003e [java] Fix \u003ca href=\"https://redirect.github.com/pmd/pmd/issues/6131\"\u003e#6131\u003c/a\u003e: Correct enum values for ModifierOrder\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/d679f5d51ab770f5ee218f5ae70c5a95835c624d\"\u003e\u003ccode\u003ed679f5d\u003c/code\u003e\u003c/a\u003e [java] InefficientEmptyStringCheck should include String#strip (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/6172\"\u003e#6172\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/c04e4284ace4917969549af4767443699692a025\"\u003e\u003ccode\u003ec04e428\u003c/code\u003e\u003c/a\u003e [doc] Update release notes (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/6172\"\u003e#6172\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pmd/pmd/compare/pmd_releases/7.17.0...pmd_releases/7.18.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot merge` will merge this PR after your CI passes on it\n- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it\n- `@dependabot cancel merge` will cancel a previously requested merge and block automerging\n- `@dependabot reopen` will reopen this PR if it is closed\n- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)\n\n\n\u003c/details\u003e","html_url":"https://github.com/instancio/instancio/pull/1500","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/instancio%2Finstancio/issues/1500","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/1500/packages"}},{"old_version":"7.16.0","new_version":"7.17.0","update_type":"minor","path":"/java","pr_created_at":"2025-09-15T04:26:47.000Z","version_change":"7.16.0 → 7.17.0","issue":{"uuid":"2827739389","node_id":"PR_kwDOEZ_GmM6oi-D9","number":936,"state":"closed","title":"Bump pmdVersion from 7.16.0 to 7.17.0 in /java","user":"dependabot[bot]","labels":["dependencies","java"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2025-09-18T10:35:45.000Z","author_association":"CONTRIBUTOR","state_reason":null,"created_at":"2025-09-15T04:26:47.000Z","updated_at":"2025-09-18T10:35:46.000Z","time_to_close":281338,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","packages":[{"name":"pmdVersion","old_version":"7.16.0","new_version":"7.17.0","repository_url":null}],"path":"/java","ecosystem":"maven"},"body":"Bumps `pmdVersion` from 7.16.0 to 7.17.0.\nUpdates `net.sourceforge.pmd:pmd-core` from 7.16.0 to 7.17.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pmd/pmd/releases\"\u003enet.sourceforge.pmd:pmd-core's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ePMD 7.17.0 (12-September-2025)\u003c/h2\u003e\n\u003ch2\u003e12-September-2025 - 7.17.0\u003c/h2\u003e\n\u003cp\u003eThe PMD team is pleased to announce PMD 7.17.0.\u003c/p\u003e\n\u003cp\u003eThis is a minor release.\u003c/p\u003e\n\u003ch3\u003eTable Of Contents\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-and-noteworthy\"\u003e🚀 New and noteworthy\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-rules\"\u003e✨ New Rules\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#deprecated-rules\"\u003eDeprecated Rules\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#cpd-new-markdown-report-format\"\u003eCPD: New Markdown Report Format\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#fixed-issues\"\u003e🐛 Fixed Issues\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#api-changes\"\u003e🚨 API Changes\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#deprecations\"\u003eDeprecations\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#experimental-api\"\u003eExperimental API\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#pmd-report-format-csv\"\u003ePMD Report Format CSV\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#rule-test-schema\"\u003eRule Test Schema\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#deprecations\"\u003eDeprecations\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#merged-pull-requests\"\u003e✨ Merged pull requests\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#dependency-updates\"\u003e📦 Dependency updates\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#stats\"\u003e📈 Stats\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🚀 New and noteworthy\u003c/h3\u003e\n\u003ch4\u003e✨ New Rules\u003c/h4\u003e\n\u003cp\u003eThis release brings several new rules for both Java and Apex. Please try them out\nand submit feedback on \u003ca href=\"https://github.com/pmd/pmd/issues\"\u003eour issue tracker\u003c/a\u003e!\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eThe new apex rule \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.17.0/pmd_rules_apex_codestyle.html#annotationsnamingconventions\"\u003e\u003ccode\u003eAnnotationsNamingConventions\u003c/code\u003e\u003c/a\u003e enforces that annotations\nare used consistently in PascalCase.\u003cbr /\u003e\nThe rule is referenced in the quickstart.xml ruleset for Apex.\u003c/li\u003e\n\u003cli\u003eThe new java rule \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.17.0/pmd_rules_java_codestyle.html#typeparameternamingconventions\"\u003e\u003ccode\u003eTypeParameterNamingConventions\u003c/code\u003e\u003c/a\u003e replaces the now deprecated rule\nGenericsNaming. The new rule is configurable and checks for naming conventions of type parameters in\ngeneric types and methods. It can be configured via a regular expression.\u003cbr /\u003e\nBy default, this rule uses the standard Java naming convention (single uppercase letter).\u003cbr /\u003e\nThe rule is referenced in the quickstart.xml ruleset for Java.\u003c/li\u003e\n\u003cli\u003eThe new java rule \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.17.0/pmd_rules_java_errorprone.html#overridebothequalsandhashcodeoncomparable\"\u003e\u003ccode\u003eOverrideBothEqualsAndHashCodeOnComparable\u003c/code\u003e\u003c/a\u003e finds missing\n\u003ccode\u003ehashCode()\u003c/code\u003e and/or \u003ccode\u003eequals()\u003c/code\u003e methods on types that implement \u003ccode\u003eComparable\u003c/code\u003e. This is important if\ninstances of these classes are used in collections. Failing to do so can lead to unexpected behavior in sets\nwhich then do not conform to the \u003ccode\u003eSet\u003c/code\u003e interface. While the \u003ccode\u003eSet\u003c/code\u003e interface relies on\n\u003ccode\u003eequals()\u003c/code\u003e to determine object equality, sorted sets like \u003ccode\u003eTreeSet\u003c/code\u003e use\n\u003ccode\u003ecompareTo()\u003c/code\u003e instead. The same issue can arise when such objects are used\nas keys in sorted maps.\u003cbr /\u003e\nThis rule is very similar to \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.17.0/pmd_rules_java_errorprone.html#overridebothequalsandhashcode\"\u003e\u003ccode\u003eOverrideBothEqualsAndHashcode\u003c/code\u003e\u003c/a\u003e which has always been\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/d2942d5ded8e3f967ba8872f3dc58a7bdffa73bf\"\u003e\u003ccode\u003ed2942d5\u003c/code\u003e\u003c/a\u003e [release] prepare release pmd_releases/7.17.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/76cc98aac0f9aadc62cb6b3795069b3a552d5a51\"\u003e\u003ccode\u003e76cc98a\u003c/code\u003e\u003c/a\u003e Prepare pmd release 7.17.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/58dfb170213b1d1e4dc2b2e4e020ff4f28ea60b7\"\u003e\u003ccode\u003e58dfb17\u003c/code\u003e\u003c/a\u003e [doc] Update release notes - add missing new rule fix issues\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/1b23cb3301bc156e67603f37c4593efe8925712b\"\u003e\u003ccode\u003e1b23cb3\u003c/code\u003e\u003c/a\u003e [java] More detailed message for AvoidInstanceofChecksInCatchClause (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/6009\"\u003e#6009\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/f8a962ac220293df7c26a612398306499d9ea5c2\"\u003e\u003ccode\u003ef8a962a\u003c/code\u003e\u003c/a\u003e Merge branch 'main' into instanceof-message\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/ce3b01fe8a67c7f45e958861b2ab390f74cf534b\"\u003e\u003ccode\u003ece3b01f\u003c/code\u003e\u003c/a\u003e [core] Fix \u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5849\"\u003e#5849\u003c/a\u003e: Support Markdown Output for CPD Reports (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/6008\"\u003e#6008\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/2e84a82c432d53755d81bd06c98a478d6bb69ecb\"\u003e\u003ccode\u003e2e84a82\u003c/code\u003e\u003c/a\u003e Merge branch 'main' into pr-6009\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/d55bea2ea019e52c60089f0be946ccfcfe03d7ce\"\u003e\u003ccode\u003ed55bea2\u003c/code\u003e\u003c/a\u003e [doc] Update release notes (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/6009\"\u003e#6009\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/59ff6419ca22ccf27f335cd6fe5d58b94bf102be\"\u003e\u003ccode\u003e59ff641\u003c/code\u003e\u003c/a\u003e Merge branch 'main' into pr-6008\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/d34dbfcbeeb4004f5bb2ae14bda48045d8f9e0da\"\u003e\u003ccode\u003ed34dbfc\u003c/code\u003e\u003c/a\u003e [doc] Update release notes (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/6008\"\u003e#6008\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5849\"\u003e#5849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pmd/pmd/compare/pmd_releases/7.16.0...pmd_releases/7.17.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `net.sourceforge.pmd:pmd-java` from 7.16.0 to 7.17.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pmd/pmd/releases\"\u003enet.sourceforge.pmd:pmd-java's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ePMD 7.17.0 (12-September-2025)\u003c/h2\u003e\n\u003ch2\u003e12-September-2025 - 7.17.0\u003c/h2\u003e\n\u003cp\u003eThe PMD team is pleased to announce PMD 7.17.0.\u003c/p\u003e\n\u003cp\u003eThis is a minor release.\u003c/p\u003e\n\u003ch3\u003eTable Of Contents\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-and-noteworthy\"\u003e🚀 New and noteworthy\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-rules\"\u003e✨ New Rules\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#deprecated-rules\"\u003eDeprecated Rules\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#cpd-new-markdown-report-format\"\u003eCPD: New Markdown Report Format\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#fixed-issues\"\u003e🐛 Fixed Issues\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#api-changes\"\u003e🚨 API Changes\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#deprecations\"\u003eDeprecations\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#experimental-api\"\u003eExperimental API\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#pmd-report-format-csv\"\u003ePMD Report Format CSV\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#rule-test-schema\"\u003eRule Test Schema\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#deprecations\"\u003eDeprecations\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#merged-pull-requests\"\u003e✨ Merged pull requests\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#dependency-updates\"\u003e📦 Dependency updates\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#stats\"\u003e📈 Stats\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🚀 New and noteworthy\u003c/h3\u003e\n\u003ch4\u003e✨ New Rules\u003c/h4\u003e\n\u003cp\u003eThis release brings several new rules for both Java and Apex. Please try them out\nand submit feedback on \u003ca href=\"https://github.com/pmd/pmd/issues\"\u003eour issue tracker\u003c/a\u003e!\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eThe new apex rule \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.17.0/pmd_rules_apex_codestyle.html#annotationsnamingconventions\"\u003e\u003ccode\u003eAnnotationsNamingConventions\u003c/code\u003e\u003c/a\u003e enforces that annotations\nare used consistently in PascalCase.\u003cbr /\u003e\nThe rule is referenced in the quickstart.xml ruleset for Apex.\u003c/li\u003e\n\u003cli\u003eThe new java rule \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.17.0/pmd_rules_java_codestyle.html#typeparameternamingconventions\"\u003e\u003ccode\u003eTypeParameterNamingConventions\u003c/code\u003e\u003c/a\u003e replaces the now deprecated rule\nGenericsNaming. The new rule is configurable and checks for naming conventions of type parameters in\ngeneric types and methods. It can be configured via a regular expression.\u003cbr /\u003e\nBy default, this rule uses the standard Java naming convention (single uppercase letter).\u003cbr /\u003e\nThe rule is referenced in the quickstart.xml ruleset for Java.\u003c/li\u003e\n\u003cli\u003eThe new java rule \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.17.0/pmd_rules_java_errorprone.html#overridebothequalsandhashcodeoncomparable\"\u003e\u003ccode\u003eOverrideBothEqualsAndHashCodeOnComparable\u003c/code\u003e\u003c/a\u003e finds missing\n\u003ccode\u003ehashCode()\u003c/code\u003e and/or \u003ccode\u003eequals()\u003c/code\u003e methods on types that implement \u003ccode\u003eComparable\u003c/code\u003e. This is important if\ninstances of these classes are used in collections. Failing to do so can lead to unexpected behavior in sets\nwhich then do not conform to the \u003ccode\u003eSet\u003c/code\u003e interface. While the \u003ccode\u003eSet\u003c/code\u003e interface relies on\n\u003ccode\u003eequals()\u003c/code\u003e to determine object equality, sorted sets like \u003ccode\u003eTreeSet\u003c/code\u003e use\n\u003ccode\u003ecompareTo()\u003c/code\u003e instead. The same issue can arise when such objects are used\nas keys in sorted maps.\u003cbr /\u003e\nThis rule is very similar to \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.17.0/pmd_rules_java_errorprone.html#overridebothequalsandhashcode\"\u003e\u003ccode\u003eOverrideBothEqualsAndHashcode\u003c/code\u003e\u003c/a\u003e which has always been\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/d2942d5ded8e3f967ba8872f3dc58a7bdffa73bf\"\u003e\u003ccode\u003ed2942d5\u003c/code\u003e\u003c/a\u003e [release] prepare release pmd_releases/7.17.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/76cc98aac0f9aadc62cb6b3795069b3a552d5a51\"\u003e\u003ccode\u003e76cc98a\u003c/code\u003e\u003c/a\u003e Prepare pmd release 7.17.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/58dfb170213b1d1e4dc2b2e4e020ff4f28ea60b7\"\u003e\u003ccode\u003e58dfb17\u003c/code\u003e\u003c/a\u003e [doc] Update release notes - add missing new rule fix issues\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/1b23cb3301bc156e67603f37c4593efe8925712b\"\u003e\u003ccode\u003e1b23cb3\u003c/code\u003e\u003c/a\u003e [java] More detailed message for AvoidInstanceofChecksInCatchClause (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/6009\"\u003e#6009\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/f8a962ac220293df7c26a612398306499d9ea5c2\"\u003e\u003ccode\u003ef8a962a\u003c/code\u003e\u003c/a\u003e Merge branch 'main' into instanceof-message\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/ce3b01fe8a67c7f45e958861b2ab390f74cf534b\"\u003e\u003ccode\u003ece3b01f\u003c/code\u003e\u003c/a\u003e [core] Fix \u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5849\"\u003e#5849\u003c/a\u003e: Support Markdown Output for CPD Reports (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/6008\"\u003e#6008\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/2e84a82c432d53755d81bd06c98a478d6bb69ecb\"\u003e\u003ccode\u003e2e84a82\u003c/code\u003e\u003c/a\u003e Merge branch 'main' into pr-6009\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/d55bea2ea019e52c60089f0be946ccfcfe03d7ce\"\u003e\u003ccode\u003ed55bea2\u003c/code\u003e\u003c/a\u003e [doc] Update release notes (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/6009\"\u003e#6009\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/59ff6419ca22ccf27f335cd6fe5d58b94bf102be\"\u003e\u003ccode\u003e59ff641\u003c/code\u003e\u003c/a\u003e Merge branch 'main' into pr-6008\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/d34dbfcbeeb4004f5bb2ae14bda48045d8f9e0da\"\u003e\u003ccode\u003ed34dbfc\u003c/code\u003e\u003c/a\u003e [doc] Update release notes (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/6008\"\u003e#6008\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5849\"\u003e#5849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pmd/pmd/compare/pmd_releases/7.16.0...pmd_releases/7.17.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `net.sourceforge.pmd:pmd-javascript` from 7.16.0 to 7.17.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pmd/pmd/releases\"\u003enet.sourceforge.pmd:pmd-javascript's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ePMD 7.17.0 (12-September-2025)\u003c/h2\u003e\n\u003ch2\u003e12-September-2025 - 7.17.0\u003c/h2\u003e\n\u003cp\u003eThe PMD team is pleased to announce PMD 7.17.0.\u003c/p\u003e\n\u003cp\u003eThis is a minor release.\u003c/p\u003e\n\u003ch3\u003eTable Of Contents\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-and-noteworthy\"\u003e🚀 New and noteworthy\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-rules\"\u003e✨ New Rules\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#deprecated-rules\"\u003eDeprecated Rules\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#cpd-new-markdown-report-format\"\u003eCPD: New Markdown Report Format\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#fixed-issues\"\u003e🐛 Fixed Issues\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#api-changes\"\u003e🚨 API Changes\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#deprecations\"\u003eDeprecations\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#experimental-api\"\u003eExperimental API\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#pmd-report-format-csv\"\u003ePMD Report Format CSV\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#rule-test-schema\"\u003eRule Test Schema\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#deprecations\"\u003eDeprecations\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#merged-pull-requests\"\u003e✨ Merged pull requests\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#dependency-updates\"\u003e📦 Dependency updates\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#stats\"\u003e📈 Stats\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🚀 New and noteworthy\u003c/h3\u003e\n\u003ch4\u003e✨ New Rules\u003c/h4\u003e\n\u003cp\u003eThis release brings several new rules for both Java and Apex. Please try them out\nand submit feedback on \u003ca href=\"https://github.com/pmd/pmd/issues\"\u003eour issue tracker\u003c/a\u003e!\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eThe new apex rule \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.17.0/pmd_rules_apex_codestyle.html#annotationsnamingconventions\"\u003e\u003ccode\u003eAnnotationsNamingConventions\u003c/code\u003e\u003c/a\u003e enforces that annotations\nare used consistently in PascalCase.\u003cbr /\u003e\nThe rule is referenced in the quickstart.xml ruleset for Apex.\u003c/li\u003e\n\u003cli\u003eThe new java rule \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.17.0/pmd_rules_java_codestyle.html#typeparameternamingconventions\"\u003e\u003ccode\u003eTypeParameterNamingConventions\u003c/code\u003e\u003c/a\u003e replaces the now deprecated rule\nGenericsNaming. The new rule is configurable and checks for naming conventions of type parameters in\ngeneric types and methods. It can be configured via a regular expression.\u003cbr /\u003e\nBy default, this rule uses the standard Java naming convention (single uppercase letter).\u003cbr /\u003e\nThe rule is referenced in the quickstart.xml ruleset for Java.\u003c/li\u003e\n\u003cli\u003eThe new java rule \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.17.0/pmd_rules_java_errorprone.html#overridebothequalsandhashcodeoncomparable\"\u003e\u003ccode\u003eOverrideBothEqualsAndHashCodeOnComparable\u003c/code\u003e\u003c/a\u003e finds missing\n\u003ccode\u003ehashCode()\u003c/code\u003e and/or \u003ccode\u003eequals()\u003c/code\u003e methods on types that implement \u003ccode\u003eComparable\u003c/code\u003e. This is important if\ninstances of these classes are used in collections. Failing to do so can lead to unexpected behavior in sets\nwhich then do not conform to the \u003ccode\u003eSet\u003c/code\u003e interface. While the \u003ccode\u003eSet\u003c/code\u003e interface relies on\n\u003ccode\u003eequals()\u003c/code\u003e to determine object equality, sorted sets like \u003ccode\u003eTreeSet\u003c/code\u003e use\n\u003ccode\u003ecompareTo()\u003c/code\u003e instead. The same issue can arise when such objects are used\nas keys in sorted maps.\u003cbr /\u003e\nThis rule is very similar to \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.17.0/pmd_rules_java_errorprone.html#overridebothequalsandhashcode\"\u003e\u003ccode\u003eOverrideBothEqualsAndHashcode\u003c/code\u003e\u003c/a\u003e which has always been\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/d2942d5ded8e3f967ba8872f3dc58a7bdffa73bf\"\u003e\u003ccode\u003ed2942d5\u003c/code\u003e\u003c/a\u003e [release] prepare release pmd_releases/7.17.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/76cc98aac0f9aadc62cb6b3795069b3a552d5a51\"\u003e\u003ccode\u003e76cc98a\u003c/code\u003e\u003c/a\u003e Prepare pmd release 7.17.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/58dfb170213b1d1e4dc2b2e4e020ff4f28ea60b7\"\u003e\u003ccode\u003e58dfb17\u003c/code\u003e\u003c/a\u003e [doc] Update release notes - add missing new rule fix issues\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/1b23cb3301bc156e67603f37c4593efe8925712b\"\u003e\u003ccode\u003e1b23cb3\u003c/code\u003e\u003c/a\u003e [java] More detailed message for AvoidInstanceofChecksInCatchClause (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/6009\"\u003e#6009\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/f8a962ac220293df7c26a612398306499d9ea5c2\"\u003e\u003ccode\u003ef8a962a\u003c/code\u003e\u003c/a\u003e Merge branch 'main' into instanceof-message\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/ce3b01fe8a67c7f45e958861b2ab390f74cf534b\"\u003e\u003ccode\u003ece3b01f\u003c/code\u003e\u003c/a\u003e [core] Fix \u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5849\"\u003e#5849\u003c/a\u003e: Support Markdown Output for CPD Reports (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/6008\"\u003e#6008\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/2e84a82c432d53755d81bd06c98a478d6bb69ecb\"\u003e\u003ccode\u003e2e84a82\u003c/code\u003e\u003c/a\u003e Merge branch 'main' into pr-6009\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/d55bea2ea019e52c60089f0be946ccfcfe03d7ce\"\u003e\u003ccode\u003ed55bea2\u003c/code\u003e\u003c/a\u003e [doc] Update release notes (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/6009\"\u003e#6009\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/59ff6419ca22ccf27f335cd6fe5d58b94bf102be\"\u003e\u003ccode\u003e59ff641\u003c/code\u003e\u003c/a\u003e Merge branch 'main' into pr-6008\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/d34dbfcbeeb4004f5bb2ae14bda48045d8f9e0da\"\u003e\u003ccode\u003ed34dbfc\u003c/code\u003e\u003c/a\u003e [doc] Update release notes (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/6008\"\u003e#6008\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5849\"\u003e#5849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pmd/pmd/compare/pmd_releases/7.16.0...pmd_releases/7.17.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `net.sourceforge.pmd:pmd-jsp` from 7.16.0 to 7.17.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pmd/pmd/releases\"\u003enet.sourceforge.pmd:pmd-jsp's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ePMD 7.17.0 (12-September-2025)\u003c/h2\u003e\n\u003ch2\u003e12-September-2025 - 7.17.0\u003c/h2\u003e\n\u003cp\u003eThe PMD team is pleased to announce PMD 7.17.0.\u003c/p\u003e\n\u003cp\u003eThis is a minor release.\u003c/p\u003e\n\u003ch3\u003eTable Of Contents\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-and-noteworthy\"\u003e🚀 New and noteworthy\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-rules\"\u003e✨ New Rules\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#deprecated-rules\"\u003eDeprecated Rules\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#cpd-new-markdown-report-format\"\u003eCPD: New Markdown Report Format\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#fixed-issues\"\u003e🐛 Fixed Issues\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#api-changes\"\u003e🚨 API Changes\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#deprecations\"\u003eDeprecations\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#experimental-api\"\u003eExperimental API\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#pmd-report-format-csv\"\u003ePMD Report Format CSV\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#rule-test-schema\"\u003eRule Test Schema\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#deprecations\"\u003eDeprecations\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#merged-pull-requests\"\u003e✨ Merged pull requests\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#dependency-updates\"\u003e📦 Dependency updates\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#stats\"\u003e📈 Stats\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🚀 New and noteworthy\u003c/h3\u003e\n\u003ch4\u003e✨ New Rules\u003c/h4\u003e\n\u003cp\u003eThis release brings several new rules for both Java and Apex. Please try them out\nand submit feedback on \u003ca href=\"https://github.com/pmd/pmd/issues\"\u003eour issue tracker\u003c/a\u003e!\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eThe new apex rule \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.17.0/pmd_rules_apex_codestyle.html#annotationsnamingconventions\"\u003e\u003ccode\u003eAnnotationsNamingConventions\u003c/code\u003e\u003c/a\u003e enforces that annotations\nare used consistently in PascalCase.\u003cbr /\u003e\nThe rule is referenced in the quickstart.xml ruleset for Apex.\u003c/li\u003e\n\u003cli\u003eThe new java rule \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.17.0/pmd_rules_java_codestyle.html#typeparameternamingconventions\"\u003e\u003ccode\u003eTypeParameterNamingConventions\u003c/code\u003e\u003c/a\u003e replaces the now deprecated rule\nGenericsNaming. The new rule is configurable and checks for naming conventions of type parameters in\ngeneric types and methods. It can be configured via a regular expression.\u003cbr /\u003e\nBy default, this rule uses the standard Java naming convention (single uppercase letter).\u003cbr /\u003e\nThe rule is referenced in the quickstart.xml ruleset for Java.\u003c/li\u003e\n\u003cli\u003eThe new java rule \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.17.0/pmd_rules_java_errorprone.html#overridebothequalsandhashcodeoncomparable\"\u003e\u003ccode\u003eOverrideBothEqualsAndHashCodeOnComparable\u003c/code\u003e\u003c/a\u003e finds missing\n\u003ccode\u003ehashCode()\u003c/code\u003e and/or \u003ccode\u003eequals()\u003c/code\u003e methods on types that implement \u003ccode\u003eComparable\u003c/code\u003e. This is important if\ninstances of these classes are used in collections. Failing to do so can lead to unexpected behavior in sets\nwhich then do not conform to the \u003ccode\u003eSet\u003c/code\u003e interface. While the \u003ccode\u003eSet\u003c/code\u003e interface relies on\n\u003ccode\u003eequals()\u003c/code\u003e to determine object equality, sorted sets like \u003ccode\u003eTreeSet\u003c/code\u003e use\n\u003ccode\u003ecompareTo()\u003c/code\u003e instead. The same issue can arise when such objects are used\nas keys in sorted maps.\u003cbr /\u003e\nThis rule is very similar to \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.17.0/pmd_rules_java_errorprone.html#overridebothequalsandhashcode\"\u003e\u003ccode\u003eOverrideBothEqualsAndHashcode\u003c/code\u003e\u003c/a\u003e which has always been\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/d2942d5ded8e3f967ba8872f3dc58a7bdffa73bf\"\u003e\u003ccode\u003ed2942d5\u003c/code\u003e\u003c/a\u003e [release] prepare release pmd_releases/7.17.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/76cc98aac0f9aadc62cb6b3795069b3a552d5a51\"\u003e\u003ccode\u003e76cc98a\u003c/code\u003e\u003c/a\u003e Prepare pmd release 7.17.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/58dfb170213b1d1e4dc2b2e4e020ff4f28ea60b7\"\u003e\u003ccode\u003e58dfb17\u003c/code\u003e\u003c/a\u003e [doc] Update release notes - add missing new rule fix issues\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/1b23cb3301bc156e67603f37c4593efe8925712b\"\u003e\u003ccode\u003e1b23cb3\u003c/code\u003e\u003c/a\u003e [java] More detailed message for AvoidInstanceofChecksInCatchClause (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/6009\"\u003e#6009\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/f8a962ac220293df7c26a612398306499d9ea5c2\"\u003e\u003ccode\u003ef8a962a\u003c/code\u003e\u003c/a\u003e Merge branch 'main' into instanceof-message\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/ce3b01fe8a67c7f45e958861b2ab390f74cf534b\"\u003e\u003ccode\u003ece3b01f\u003c/code\u003e\u003c/a\u003e [core] Fix \u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5849\"\u003e#5849\u003c/a\u003e: Support Markdown Output for CPD Reports (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/6008\"\u003e#6008\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/2e84a82c432d53755d81bd06c98a478d6bb69ecb\"\u003e\u003ccode\u003e2e84a82\u003c/code\u003e\u003c/a\u003e Merge branch 'main' into pr-6009\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/d55bea2ea019e52c60089f0be946ccfcfe03d7ce\"\u003e\u003ccode\u003ed55bea2\u003c/code\u003e\u003c/a\u003e [doc] Update release notes (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/6009\"\u003e#6009\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/59ff6419ca22ccf27f335cd6fe5d58b94bf102be\"\u003e\u003ccode\u003e59ff641\u003c/code\u003e\u003c/a\u003e Merge branch 'main' into pr-6008\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/d34dbfcbeeb4004f5bb2ae14bda48045d8f9e0da\"\u003e\u003ccode\u003ed34dbfc\u003c/code\u003e\u003c/a\u003e [doc] Update release notes (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/6008\"\u003e#6008\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5849\"\u003e#5849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pmd/pmd/compare/pmd_releases/7.16.0...pmd_releases/7.17.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot merge` will merge this PR after your CI passes on it\n- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it\n- `@dependabot cancel merge` will cancel a previously requested merge and block automerging\n- `@dependabot reopen` will reopen this PR if it is closed\n- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)\n\n\n\u003c/details\u003e","html_url":"https://github.com/hyperledger/fabric-gateway/pull/936","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/hyperledger%2Ffabric-gateway/issues/936","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/936/packages"}},{"old_version":"7.16.0","new_version":"7.17.0","update_type":"minor","path":null,"pr_created_at":"2025-09-15T03:08:27.000Z","version_change":"7.16.0 → 7.17.0","issue":{"uuid":"3416096788","node_id":"PR_kwDOG8B9086oif8g","number":1451,"state":"open","title":"Bump pmdVersion from 7.16.0 to 7.17.0","user":"dependabot[bot]","labels":["dependencies","java"],"assignees":[],"locked":false,"comments_count":3,"pull_request":true,"closed_at":null,"author_association":"CONTRIBUTOR","state_reason":null,"created_at":"2025-09-15T03:08:27.000Z","updated_at":"2025-09-16T07:07:16.250Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","packages":[{"name":"pmdVersion","old_version":"7.16.0","new_version":"7.17.0","repository_url":null}],"path":null,"ecosystem":"maven"},"body":"Bumps `pmdVersion` from 7.16.0 to 7.17.0.\nUpdates `net.sourceforge.pmd:pmd-core` from 7.16.0 to 7.17.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pmd/pmd/releases\"\u003enet.sourceforge.pmd:pmd-core's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ePMD 7.17.0 (12-September-2025)\u003c/h2\u003e\n\u003ch2\u003e12-September-2025 - 7.17.0\u003c/h2\u003e\n\u003cp\u003eThe PMD team is pleased to announce PMD 7.17.0.\u003c/p\u003e\n\u003cp\u003eThis is a minor release.\u003c/p\u003e\n\u003ch3\u003eTable Of Contents\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-and-noteworthy\"\u003e🚀 New and noteworthy\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-rules\"\u003e✨ New Rules\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#deprecated-rules\"\u003eDeprecated Rules\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#cpd-new-markdown-report-format\"\u003eCPD: New Markdown Report Format\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#fixed-issues\"\u003e🐛 Fixed Issues\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#api-changes\"\u003e🚨 API Changes\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#deprecations\"\u003eDeprecations\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#experimental-api\"\u003eExperimental API\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#pmd-report-format-csv\"\u003ePMD Report Format CSV\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#rule-test-schema\"\u003eRule Test Schema\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#deprecations\"\u003eDeprecations\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#merged-pull-requests\"\u003e✨ Merged pull requests\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#dependency-updates\"\u003e📦 Dependency updates\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#stats\"\u003e📈 Stats\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🚀 New and noteworthy\u003c/h3\u003e\n\u003ch4\u003e✨ New Rules\u003c/h4\u003e\n\u003cp\u003eThis release brings several new rules for both Java and Apex. Please try them out\nand submit feedback on \u003ca href=\"https://github.com/pmd/pmd/issues\"\u003eour issue tracker\u003c/a\u003e!\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eThe new apex rule \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.17.0/pmd_rules_apex_codestyle.html#annotationsnamingconventions\"\u003e\u003ccode\u003eAnnotationsNamingConventions\u003c/code\u003e\u003c/a\u003e enforces that annotations\nare used consistently in PascalCase.\u003cbr /\u003e\nThe rule is referenced in the quickstart.xml ruleset for Apex.\u003c/li\u003e\n\u003cli\u003eThe new java rule \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.17.0/pmd_rules_java_codestyle.html#typeparameternamingconventions\"\u003e\u003ccode\u003eTypeParameterNamingConventions\u003c/code\u003e\u003c/a\u003e replaces the now deprecated rule\nGenericsNaming. The new rule is configurable and checks for naming conventions of type parameters in\ngeneric types and methods. It can be configured via a regular expression.\u003cbr /\u003e\nBy default, this rule uses the standard Java naming convention (single uppercase letter).\u003cbr /\u003e\nThe rule is referenced in the quickstart.xml ruleset for Java.\u003c/li\u003e\n\u003cli\u003eThe new java rule \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.17.0/pmd_rules_java_errorprone.html#overridebothequalsandhashcodeoncomparable\"\u003e\u003ccode\u003eOverrideBothEqualsAndHashCodeOnComparable\u003c/code\u003e\u003c/a\u003e finds missing\n\u003ccode\u003ehashCode()\u003c/code\u003e and/or \u003ccode\u003eequals()\u003c/code\u003e methods on types that implement \u003ccode\u003eComparable\u003c/code\u003e. This is important if\ninstances of these classes are used in collections. Failing to do so can lead to unexpected behavior in sets\nwhich then do not conform to the \u003ccode\u003eSet\u003c/code\u003e interface. While the \u003ccode\u003eSet\u003c/code\u003e interface relies on\n\u003ccode\u003eequals()\u003c/code\u003e to determine object equality, sorted sets like \u003ccode\u003eTreeSet\u003c/code\u003e use\n\u003ccode\u003ecompareTo()\u003c/code\u003e instead. The same issue can arise when such objects are used\nas keys in sorted maps.\u003cbr /\u003e\nThis rule is very similar to \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.17.0/pmd_rules_java_errorprone.html#overridebothequalsandhashcode\"\u003e\u003ccode\u003eOverrideBothEqualsAndHashcode\u003c/code\u003e\u003c/a\u003e which has always been\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/d2942d5ded8e3f967ba8872f3dc58a7bdffa73bf\"\u003e\u003ccode\u003ed2942d5\u003c/code\u003e\u003c/a\u003e [release] prepare release pmd_releases/7.17.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/76cc98aac0f9aadc62cb6b3795069b3a552d5a51\"\u003e\u003ccode\u003e76cc98a\u003c/code\u003e\u003c/a\u003e Prepare pmd release 7.17.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/58dfb170213b1d1e4dc2b2e4e020ff4f28ea60b7\"\u003e\u003ccode\u003e58dfb17\u003c/code\u003e\u003c/a\u003e [doc] Update release notes - add missing new rule fix issues\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/1b23cb3301bc156e67603f37c4593efe8925712b\"\u003e\u003ccode\u003e1b23cb3\u003c/code\u003e\u003c/a\u003e [java] More detailed message for AvoidInstanceofChecksInCatchClause (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/6009\"\u003e#6009\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/f8a962ac220293df7c26a612398306499d9ea5c2\"\u003e\u003ccode\u003ef8a962a\u003c/code\u003e\u003c/a\u003e Merge branch 'main' into instanceof-message\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/ce3b01fe8a67c7f45e958861b2ab390f74cf534b\"\u003e\u003ccode\u003ece3b01f\u003c/code\u003e\u003c/a\u003e [core] Fix \u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5849\"\u003e#5849\u003c/a\u003e: Support Markdown Output for CPD Reports (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/6008\"\u003e#6008\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/2e84a82c432d53755d81bd06c98a478d6bb69ecb\"\u003e\u003ccode\u003e2e84a82\u003c/code\u003e\u003c/a\u003e Merge branch 'main' into pr-6009\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/d55bea2ea019e52c60089f0be946ccfcfe03d7ce\"\u003e\u003ccode\u003ed55bea2\u003c/code\u003e\u003c/a\u003e [doc] Update release notes (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/6009\"\u003e#6009\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/59ff6419ca22ccf27f335cd6fe5d58b94bf102be\"\u003e\u003ccode\u003e59ff641\u003c/code\u003e\u003c/a\u003e Merge branch 'main' into pr-6008\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/d34dbfcbeeb4004f5bb2ae14bda48045d8f9e0da\"\u003e\u003ccode\u003ed34dbfc\u003c/code\u003e\u003c/a\u003e [doc] Update release notes (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/6008\"\u003e#6008\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5849\"\u003e#5849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pmd/pmd/compare/pmd_releases/7.16.0...pmd_releases/7.17.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `net.sourceforge.pmd:pmd-java` from 7.16.0 to 7.17.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pmd/pmd/releases\"\u003enet.sourceforge.pmd:pmd-java's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ePMD 7.17.0 (12-September-2025)\u003c/h2\u003e\n\u003ch2\u003e12-September-2025 - 7.17.0\u003c/h2\u003e\n\u003cp\u003eThe PMD team is pleased to announce PMD 7.17.0.\u003c/p\u003e\n\u003cp\u003eThis is a minor release.\u003c/p\u003e\n\u003ch3\u003eTable Of Contents\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-and-noteworthy\"\u003e🚀 New and noteworthy\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-rules\"\u003e✨ New Rules\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#deprecated-rules\"\u003eDeprecated Rules\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#cpd-new-markdown-report-format\"\u003eCPD: New Markdown Report Format\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#fixed-issues\"\u003e🐛 Fixed Issues\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#api-changes\"\u003e🚨 API Changes\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#deprecations\"\u003eDeprecations\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#experimental-api\"\u003eExperimental API\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#pmd-report-format-csv\"\u003ePMD Report Format CSV\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#rule-test-schema\"\u003eRule Test Schema\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#deprecations\"\u003eDeprecations\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#merged-pull-requests\"\u003e✨ Merged pull requests\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#dependency-updates\"\u003e📦 Dependency updates\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#stats\"\u003e📈 Stats\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🚀 New and noteworthy\u003c/h3\u003e\n\u003ch4\u003e✨ New Rules\u003c/h4\u003e\n\u003cp\u003eThis release brings several new rules for both Java and Apex. Please try them out\nand submit feedback on \u003ca href=\"https://github.com/pmd/pmd/issues\"\u003eour issue tracker\u003c/a\u003e!\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eThe new apex rule \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.17.0/pmd_rules_apex_codestyle.html#annotationsnamingconventions\"\u003e\u003ccode\u003eAnnotationsNamingConventions\u003c/code\u003e\u003c/a\u003e enforces that annotations\nare used consistently in PascalCase.\u003cbr /\u003e\nThe rule is referenced in the quickstart.xml ruleset for Apex.\u003c/li\u003e\n\u003cli\u003eThe new java rule \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.17.0/pmd_rules_java_codestyle.html#typeparameternamingconventions\"\u003e\u003ccode\u003eTypeParameterNamingConventions\u003c/code\u003e\u003c/a\u003e replaces the now deprecated rule\nGenericsNaming. The new rule is configurable and checks for naming conventions of type parameters in\ngeneric types and methods. It can be configured via a regular expression.\u003cbr /\u003e\nBy default, this rule uses the standard Java naming convention (single uppercase letter).\u003cbr /\u003e\nThe rule is referenced in the quickstart.xml ruleset for Java.\u003c/li\u003e\n\u003cli\u003eThe new java rule \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.17.0/pmd_rules_java_errorprone.html#overridebothequalsandhashcodeoncomparable\"\u003e\u003ccode\u003eOverrideBothEqualsAndHashCodeOnComparable\u003c/code\u003e\u003c/a\u003e finds missing\n\u003ccode\u003ehashCode()\u003c/code\u003e and/or \u003ccode\u003eequals()\u003c/code\u003e methods on types that implement \u003ccode\u003eComparable\u003c/code\u003e. This is important if\ninstances of these classes are used in collections. Failing to do so can lead to unexpected behavior in sets\nwhich then do not conform to the \u003ccode\u003eSet\u003c/code\u003e interface. While the \u003ccode\u003eSet\u003c/code\u003e interface relies on\n\u003ccode\u003eequals()\u003c/code\u003e to determine object equality, sorted sets like \u003ccode\u003eTreeSet\u003c/code\u003e use\n\u003ccode\u003ecompareTo()\u003c/code\u003e instead. The same issue can arise when such objects are used\nas keys in sorted maps.\u003cbr /\u003e\nThis rule is very similar to \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.17.0/pmd_rules_java_errorprone.html#overridebothequalsandhashcode\"\u003e\u003ccode\u003eOverrideBothEqualsAndHashcode\u003c/code\u003e\u003c/a\u003e which has always been\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/d2942d5ded8e3f967ba8872f3dc58a7bdffa73bf\"\u003e\u003ccode\u003ed2942d5\u003c/code\u003e\u003c/a\u003e [release] prepare release pmd_releases/7.17.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/76cc98aac0f9aadc62cb6b3795069b3a552d5a51\"\u003e\u003ccode\u003e76cc98a\u003c/code\u003e\u003c/a\u003e Prepare pmd release 7.17.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/58dfb170213b1d1e4dc2b2e4e020ff4f28ea60b7\"\u003e\u003ccode\u003e58dfb17\u003c/code\u003e\u003c/a\u003e [doc] Update release notes - add missing new rule fix issues\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/1b23cb3301bc156e67603f37c4593efe8925712b\"\u003e\u003ccode\u003e1b23cb3\u003c/code\u003e\u003c/a\u003e [java] More detailed message for AvoidInstanceofChecksInCatchClause (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/6009\"\u003e#6009\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/f8a962ac220293df7c26a612398306499d9ea5c2\"\u003e\u003ccode\u003ef8a962a\u003c/code\u003e\u003c/a\u003e Merge branch 'main' into instanceof-message\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/ce3b01fe8a67c7f45e958861b2ab390f74cf534b\"\u003e\u003ccode\u003ece3b01f\u003c/code\u003e\u003c/a\u003e [core] Fix \u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5849\"\u003e#5849\u003c/a\u003e: Support Markdown Output for CPD Reports (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/6008\"\u003e#6008\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/2e84a82c432d53755d81bd06c98a478d6bb69ecb\"\u003e\u003ccode\u003e2e84a82\u003c/code\u003e\u003c/a\u003e Merge branch 'main' into pr-6009\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/d55bea2ea019e52c60089f0be946ccfcfe03d7ce\"\u003e\u003ccode\u003ed55bea2\u003c/code\u003e\u003c/a\u003e [doc] Update release notes (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/6009\"\u003e#6009\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/59ff6419ca22ccf27f335cd6fe5d58b94bf102be\"\u003e\u003ccode\u003e59ff641\u003c/code\u003e\u003c/a\u003e Merge branch 'main' into pr-6008\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/d34dbfcbeeb4004f5bb2ae14bda48045d8f9e0da\"\u003e\u003ccode\u003ed34dbfc\u003c/code\u003e\u003c/a\u003e [doc] Update release notes (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/6008\"\u003e#6008\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5849\"\u003e#5849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pmd/pmd/compare/pmd_releases/7.16.0...pmd_releases/7.17.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `net.sourceforge.pmd:pmd-javascript` from 7.16.0 to 7.17.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pmd/pmd/releases\"\u003enet.sourceforge.pmd:pmd-javascript's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ePMD 7.17.0 (12-September-2025)\u003c/h2\u003e\n\u003ch2\u003e12-September-2025 - 7.17.0\u003c/h2\u003e\n\u003cp\u003eThe PMD team is pleased to announce PMD 7.17.0.\u003c/p\u003e\n\u003cp\u003eThis is a minor release.\u003c/p\u003e\n\u003ch3\u003eTable Of Contents\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-and-noteworthy\"\u003e🚀 New and noteworthy\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-rules\"\u003e✨ New Rules\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#deprecated-rules\"\u003eDeprecated Rules\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#cpd-new-markdown-report-format\"\u003eCPD: New Markdown Report Format\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#fixed-issues\"\u003e🐛 Fixed Issues\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#api-changes\"\u003e🚨 API Changes\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#deprecations\"\u003eDeprecations\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#experimental-api\"\u003eExperimental API\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#pmd-report-format-csv\"\u003ePMD Report Format CSV\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#rule-test-schema\"\u003eRule Test Schema\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#deprecations\"\u003eDeprecations\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#merged-pull-requests\"\u003e✨ Merged pull requests\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#dependency-updates\"\u003e📦 Dependency updates\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#stats\"\u003e📈 Stats\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🚀 New and noteworthy\u003c/h3\u003e\n\u003ch4\u003e✨ New Rules\u003c/h4\u003e\n\u003cp\u003eThis release brings several new rules for both Java and Apex. Please try them out\nand submit feedback on \u003ca href=\"https://github.com/pmd/pmd/issues\"\u003eour issue tracker\u003c/a\u003e!\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eThe new apex rule \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.17.0/pmd_rules_apex_codestyle.html#annotationsnamingconventions\"\u003e\u003ccode\u003eAnnotationsNamingConventions\u003c/code\u003e\u003c/a\u003e enforces that annotations\nare used consistently in PascalCase.\u003cbr /\u003e\nThe rule is referenced in the quickstart.xml ruleset for Apex.\u003c/li\u003e\n\u003cli\u003eThe new java rule \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.17.0/pmd_rules_java_codestyle.html#typeparameternamingconventions\"\u003e\u003ccode\u003eTypeParameterNamingConventions\u003c/code\u003e\u003c/a\u003e replaces the now deprecated rule\nGenericsNaming. The new rule is configurable and checks for naming conventions of type parameters in\ngeneric types and methods. It can be configured via a regular expression.\u003cbr /\u003e\nBy default, this rule uses the standard Java naming convention (single uppercase letter).\u003cbr /\u003e\nThe rule is referenced in the quickstart.xml ruleset for Java.\u003c/li\u003e\n\u003cli\u003eThe new java rule \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.17.0/pmd_rules_java_errorprone.html#overridebothequalsandhashcodeoncomparable\"\u003e\u003ccode\u003eOverrideBothEqualsAndHashCodeOnComparable\u003c/code\u003e\u003c/a\u003e finds missing\n\u003ccode\u003ehashCode()\u003c/code\u003e and/or \u003ccode\u003eequals()\u003c/code\u003e methods on types that implement \u003ccode\u003eComparable\u003c/code\u003e. This is important if\ninstances of these classes are used in collections. Failing to do so can lead to unexpected behavior in sets\nwhich then do not conform to the \u003ccode\u003eSet\u003c/code\u003e interface. While the \u003ccode\u003eSet\u003c/code\u003e interface relies on\n\u003ccode\u003eequals()\u003c/code\u003e to determine object equality, sorted sets like \u003ccode\u003eTreeSet\u003c/code\u003e use\n\u003ccode\u003ecompareTo()\u003c/code\u003e instead. The same issue can arise when such objects are used\nas keys in sorted maps.\u003cbr /\u003e\nThis rule is very similar to \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.17.0/pmd_rules_java_errorprone.html#overridebothequalsandhashcode\"\u003e\u003ccode\u003eOverrideBothEqualsAndHashcode\u003c/code\u003e\u003c/a\u003e which has always been\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/d2942d5ded8e3f967ba8872f3dc58a7bdffa73bf\"\u003e\u003ccode\u003ed2942d5\u003c/code\u003e\u003c/a\u003e [release] prepare release pmd_releases/7.17.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/76cc98aac0f9aadc62cb6b3795069b3a552d5a51\"\u003e\u003ccode\u003e76cc98a\u003c/code\u003e\u003c/a\u003e Prepare pmd release 7.17.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/58dfb170213b1d1e4dc2b2e4e020ff4f28ea60b7\"\u003e\u003ccode\u003e58dfb17\u003c/code\u003e\u003c/a\u003e [doc] Update release notes - add missing new rule fix issues\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/1b23cb3301bc156e67603f37c4593efe8925712b\"\u003e\u003ccode\u003e1b23cb3\u003c/code\u003e\u003c/a\u003e [java] More detailed message for AvoidInstanceofChecksInCatchClause (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/6009\"\u003e#6009\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/f8a962ac220293df7c26a612398306499d9ea5c2\"\u003e\u003ccode\u003ef8a962a\u003c/code\u003e\u003c/a\u003e Merge branch 'main' into instanceof-message\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/ce3b01fe8a67c7f45e958861b2ab390f74cf534b\"\u003e\u003ccode\u003ece3b01f\u003c/code\u003e\u003c/a\u003e [core] Fix \u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5849\"\u003e#5849\u003c/a\u003e: Support Markdown Output for CPD Reports (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/6008\"\u003e#6008\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/2e84a82c432d53755d81bd06c98a478d6bb69ecb\"\u003e\u003ccode\u003e2e84a82\u003c/code\u003e\u003c/a\u003e Merge branch 'main' into pr-6009\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/d55bea2ea019e52c60089f0be946ccfcfe03d7ce\"\u003e\u003ccode\u003ed55bea2\u003c/code\u003e\u003c/a\u003e [doc] Update release notes (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/6009\"\u003e#6009\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/59ff6419ca22ccf27f335cd6fe5d58b94bf102be\"\u003e\u003ccode\u003e59ff641\u003c/code\u003e\u003c/a\u003e Merge branch 'main' into pr-6008\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/d34dbfcbeeb4004f5bb2ae14bda48045d8f9e0da\"\u003e\u003ccode\u003ed34dbfc\u003c/code\u003e\u003c/a\u003e [doc] Update release notes (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/6008\"\u003e#6008\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5849\"\u003e#5849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pmd/pmd/compare/pmd_releases/7.16.0...pmd_releases/7.17.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `net.sourceforge.pmd:pmd-jsp` from 7.16.0 to 7.17.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pmd/pmd/releases\"\u003enet.sourceforge.pmd:pmd-jsp's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ePMD 7.17.0 (12-September-2025)\u003c/h2\u003e\n\u003ch2\u003e12-September-2025 - 7.17.0\u003c/h2\u003e\n\u003cp\u003eThe PMD team is pleased to announce PMD 7.17.0.\u003c/p\u003e\n\u003cp\u003eThis is a minor release.\u003c/p\u003e\n\u003ch3\u003eTable Of Contents\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-and-noteworthy\"\u003e🚀 New and noteworthy\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-rules\"\u003e✨ New Rules\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#deprecated-rules\"\u003eDeprecated Rules\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#cpd-new-markdown-report-format\"\u003eCPD: New Markdown Report Format\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#fixed-issues\"\u003e🐛 Fixed Issues\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#api-changes\"\u003e🚨 API Changes\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#deprecations\"\u003eDeprecations\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#experimental-api\"\u003eExperimental API\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#pmd-report-format-csv\"\u003ePMD Report Format CSV\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#rule-test-schema\"\u003eRule Test Schema\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#deprecations\"\u003eDeprecations\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#merged-pull-requests\"\u003e✨ Merged pull requests\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#dependency-updates\"\u003e📦 Dependency updates\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#stats\"\u003e📈 Stats\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🚀 New and noteworthy\u003c/h3\u003e\n\u003ch4\u003e✨ New Rules\u003c/h4\u003e\n\u003cp\u003eThis release brings several new rules for both Java and Apex. Please try them out\nand submit feedback on \u003ca href=\"https://github.com/pmd/pmd/issues\"\u003eour issue tracker\u003c/a\u003e!\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eThe new apex rule \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.17.0/pmd_rules_apex_codestyle.html#annotationsnamingconventions\"\u003e\u003ccode\u003eAnnotationsNamingConventions\u003c/code\u003e\u003c/a\u003e enforces that annotations\nare used consistently in PascalCase.\u003cbr /\u003e\nThe rule is referenced in the quickstart.xml ruleset for Apex.\u003c/li\u003e\n\u003cli\u003eThe new java rule \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.17.0/pmd_rules_java_codestyle.html#typeparameternamingconventions\"\u003e\u003ccode\u003eTypeParameterNamingConventions\u003c/code\u003e\u003c/a\u003e replaces the now deprecated rule\nGenericsNaming. The new rule is configurable and checks for naming conventions of type parameters in\ngeneric types and methods. It can be configured via a regular expression.\u003cbr /\u003e\nBy default, this rule uses the standard Java naming convention (single uppercase letter).\u003cbr /\u003e\nThe rule is referenced in the quickstart.xml ruleset for Java.\u003c/li\u003e\n\u003cli\u003eThe new java rule \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.17.0/pmd_rules_java_errorprone.html#overridebothequalsandhashcodeoncomparable\"\u003e\u003ccode\u003eOverrideBothEqualsAndHashCodeOnComparable\u003c/code\u003e\u003c/a\u003e finds missing\n\u003ccode\u003ehashCode()\u003c/code\u003e and/or \u003ccode\u003eequals()\u003c/code\u003e methods on types that implement \u003ccode\u003eComparable\u003c/code\u003e. This is important if\ninstances of these classes are used in collections. Failing to do so can lead to unexpected behavior in sets\nwhich then do not conform to the \u003ccode\u003eSet\u003c/code\u003e interface. While the \u003ccode\u003eSet\u003c/code\u003e interface relies on\n\u003ccode\u003eequals()\u003c/code\u003e to determine object equality, sorted sets like \u003ccode\u003eTreeSet\u003c/code\u003e use\n\u003ccode\u003ecompareTo()\u003c/code\u003e instead. The same issue can arise when such objects are used\nas keys in sorted maps.\u003cbr /\u003e\nThis rule is very similar to \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.17.0/pmd_rules_java_errorprone.html#overridebothequalsandhashcode\"\u003e\u003ccode\u003eOverrideBothEqualsAndHashcode\u003c/code\u003e\u003c/a\u003e which has always been\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/d2942d5ded8e3f967ba8872f3dc58a7bdffa73bf\"\u003e\u003ccode\u003ed2942d5\u003c/code\u003e\u003c/a\u003e [release] prepare release pmd_releases/7.17.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/76cc98aac0f9aadc62cb6b3795069b3a552d5a51\"\u003e\u003ccode\u003e76cc98a\u003c/code\u003e\u003c/a\u003e Prepare pmd release 7.17.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/58dfb170213b1d1e4dc2b2e4e020ff4f28ea60b7\"\u003e\u003ccode\u003e58dfb17\u003c/code\u003e\u003c/a\u003e [doc] Update release notes - add missing new rule fix issues\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/1b23cb3301bc156e67603f37c4593efe8925712b\"\u003e\u003ccode\u003e1b23cb3\u003c/code\u003e\u003c/a\u003e [java] More detailed message for AvoidInstanceofChecksInCatchClause (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/6009\"\u003e#6009\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/f8a962ac220293df7c26a612398306499d9ea5c2\"\u003e\u003ccode\u003ef8a962a\u003c/code\u003e\u003c/a\u003e Merge branch 'main' into instanceof-message\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/ce3b01fe8a67c7f45e958861b2ab390f74cf534b\"\u003e\u003ccode\u003ece3b01f\u003c/code\u003e\u003c/a\u003e [core] Fix \u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5849\"\u003e#5849\u003c/a\u003e: Support Markdown Output for CPD Reports (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/6008\"\u003e#6008\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/2e84a82c432d53755d81bd06c98a478d6bb69ecb\"\u003e\u003ccode\u003e2e84a82\u003c/code\u003e\u003c/a\u003e Merge branch 'main' into pr-6009\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/d55bea2ea019e52c60089f0be946ccfcfe03d7ce\"\u003e\u003ccode\u003ed55bea2\u003c/code\u003e\u003c/a\u003e [doc] Update release notes (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/6009\"\u003e#6009\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/59ff6419ca22ccf27f335cd6fe5d58b94bf102be\"\u003e\u003ccode\u003e59ff641\u003c/code\u003e\u003c/a\u003e Merge branch 'main' into pr-6008\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/d34dbfcbeeb4004f5bb2ae14bda48045d8f9e0da\"\u003e\u003ccode\u003ed34dbfc\u003c/code\u003e\u003c/a\u003e [doc] Update release notes (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/6008\"\u003e#6008\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5849\"\u003e#5849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pmd/pmd/compare/pmd_releases/7.16.0...pmd_releases/7.17.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot merge` will merge this PR after your CI passes on it\n- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it\n- `@dependabot cancel merge` will cancel a previously requested merge and block automerging\n- `@dependabot reopen` will reopen this PR if it is closed\n- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)\n\n\n\u003c/details\u003e","html_url":"https://github.com/instancio/instancio/pull/1451","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/instancio%2Finstancio/issues/1451","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/1451/packages"}},{"old_version":"7.16.0","new_version":"7.17.0","update_type":"minor","path":null,"pr_created_at":"2025-09-12T11:03:44.000Z","version_change":"7.16.0 → 7.17.0","issue":{"uuid":"2822290076","node_id":"PR_kwDOBsaZJs6oOLqc","number":657,"state":"closed","title":"Bump pmdVersion from 7.16.0 to 7.17.0","user":"dependabot[bot]","labels":["dependencies","java"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2025-10-06T05:42:31.000Z","author_association":"CONTRIBUTOR","state_reason":null,"created_at":"2025-09-12T11:03:44.000Z","updated_at":"2025-10-06T05:42:32.000Z","time_to_close":2054327,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","packages":[{"name":"pmdVersion","old_version":"7.16.0","new_version":"7.17.0","repository_url":null}],"path":null,"ecosystem":"maven"},"body":"Bumps `pmdVersion` from 7.16.0 to 7.17.0.\nUpdates `net.sourceforge.pmd:pmd-core` from 7.16.0 to 7.17.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pmd/pmd/releases\"\u003enet.sourceforge.pmd:pmd-core's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ePMD 7.17.0 (12-September-2025)\u003c/h2\u003e\n\u003ch2\u003e12-September-2025 - 7.17.0\u003c/h2\u003e\n\u003cp\u003eThe PMD team is pleased to announce PMD 7.17.0.\u003c/p\u003e\n\u003cp\u003eThis is a minor release.\u003c/p\u003e\n\u003ch3\u003eTable Of Contents\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-and-noteworthy\"\u003e🚀 New and noteworthy\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-rules\"\u003e✨ New Rules\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#deprecated-rules\"\u003eDeprecated Rules\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#cpd-new-markdown-report-format\"\u003eCPD: New Markdown Report Format\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#fixed-issues\"\u003e🐛 Fixed Issues\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#api-changes\"\u003e🚨 API Changes\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#deprecations\"\u003eDeprecations\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#experimental-api\"\u003eExperimental API\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#pmd-report-format-csv\"\u003ePMD Report Format CSV\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#rule-test-schema\"\u003eRule Test Schema\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#deprecations\"\u003eDeprecations\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#merged-pull-requests\"\u003e✨ Merged pull requests\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#dependency-updates\"\u003e📦 Dependency updates\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#stats\"\u003e📈 Stats\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🚀 New and noteworthy\u003c/h3\u003e\n\u003ch4\u003e✨ New Rules\u003c/h4\u003e\n\u003cp\u003eThis release brings several new rules for both Java and Apex. Please try them out\nand submit feedback on \u003ca href=\"https://github.com/pmd/pmd/issues\"\u003eour issue tracker\u003c/a\u003e!\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eThe new apex rule \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.17.0/pmd_rules_apex_codestyle.html#annotationsnamingconventions\"\u003e\u003ccode\u003eAnnotationsNamingConventions\u003c/code\u003e\u003c/a\u003e enforces that annotations\nare used consistently in PascalCase.\u003cbr /\u003e\nThe rule is referenced in the quickstart.xml ruleset for Apex.\u003c/li\u003e\n\u003cli\u003eThe new java rule \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.17.0/pmd_rules_java_codestyle.html#typeparameternamingconventions\"\u003e\u003ccode\u003eTypeParameterNamingConventions\u003c/code\u003e\u003c/a\u003e replaces the now deprecated rule\nGenericsNaming. The new rule is configurable and checks for naming conventions of type parameters in\ngeneric types and methods. It can be configured via a regular expression.\u003cbr /\u003e\nBy default, this rule uses the standard Java naming convention (single uppercase letter).\u003cbr /\u003e\nThe rule is referenced in the quickstart.xml ruleset for Java.\u003c/li\u003e\n\u003cli\u003eThe new java rule \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.17.0/pmd_rules_java_errorprone.html#overridebothequalsandhashcodeoncomparable\"\u003e\u003ccode\u003eOverrideBothEqualsAndHashCodeOnComparable\u003c/code\u003e\u003c/a\u003e finds missing\n\u003ccode\u003ehashCode()\u003c/code\u003e and/or \u003ccode\u003eequals()\u003c/code\u003e methods on types that implement \u003ccode\u003eComparable\u003c/code\u003e. This is important if\ninstances of these classes are used in collections. Failing to do so can lead to unexpected behavior in sets\nwhich then do not conform to the \u003ccode\u003eSet\u003c/code\u003e interface. While the \u003ccode\u003eSet\u003c/code\u003e interface relies on\n\u003ccode\u003eequals()\u003c/code\u003e to determine object equality, sorted sets like \u003ccode\u003eTreeSet\u003c/code\u003e use\n\u003ccode\u003ecompareTo()\u003c/code\u003e instead. The same issue can arise when such objects are used\nas keys in sorted maps.\u003cbr /\u003e\nThis rule is very similar to \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.17.0/pmd_rules_java_errorprone.html#overridebothequalsandhashcode\"\u003e\u003ccode\u003eOverrideBothEqualsAndHashcode\u003c/code\u003e\u003c/a\u003e which has always been\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/d2942d5ded8e3f967ba8872f3dc58a7bdffa73bf\"\u003e\u003ccode\u003ed2942d5\u003c/code\u003e\u003c/a\u003e [release] prepare release pmd_releases/7.17.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/76cc98aac0f9aadc62cb6b3795069b3a552d5a51\"\u003e\u003ccode\u003e76cc98a\u003c/code\u003e\u003c/a\u003e Prepare pmd release 7.17.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/58dfb170213b1d1e4dc2b2e4e020ff4f28ea60b7\"\u003e\u003ccode\u003e58dfb17\u003c/code\u003e\u003c/a\u003e [doc] Update release notes - add missing new rule fix issues\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/1b23cb3301bc156e67603f37c4593efe8925712b\"\u003e\u003ccode\u003e1b23cb3\u003c/code\u003e\u003c/a\u003e [java] More detailed message for AvoidInstanceofChecksInCatchClause (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/6009\"\u003e#6009\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/f8a962ac220293df7c26a612398306499d9ea5c2\"\u003e\u003ccode\u003ef8a962a\u003c/code\u003e\u003c/a\u003e Merge branch 'main' into instanceof-message\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/ce3b01fe8a67c7f45e958861b2ab390f74cf534b\"\u003e\u003ccode\u003ece3b01f\u003c/code\u003e\u003c/a\u003e [core] Fix \u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5849\"\u003e#5849\u003c/a\u003e: Support Markdown Output for CPD Reports (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/6008\"\u003e#6008\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/2e84a82c432d53755d81bd06c98a478d6bb69ecb\"\u003e\u003ccode\u003e2e84a82\u003c/code\u003e\u003c/a\u003e Merge branch 'main' into pr-6009\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/d55bea2ea019e52c60089f0be946ccfcfe03d7ce\"\u003e\u003ccode\u003ed55bea2\u003c/code\u003e\u003c/a\u003e [doc] Update release notes (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/6009\"\u003e#6009\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/59ff6419ca22ccf27f335cd6fe5d58b94bf102be\"\u003e\u003ccode\u003e59ff641\u003c/code\u003e\u003c/a\u003e Merge branch 'main' into pr-6008\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/d34dbfcbeeb4004f5bb2ae14bda48045d8f9e0da\"\u003e\u003ccode\u003ed34dbfc\u003c/code\u003e\u003c/a\u003e [doc] Update release notes (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/6008\"\u003e#6008\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5849\"\u003e#5849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pmd/pmd/compare/pmd_releases/7.16.0...pmd_releases/7.17.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `net.sourceforge.pmd:pmd-java` from 7.16.0 to 7.17.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pmd/pmd/releases\"\u003enet.sourceforge.pmd:pmd-java's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ePMD 7.17.0 (12-September-2025)\u003c/h2\u003e\n\u003ch2\u003e12-September-2025 - 7.17.0\u003c/h2\u003e\n\u003cp\u003eThe PMD team is pleased to announce PMD 7.17.0.\u003c/p\u003e\n\u003cp\u003eThis is a minor release.\u003c/p\u003e\n\u003ch3\u003eTable Of Contents\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-and-noteworthy\"\u003e🚀 New and noteworthy\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-rules\"\u003e✨ New Rules\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#deprecated-rules\"\u003eDeprecated Rules\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#cpd-new-markdown-report-format\"\u003eCPD: New Markdown Report Format\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#fixed-issues\"\u003e🐛 Fixed Issues\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#api-changes\"\u003e🚨 API Changes\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#deprecations\"\u003eDeprecations\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#experimental-api\"\u003eExperimental API\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#pmd-report-format-csv\"\u003ePMD Report Format CSV\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#rule-test-schema\"\u003eRule Test Schema\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#deprecations\"\u003eDeprecations\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#merged-pull-requests\"\u003e✨ Merged pull requests\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#dependency-updates\"\u003e📦 Dependency updates\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#stats\"\u003e📈 Stats\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🚀 New and noteworthy\u003c/h3\u003e\n\u003ch4\u003e✨ New Rules\u003c/h4\u003e\n\u003cp\u003eThis release brings several new rules for both Java and Apex. Please try them out\nand submit feedback on \u003ca href=\"https://github.com/pmd/pmd/issues\"\u003eour issue tracker\u003c/a\u003e!\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eThe new apex rule \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.17.0/pmd_rules_apex_codestyle.html#annotationsnamingconventions\"\u003e\u003ccode\u003eAnnotationsNamingConventions\u003c/code\u003e\u003c/a\u003e enforces that annotations\nare used consistently in PascalCase.\u003cbr /\u003e\nThe rule is referenced in the quickstart.xml ruleset for Apex.\u003c/li\u003e\n\u003cli\u003eThe new java rule \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.17.0/pmd_rules_java_codestyle.html#typeparameternamingconventions\"\u003e\u003ccode\u003eTypeParameterNamingConventions\u003c/code\u003e\u003c/a\u003e replaces the now deprecated rule\nGenericsNaming. The new rule is configurable and checks for naming conventions of type parameters in\ngeneric types and methods. It can be configured via a regular expression.\u003cbr /\u003e\nBy default, this rule uses the standard Java naming convention (single uppercase letter).\u003cbr /\u003e\nThe rule is referenced in the quickstart.xml ruleset for Java.\u003c/li\u003e\n\u003cli\u003eThe new java rule \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.17.0/pmd_rules_java_errorprone.html#overridebothequalsandhashcodeoncomparable\"\u003e\u003ccode\u003eOverrideBothEqualsAndHashCodeOnComparable\u003c/code\u003e\u003c/a\u003e finds missing\n\u003ccode\u003ehashCode()\u003c/code\u003e and/or \u003ccode\u003eequals()\u003c/code\u003e methods on types that implement \u003ccode\u003eComparable\u003c/code\u003e. This is important if\ninstances of these classes are used in collections. Failing to do so can lead to unexpected behavior in sets\nwhich then do not conform to the \u003ccode\u003eSet\u003c/code\u003e interface. While the \u003ccode\u003eSet\u003c/code\u003e interface relies on\n\u003ccode\u003eequals()\u003c/code\u003e to determine object equality, sorted sets like \u003ccode\u003eTreeSet\u003c/code\u003e use\n\u003ccode\u003ecompareTo()\u003c/code\u003e instead. The same issue can arise when such objects are used\nas keys in sorted maps.\u003cbr /\u003e\nThis rule is very similar to \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.17.0/pmd_rules_java_errorprone.html#overridebothequalsandhashcode\"\u003e\u003ccode\u003eOverrideBothEqualsAndHashcode\u003c/code\u003e\u003c/a\u003e which has always been\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/d2942d5ded8e3f967ba8872f3dc58a7bdffa73bf\"\u003e\u003ccode\u003ed2942d5\u003c/code\u003e\u003c/a\u003e [release] prepare release pmd_releases/7.17.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/76cc98aac0f9aadc62cb6b3795069b3a552d5a51\"\u003e\u003ccode\u003e76cc98a\u003c/code\u003e\u003c/a\u003e Prepare pmd release 7.17.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/58dfb170213b1d1e4dc2b2e4e020ff4f28ea60b7\"\u003e\u003ccode\u003e58dfb17\u003c/code\u003e\u003c/a\u003e [doc] Update release notes - add missing new rule fix issues\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/1b23cb3301bc156e67603f37c4593efe8925712b\"\u003e\u003ccode\u003e1b23cb3\u003c/code\u003e\u003c/a\u003e [java] More detailed message for AvoidInstanceofChecksInCatchClause (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/6009\"\u003e#6009\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/f8a962ac220293df7c26a612398306499d9ea5c2\"\u003e\u003ccode\u003ef8a962a\u003c/code\u003e\u003c/a\u003e Merge branch 'main' into instanceof-message\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/ce3b01fe8a67c7f45e958861b2ab390f74cf534b\"\u003e\u003ccode\u003ece3b01f\u003c/code\u003e\u003c/a\u003e [core] Fix \u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5849\"\u003e#5849\u003c/a\u003e: Support Markdown Output for CPD Reports (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/6008\"\u003e#6008\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/2e84a82c432d53755d81bd06c98a478d6bb69ecb\"\u003e\u003ccode\u003e2e84a82\u003c/code\u003e\u003c/a\u003e Merge branch 'main' into pr-6009\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/d55bea2ea019e52c60089f0be946ccfcfe03d7ce\"\u003e\u003ccode\u003ed55bea2\u003c/code\u003e\u003c/a\u003e [doc] Update release notes (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/6009\"\u003e#6009\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/59ff6419ca22ccf27f335cd6fe5d58b94bf102be\"\u003e\u003ccode\u003e59ff641\u003c/code\u003e\u003c/a\u003e Merge branch 'main' into pr-6008\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/d34dbfcbeeb4004f5bb2ae14bda48045d8f9e0da\"\u003e\u003ccode\u003ed34dbfc\u003c/code\u003e\u003c/a\u003e [doc] Update release notes (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/6008\"\u003e#6008\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5849\"\u003e#5849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pmd/pmd/compare/pmd_releases/7.16.0...pmd_releases/7.17.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `net.sourceforge.pmd:pmd-javascript` from 7.16.0 to 7.17.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pmd/pmd/releases\"\u003enet.sourceforge.pmd:pmd-javascript's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ePMD 7.17.0 (12-September-2025)\u003c/h2\u003e\n\u003ch2\u003e12-September-2025 - 7.17.0\u003c/h2\u003e\n\u003cp\u003eThe PMD team is pleased to announce PMD 7.17.0.\u003c/p\u003e\n\u003cp\u003eThis is a minor release.\u003c/p\u003e\n\u003ch3\u003eTable Of Contents\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-and-noteworthy\"\u003e🚀 New and noteworthy\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-rules\"\u003e✨ New Rules\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#deprecated-rules\"\u003eDeprecated Rules\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#cpd-new-markdown-report-format\"\u003eCPD: New Markdown Report Format\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#fixed-issues\"\u003e🐛 Fixed Issues\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#api-changes\"\u003e🚨 API Changes\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#deprecations\"\u003eDeprecations\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#experimental-api\"\u003eExperimental API\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#pmd-report-format-csv\"\u003ePMD Report Format CSV\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#rule-test-schema\"\u003eRule Test Schema\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#deprecations\"\u003eDeprecations\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#merged-pull-requests\"\u003e✨ Merged pull requests\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#dependency-updates\"\u003e📦 Dependency updates\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#stats\"\u003e📈 Stats\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🚀 New and noteworthy\u003c/h3\u003e\n\u003ch4\u003e✨ New Rules\u003c/h4\u003e\n\u003cp\u003eThis release brings several new rules for both Java and Apex. Please try them out\nand submit feedback on \u003ca href=\"https://github.com/pmd/pmd/issues\"\u003eour issue tracker\u003c/a\u003e!\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eThe new apex rule \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.17.0/pmd_rules_apex_codestyle.html#annotationsnamingconventions\"\u003e\u003ccode\u003eAnnotationsNamingConventions\u003c/code\u003e\u003c/a\u003e enforces that annotations\nare used consistently in PascalCase.\u003cbr /\u003e\nThe rule is referenced in the quickstart.xml ruleset for Apex.\u003c/li\u003e\n\u003cli\u003eThe new java rule \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.17.0/pmd_rules_java_codestyle.html#typeparameternamingconventions\"\u003e\u003ccode\u003eTypeParameterNamingConventions\u003c/code\u003e\u003c/a\u003e replaces the now deprecated rule\nGenericsNaming. The new rule is configurable and checks for naming conventions of type parameters in\ngeneric types and methods. It can be configured via a regular expression.\u003cbr /\u003e\nBy default, this rule uses the standard Java naming convention (single uppercase letter).\u003cbr /\u003e\nThe rule is referenced in the quickstart.xml ruleset for Java.\u003c/li\u003e\n\u003cli\u003eThe new java rule \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.17.0/pmd_rules_java_errorprone.html#overridebothequalsandhashcodeoncomparable\"\u003e\u003ccode\u003eOverrideBothEqualsAndHashCodeOnComparable\u003c/code\u003e\u003c/a\u003e finds missing\n\u003ccode\u003ehashCode()\u003c/code\u003e and/or \u003ccode\u003eequals()\u003c/code\u003e methods on types that implement \u003ccode\u003eComparable\u003c/code\u003e. This is important if\ninstances of these classes are used in collections. Failing to do so can lead to unexpected behavior in sets\nwhich then do not conform to the \u003ccode\u003eSet\u003c/code\u003e interface. While the \u003ccode\u003eSet\u003c/code\u003e interface relies on\n\u003ccode\u003eequals()\u003c/code\u003e to determine object equality, sorted sets like \u003ccode\u003eTreeSet\u003c/code\u003e use\n\u003ccode\u003ecompareTo()\u003c/code\u003e instead. The same issue can arise when such objects are used\nas keys in sorted maps.\u003cbr /\u003e\nThis rule is very similar to \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.17.0/pmd_rules_java_errorprone.html#overridebothequalsandhashcode\"\u003e\u003ccode\u003eOverrideBothEqualsAndHashcode\u003c/code\u003e\u003c/a\u003e which has always been\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/d2942d5ded8e3f967ba8872f3dc58a7bdffa73bf\"\u003e\u003ccode\u003ed2942d5\u003c/code\u003e\u003c/a\u003e [release] prepare release pmd_releases/7.17.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/76cc98aac0f9aadc62cb6b3795069b3a552d5a51\"\u003e\u003ccode\u003e76cc98a\u003c/code\u003e\u003c/a\u003e Prepare pmd release 7.17.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/58dfb170213b1d1e4dc2b2e4e020ff4f28ea60b7\"\u003e\u003ccode\u003e58dfb17\u003c/code\u003e\u003c/a\u003e [doc] Update release notes - add missing new rule fix issues\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/1b23cb3301bc156e67603f37c4593efe8925712b\"\u003e\u003ccode\u003e1b23cb3\u003c/code\u003e\u003c/a\u003e [java] More detailed message for AvoidInstanceofChecksInCatchClause (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/6009\"\u003e#6009\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/f8a962ac220293df7c26a612398306499d9ea5c2\"\u003e\u003ccode\u003ef8a962a\u003c/code\u003e\u003c/a\u003e Merge branch 'main' into instanceof-message\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/ce3b01fe8a67c7f45e958861b2ab390f74cf534b\"\u003e\u003ccode\u003ece3b01f\u003c/code\u003e\u003c/a\u003e [core] Fix \u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5849\"\u003e#5849\u003c/a\u003e: Support Markdown Output for CPD Reports (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/6008\"\u003e#6008\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/2e84a82c432d53755d81bd06c98a478d6bb69ecb\"\u003e\u003ccode\u003e2e84a82\u003c/code\u003e\u003c/a\u003e Merge branch 'main' into pr-6009\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/d55bea2ea019e52c60089f0be946ccfcfe03d7ce\"\u003e\u003ccode\u003ed55bea2\u003c/code\u003e\u003c/a\u003e [doc] Update release notes (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/6009\"\u003e#6009\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/59ff6419ca22ccf27f335cd6fe5d58b94bf102be\"\u003e\u003ccode\u003e59ff641\u003c/code\u003e\u003c/a\u003e Merge branch 'main' into pr-6008\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/d34dbfcbeeb4004f5bb2ae14bda48045d8f9e0da\"\u003e\u003ccode\u003ed34dbfc\u003c/code\u003e\u003c/a\u003e [doc] Update release notes (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/6008\"\u003e#6008\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5849\"\u003e#5849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pmd/pmd/compare/pmd_releases/7.16.0...pmd_releases/7.17.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `net.sourceforge.pmd:pmd-jsp` from 7.16.0 to 7.17.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pmd/pmd/releases\"\u003enet.sourceforge.pmd:pmd-jsp's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ePMD 7.17.0 (12-September-2025)\u003c/h2\u003e\n\u003ch2\u003e12-September-2025 - 7.17.0\u003c/h2\u003e\n\u003cp\u003eThe PMD team is pleased to announce PMD 7.17.0.\u003c/p\u003e\n\u003cp\u003eThis is a minor release.\u003c/p\u003e\n\u003ch3\u003eTable Of Contents\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-and-noteworthy\"\u003e🚀 New and noteworthy\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-rules\"\u003e✨ New Rules\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#deprecated-rules\"\u003eDeprecated Rules\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#cpd-new-markdown-report-format\"\u003eCPD: New Markdown Report Format\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#fixed-issues\"\u003e🐛 Fixed Issues\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#api-changes\"\u003e🚨 API Changes\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#deprecations\"\u003eDeprecations\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#experimental-api\"\u003eExperimental API\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#pmd-report-format-csv\"\u003ePMD Report Format CSV\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#rule-test-schema\"\u003eRule Test Schema\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#deprecations\"\u003eDeprecations\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#merged-pull-requests\"\u003e✨ Merged pull requests\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#dependency-updates\"\u003e📦 Dependency updates\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#stats\"\u003e📈 Stats\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🚀 New and noteworthy\u003c/h3\u003e\n\u003ch4\u003e✨ New Rules\u003c/h4\u003e\n\u003cp\u003eThis release brings several new rules for both Java and Apex. Please try them out\nand submit feedback on \u003ca href=\"https://github.com/pmd/pmd/issues\"\u003eour issue tracker\u003c/a\u003e!\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eThe new apex rule \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.17.0/pmd_rules_apex_codestyle.html#annotationsnamingconventions\"\u003e\u003ccode\u003eAnnotationsNamingConventions\u003c/code\u003e\u003c/a\u003e enforces that annotations\nare used consistently in PascalCase.\u003cbr /\u003e\nThe rule is referenced in the quickstart.xml ruleset for Apex.\u003c/li\u003e\n\u003cli\u003eThe new java rule \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.17.0/pmd_rules_java_codestyle.html#typeparameternamingconventions\"\u003e\u003ccode\u003eTypeParameterNamingConventions\u003c/code\u003e\u003c/a\u003e replaces the now deprecated rule\nGenericsNaming. The new rule is configurable and checks for naming conventions of type parameters in\ngeneric types and methods. It can be configured via a regular expression.\u003cbr /\u003e\nBy default, this rule uses the standard Java naming convention (single uppercase letter).\u003cbr /\u003e\nThe rule is referenced in the quickstart.xml ruleset for Java.\u003c/li\u003e\n\u003cli\u003eThe new java rule \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.17.0/pmd_rules_java_errorprone.html#overridebothequalsandhashcodeoncomparable\"\u003e\u003ccode\u003eOverrideBothEqualsAndHashCodeOnComparable\u003c/code\u003e\u003c/a\u003e finds missing\n\u003ccode\u003ehashCode()\u003c/code\u003e and/or \u003ccode\u003eequals()\u003c/code\u003e methods on types that implement \u003ccode\u003eComparable\u003c/code\u003e. This is important if\ninstances of these classes are used in collections. Failing to do so can lead to unexpected behavior in sets\nwhich then do not conform to the \u003ccode\u003eSet\u003c/code\u003e interface. While the \u003ccode\u003eSet\u003c/code\u003e interface relies on\n\u003ccode\u003eequals()\u003c/code\u003e to determine object equality, sorted sets like \u003ccode\u003eTreeSet\u003c/code\u003e use\n\u003ccode\u003ecompareTo()\u003c/code\u003e instead. The same issue can arise when such objects are used\nas keys in sorted maps.\u003cbr /\u003e\nThis rule is very similar to \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.17.0/pmd_rules_java_errorprone.html#overridebothequalsandhashcode\"\u003e\u003ccode\u003eOverrideBothEqualsAndHashcode\u003c/code\u003e\u003c/a\u003e which has always been\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/d2942d5ded8e3f967ba8872f3dc58a7bdffa73bf\"\u003e\u003ccode\u003ed2942d5\u003c/code\u003e\u003c/a\u003e [release] prepare release pmd_releases/7.17.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/76cc98aac0f9aadc62cb6b3795069b3a552d5a51\"\u003e\u003ccode\u003e76cc98a\u003c/code\u003e\u003c/a\u003e Prepare pmd release 7.17.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/58dfb170213b1d1e4dc2b2e4e020ff4f28ea60b7\"\u003e\u003ccode\u003e58dfb17\u003c/code\u003e\u003c/a\u003e [doc] Update release notes - add missing new rule fix issues\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/1b23cb3301bc156e67603f37c4593efe8925712b\"\u003e\u003ccode\u003e1b23cb3\u003c/code\u003e\u003c/a\u003e [java] More detailed message for AvoidInstanceofChecksInCatchClause (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/6009\"\u003e#6009\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/f8a962ac220293df7c26a612398306499d9ea5c2\"\u003e\u003ccode\u003ef8a962a\u003c/code\u003e\u003c/a\u003e Merge branch 'main' into instanceof-message\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/ce3b01fe8a67c7f45e958861b2ab390f74cf534b\"\u003e\u003ccode\u003ece3b01f\u003c/code\u003e\u003c/a\u003e [core] Fix \u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5849\"\u003e#5849\u003c/a\u003e: Support Markdown Output for CPD Reports (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/6008\"\u003e#6008\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/2e84a82c432d53755d81bd06c98a478d6bb69ecb\"\u003e\u003ccode\u003e2e84a82\u003c/code\u003e\u003c/a\u003e Merge branch 'main' into pr-6009\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/d55bea2ea019e52c60089f0be946ccfcfe03d7ce\"\u003e\u003ccode\u003ed55bea2\u003c/code\u003e\u003c/a\u003e [doc] Update release notes (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/6009\"\u003e#6009\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/59ff6419ca22ccf27f335cd6fe5d58b94bf102be\"\u003e\u003ccode\u003e59ff641\u003c/code\u003e\u003c/a\u003e Merge branch 'main' into pr-6008\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/d34dbfcbeeb4004f5bb2ae14bda48045d8f9e0da\"\u003e\u003ccode\u003ed34dbfc\u003c/code\u003e\u003c/a\u003e [doc] Update release notes (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/6008\"\u003e#6008\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5849\"\u003e#5849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pmd/pmd/compare/pmd_releases/7.16.0...pmd_releases/7.17.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot merge` will merge this PR after your CI passes on it\n- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it\n- `@dependabot cancel merge` will cancel a previously requested merge and block automerging\n- `@dependabot reopen` will reopen this PR if it is closed\n- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)\n\n\n\u003c/details\u003e","html_url":"https://github.com/apache/maven-pmd-plugin/pull/657","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/apache%2Fmaven-pmd-plugin/issues/657","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/657/packages"}},{"old_version":"7.15.0","new_version":"7.16.0","update_type":"minor","path":"/java","pr_created_at":"2025-07-28T06:39:50.000Z","version_change":"7.15.0 → 7.16.0","issue":{"uuid":"2699373523","node_id":"PR_kwDOEZ_GmM6g5SvT","number":882,"state":"closed","title":"Bump pmdVersion from 7.15.0 to 7.16.0 in /java","user":"dependabot[bot]","labels":["dependencies","java"],"assignees":[],"locked":false,"comments_count":0,"pull_request":true,"closed_at":"2025-07-28T10:14:48.000Z","author_association":"CONTRIBUTOR","state_reason":null,"created_at":"2025-07-28T06:39:50.000Z","updated_at":"2025-07-28T10:14:48.000Z","time_to_close":12898,"merged_at":"2025-07-28T10:14:48.000Z","merged_by":"bestbeforetoday","closed_by":null,"dependency_metadata":{"prefix":"Bump","packages":[{"name":"pmdVersion","old_version":"7.15.0","new_version":"7.16.0","repository_url":null}],"path":"/java","ecosystem":"maven"},"body":"Bumps `pmdVersion` from 7.15.0 to 7.16.0.\nUpdates `net.sourceforge.pmd:pmd-core` from 7.15.0 to 7.16.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pmd/pmd/releases\"\u003enet.sourceforge.pmd:pmd-core's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ePMD 7.16.0 (25-July-2025)\u003c/h2\u003e\n\u003ch2\u003e25-July-2025 - 7.16.0\u003c/h2\u003e\n\u003cp\u003eThe PMD team is pleased to announce PMD 7.16.0.\u003c/p\u003e\n\u003cp\u003eThis is a minor release.\u003c/p\u003e\n\u003ch3\u003eTable Of Contents\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-and-noteworthy\"\u003e🚀 New and noteworthy\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-java-25-support\"\u003e🚀 New: Java 25 Support\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-cpd-support-for-css\"\u003eNew: CPD support for CSS\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-rules\"\u003e✨ New Rules\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#fixed-issues\"\u003e🐛 Fixed Issues\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#api-changes\"\u003e🚨 API Changes\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#experimental-apis-that-are-now-considered-stable\"\u003eExperimental APIs that are now considered stable\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#merged-pull-requests\"\u003e✨ Merged pull requests\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#dependency-updates\"\u003e📦 Dependency updates\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#stats\"\u003e📈 Stats\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🚀 New and noteworthy\u003c/h3\u003e\n\u003ch4\u003e🚀 New: Java 25 Support\u003c/h4\u003e\n\u003cp\u003eThis release of PMD brings support for Java 25.\u003c/p\u003e\n\u003cp\u003eThere are the following new standard language features:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://openjdk.org/jeps/511\"\u003eJEP 511: Module Import Declarations\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://openjdk.org/jeps/512\"\u003eJEP 512: Compact Source Files and Instance Main Methods\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://openjdk.org/jeps/513\"\u003eJEP 513: Flexible Constructor Bodies\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eAnd one preview language feature:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://openjdk.org/jeps/507\"\u003eJEP 507: Primitive Types in Patterns, instanceof, and switch (Third Preview)\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eIn order to analyze a project with PMD that uses these preview language features,\nyou'll need to enable it via the environment variable \u003ccode\u003ePMD_JAVA_OPTS\u003c/code\u003e and select the new language\nversion \u003ccode\u003e25-preview\u003c/code\u003e:\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eexport PMD_JAVA_OPTS=--enable-preview\npmd check --use-version java-25-preview ...\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eNote: Support for Java 23 preview language features have been removed. The version \u0026quot;23-preview\u0026quot;\nis no longer available.\u003c/p\u003e\n\u003ch4\u003eNew: CPD support for CSS\u003c/h4\u003e\n\u003cp\u003eCPD now supports CSS (Cascading Style Sheets), a language for describing the rendering of structured\ndocuments (such as HTML) on screen, on paper etc.\u003cbr /\u003e\nIt is shipped with the new module \u003ccode\u003epmd-css\u003c/code\u003e.\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/d60e2685371e1970ad836bfea824cc98dd689a10\"\u003e\u003ccode\u003ed60e268\u003c/code\u003e\u003c/a\u003e [release] prepare release pmd_releases/7.16.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/0b80d904080f9321472dd649ca45c87e6dc2d6f3\"\u003e\u003ccode\u003e0b80d90\u003c/code\u003e\u003c/a\u003e Prepare pmd release 7.16.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/7d391f6e5af1cbcf540fed7e9061c05ea418a380\"\u003e\u003ccode\u003e7d391f6\u003c/code\u003e\u003c/a\u003e chore(deps): Update gems (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5929\"\u003e#5929\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/e3bb9ec4668d54240e294ab2121969a211fc2e8d\"\u003e\u003ccode\u003ee3bb9ec\u003c/code\u003e\u003c/a\u003e chore: [scala] Fix javadoc config (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5920\"\u003e#5920\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/a5b3fe4ea202ed604458859382ac20c35a604f4c\"\u003e\u003ccode\u003ea5b3fe4\u003c/code\u003e\u003c/a\u003e chore(deps): bump marocchino/sticky-pull-request-comment from 2.9.3 to 2.9.4 ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/5cf96ff0c9f58e93dada97a3f403e49c28d3b4e7\"\u003e\u003ccode\u003e5cf96ff\u003c/code\u003e\u003c/a\u003e chore(deps): bump ostruct from 0.6.2 to 0.6.3 in /.ci/files in the all-gems g...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/25950f3088c81560beb42c28c53a6b38216e58f0\"\u003e\u003ccode\u003e25950f3\u003c/code\u003e\u003c/a\u003e chore(deps): bump org.apache.maven.plugins:maven-enforcer-plugin from 3.6.0 t...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/a3cbe4c3688669f6a1a6ad7ef59761ccab208cf3\"\u003e\u003ccode\u003ea3cbe4c\u003c/code\u003e\u003c/a\u003e Merge branch 'main' into chore/scala-javadoc\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/8ea3dc0e854fe980c03af5c8eb074467ac5ee7b9\"\u003e\u003ccode\u003e8ea3dc0\u003c/code\u003e\u003c/a\u003e chore: [cli] Improve symbolic link tests for Windows (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5918\"\u003e#5918\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/a0e0ed0a9a81f49fd5503fbb6bb7d9c5149951ef\"\u003e\u003ccode\u003ea0e0ed0\u003c/code\u003e\u003c/a\u003e [doc] Reference CPD Capable Languages in CPD CLI docu (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5911\"\u003e#5911\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pmd/pmd/compare/pmd_releases/7.15.0...pmd_releases/7.16.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `net.sourceforge.pmd:pmd-java` from 7.15.0 to 7.16.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pmd/pmd/releases\"\u003enet.sourceforge.pmd:pmd-java's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ePMD 7.16.0 (25-July-2025)\u003c/h2\u003e\n\u003ch2\u003e25-July-2025 - 7.16.0\u003c/h2\u003e\n\u003cp\u003eThe PMD team is pleased to announce PMD 7.16.0.\u003c/p\u003e\n\u003cp\u003eThis is a minor release.\u003c/p\u003e\n\u003ch3\u003eTable Of Contents\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-and-noteworthy\"\u003e🚀 New and noteworthy\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-java-25-support\"\u003e🚀 New: Java 25 Support\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-cpd-support-for-css\"\u003eNew: CPD support for CSS\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-rules\"\u003e✨ New Rules\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#fixed-issues\"\u003e🐛 Fixed Issues\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#api-changes\"\u003e🚨 API Changes\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#experimental-apis-that-are-now-considered-stable\"\u003eExperimental APIs that are now considered stable\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#merged-pull-requests\"\u003e✨ Merged pull requests\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#dependency-updates\"\u003e📦 Dependency updates\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#stats\"\u003e📈 Stats\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🚀 New and noteworthy\u003c/h3\u003e\n\u003ch4\u003e🚀 New: Java 25 Support\u003c/h4\u003e\n\u003cp\u003eThis release of PMD brings support for Java 25.\u003c/p\u003e\n\u003cp\u003eThere are the following new standard language features:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://openjdk.org/jeps/511\"\u003eJEP 511: Module Import Declarations\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://openjdk.org/jeps/512\"\u003eJEP 512: Compact Source Files and Instance Main Methods\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://openjdk.org/jeps/513\"\u003eJEP 513: Flexible Constructor Bodies\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eAnd one preview language feature:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://openjdk.org/jeps/507\"\u003eJEP 507: Primitive Types in Patterns, instanceof, and switch (Third Preview)\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eIn order to analyze a project with PMD that uses these preview language features,\nyou'll need to enable it via the environment variable \u003ccode\u003ePMD_JAVA_OPTS\u003c/code\u003e and select the new language\nversion \u003ccode\u003e25-preview\u003c/code\u003e:\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eexport PMD_JAVA_OPTS=--enable-preview\npmd check --use-version java-25-preview ...\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eNote: Support for Java 23 preview language features have been removed. The version \u0026quot;23-preview\u0026quot;\nis no longer available.\u003c/p\u003e\n\u003ch4\u003eNew: CPD support for CSS\u003c/h4\u003e\n\u003cp\u003eCPD now supports CSS (Cascading Style Sheets), a language for describing the rendering of structured\ndocuments (such as HTML) on screen, on paper etc.\u003cbr /\u003e\nIt is shipped with the new module \u003ccode\u003epmd-css\u003c/code\u003e.\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/d60e2685371e1970ad836bfea824cc98dd689a10\"\u003e\u003ccode\u003ed60e268\u003c/code\u003e\u003c/a\u003e [release] prepare release pmd_releases/7.16.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/0b80d904080f9321472dd649ca45c87e6dc2d6f3\"\u003e\u003ccode\u003e0b80d90\u003c/code\u003e\u003c/a\u003e Prepare pmd release 7.16.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/7d391f6e5af1cbcf540fed7e9061c05ea418a380\"\u003e\u003ccode\u003e7d391f6\u003c/code\u003e\u003c/a\u003e chore(deps): Update gems (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5929\"\u003e#5929\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/e3bb9ec4668d54240e294ab2121969a211fc2e8d\"\u003e\u003ccode\u003ee3bb9ec\u003c/code\u003e\u003c/a\u003e chore: [scala] Fix javadoc config (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5920\"\u003e#5920\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/a5b3fe4ea202ed604458859382ac20c35a604f4c\"\u003e\u003ccode\u003ea5b3fe4\u003c/code\u003e\u003c/a\u003e chore(deps): bump marocchino/sticky-pull-request-comment from 2.9.3 to 2.9.4 ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/5cf96ff0c9f58e93dada97a3f403e49c28d3b4e7\"\u003e\u003ccode\u003e5cf96ff\u003c/code\u003e\u003c/a\u003e chore(deps): bump ostruct from 0.6.2 to 0.6.3 in /.ci/files in the all-gems g...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/25950f3088c81560beb42c28c53a6b38216e58f0\"\u003e\u003ccode\u003e25950f3\u003c/code\u003e\u003c/a\u003e chore(deps): bump org.apache.maven.plugins:maven-enforcer-plugin from 3.6.0 t...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/a3cbe4c3688669f6a1a6ad7ef59761ccab208cf3\"\u003e\u003ccode\u003ea3cbe4c\u003c/code\u003e\u003c/a\u003e Merge branch 'main' into chore/scala-javadoc\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/8ea3dc0e854fe980c03af5c8eb074467ac5ee7b9\"\u003e\u003ccode\u003e8ea3dc0\u003c/code\u003e\u003c/a\u003e chore: [cli] Improve symbolic link tests for Windows (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5918\"\u003e#5918\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/a0e0ed0a9a81f49fd5503fbb6bb7d9c5149951ef\"\u003e\u003ccode\u003ea0e0ed0\u003c/code\u003e\u003c/a\u003e [doc] Reference CPD Capable Languages in CPD CLI docu (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5911\"\u003e#5911\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pmd/pmd/compare/pmd_releases/7.15.0...pmd_releases/7.16.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `net.sourceforge.pmd:pmd-javascript` from 7.15.0 to 7.16.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pmd/pmd/releases\"\u003enet.sourceforge.pmd:pmd-javascript's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ePMD 7.16.0 (25-July-2025)\u003c/h2\u003e\n\u003ch2\u003e25-July-2025 - 7.16.0\u003c/h2\u003e\n\u003cp\u003eThe PMD team is pleased to announce PMD 7.16.0.\u003c/p\u003e\n\u003cp\u003eThis is a minor release.\u003c/p\u003e\n\u003ch3\u003eTable Of Contents\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-and-noteworthy\"\u003e🚀 New and noteworthy\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-java-25-support\"\u003e🚀 New: Java 25 Support\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-cpd-support-for-css\"\u003eNew: CPD support for CSS\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-rules\"\u003e✨ New Rules\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#fixed-issues\"\u003e🐛 Fixed Issues\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#api-changes\"\u003e🚨 API Changes\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#experimental-apis-that-are-now-considered-stable\"\u003eExperimental APIs that are now considered stable\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#merged-pull-requests\"\u003e✨ Merged pull requests\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#dependency-updates\"\u003e📦 Dependency updates\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#stats\"\u003e📈 Stats\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🚀 New and noteworthy\u003c/h3\u003e\n\u003ch4\u003e🚀 New: Java 25 Support\u003c/h4\u003e\n\u003cp\u003eThis release of PMD brings support for Java 25.\u003c/p\u003e\n\u003cp\u003eThere are the following new standard language features:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://openjdk.org/jeps/511\"\u003eJEP 511: Module Import Declarations\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://openjdk.org/jeps/512\"\u003eJEP 512: Compact Source Files and Instance Main Methods\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://openjdk.org/jeps/513\"\u003eJEP 513: Flexible Constructor Bodies\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eAnd one preview language feature:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://openjdk.org/jeps/507\"\u003eJEP 507: Primitive Types in Patterns, instanceof, and switch (Third Preview)\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eIn order to analyze a project with PMD that uses these preview language features,\nyou'll need to enable it via the environment variable \u003ccode\u003ePMD_JAVA_OPTS\u003c/code\u003e and select the new language\nversion \u003ccode\u003e25-preview\u003c/code\u003e:\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eexport PMD_JAVA_OPTS=--enable-preview\npmd check --use-version java-25-preview ...\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eNote: Support for Java 23 preview language features have been removed. The version \u0026quot;23-preview\u0026quot;\nis no longer available.\u003c/p\u003e\n\u003ch4\u003eNew: CPD support for CSS\u003c/h4\u003e\n\u003cp\u003eCPD now supports CSS (Cascading Style Sheets), a language for describing the rendering of structured\ndocuments (such as HTML) on screen, on paper etc.\u003cbr /\u003e\nIt is shipped with the new module \u003ccode\u003epmd-css\u003c/code\u003e.\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/d60e2685371e1970ad836bfea824cc98dd689a10\"\u003e\u003ccode\u003ed60e268\u003c/code\u003e\u003c/a\u003e [release] prepare release pmd_releases/7.16.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/0b80d904080f9321472dd649ca45c87e6dc2d6f3\"\u003e\u003ccode\u003e0b80d90\u003c/code\u003e\u003c/a\u003e Prepare pmd release 7.16.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/7d391f6e5af1cbcf540fed7e9061c05ea418a380\"\u003e\u003ccode\u003e7d391f6\u003c/code\u003e\u003c/a\u003e chore(deps): Update gems (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5929\"\u003e#5929\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/e3bb9ec4668d54240e294ab2121969a211fc2e8d\"\u003e\u003ccode\u003ee3bb9ec\u003c/code\u003e\u003c/a\u003e chore: [scala] Fix javadoc config (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5920\"\u003e#5920\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/a5b3fe4ea202ed604458859382ac20c35a604f4c\"\u003e\u003ccode\u003ea5b3fe4\u003c/code\u003e\u003c/a\u003e chore(deps): bump marocchino/sticky-pull-request-comment from 2.9.3 to 2.9.4 ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/5cf96ff0c9f58e93dada97a3f403e49c28d3b4e7\"\u003e\u003ccode\u003e5cf96ff\u003c/code\u003e\u003c/a\u003e chore(deps): bump ostruct from 0.6.2 to 0.6.3 in /.ci/files in the all-gems g...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/25950f3088c81560beb42c28c53a6b38216e58f0\"\u003e\u003ccode\u003e25950f3\u003c/code\u003e\u003c/a\u003e chore(deps): bump org.apache.maven.plugins:maven-enforcer-plugin from 3.6.0 t...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/a3cbe4c3688669f6a1a6ad7ef59761ccab208cf3\"\u003e\u003ccode\u003ea3cbe4c\u003c/code\u003e\u003c/a\u003e Merge branch 'main' into chore/scala-javadoc\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/8ea3dc0e854fe980c03af5c8eb074467ac5ee7b9\"\u003e\u003ccode\u003e8ea3dc0\u003c/code\u003e\u003c/a\u003e chore: [cli] Improve symbolic link tests for Windows (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5918\"\u003e#5918\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/a0e0ed0a9a81f49fd5503fbb6bb7d9c5149951ef\"\u003e\u003ccode\u003ea0e0ed0\u003c/code\u003e\u003c/a\u003e [doc] Reference CPD Capable Languages in CPD CLI docu (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5911\"\u003e#5911\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pmd/pmd/compare/pmd_releases/7.15.0...pmd_releases/7.16.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `net.sourceforge.pmd:pmd-jsp` from 7.15.0 to 7.16.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pmd/pmd/releases\"\u003enet.sourceforge.pmd:pmd-jsp's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ePMD 7.16.0 (25-July-2025)\u003c/h2\u003e\n\u003ch2\u003e25-July-2025 - 7.16.0\u003c/h2\u003e\n\u003cp\u003eThe PMD team is pleased to announce PMD 7.16.0.\u003c/p\u003e\n\u003cp\u003eThis is a minor release.\u003c/p\u003e\n\u003ch3\u003eTable Of Contents\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-and-noteworthy\"\u003e🚀 New and noteworthy\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-java-25-support\"\u003e🚀 New: Java 25 Support\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-cpd-support-for-css\"\u003eNew: CPD support for CSS\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-rules\"\u003e✨ New Rules\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#fixed-issues\"\u003e🐛 Fixed Issues\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#api-changes\"\u003e🚨 API Changes\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#experimental-apis-that-are-now-considered-stable\"\u003eExperimental APIs that are now considered stable\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#merged-pull-requests\"\u003e✨ Merged pull requests\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#dependency-updates\"\u003e📦 Dependency updates\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#stats\"\u003e📈 Stats\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🚀 New and noteworthy\u003c/h3\u003e\n\u003ch4\u003e🚀 New: Java 25 Support\u003c/h4\u003e\n\u003cp\u003eThis release of PMD brings support for Java 25.\u003c/p\u003e\n\u003cp\u003eThere are the following new standard language features:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://openjdk.org/jeps/511\"\u003eJEP 511: Module Import Declarations\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://openjdk.org/jeps/512\"\u003eJEP 512: Compact Source Files and Instance Main Methods\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://openjdk.org/jeps/513\"\u003eJEP 513: Flexible Constructor Bodies\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eAnd one preview language feature:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://openjdk.org/jeps/507\"\u003eJEP 507: Primitive Types in Patterns, instanceof, and switch (Third Preview)\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eIn order to analyze a project with PMD that uses these preview language features,\nyou'll need to enable it via the environment variable \u003ccode\u003ePMD_JAVA_OPTS\u003c/code\u003e and select the new language\nversion \u003ccode\u003e25-preview\u003c/code\u003e:\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eexport PMD_JAVA_OPTS=--enable-preview\npmd check --use-version java-25-preview ...\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eNote: Support for Java 23 preview language features have been removed. The version \u0026quot;23-preview\u0026quot;\nis no longer available.\u003c/p\u003e\n\u003ch4\u003eNew: CPD support for CSS\u003c/h4\u003e\n\u003cp\u003eCPD now supports CSS (Cascading Style Sheets), a language for describing the rendering of structured\ndocuments (such as HTML) on screen, on paper etc.\u003cbr /\u003e\nIt is shipped with the new module \u003ccode\u003epmd-css\u003c/code\u003e.\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/d60e2685371e1970ad836bfea824cc98dd689a10\"\u003e\u003ccode\u003ed60e268\u003c/code\u003e\u003c/a\u003e [release] prepare release pmd_releases/7.16.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/0b80d904080f9321472dd649ca45c87e6dc2d6f3\"\u003e\u003ccode\u003e0b80d90\u003c/code\u003e\u003c/a\u003e Prepare pmd release 7.16.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/7d391f6e5af1cbcf540fed7e9061c05ea418a380\"\u003e\u003ccode\u003e7d391f6\u003c/code\u003e\u003c/a\u003e chore(deps): Update gems (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5929\"\u003e#5929\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/e3bb9ec4668d54240e294ab2121969a211fc2e8d\"\u003e\u003ccode\u003ee3bb9ec\u003c/code\u003e\u003c/a\u003e chore: [scala] Fix javadoc config (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5920\"\u003e#5920\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/a5b3fe4ea202ed604458859382ac20c35a604f4c\"\u003e\u003ccode\u003ea5b3fe4\u003c/code\u003e\u003c/a\u003e chore(deps): bump marocchino/sticky-pull-request-comment from 2.9.3 to 2.9.4 ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/5cf96ff0c9f58e93dada97a3f403e49c28d3b4e7\"\u003e\u003ccode\u003e5cf96ff\u003c/code\u003e\u003c/a\u003e chore(deps): bump ostruct from 0.6.2 to 0.6.3 in /.ci/files in the all-gems g...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/25950f3088c81560beb42c28c53a6b38216e58f0\"\u003e\u003ccode\u003e25950f3\u003c/code\u003e\u003c/a\u003e chore(deps): bump org.apache.maven.plugins:maven-enforcer-plugin from 3.6.0 t...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/a3cbe4c3688669f6a1a6ad7ef59761ccab208cf3\"\u003e\u003ccode\u003ea3cbe4c\u003c/code\u003e\u003c/a\u003e Merge branch 'main' into chore/scala-javadoc\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/8ea3dc0e854fe980c03af5c8eb074467ac5ee7b9\"\u003e\u003ccode\u003e8ea3dc0\u003c/code\u003e\u003c/a\u003e chore: [cli] Improve symbolic link tests for Windows (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5918\"\u003e#5918\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/a0e0ed0a9a81f49fd5503fbb6bb7d9c5149951ef\"\u003e\u003ccode\u003ea0e0ed0\u003c/code\u003e\u003c/a\u003e [doc] Reference CPD Capable Languages in CPD CLI docu (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5911\"\u003e#5911\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pmd/pmd/compare/pmd_releases/7.15.0...pmd_releases/7.16.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot merge` will merge this PR after your CI passes on it\n- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it\n- `@dependabot cancel merge` will cancel a previously requested merge and block automerging\n- `@dependabot reopen` will reopen this PR if it is closed\n- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)\n\n\n\u003c/details\u003e","html_url":"https://github.com/hyperledger/fabric-gateway/pull/882","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/hyperledger%2Ffabric-gateway/issues/882","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/882/packages"}},{"old_version":"7.15.0","new_version":"7.16.0","update_type":"minor","path":null,"pr_created_at":"2025-07-28T04:12:26.000Z","version_change":"7.15.0 → 7.16.0","issue":{"uuid":"2699051985","node_id":"PR_kwDOG8B9086g4EPR","number":1409,"state":"open","title":"Bump pmdVersion from 7.15.0 to 7.16.0","user":"dependabot[bot]","labels":["dependencies","java"],"assignees":[],"locked":false,"comments_count":0,"pull_request":true,"closed_at":null,"author_association":"CONTRIBUTOR","state_reason":null,"created_at":"2025-07-28T04:12:26.000Z","updated_at":"2025-07-28T04:12:26.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","packages":[{"name":"pmdVersion","old_version":"7.15.0","new_version":"7.16.0","repository_url":null}],"path":null,"ecosystem":"maven"},"body":"Bumps `pmdVersion` from 7.15.0 to 7.16.0.\nUpdates `net.sourceforge.pmd:pmd-core` from 7.15.0 to 7.16.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pmd/pmd/releases\"\u003enet.sourceforge.pmd:pmd-core's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ePMD 7.16.0 (25-July-2025)\u003c/h2\u003e\n\u003ch2\u003e25-July-2025 - 7.16.0\u003c/h2\u003e\n\u003cp\u003eThe PMD team is pleased to announce PMD 7.16.0.\u003c/p\u003e\n\u003cp\u003eThis is a minor release.\u003c/p\u003e\n\u003ch3\u003eTable Of Contents\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-and-noteworthy\"\u003e🚀 New and noteworthy\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-java-25-support\"\u003e🚀 New: Java 25 Support\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-cpd-support-for-css\"\u003eNew: CPD support for CSS\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-rules\"\u003e✨ New Rules\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#fixed-issues\"\u003e🐛 Fixed Issues\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#api-changes\"\u003e🚨 API Changes\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#experimental-apis-that-are-now-considered-stable\"\u003eExperimental APIs that are now considered stable\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#merged-pull-requests\"\u003e✨ Merged pull requests\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#dependency-updates\"\u003e📦 Dependency updates\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#stats\"\u003e📈 Stats\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🚀 New and noteworthy\u003c/h3\u003e\n\u003ch4\u003e🚀 New: Java 25 Support\u003c/h4\u003e\n\u003cp\u003eThis release of PMD brings support for Java 25.\u003c/p\u003e\n\u003cp\u003eThere are the following new standard language features:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://openjdk.org/jeps/511\"\u003eJEP 511: Module Import Declarations\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://openjdk.org/jeps/512\"\u003eJEP 512: Compact Source Files and Instance Main Methods\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://openjdk.org/jeps/513\"\u003eJEP 513: Flexible Constructor Bodies\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eAnd one preview language feature:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://openjdk.org/jeps/507\"\u003eJEP 507: Primitive Types in Patterns, instanceof, and switch (Third Preview)\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eIn order to analyze a project with PMD that uses these preview language features,\nyou'll need to enable it via the environment variable \u003ccode\u003ePMD_JAVA_OPTS\u003c/code\u003e and select the new language\nversion \u003ccode\u003e25-preview\u003c/code\u003e:\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eexport PMD_JAVA_OPTS=--enable-preview\npmd check --use-version java-25-preview ...\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eNote: Support for Java 23 preview language features have been removed. The version \u0026quot;23-preview\u0026quot;\nis no longer available.\u003c/p\u003e\n\u003ch4\u003eNew: CPD support for CSS\u003c/h4\u003e\n\u003cp\u003eCPD now supports CSS (Cascading Style Sheets), a language for describing the rendering of structured\ndocuments (such as HTML) on screen, on paper etc.\u003cbr /\u003e\nIt is shipped with the new module \u003ccode\u003epmd-css\u003c/code\u003e.\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/d60e2685371e1970ad836bfea824cc98dd689a10\"\u003e\u003ccode\u003ed60e268\u003c/code\u003e\u003c/a\u003e [release] prepare release pmd_releases/7.16.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/0b80d904080f9321472dd649ca45c87e6dc2d6f3\"\u003e\u003ccode\u003e0b80d90\u003c/code\u003e\u003c/a\u003e Prepare pmd release 7.16.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/7d391f6e5af1cbcf540fed7e9061c05ea418a380\"\u003e\u003ccode\u003e7d391f6\u003c/code\u003e\u003c/a\u003e chore(deps): Update gems (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5929\"\u003e#5929\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/e3bb9ec4668d54240e294ab2121969a211fc2e8d\"\u003e\u003ccode\u003ee3bb9ec\u003c/code\u003e\u003c/a\u003e chore: [scala] Fix javadoc config (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5920\"\u003e#5920\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/a5b3fe4ea202ed604458859382ac20c35a604f4c\"\u003e\u003ccode\u003ea5b3fe4\u003c/code\u003e\u003c/a\u003e chore(deps): bump marocchino/sticky-pull-request-comment from 2.9.3 to 2.9.4 ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/5cf96ff0c9f58e93dada97a3f403e49c28d3b4e7\"\u003e\u003ccode\u003e5cf96ff\u003c/code\u003e\u003c/a\u003e chore(deps): bump ostruct from 0.6.2 to 0.6.3 in /.ci/files in the all-gems g...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/25950f3088c81560beb42c28c53a6b38216e58f0\"\u003e\u003ccode\u003e25950f3\u003c/code\u003e\u003c/a\u003e chore(deps): bump org.apache.maven.plugins:maven-enforcer-plugin from 3.6.0 t...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/a3cbe4c3688669f6a1a6ad7ef59761ccab208cf3\"\u003e\u003ccode\u003ea3cbe4c\u003c/code\u003e\u003c/a\u003e Merge branch 'main' into chore/scala-javadoc\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/8ea3dc0e854fe980c03af5c8eb074467ac5ee7b9\"\u003e\u003ccode\u003e8ea3dc0\u003c/code\u003e\u003c/a\u003e chore: [cli] Improve symbolic link tests for Windows (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5918\"\u003e#5918\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/a0e0ed0a9a81f49fd5503fbb6bb7d9c5149951ef\"\u003e\u003ccode\u003ea0e0ed0\u003c/code\u003e\u003c/a\u003e [doc] Reference CPD Capable Languages in CPD CLI docu (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5911\"\u003e#5911\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pmd/pmd/compare/pmd_releases/7.15.0...pmd_releases/7.16.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `net.sourceforge.pmd:pmd-java` from 7.15.0 to 7.16.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pmd/pmd/releases\"\u003enet.sourceforge.pmd:pmd-java's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ePMD 7.16.0 (25-July-2025)\u003c/h2\u003e\n\u003ch2\u003e25-July-2025 - 7.16.0\u003c/h2\u003e\n\u003cp\u003eThe PMD team is pleased to announce PMD 7.16.0.\u003c/p\u003e\n\u003cp\u003eThis is a minor release.\u003c/p\u003e\n\u003ch3\u003eTable Of Contents\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-and-noteworthy\"\u003e🚀 New and noteworthy\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-java-25-support\"\u003e🚀 New: Java 25 Support\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-cpd-support-for-css\"\u003eNew: CPD support for CSS\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-rules\"\u003e✨ New Rules\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#fixed-issues\"\u003e🐛 Fixed Issues\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#api-changes\"\u003e🚨 API Changes\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#experimental-apis-that-are-now-considered-stable\"\u003eExperimental APIs that are now considered stable\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#merged-pull-requests\"\u003e✨ Merged pull requests\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#dependency-updates\"\u003e📦 Dependency updates\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#stats\"\u003e📈 Stats\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🚀 New and noteworthy\u003c/h3\u003e\n\u003ch4\u003e🚀 New: Java 25 Support\u003c/h4\u003e\n\u003cp\u003eThis release of PMD brings support for Java 25.\u003c/p\u003e\n\u003cp\u003eThere are the following new standard language features:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://openjdk.org/jeps/511\"\u003eJEP 511: Module Import Declarations\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://openjdk.org/jeps/512\"\u003eJEP 512: Compact Source Files and Instance Main Methods\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://openjdk.org/jeps/513\"\u003eJEP 513: Flexible Constructor Bodies\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eAnd one preview language feature:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://openjdk.org/jeps/507\"\u003eJEP 507: Primitive Types in Patterns, instanceof, and switch (Third Preview)\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eIn order to analyze a project with PMD that uses these preview language features,\nyou'll need to enable it via the environment variable \u003ccode\u003ePMD_JAVA_OPTS\u003c/code\u003e and select the new language\nversion \u003ccode\u003e25-preview\u003c/code\u003e:\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eexport PMD_JAVA_OPTS=--enable-preview\npmd check --use-version java-25-preview ...\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eNote: Support for Java 23 preview language features have been removed. The version \u0026quot;23-preview\u0026quot;\nis no longer available.\u003c/p\u003e\n\u003ch4\u003eNew: CPD support for CSS\u003c/h4\u003e\n\u003cp\u003eCPD now supports CSS (Cascading Style Sheets), a language for describing the rendering of structured\ndocuments (such as HTML) on screen, on paper etc.\u003cbr /\u003e\nIt is shipped with the new module \u003ccode\u003epmd-css\u003c/code\u003e.\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/d60e2685371e1970ad836bfea824cc98dd689a10\"\u003e\u003ccode\u003ed60e268\u003c/code\u003e\u003c/a\u003e [release] prepare release pmd_releases/7.16.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/0b80d904080f9321472dd649ca45c87e6dc2d6f3\"\u003e\u003ccode\u003e0b80d90\u003c/code\u003e\u003c/a\u003e Prepare pmd release 7.16.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/7d391f6e5af1cbcf540fed7e9061c05ea418a380\"\u003e\u003ccode\u003e7d391f6\u003c/code\u003e\u003c/a\u003e chore(deps): Update gems (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5929\"\u003e#5929\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/e3bb9ec4668d54240e294ab2121969a211fc2e8d\"\u003e\u003ccode\u003ee3bb9ec\u003c/code\u003e\u003c/a\u003e chore: [scala] Fix javadoc config (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5920\"\u003e#5920\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/a5b3fe4ea202ed604458859382ac20c35a604f4c\"\u003e\u003ccode\u003ea5b3fe4\u003c/code\u003e\u003c/a\u003e chore(deps): bump marocchino/sticky-pull-request-comment from 2.9.3 to 2.9.4 ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/5cf96ff0c9f58e93dada97a3f403e49c28d3b4e7\"\u003e\u003ccode\u003e5cf96ff\u003c/code\u003e\u003c/a\u003e chore(deps): bump ostruct from 0.6.2 to 0.6.3 in /.ci/files in the all-gems g...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/25950f3088c81560beb42c28c53a6b38216e58f0\"\u003e\u003ccode\u003e25950f3\u003c/code\u003e\u003c/a\u003e chore(deps): bump org.apache.maven.plugins:maven-enforcer-plugin from 3.6.0 t...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/a3cbe4c3688669f6a1a6ad7ef59761ccab208cf3\"\u003e\u003ccode\u003ea3cbe4c\u003c/code\u003e\u003c/a\u003e Merge branch 'main' into chore/scala-javadoc\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/8ea3dc0e854fe980c03af5c8eb074467ac5ee7b9\"\u003e\u003ccode\u003e8ea3dc0\u003c/code\u003e\u003c/a\u003e chore: [cli] Improve symbolic link tests for Windows (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5918\"\u003e#5918\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/a0e0ed0a9a81f49fd5503fbb6bb7d9c5149951ef\"\u003e\u003ccode\u003ea0e0ed0\u003c/code\u003e\u003c/a\u003e [doc] Reference CPD Capable Languages in CPD CLI docu (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5911\"\u003e#5911\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pmd/pmd/compare/pmd_releases/7.15.0...pmd_releases/7.16.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `net.sourceforge.pmd:pmd-javascript` from 7.15.0 to 7.16.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pmd/pmd/releases\"\u003enet.sourceforge.pmd:pmd-javascript's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ePMD 7.16.0 (25-July-2025)\u003c/h2\u003e\n\u003ch2\u003e25-July-2025 - 7.16.0\u003c/h2\u003e\n\u003cp\u003eThe PMD team is pleased to announce PMD 7.16.0.\u003c/p\u003e\n\u003cp\u003eThis is a minor release.\u003c/p\u003e\n\u003ch3\u003eTable Of Contents\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-and-noteworthy\"\u003e🚀 New and noteworthy\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-java-25-support\"\u003e🚀 New: Java 25 Support\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-cpd-support-for-css\"\u003eNew: CPD support for CSS\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-rules\"\u003e✨ New Rules\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#fixed-issues\"\u003e🐛 Fixed Issues\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#api-changes\"\u003e🚨 API Changes\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#experimental-apis-that-are-now-considered-stable\"\u003eExperimental APIs that are now considered stable\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#merged-pull-requests\"\u003e✨ Merged pull requests\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#dependency-updates\"\u003e📦 Dependency updates\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#stats\"\u003e📈 Stats\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🚀 New and noteworthy\u003c/h3\u003e\n\u003ch4\u003e🚀 New: Java 25 Support\u003c/h4\u003e\n\u003cp\u003eThis release of PMD brings support for Java 25.\u003c/p\u003e\n\u003cp\u003eThere are the following new standard language features:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://openjdk.org/jeps/511\"\u003eJEP 511: Module Import Declarations\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://openjdk.org/jeps/512\"\u003eJEP 512: Compact Source Files and Instance Main Methods\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://openjdk.org/jeps/513\"\u003eJEP 513: Flexible Constructor Bodies\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eAnd one preview language feature:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://openjdk.org/jeps/507\"\u003eJEP 507: Primitive Types in Patterns, instanceof, and switch (Third Preview)\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eIn order to analyze a project with PMD that uses these preview language features,\nyou'll need to enable it via the environment variable \u003ccode\u003ePMD_JAVA_OPTS\u003c/code\u003e and select the new language\nversion \u003ccode\u003e25-preview\u003c/code\u003e:\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eexport PMD_JAVA_OPTS=--enable-preview\npmd check --use-version java-25-preview ...\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eNote: Support for Java 23 preview language features have been removed. The version \u0026quot;23-preview\u0026quot;\nis no longer available.\u003c/p\u003e\n\u003ch4\u003eNew: CPD support for CSS\u003c/h4\u003e\n\u003cp\u003eCPD now supports CSS (Cascading Style Sheets), a language for describing the rendering of structured\ndocuments (such as HTML) on screen, on paper etc.\u003cbr /\u003e\nIt is shipped with the new module \u003ccode\u003epmd-css\u003c/code\u003e.\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/d60e2685371e1970ad836bfea824cc98dd689a10\"\u003e\u003ccode\u003ed60e268\u003c/code\u003e\u003c/a\u003e [release] prepare release pmd_releases/7.16.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/0b80d904080f9321472dd649ca45c87e6dc2d6f3\"\u003e\u003ccode\u003e0b80d90\u003c/code\u003e\u003c/a\u003e Prepare pmd release 7.16.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/7d391f6e5af1cbcf540fed7e9061c05ea418a380\"\u003e\u003ccode\u003e7d391f6\u003c/code\u003e\u003c/a\u003e chore(deps): Update gems (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5929\"\u003e#5929\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/e3bb9ec4668d54240e294ab2121969a211fc2e8d\"\u003e\u003ccode\u003ee3bb9ec\u003c/code\u003e\u003c/a\u003e chore: [scala] Fix javadoc config (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5920\"\u003e#5920\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/a5b3fe4ea202ed604458859382ac20c35a604f4c\"\u003e\u003ccode\u003ea5b3fe4\u003c/code\u003e\u003c/a\u003e chore(deps): bump marocchino/sticky-pull-request-comment from 2.9.3 to 2.9.4 ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/5cf96ff0c9f58e93dada97a3f403e49c28d3b4e7\"\u003e\u003ccode\u003e5cf96ff\u003c/code\u003e\u003c/a\u003e chore(deps): bump ostruct from 0.6.2 to 0.6.3 in /.ci/files in the all-gems g...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/25950f3088c81560beb42c28c53a6b38216e58f0\"\u003e\u003ccode\u003e25950f3\u003c/code\u003e\u003c/a\u003e chore(deps): bump org.apache.maven.plugins:maven-enforcer-plugin from 3.6.0 t...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/a3cbe4c3688669f6a1a6ad7ef59761ccab208cf3\"\u003e\u003ccode\u003ea3cbe4c\u003c/code\u003e\u003c/a\u003e Merge branch 'main' into chore/scala-javadoc\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/8ea3dc0e854fe980c03af5c8eb074467ac5ee7b9\"\u003e\u003ccode\u003e8ea3dc0\u003c/code\u003e\u003c/a\u003e chore: [cli] Improve symbolic link tests for Windows (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5918\"\u003e#5918\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/a0e0ed0a9a81f49fd5503fbb6bb7d9c5149951ef\"\u003e\u003ccode\u003ea0e0ed0\u003c/code\u003e\u003c/a\u003e [doc] Reference CPD Capable Languages in CPD CLI docu (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5911\"\u003e#5911\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pmd/pmd/compare/pmd_releases/7.15.0...pmd_releases/7.16.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `net.sourceforge.pmd:pmd-jsp` from 7.15.0 to 7.16.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pmd/pmd/releases\"\u003enet.sourceforge.pmd:pmd-jsp's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ePMD 7.16.0 (25-July-2025)\u003c/h2\u003e\n\u003ch2\u003e25-July-2025 - 7.16.0\u003c/h2\u003e\n\u003cp\u003eThe PMD team is pleased to announce PMD 7.16.0.\u003c/p\u003e\n\u003cp\u003eThis is a minor release.\u003c/p\u003e\n\u003ch3\u003eTable Of Contents\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-and-noteworthy\"\u003e🚀 New and noteworthy\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-java-25-support\"\u003e🚀 New: Java 25 Support\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-cpd-support-for-css\"\u003eNew: CPD support for CSS\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-rules\"\u003e✨ New Rules\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#fixed-issues\"\u003e🐛 Fixed Issues\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#api-changes\"\u003e🚨 API Changes\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#experimental-apis-that-are-now-considered-stable\"\u003eExperimental APIs that are now considered stable\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#merged-pull-requests\"\u003e✨ Merged pull requests\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#dependency-updates\"\u003e📦 Dependency updates\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#stats\"\u003e📈 Stats\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🚀 New and noteworthy\u003c/h3\u003e\n\u003ch4\u003e🚀 New: Java 25 Support\u003c/h4\u003e\n\u003cp\u003eThis release of PMD brings support for Java 25.\u003c/p\u003e\n\u003cp\u003eThere are the following new standard language features:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://openjdk.org/jeps/511\"\u003eJEP 511: Module Import Declarations\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://openjdk.org/jeps/512\"\u003eJEP 512: Compact Source Files and Instance Main Methods\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://openjdk.org/jeps/513\"\u003eJEP 513: Flexible Constructor Bodies\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eAnd one preview language feature:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://openjdk.org/jeps/507\"\u003eJEP 507: Primitive Types in Patterns, instanceof, and switch (Third Preview)\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eIn order to analyze a project with PMD that uses these preview language features,\nyou'll need to enable it via the environment variable \u003ccode\u003ePMD_JAVA_OPTS\u003c/code\u003e and select the new language\nversion \u003ccode\u003e25-preview\u003c/code\u003e:\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eexport PMD_JAVA_OPTS=--enable-preview\npmd check --use-version java-25-preview ...\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eNote: Support for Java 23 preview language features have been removed. The version \u0026quot;23-preview\u0026quot;\nis no longer available.\u003c/p\u003e\n\u003ch4\u003eNew: CPD support for CSS\u003c/h4\u003e\n\u003cp\u003eCPD now supports CSS (Cascading Style Sheets), a language for describing the rendering of structured\ndocuments (such as HTML) on screen, on paper etc.\u003cbr /\u003e\nIt is shipped with the new module \u003ccode\u003epmd-css\u003c/code\u003e.\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/d60e2685371e1970ad836bfea824cc98dd689a10\"\u003e\u003ccode\u003ed60e268\u003c/code\u003e\u003c/a\u003e [release] prepare release pmd_releases/7.16.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/0b80d904080f9321472dd649ca45c87e6dc2d6f3\"\u003e\u003ccode\u003e0b80d90\u003c/code\u003e\u003c/a\u003e Prepare pmd release 7.16.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/7d391f6e5af1cbcf540fed7e9061c05ea418a380\"\u003e\u003ccode\u003e7d391f6\u003c/code\u003e\u003c/a\u003e chore(deps): Update gems (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5929\"\u003e#5929\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/e3bb9ec4668d54240e294ab2121969a211fc2e8d\"\u003e\u003ccode\u003ee3bb9ec\u003c/code\u003e\u003c/a\u003e chore: [scala] Fix javadoc config (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5920\"\u003e#5920\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/a5b3fe4ea202ed604458859382ac20c35a604f4c\"\u003e\u003ccode\u003ea5b3fe4\u003c/code\u003e\u003c/a\u003e chore(deps): bump marocchino/sticky-pull-request-comment from 2.9.3 to 2.9.4 ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/5cf96ff0c9f58e93dada97a3f403e49c28d3b4e7\"\u003e\u003ccode\u003e5cf96ff\u003c/code\u003e\u003c/a\u003e chore(deps): bump ostruct from 0.6.2 to 0.6.3 in /.ci/files in the all-gems g...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/25950f3088c81560beb42c28c53a6b38216e58f0\"\u003e\u003ccode\u003e25950f3\u003c/code\u003e\u003c/a\u003e chore(deps): bump org.apache.maven.plugins:maven-enforcer-plugin from 3.6.0 t...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/a3cbe4c3688669f6a1a6ad7ef59761ccab208cf3\"\u003e\u003ccode\u003ea3cbe4c\u003c/code\u003e\u003c/a\u003e Merge branch 'main' into chore/scala-javadoc\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/8ea3dc0e854fe980c03af5c8eb074467ac5ee7b9\"\u003e\u003ccode\u003e8ea3dc0\u003c/code\u003e\u003c/a\u003e chore: [cli] Improve symbolic link tests for Windows (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5918\"\u003e#5918\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/a0e0ed0a9a81f49fd5503fbb6bb7d9c5149951ef\"\u003e\u003ccode\u003ea0e0ed0\u003c/code\u003e\u003c/a\u003e [doc] Reference CPD Capable Languages in CPD CLI docu (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5911\"\u003e#5911\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pmd/pmd/compare/pmd_releases/7.15.0...pmd_releases/7.16.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot merge` will merge this PR after your CI passes on it\n- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it\n- `@dependabot cancel merge` will cancel a previously requested merge and block automerging\n- `@dependabot reopen` will reopen this PR if it is closed\n- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)\n\n\n\u003c/details\u003e","html_url":"https://github.com/instancio/instancio/pull/1409","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/instancio%2Finstancio/issues/1409","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/1409/packages"}},{"old_version":"7.15.0","new_version":"7.16.0","update_type":"minor","path":null,"pr_created_at":"2025-07-25T11:10:06.000Z","version_change":"7.15.0 → 7.16.0","issue":{"uuid":"2694634801","node_id":"PR_kwDOBsaZJs6gnN0x","number":652,"state":"closed","title":"Bump pmdVersion from 7.15.0 to 7.16.0","user":"dependabot[bot]","labels":["dependencies","java"],"assignees":["Bukama"],"locked":false,"comments_count":0,"pull_request":true,"closed_at":"2025-07-25T13:22:37.000Z","author_association":"CONTRIBUTOR","state_reason":null,"created_at":"2025-07-25T11:10:06.000Z","updated_at":"2025-07-25T13:22:37.000Z","time_to_close":7951,"merged_at":"2025-07-25T13:22:37.000Z","merged_by":"Bukama","closed_by":null,"dependency_metadata":{"prefix":"Bump","packages":[{"name":"pmdVersion","old_version":"7.15.0","new_version":"7.16.0","repository_url":null}],"path":null,"ecosystem":"maven"},"body":"Bumps `pmdVersion` from 7.15.0 to 7.16.0.\nUpdates `net.sourceforge.pmd:pmd-core` from 7.15.0 to 7.16.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pmd/pmd/releases\"\u003enet.sourceforge.pmd:pmd-core's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ePMD 7.16.0 (25-July-2025)\u003c/h2\u003e\n\u003ch2\u003e25-July-2025 - 7.16.0\u003c/h2\u003e\n\u003cp\u003eThe PMD team is pleased to announce PMD 7.16.0.\u003c/p\u003e\n\u003cp\u003eThis is a minor release.\u003c/p\u003e\n\u003ch3\u003eTable Of Contents\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-and-noteworthy\"\u003e🚀 New and noteworthy\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-java-25-support\"\u003e🚀 New: Java 25 Support\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-cpd-support-for-css\"\u003eNew: CPD support for CSS\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-rules\"\u003e✨ New Rules\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#fixed-issues\"\u003e🐛 Fixed Issues\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#api-changes\"\u003e🚨 API Changes\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#experimental-apis-that-are-now-considered-stable\"\u003eExperimental APIs that are now considered stable\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#merged-pull-requests\"\u003e✨ Merged pull requests\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#dependency-updates\"\u003e📦 Dependency updates\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#stats\"\u003e📈 Stats\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🚀 New and noteworthy\u003c/h3\u003e\n\u003ch4\u003e🚀 New: Java 25 Support\u003c/h4\u003e\n\u003cp\u003eThis release of PMD brings support for Java 25.\u003c/p\u003e\n\u003cp\u003eThere are the following new standard language features:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://openjdk.org/jeps/511\"\u003eJEP 511: Module Import Declarations\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://openjdk.org/jeps/512\"\u003eJEP 512: Compact Source Files and Instance Main Methods\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://openjdk.org/jeps/513\"\u003eJEP 513: Flexible Constructor Bodies\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eAnd one preview language feature:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://openjdk.org/jeps/507\"\u003eJEP 507: Primitive Types in Patterns, instanceof, and switch (Third Preview)\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eIn order to analyze a project with PMD that uses these preview language features,\nyou'll need to enable it via the environment variable \u003ccode\u003ePMD_JAVA_OPTS\u003c/code\u003e and select the new language\nversion \u003ccode\u003e25-preview\u003c/code\u003e:\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eexport PMD_JAVA_OPTS=--enable-preview\npmd check --use-version java-25-preview ...\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eNote: Support for Java 23 preview language features have been removed. The version \u0026quot;23-preview\u0026quot;\nis no longer available.\u003c/p\u003e\n\u003ch4\u003eNew: CPD support for CSS\u003c/h4\u003e\n\u003cp\u003eCPD now supports CSS (Cascading Style Sheets), a language for describing the rendering of structured\ndocuments (such as HTML) on screen, on paper etc.\u003cbr /\u003e\nIt is shipped with the new module \u003ccode\u003epmd-css\u003c/code\u003e.\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/d60e2685371e1970ad836bfea824cc98dd689a10\"\u003e\u003ccode\u003ed60e268\u003c/code\u003e\u003c/a\u003e [release] prepare release pmd_releases/7.16.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/0b80d904080f9321472dd649ca45c87e6dc2d6f3\"\u003e\u003ccode\u003e0b80d90\u003c/code\u003e\u003c/a\u003e Prepare pmd release 7.16.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/7d391f6e5af1cbcf540fed7e9061c05ea418a380\"\u003e\u003ccode\u003e7d391f6\u003c/code\u003e\u003c/a\u003e chore(deps): Update gems (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5929\"\u003e#5929\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/e3bb9ec4668d54240e294ab2121969a211fc2e8d\"\u003e\u003ccode\u003ee3bb9ec\u003c/code\u003e\u003c/a\u003e chore: [scala] Fix javadoc config (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5920\"\u003e#5920\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/a5b3fe4ea202ed604458859382ac20c35a604f4c\"\u003e\u003ccode\u003ea5b3fe4\u003c/code\u003e\u003c/a\u003e chore(deps): bump marocchino/sticky-pull-request-comment from 2.9.3 to 2.9.4 ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/5cf96ff0c9f58e93dada97a3f403e49c28d3b4e7\"\u003e\u003ccode\u003e5cf96ff\u003c/code\u003e\u003c/a\u003e chore(deps): bump ostruct from 0.6.2 to 0.6.3 in /.ci/files in the all-gems g...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/25950f3088c81560beb42c28c53a6b38216e58f0\"\u003e\u003ccode\u003e25950f3\u003c/code\u003e\u003c/a\u003e chore(deps): bump org.apache.maven.plugins:maven-enforcer-plugin from 3.6.0 t...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/a3cbe4c3688669f6a1a6ad7ef59761ccab208cf3\"\u003e\u003ccode\u003ea3cbe4c\u003c/code\u003e\u003c/a\u003e Merge branch 'main' into chore/scala-javadoc\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/8ea3dc0e854fe980c03af5c8eb074467ac5ee7b9\"\u003e\u003ccode\u003e8ea3dc0\u003c/code\u003e\u003c/a\u003e chore: [cli] Improve symbolic link tests for Windows (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5918\"\u003e#5918\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/a0e0ed0a9a81f49fd5503fbb6bb7d9c5149951ef\"\u003e\u003ccode\u003ea0e0ed0\u003c/code\u003e\u003c/a\u003e [doc] Reference CPD Capable Languages in CPD CLI docu (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5911\"\u003e#5911\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pmd/pmd/compare/pmd_releases/7.15.0...pmd_releases/7.16.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `net.sourceforge.pmd:pmd-java` from 7.15.0 to 7.16.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pmd/pmd/releases\"\u003enet.sourceforge.pmd:pmd-java's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ePMD 7.16.0 (25-July-2025)\u003c/h2\u003e\n\u003ch2\u003e25-July-2025 - 7.16.0\u003c/h2\u003e\n\u003cp\u003eThe PMD team is pleased to announce PMD 7.16.0.\u003c/p\u003e\n\u003cp\u003eThis is a minor release.\u003c/p\u003e\n\u003ch3\u003eTable Of Contents\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-and-noteworthy\"\u003e🚀 New and noteworthy\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-java-25-support\"\u003e🚀 New: Java 25 Support\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-cpd-support-for-css\"\u003eNew: CPD support for CSS\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-rules\"\u003e✨ New Rules\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#fixed-issues\"\u003e🐛 Fixed Issues\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#api-changes\"\u003e🚨 API Changes\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#experimental-apis-that-are-now-considered-stable\"\u003eExperimental APIs that are now considered stable\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#merged-pull-requests\"\u003e✨ Merged pull requests\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#dependency-updates\"\u003e📦 Dependency updates\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#stats\"\u003e📈 Stats\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🚀 New and noteworthy\u003c/h3\u003e\n\u003ch4\u003e🚀 New: Java 25 Support\u003c/h4\u003e\n\u003cp\u003eThis release of PMD brings support for Java 25.\u003c/p\u003e\n\u003cp\u003eThere are the following new standard language features:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://openjdk.org/jeps/511\"\u003eJEP 511: Module Import Declarations\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://openjdk.org/jeps/512\"\u003eJEP 512: Compact Source Files and Instance Main Methods\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://openjdk.org/jeps/513\"\u003eJEP 513: Flexible Constructor Bodies\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eAnd one preview language feature:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://openjdk.org/jeps/507\"\u003eJEP 507: Primitive Types in Patterns, instanceof, and switch (Third Preview)\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eIn order to analyze a project with PMD that uses these preview language features,\nyou'll need to enable it via the environment variable \u003ccode\u003ePMD_JAVA_OPTS\u003c/code\u003e and select the new language\nversion \u003ccode\u003e25-preview\u003c/code\u003e:\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eexport PMD_JAVA_OPTS=--enable-preview\npmd check --use-version java-25-preview ...\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eNote: Support for Java 23 preview language features have been removed. The version \u0026quot;23-preview\u0026quot;\nis no longer available.\u003c/p\u003e\n\u003ch4\u003eNew: CPD support for CSS\u003c/h4\u003e\n\u003cp\u003eCPD now supports CSS (Cascading Style Sheets), a language for describing the rendering of structured\ndocuments (such as HTML) on screen, on paper etc.\u003cbr /\u003e\nIt is shipped with the new module \u003ccode\u003epmd-css\u003c/code\u003e.\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/d60e2685371e1970ad836bfea824cc98dd689a10\"\u003e\u003ccode\u003ed60e268\u003c/code\u003e\u003c/a\u003e [release] prepare release pmd_releases/7.16.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/0b80d904080f9321472dd649ca45c87e6dc2d6f3\"\u003e\u003ccode\u003e0b80d90\u003c/code\u003e\u003c/a\u003e Prepare pmd release 7.16.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/7d391f6e5af1cbcf540fed7e9061c05ea418a380\"\u003e\u003ccode\u003e7d391f6\u003c/code\u003e\u003c/a\u003e chore(deps): Update gems (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5929\"\u003e#5929\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/e3bb9ec4668d54240e294ab2121969a211fc2e8d\"\u003e\u003ccode\u003ee3bb9ec\u003c/code\u003e\u003c/a\u003e chore: [scala] Fix javadoc config (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5920\"\u003e#5920\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/a5b3fe4ea202ed604458859382ac20c35a604f4c\"\u003e\u003ccode\u003ea5b3fe4\u003c/code\u003e\u003c/a\u003e chore(deps): bump marocchino/sticky-pull-request-comment from 2.9.3 to 2.9.4 ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/5cf96ff0c9f58e93dada97a3f403e49c28d3b4e7\"\u003e\u003ccode\u003e5cf96ff\u003c/code\u003e\u003c/a\u003e chore(deps): bump ostruct from 0.6.2 to 0.6.3 in /.ci/files in the all-gems g...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/25950f3088c81560beb42c28c53a6b38216e58f0\"\u003e\u003ccode\u003e25950f3\u003c/code\u003e\u003c/a\u003e chore(deps): bump org.apache.maven.plugins:maven-enforcer-plugin from 3.6.0 t...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/a3cbe4c3688669f6a1a6ad7ef59761ccab208cf3\"\u003e\u003ccode\u003ea3cbe4c\u003c/code\u003e\u003c/a\u003e Merge branch 'main' into chore/scala-javadoc\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/8ea3dc0e854fe980c03af5c8eb074467ac5ee7b9\"\u003e\u003ccode\u003e8ea3dc0\u003c/code\u003e\u003c/a\u003e chore: [cli] Improve symbolic link tests for Windows (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5918\"\u003e#5918\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/a0e0ed0a9a81f49fd5503fbb6bb7d9c5149951ef\"\u003e\u003ccode\u003ea0e0ed0\u003c/code\u003e\u003c/a\u003e [doc] Reference CPD Capable Languages in CPD CLI docu (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5911\"\u003e#5911\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pmd/pmd/compare/pmd_releases/7.15.0...pmd_releases/7.16.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `net.sourceforge.pmd:pmd-javascript` from 7.15.0 to 7.16.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pmd/pmd/releases\"\u003enet.sourceforge.pmd:pmd-javascript's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ePMD 7.16.0 (25-July-2025)\u003c/h2\u003e\n\u003ch2\u003e25-July-2025 - 7.16.0\u003c/h2\u003e\n\u003cp\u003eThe PMD team is pleased to announce PMD 7.16.0.\u003c/p\u003e\n\u003cp\u003eThis is a minor release.\u003c/p\u003e\n\u003ch3\u003eTable Of Contents\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-and-noteworthy\"\u003e🚀 New and noteworthy\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-java-25-support\"\u003e🚀 New: Java 25 Support\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-cpd-support-for-css\"\u003eNew: CPD support for CSS\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-rules\"\u003e✨ New Rules\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#fixed-issues\"\u003e🐛 Fixed Issues\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#api-changes\"\u003e🚨 API Changes\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#experimental-apis-that-are-now-considered-stable\"\u003eExperimental APIs that are now considered stable\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#merged-pull-requests\"\u003e✨ Merged pull requests\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#dependency-updates\"\u003e📦 Dependency updates\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#stats\"\u003e📈 Stats\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🚀 New and noteworthy\u003c/h3\u003e\n\u003ch4\u003e🚀 New: Java 25 Support\u003c/h4\u003e\n\u003cp\u003eThis release of PMD brings support for Java 25.\u003c/p\u003e\n\u003cp\u003eThere are the following new standard language features:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://openjdk.org/jeps/511\"\u003eJEP 511: Module Import Declarations\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://openjdk.org/jeps/512\"\u003eJEP 512: Compact Source Files and Instance Main Methods\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://openjdk.org/jeps/513\"\u003eJEP 513: Flexible Constructor Bodies\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eAnd one preview language feature:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://openjdk.org/jeps/507\"\u003eJEP 507: Primitive Types in Patterns, instanceof, and switch (Third Preview)\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eIn order to analyze a project with PMD that uses these preview language features,\nyou'll need to enable it via the environment variable \u003ccode\u003ePMD_JAVA_OPTS\u003c/code\u003e and select the new language\nversion \u003ccode\u003e25-preview\u003c/code\u003e:\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eexport PMD_JAVA_OPTS=--enable-preview\npmd check --use-version java-25-preview ...\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eNote: Support for Java 23 preview language features have been removed. The version \u0026quot;23-preview\u0026quot;\nis no longer available.\u003c/p\u003e\n\u003ch4\u003eNew: CPD support for CSS\u003c/h4\u003e\n\u003cp\u003eCPD now supports CSS (Cascading Style Sheets), a language for describing the rendering of structured\ndocuments (such as HTML) on screen, on paper etc.\u003cbr /\u003e\nIt is shipped with the new module \u003ccode\u003epmd-css\u003c/code\u003e.\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/d60e2685371e1970ad836bfea824cc98dd689a10\"\u003e\u003ccode\u003ed60e268\u003c/code\u003e\u003c/a\u003e [release] prepare release pmd_releases/7.16.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/0b80d904080f9321472dd649ca45c87e6dc2d6f3\"\u003e\u003ccode\u003e0b80d90\u003c/code\u003e\u003c/a\u003e Prepare pmd release 7.16.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/7d391f6e5af1cbcf540fed7e9061c05ea418a380\"\u003e\u003ccode\u003e7d391f6\u003c/code\u003e\u003c/a\u003e chore(deps): Update gems (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5929\"\u003e#5929\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/e3bb9ec4668d54240e294ab2121969a211fc2e8d\"\u003e\u003ccode\u003ee3bb9ec\u003c/code\u003e\u003c/a\u003e chore: [scala] Fix javadoc config (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5920\"\u003e#5920\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/a5b3fe4ea202ed604458859382ac20c35a604f4c\"\u003e\u003ccode\u003ea5b3fe4\u003c/code\u003e\u003c/a\u003e chore(deps): bump marocchino/sticky-pull-request-comment from 2.9.3 to 2.9.4 ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/5cf96ff0c9f58e93dada97a3f403e49c28d3b4e7\"\u003e\u003ccode\u003e5cf96ff\u003c/code\u003e\u003c/a\u003e chore(deps): bump ostruct from 0.6.2 to 0.6.3 in /.ci/files in the all-gems g...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/25950f3088c81560beb42c28c53a6b38216e58f0\"\u003e\u003ccode\u003e25950f3\u003c/code\u003e\u003c/a\u003e chore(deps): bump org.apache.maven.plugins:maven-enforcer-plugin from 3.6.0 t...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/a3cbe4c3688669f6a1a6ad7ef59761ccab208cf3\"\u003e\u003ccode\u003ea3cbe4c\u003c/code\u003e\u003c/a\u003e Merge branch 'main' into chore/scala-javadoc\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/8ea3dc0e854fe980c03af5c8eb074467ac5ee7b9\"\u003e\u003ccode\u003e8ea3dc0\u003c/code\u003e\u003c/a\u003e chore: [cli] Improve symbolic link tests for Windows (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5918\"\u003e#5918\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/a0e0ed0a9a81f49fd5503fbb6bb7d9c5149951ef\"\u003e\u003ccode\u003ea0e0ed0\u003c/code\u003e\u003c/a\u003e [doc] Reference CPD Capable Languages in CPD CLI docu (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5911\"\u003e#5911\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pmd/pmd/compare/pmd_releases/7.15.0...pmd_releases/7.16.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `net.sourceforge.pmd:pmd-jsp` from 7.15.0 to 7.16.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pmd/pmd/releases\"\u003enet.sourceforge.pmd:pmd-jsp's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ePMD 7.16.0 (25-July-2025)\u003c/h2\u003e\n\u003ch2\u003e25-July-2025 - 7.16.0\u003c/h2\u003e\n\u003cp\u003eThe PMD team is pleased to announce PMD 7.16.0.\u003c/p\u003e\n\u003cp\u003eThis is a minor release.\u003c/p\u003e\n\u003ch3\u003eTable Of Contents\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-and-noteworthy\"\u003e🚀 New and noteworthy\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-java-25-support\"\u003e🚀 New: Java 25 Support\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-cpd-support-for-css\"\u003eNew: CPD support for CSS\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-rules\"\u003e✨ New Rules\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#fixed-issues\"\u003e🐛 Fixed Issues\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#api-changes\"\u003e🚨 API Changes\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#experimental-apis-that-are-now-considered-stable\"\u003eExperimental APIs that are now considered stable\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#merged-pull-requests\"\u003e✨ Merged pull requests\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#dependency-updates\"\u003e📦 Dependency updates\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#stats\"\u003e📈 Stats\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🚀 New and noteworthy\u003c/h3\u003e\n\u003ch4\u003e🚀 New: Java 25 Support\u003c/h4\u003e\n\u003cp\u003eThis release of PMD brings support for Java 25.\u003c/p\u003e\n\u003cp\u003eThere are the following new standard language features:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://openjdk.org/jeps/511\"\u003eJEP 511: Module Import Declarations\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://openjdk.org/jeps/512\"\u003eJEP 512: Compact Source Files and Instance Main Methods\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://openjdk.org/jeps/513\"\u003eJEP 513: Flexible Constructor Bodies\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eAnd one preview language feature:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://openjdk.org/jeps/507\"\u003eJEP 507: Primitive Types in Patterns, instanceof, and switch (Third Preview)\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eIn order to analyze a project with PMD that uses these preview language features,\nyou'll need to enable it via the environment variable \u003ccode\u003ePMD_JAVA_OPTS\u003c/code\u003e and select the new language\nversion \u003ccode\u003e25-preview\u003c/code\u003e:\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eexport PMD_JAVA_OPTS=--enable-preview\npmd check --use-version java-25-preview ...\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eNote: Support for Java 23 preview language features have been removed. The version \u0026quot;23-preview\u0026quot;\nis no longer available.\u003c/p\u003e\n\u003ch4\u003eNew: CPD support for CSS\u003c/h4\u003e\n\u003cp\u003eCPD now supports CSS (Cascading Style Sheets), a language for describing the rendering of structured\ndocuments (such as HTML) on screen, on paper etc.\u003cbr /\u003e\nIt is shipped with the new module \u003ccode\u003epmd-css\u003c/code\u003e.\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/d60e2685371e1970ad836bfea824cc98dd689a10\"\u003e\u003ccode\u003ed60e268\u003c/code\u003e\u003c/a\u003e [release] prepare release pmd_releases/7.16.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/0b80d904080f9321472dd649ca45c87e6dc2d6f3\"\u003e\u003ccode\u003e0b80d90\u003c/code\u003e\u003c/a\u003e Prepare pmd release 7.16.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/7d391f6e5af1cbcf540fed7e9061c05ea418a380\"\u003e\u003ccode\u003e7d391f6\u003c/code\u003e\u003c/a\u003e chore(deps): Update gems (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5929\"\u003e#5929\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/e3bb9ec4668d54240e294ab2121969a211fc2e8d\"\u003e\u003ccode\u003ee3bb9ec\u003c/code\u003e\u003c/a\u003e chore: [scala] Fix javadoc config (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5920\"\u003e#5920\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/a5b3fe4ea202ed604458859382ac20c35a604f4c\"\u003e\u003ccode\u003ea5b3fe4\u003c/code\u003e\u003c/a\u003e chore(deps): bump marocchino/sticky-pull-request-comment from 2.9.3 to 2.9.4 ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/5cf96ff0c9f58e93dada97a3f403e49c28d3b4e7\"\u003e\u003ccode\u003e5cf96ff\u003c/code\u003e\u003c/a\u003e chore(deps): bump ostruct from 0.6.2 to 0.6.3 in /.ci/files in the all-gems g...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/25950f3088c81560beb42c28c53a6b38216e58f0\"\u003e\u003ccode\u003e25950f3\u003c/code\u003e\u003c/a\u003e chore(deps): bump org.apache.maven.plugins:maven-enforcer-plugin from 3.6.0 t...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/a3cbe4c3688669f6a1a6ad7ef59761ccab208cf3\"\u003e\u003ccode\u003ea3cbe4c\u003c/code\u003e\u003c/a\u003e Merge branch 'main' into chore/scala-javadoc\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/8ea3dc0e854fe980c03af5c8eb074467ac5ee7b9\"\u003e\u003ccode\u003e8ea3dc0\u003c/code\u003e\u003c/a\u003e chore: [cli] Improve symbolic link tests for Windows (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5918\"\u003e#5918\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/a0e0ed0a9a81f49fd5503fbb6bb7d9c5149951ef\"\u003e\u003ccode\u003ea0e0ed0\u003c/code\u003e\u003c/a\u003e [doc] Reference CPD Capable Languages in CPD CLI docu (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5911\"\u003e#5911\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pmd/pmd/compare/pmd_releases/7.15.0...pmd_releases/7.16.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot merge` will merge this PR after your CI passes on it\n- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it\n- `@dependabot cancel merge` will cancel a previously requested merge and block automerging\n- `@dependabot reopen` will reopen this PR if it is closed\n- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)\n\n\n\u003c/details\u003e","html_url":"https://github.com/apache/maven-pmd-plugin/pull/652","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/apache%2Fmaven-pmd-plugin/issues/652","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/652/packages"}},{"old_version":"7.14.0","new_version":"7.15.0","update_type":"minor","path":null,"pr_created_at":"2025-06-30T04:06:11.000Z","version_change":"7.14.0 → 7.15.0","issue":{"uuid":"2627682454","node_id":"PR_kwDOG8B9086cn0CW","number":1391,"state":"open","title":"Bump pmdVersion from 7.14.0 to 7.15.0","user":"dependabot[bot]","labels":["dependencies","java"],"assignees":[],"locked":false,"comments_count":0,"pull_request":true,"closed_at":null,"author_association":"CONTRIBUTOR","state_reason":null,"created_at":"2025-06-30T04:06:11.000Z","updated_at":"2025-06-30T05:26:30.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","packages":[{"name":"pmdVersion","old_version":"7.14.0","new_version":"7.15.0","repository_url":null}],"path":null,"ecosystem":"maven"},"body":"Bumps `pmdVersion` from 7.14.0 to 7.15.0.\nUpdates `net.sourceforge.pmd:pmd-core` from 7.14.0 to 7.15.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pmd/pmd/releases\"\u003enet.sourceforge.pmd:pmd-core's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ePMD 7.15.0 (27-June-2025)\u003c/h2\u003e\n\u003ch2\u003e27-June-2025 - 7.15.0\u003c/h2\u003e\n\u003cp\u003eThe PMD team is pleased to announce PMD 7.15.0.\u003c/p\u003e\n\u003cp\u003eThis is a minor release.\u003c/p\u003e\n\u003ch3\u003eTable Of Contents\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-and-noteworthy\"\u003e🚀 New and noteworthy\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-rules\"\u003e✨ New Rules\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#fixed-issues\"\u003e🐛 Fixed Issues\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#api-changes\"\u003e🚨 API Changes\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#rule-test-schema\"\u003eRule Test Schema\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#financial-contributions\"\u003e💵 Financial Contributions\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#merged-pull-requests\"\u003e✨ Merged pull requests\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#dependency-updates\"\u003e📦 Dependency updates\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#stats\"\u003e📈 Stats\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🚀 New and noteworthy\u003c/h3\u003e\n\u003ch4\u003e✨ New Rules\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eThe new Apex rule \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.15.0/pmd_rules_apex_design.html#avoidbooleanmethodparameters\"\u003e\u003ccode\u003eAvoidBooleanMethodParameters\u003c/code\u003e\u003c/a\u003e finds methods that take a\nboolean parameter. This can make method calls difficult to understand and maintain as the method is clearly\ndoing two things.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🐛 Fixed Issues\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eapex-design\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5427\"\u003e#5427\u003c/a\u003e: [apex] New Rule: Avoid Boolean Method Parameters\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003eapex-security\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5788\"\u003e#5788\u003c/a\u003e: [apex] ApexCRUDViolation unable to detect insecure SOQL if it is a direct input argument\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003edoc\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5790\"\u003e#5790\u003c/a\u003e: [doc] Website rule reference pages are returning 404\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003ejava-bestpractices\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5785\"\u003e#5785\u003c/a\u003e: [java] UnusedPrivateField doesn't play well with UnnecessaryWarningSuppression\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5793\"\u003e#5793\u003c/a\u003e: [java] NonExhaustiveSwitch fails on exhaustive switch with sealed class\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003ejava-codestyle\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/1639\"\u003e#1639\u003c/a\u003e: [java] UnnecessaryImport false positive for multiline @\u003c!-- raw HTML omitted --\u003elink Javadoc\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/2304\"\u003e#2304\u003c/a\u003e: [java] UnnecessaryImport false positive for on-demand imports in JavaDoc\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5832\"\u003e#5832\u003c/a\u003e: [java] UnnecessaryImport false positive for multiline @\u003c!-- raw HTML omitted --\u003esee Javadoc\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003ejava-design\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5804\"\u003e#5804\u003c/a\u003e: [java] UselessOverridingMethod doesn't play well with UnnecessarySuppressWarning\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🚨 API Changes\u003c/h3\u003e\n\u003ch4\u003eRule Test Schema\u003c/h4\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/f06835e0afc59b11f440fffd999d13ebe48a43d2\"\u003e\u003ccode\u003ef06835e\u003c/code\u003e\u003c/a\u003e [release] prepare release pmd_releases/7.15.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/e84f47ade44726923f65d60a66fa39677ab41328\"\u003e\u003ccode\u003ee84f47a\u003c/code\u003e\u003c/a\u003e Prepare pmd release 7.15.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/8e5654fa786955f969b6904241fd56b2d10bb6b3\"\u003e\u003ccode\u003e8e5654f\u003c/code\u003e\u003c/a\u003e [ci] publish-snapshot/release: also create javadocs for kotlin (dokka)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/48e6c5fb906858bce774dcdf1aa54684705be54e\"\u003e\u003ccode\u003e48e6c5f\u003c/code\u003e\u003c/a\u003e [doc] Fix javadoc plugin offline link configuration\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/77276fb5453220a3951c29004645f44552ff111b\"\u003e\u003ccode\u003e77276fb\u003c/code\u003e\u003c/a\u003e [ci] Fix condition for publish-release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/2b40c9eac39b4f4b450edde6a316d568e03de900\"\u003e\u003ccode\u003e2b40c9e\u003c/code\u003e\u003c/a\u003e [ci] Fix regression tester script for release builds\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/888eb624616dcc660c096d5136a8c3768a32851d\"\u003e\u003ccode\u003e888eb62\u003c/code\u003e\u003c/a\u003e [ci] Fix dogfood check during release builds\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/59e32be4d8a807c4ef378aa1a2869e89df1aa660\"\u003e\u003ccode\u003e59e32be\u003c/code\u003e\u003c/a\u003e Bump build-tools from 30 to 32 (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5853\"\u003e#5853\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/5e2bf355ae7af818cc5f81f52008e524fc4693d5\"\u003e\u003ccode\u003e5e2bf35\u003c/code\u003e\u003c/a\u003e [ci] New \u0026quot;Publish Release\u0026quot; workflow (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5745\"\u003e#5745\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/6462b0cf0993b72e9093e0bbd095bc0b9aebecef\"\u003e\u003ccode\u003e6462b0c\u003c/code\u003e\u003c/a\u003e [ci] Small fixes\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pmd/pmd/compare/pmd_releases/7.14.0...pmd_releases/7.15.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `net.sourceforge.pmd:pmd-java` from 7.14.0 to 7.15.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pmd/pmd/releases\"\u003enet.sourceforge.pmd:pmd-java's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ePMD 7.15.0 (27-June-2025)\u003c/h2\u003e\n\u003ch2\u003e27-June-2025 - 7.15.0\u003c/h2\u003e\n\u003cp\u003eThe PMD team is pleased to announce PMD 7.15.0.\u003c/p\u003e\n\u003cp\u003eThis is a minor release.\u003c/p\u003e\n\u003ch3\u003eTable Of Contents\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-and-noteworthy\"\u003e🚀 New and noteworthy\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-rules\"\u003e✨ New Rules\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#fixed-issues\"\u003e🐛 Fixed Issues\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#api-changes\"\u003e🚨 API Changes\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#rule-test-schema\"\u003eRule Test Schema\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#financial-contributions\"\u003e💵 Financial Contributions\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#merged-pull-requests\"\u003e✨ Merged pull requests\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#dependency-updates\"\u003e📦 Dependency updates\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#stats\"\u003e📈 Stats\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🚀 New and noteworthy\u003c/h3\u003e\n\u003ch4\u003e✨ New Rules\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eThe new Apex rule \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.15.0/pmd_rules_apex_design.html#avoidbooleanmethodparameters\"\u003e\u003ccode\u003eAvoidBooleanMethodParameters\u003c/code\u003e\u003c/a\u003e finds methods that take a\nboolean parameter. This can make method calls difficult to understand and maintain as the method is clearly\ndoing two things.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🐛 Fixed Issues\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eapex-design\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5427\"\u003e#5427\u003c/a\u003e: [apex] New Rule: Avoid Boolean Method Parameters\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003eapex-security\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5788\"\u003e#5788\u003c/a\u003e: [apex] ApexCRUDViolation unable to detect insecure SOQL if it is a direct input argument\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003edoc\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5790\"\u003e#5790\u003c/a\u003e: [doc] Website rule reference pages are returning 404\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003ejava-bestpractices\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5785\"\u003e#5785\u003c/a\u003e: [java] UnusedPrivateField doesn't play well with UnnecessaryWarningSuppression\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5793\"\u003e#5793\u003c/a\u003e: [java] NonExhaustiveSwitch fails on exhaustive switch with sealed class\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003ejava-codestyle\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/1639\"\u003e#1639\u003c/a\u003e: [java] UnnecessaryImport false positive for multiline @\u003c!-- raw HTML omitted --\u003elink Javadoc\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/2304\"\u003e#2304\u003c/a\u003e: [java] UnnecessaryImport false positive for on-demand imports in JavaDoc\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5832\"\u003e#5832\u003c/a\u003e: [java] UnnecessaryImport false positive for multiline @\u003c!-- raw HTML omitted --\u003esee Javadoc\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003ejava-design\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5804\"\u003e#5804\u003c/a\u003e: [java] UselessOverridingMethod doesn't play well with UnnecessarySuppressWarning\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🚨 API Changes\u003c/h3\u003e\n\u003ch4\u003eRule Test Schema\u003c/h4\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/f06835e0afc59b11f440fffd999d13ebe48a43d2\"\u003e\u003ccode\u003ef06835e\u003c/code\u003e\u003c/a\u003e [release] prepare release pmd_releases/7.15.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/e84f47ade44726923f65d60a66fa39677ab41328\"\u003e\u003ccode\u003ee84f47a\u003c/code\u003e\u003c/a\u003e Prepare pmd release 7.15.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/8e5654fa786955f969b6904241fd56b2d10bb6b3\"\u003e\u003ccode\u003e8e5654f\u003c/code\u003e\u003c/a\u003e [ci] publish-snapshot/release: also create javadocs for kotlin (dokka)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/48e6c5fb906858bce774dcdf1aa54684705be54e\"\u003e\u003ccode\u003e48e6c5f\u003c/code\u003e\u003c/a\u003e [doc] Fix javadoc plugin offline link configuration\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/77276fb5453220a3951c29004645f44552ff111b\"\u003e\u003ccode\u003e77276fb\u003c/code\u003e\u003c/a\u003e [ci] Fix condition for publish-release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/2b40c9eac39b4f4b450edde6a316d568e03de900\"\u003e\u003ccode\u003e2b40c9e\u003c/code\u003e\u003c/a\u003e [ci] Fix regression tester script for release builds\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/888eb624616dcc660c096d5136a8c3768a32851d\"\u003e\u003ccode\u003e888eb62\u003c/code\u003e\u003c/a\u003e [ci] Fix dogfood check during release builds\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/59e32be4d8a807c4ef378aa1a2869e89df1aa660\"\u003e\u003ccode\u003e59e32be\u003c/code\u003e\u003c/a\u003e Bump build-tools from 30 to 32 (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5853\"\u003e#5853\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/5e2bf355ae7af818cc5f81f52008e524fc4693d5\"\u003e\u003ccode\u003e5e2bf35\u003c/code\u003e\u003c/a\u003e [ci] New \u0026quot;Publish Release\u0026quot; workflow (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5745\"\u003e#5745\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/6462b0cf0993b72e9093e0bbd095bc0b9aebecef\"\u003e\u003ccode\u003e6462b0c\u003c/code\u003e\u003c/a\u003e [ci] Small fixes\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pmd/pmd/compare/pmd_releases/7.14.0...pmd_releases/7.15.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `net.sourceforge.pmd:pmd-javascript` from 7.14.0 to 7.15.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pmd/pmd/releases\"\u003enet.sourceforge.pmd:pmd-javascript's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ePMD 7.15.0 (27-June-2025)\u003c/h2\u003e\n\u003ch2\u003e27-June-2025 - 7.15.0\u003c/h2\u003e\n\u003cp\u003eThe PMD team is pleased to announce PMD 7.15.0.\u003c/p\u003e\n\u003cp\u003eThis is a minor release.\u003c/p\u003e\n\u003ch3\u003eTable Of Contents\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-and-noteworthy\"\u003e🚀 New and noteworthy\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-rules\"\u003e✨ New Rules\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#fixed-issues\"\u003e🐛 Fixed Issues\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#api-changes\"\u003e🚨 API Changes\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#rule-test-schema\"\u003eRule Test Schema\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#financial-contributions\"\u003e💵 Financial Contributions\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#merged-pull-requests\"\u003e✨ Merged pull requests\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#dependency-updates\"\u003e📦 Dependency updates\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#stats\"\u003e📈 Stats\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🚀 New and noteworthy\u003c/h3\u003e\n\u003ch4\u003e✨ New Rules\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eThe new Apex rule \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.15.0/pmd_rules_apex_design.html#avoidbooleanmethodparameters\"\u003e\u003ccode\u003eAvoidBooleanMethodParameters\u003c/code\u003e\u003c/a\u003e finds methods that take a\nboolean parameter. This can make method calls difficult to understand and maintain as the method is clearly\ndoing two things.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🐛 Fixed Issues\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eapex-design\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5427\"\u003e#5427\u003c/a\u003e: [apex] New Rule: Avoid Boolean Method Parameters\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003eapex-security\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5788\"\u003e#5788\u003c/a\u003e: [apex] ApexCRUDViolation unable to detect insecure SOQL if it is a direct input argument\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003edoc\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5790\"\u003e#5790\u003c/a\u003e: [doc] Website rule reference pages are returning 404\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003ejava-bestpractices\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5785\"\u003e#5785\u003c/a\u003e: [java] UnusedPrivateField doesn't play well with UnnecessaryWarningSuppression\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5793\"\u003e#5793\u003c/a\u003e: [java] NonExhaustiveSwitch fails on exhaustive switch with sealed class\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003ejava-codestyle\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/1639\"\u003e#1639\u003c/a\u003e: [java] UnnecessaryImport false positive for multiline @\u003c!-- raw HTML omitted --\u003elink Javadoc\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/2304\"\u003e#2304\u003c/a\u003e: [java] UnnecessaryImport false positive for on-demand imports in JavaDoc\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5832\"\u003e#5832\u003c/a\u003e: [java] UnnecessaryImport false positive for multiline @\u003c!-- raw HTML omitted --\u003esee Javadoc\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003ejava-design\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5804\"\u003e#5804\u003c/a\u003e: [java] UselessOverridingMethod doesn't play well with UnnecessarySuppressWarning\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🚨 API Changes\u003c/h3\u003e\n\u003ch4\u003eRule Test Schema\u003c/h4\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/f06835e0afc59b11f440fffd999d13ebe48a43d2\"\u003e\u003ccode\u003ef06835e\u003c/code\u003e\u003c/a\u003e [release] prepare release pmd_releases/7.15.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/e84f47ade44726923f65d60a66fa39677ab41328\"\u003e\u003ccode\u003ee84f47a\u003c/code\u003e\u003c/a\u003e Prepare pmd release 7.15.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/8e5654fa786955f969b6904241fd56b2d10bb6b3\"\u003e\u003ccode\u003e8e5654f\u003c/code\u003e\u003c/a\u003e [ci] publish-snapshot/release: also create javadocs for kotlin (dokka)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/48e6c5fb906858bce774dcdf1aa54684705be54e\"\u003e\u003ccode\u003e48e6c5f\u003c/code\u003e\u003c/a\u003e [doc] Fix javadoc plugin offline link configuration\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/77276fb5453220a3951c29004645f44552ff111b\"\u003e\u003ccode\u003e77276fb\u003c/code\u003e\u003c/a\u003e [ci] Fix condition for publish-release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/2b40c9eac39b4f4b450edde6a316d568e03de900\"\u003e\u003ccode\u003e2b40c9e\u003c/code\u003e\u003c/a\u003e [ci] Fix regression tester script for release builds\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/888eb624616dcc660c096d5136a8c3768a32851d\"\u003e\u003ccode\u003e888eb62\u003c/code\u003e\u003c/a\u003e [ci] Fix dogfood check during release builds\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/59e32be4d8a807c4ef378aa1a2869e89df1aa660\"\u003e\u003ccode\u003e59e32be\u003c/code\u003e\u003c/a\u003e Bump build-tools from 30 to 32 (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5853\"\u003e#5853\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/5e2bf355ae7af818cc5f81f52008e524fc4693d5\"\u003e\u003ccode\u003e5e2bf35\u003c/code\u003e\u003c/a\u003e [ci] New \u0026quot;Publish Release\u0026quot; workflow (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5745\"\u003e#5745\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/6462b0cf0993b72e9093e0bbd095bc0b9aebecef\"\u003e\u003ccode\u003e6462b0c\u003c/code\u003e\u003c/a\u003e [ci] Small fixes\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pmd/pmd/compare/pmd_releases/7.14.0...pmd_releases/7.15.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `net.sourceforge.pmd:pmd-jsp` from 7.14.0 to 7.15.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pmd/pmd/releases\"\u003enet.sourceforge.pmd:pmd-jsp's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ePMD 7.15.0 (27-June-2025)\u003c/h2\u003e\n\u003ch2\u003e27-June-2025 - 7.15.0\u003c/h2\u003e\n\u003cp\u003eThe PMD team is pleased to announce PMD 7.15.0.\u003c/p\u003e\n\u003cp\u003eThis is a minor release.\u003c/p\u003e\n\u003ch3\u003eTable Of Contents\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-and-noteworthy\"\u003e🚀 New and noteworthy\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-rules\"\u003e✨ New Rules\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#fixed-issues\"\u003e🐛 Fixed Issues\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#api-changes\"\u003e🚨 API Changes\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#rule-test-schema\"\u003eRule Test Schema\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#financial-contributions\"\u003e💵 Financial Contributions\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#merged-pull-requests\"\u003e✨ Merged pull requests\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#dependency-updates\"\u003e📦 Dependency updates\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#stats\"\u003e📈 Stats\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🚀 New and noteworthy\u003c/h3\u003e\n\u003ch4\u003e✨ New Rules\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eThe new Apex rule \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.15.0/pmd_rules_apex_design.html#avoidbooleanmethodparameters\"\u003e\u003ccode\u003eAvoidBooleanMethodParameters\u003c/code\u003e\u003c/a\u003e finds methods that take a\nboolean parameter. This can make method calls difficult to understand and maintain as the method is clearly\ndoing two things.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🐛 Fixed Issues\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eapex-design\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5427\"\u003e#5427\u003c/a\u003e: [apex] New Rule: Avoid Boolean Method Parameters\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003eapex-security\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5788\"\u003e#5788\u003c/a\u003e: [apex] ApexCRUDViolation unable to detect insecure SOQL if it is a direct input argument\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003edoc\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5790\"\u003e#5790\u003c/a\u003e: [doc] Website rule reference pages are returning 404\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003ejava-bestpractices\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5785\"\u003e#5785\u003c/a\u003e: [java] UnusedPrivateField doesn't play well with UnnecessaryWarningSuppression\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5793\"\u003e#5793\u003c/a\u003e: [java] NonExhaustiveSwitch fails on exhaustive switch with sealed class\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003ejava-codestyle\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/1639\"\u003e#1639\u003c/a\u003e: [java] UnnecessaryImport false positive for multiline @\u003c!-- raw HTML omitted --\u003elink Javadoc\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/2304\"\u003e#2304\u003c/a\u003e: [java] UnnecessaryImport false positive for on-demand imports in JavaDoc\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5832\"\u003e#5832\u003c/a\u003e: [java] UnnecessaryImport false positive for multiline @\u003c!-- raw HTML omitted --\u003esee Javadoc\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003ejava-design\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5804\"\u003e#5804\u003c/a\u003e: [java] UselessOverridingMethod doesn't play well with UnnecessarySuppressWarning\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🚨 API Changes\u003c/h3\u003e\n\u003ch4\u003eRule Test Schema\u003c/h4\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/f06835e0afc59b11f440fffd999d13ebe48a43d2\"\u003e\u003ccode\u003ef06835e\u003c/code\u003e\u003c/a\u003e [release] prepare release pmd_releases/7.15.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/e84f47ade44726923f65d60a66fa39677ab41328\"\u003e\u003ccode\u003ee84f47a\u003c/code\u003e\u003c/a\u003e Prepare pmd release 7.15.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/8e5654fa786955f969b6904241fd56b2d10bb6b3\"\u003e\u003ccode\u003e8e5654f\u003c/code\u003e\u003c/a\u003e [ci] publish-snapshot/release: also create javadocs for kotlin (dokka)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/48e6c5fb906858bce774dcdf1aa54684705be54e\"\u003e\u003ccode\u003e48e6c5f\u003c/code\u003e\u003c/a\u003e [doc] Fix javadoc plugin offline link configuration\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/77276fb5453220a3951c29004645f44552ff111b\"\u003e\u003ccode\u003e77276fb\u003c/code\u003e\u003c/a\u003e [ci] Fix condition for publish-release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/2b40c9eac39b4f4b450edde6a316d568e03de900\"\u003e\u003ccode\u003e2b40c9e\u003c/code\u003e\u003c/a\u003e [ci] Fix regression tester script for release builds\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/888eb624616dcc660c096d5136a8c3768a32851d\"\u003e\u003ccode\u003e888eb62\u003c/code\u003e\u003c/a\u003e [ci] Fix dogfood check during release builds\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/59e32be4d8a807c4ef378aa1a2869e89df1aa660\"\u003e\u003ccode\u003e59e32be\u003c/code\u003e\u003c/a\u003e Bump build-tools from 30 to 32 (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5853\"\u003e#5853\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/5e2bf355ae7af818cc5f81f52008e524fc4693d5\"\u003e\u003ccode\u003e5e2bf35\u003c/code\u003e\u003c/a\u003e [ci] New \u0026quot;Publish Release\u0026quot; workflow (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5745\"\u003e#5745\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/6462b0cf0993b72e9093e0bbd095bc0b9aebecef\"\u003e\u003ccode\u003e6462b0c\u003c/code\u003e\u003c/a\u003e [ci] Small fixes\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pmd/pmd/compare/pmd_releases/7.14.0...pmd_releases/7.15.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot merge` will merge this PR after your CI passes on it\n- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it\n- `@dependabot cancel merge` will cancel a previously requested merge and block automerging\n- `@dependabot reopen` will reopen this PR if it is closed\n- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)\n\n\n\u003c/details\u003e","html_url":"https://github.com/instancio/instancio/pull/1391","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/instancio%2Finstancio/issues/1391","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/1391/packages"}},{"old_version":"7.14.0","new_version":"7.15.0","update_type":"minor","path":null,"pr_created_at":"2025-06-27T11:52:20.000Z","version_change":"7.14.0 → 7.15.0","issue":{"uuid":"2624156365","node_id":"PR_kwDOBsaZJs6caXLN","number":643,"state":"closed","title":"Bump pmdVersion from 7.14.0 to 7.15.0","user":"dependabot[bot]","labels":["dependencies","java"],"assignees":[],"locked":false,"comments_count":0,"pull_request":true,"closed_at":"2025-07-02T21:16:08.000Z","author_association":"CONTRIBUTOR","state_reason":null,"created_at":"2025-06-27T11:52:20.000Z","updated_at":"2025-07-02T21:16:09.000Z","time_to_close":465828,"merged_at":"2025-07-02T21:16:08.000Z","merged_by":"slachiewicz","closed_by":null,"dependency_metadata":{"prefix":"Bump","packages":[{"name":"pmdVersion","old_version":"7.14.0","new_version":"7.15.0","repository_url":null}],"path":null,"ecosystem":"maven"},"body":"Bumps `pmdVersion` from 7.14.0 to 7.15.0.\nUpdates `net.sourceforge.pmd:pmd-core` from 7.14.0 to 7.15.0\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/f06835e0afc59b11f440fffd999d13ebe48a43d2\"\u003e\u003ccode\u003ef06835e\u003c/code\u003e\u003c/a\u003e [release] prepare release pmd_releases/7.15.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/e84f47ade44726923f65d60a66fa39677ab41328\"\u003e\u003ccode\u003ee84f47a\u003c/code\u003e\u003c/a\u003e Prepare pmd release 7.15.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/8e5654fa786955f969b6904241fd56b2d10bb6b3\"\u003e\u003ccode\u003e8e5654f\u003c/code\u003e\u003c/a\u003e [ci] publish-snapshot/release: also create javadocs for kotlin (dokka)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/48e6c5fb906858bce774dcdf1aa54684705be54e\"\u003e\u003ccode\u003e48e6c5f\u003c/code\u003e\u003c/a\u003e [doc] Fix javadoc plugin offline link configuration\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/77276fb5453220a3951c29004645f44552ff111b\"\u003e\u003ccode\u003e77276fb\u003c/code\u003e\u003c/a\u003e [ci] Fix condition for publish-release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/2b40c9eac39b4f4b450edde6a316d568e03de900\"\u003e\u003ccode\u003e2b40c9e\u003c/code\u003e\u003c/a\u003e [ci] Fix regression tester script for release builds\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/888eb624616dcc660c096d5136a8c3768a32851d\"\u003e\u003ccode\u003e888eb62\u003c/code\u003e\u003c/a\u003e [ci] Fix dogfood check during release builds\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/59e32be4d8a807c4ef378aa1a2869e89df1aa660\"\u003e\u003ccode\u003e59e32be\u003c/code\u003e\u003c/a\u003e Bump build-tools from 30 to 32 (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5853\"\u003e#5853\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/5e2bf355ae7af818cc5f81f52008e524fc4693d5\"\u003e\u003ccode\u003e5e2bf35\u003c/code\u003e\u003c/a\u003e [ci] New \u0026quot;Publish Release\u0026quot; workflow (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5745\"\u003e#5745\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/6462b0cf0993b72e9093e0bbd095bc0b9aebecef\"\u003e\u003ccode\u003e6462b0c\u003c/code\u003e\u003c/a\u003e [ci] Small fixes\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pmd/pmd/compare/pmd_releases/7.14.0...pmd_releases/7.15.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `net.sourceforge.pmd:pmd-java` from 7.14.0 to 7.15.0\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/f06835e0afc59b11f440fffd999d13ebe48a43d2\"\u003e\u003ccode\u003ef06835e\u003c/code\u003e\u003c/a\u003e [release] prepare release pmd_releases/7.15.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/e84f47ade44726923f65d60a66fa39677ab41328\"\u003e\u003ccode\u003ee84f47a\u003c/code\u003e\u003c/a\u003e Prepare pmd release 7.15.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/8e5654fa786955f969b6904241fd56b2d10bb6b3\"\u003e\u003ccode\u003e8e5654f\u003c/code\u003e\u003c/a\u003e [ci] publish-snapshot/release: also create javadocs for kotlin (dokka)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/48e6c5fb906858bce774dcdf1aa54684705be54e\"\u003e\u003ccode\u003e48e6c5f\u003c/code\u003e\u003c/a\u003e [doc] Fix javadoc plugin offline link configuration\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/77276fb5453220a3951c29004645f44552ff111b\"\u003e\u003ccode\u003e77276fb\u003c/code\u003e\u003c/a\u003e [ci] Fix condition for publish-release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/2b40c9eac39b4f4b450edde6a316d568e03de900\"\u003e\u003ccode\u003e2b40c9e\u003c/code\u003e\u003c/a\u003e [ci] Fix regression tester script for release builds\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/888eb624616dcc660c096d5136a8c3768a32851d\"\u003e\u003ccode\u003e888eb62\u003c/code\u003e\u003c/a\u003e [ci] Fix dogfood check during release builds\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/59e32be4d8a807c4ef378aa1a2869e89df1aa660\"\u003e\u003ccode\u003e59e32be\u003c/code\u003e\u003c/a\u003e Bump build-tools from 30 to 32 (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5853\"\u003e#5853\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/5e2bf355ae7af818cc5f81f52008e524fc4693d5\"\u003e\u003ccode\u003e5e2bf35\u003c/code\u003e\u003c/a\u003e [ci] New \u0026quot;Publish Release\u0026quot; workflow (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5745\"\u003e#5745\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/6462b0cf0993b72e9093e0bbd095bc0b9aebecef\"\u003e\u003ccode\u003e6462b0c\u003c/code\u003e\u003c/a\u003e [ci] Small fixes\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pmd/pmd/compare/pmd_releases/7.14.0...pmd_releases/7.15.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `net.sourceforge.pmd:pmd-javascript` from 7.14.0 to 7.15.0\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/f06835e0afc59b11f440fffd999d13ebe48a43d2\"\u003e\u003ccode\u003ef06835e\u003c/code\u003e\u003c/a\u003e [release] prepare release pmd_releases/7.15.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/e84f47ade44726923f65d60a66fa39677ab41328\"\u003e\u003ccode\u003ee84f47a\u003c/code\u003e\u003c/a\u003e Prepare pmd release 7.15.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/8e5654fa786955f969b6904241fd56b2d10bb6b3\"\u003e\u003ccode\u003e8e5654f\u003c/code\u003e\u003c/a\u003e [ci] publish-snapshot/release: also create javadocs for kotlin (dokka)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/48e6c5fb906858bce774dcdf1aa54684705be54e\"\u003e\u003ccode\u003e48e6c5f\u003c/code\u003e\u003c/a\u003e [doc] Fix javadoc plugin offline link configuration\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/77276fb5453220a3951c29004645f44552ff111b\"\u003e\u003ccode\u003e77276fb\u003c/code\u003e\u003c/a\u003e [ci] Fix condition for publish-release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/2b40c9eac39b4f4b450edde6a316d568e03de900\"\u003e\u003ccode\u003e2b40c9e\u003c/code\u003e\u003c/a\u003e [ci] Fix regression tester script for release builds\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/888eb624616dcc660c096d5136a8c3768a32851d\"\u003e\u003ccode\u003e888eb62\u003c/code\u003e\u003c/a\u003e [ci] Fix dogfood check during release builds\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/59e32be4d8a807c4ef378aa1a2869e89df1aa660\"\u003e\u003ccode\u003e59e32be\u003c/code\u003e\u003c/a\u003e Bump build-tools from 30 to 32 (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5853\"\u003e#5853\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/5e2bf355ae7af818cc5f81f52008e524fc4693d5\"\u003e\u003ccode\u003e5e2bf35\u003c/code\u003e\u003c/a\u003e [ci] New \u0026quot;Publish Release\u0026quot; workflow (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5745\"\u003e#5745\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/6462b0cf0993b72e9093e0bbd095bc0b9aebecef\"\u003e\u003ccode\u003e6462b0c\u003c/code\u003e\u003c/a\u003e [ci] Small fixes\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pmd/pmd/compare/pmd_releases/7.14.0...pmd_releases/7.15.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `net.sourceforge.pmd:pmd-jsp` from 7.14.0 to 7.15.0\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/f06835e0afc59b11f440fffd999d13ebe48a43d2\"\u003e\u003ccode\u003ef06835e\u003c/code\u003e\u003c/a\u003e [release] prepare release pmd_releases/7.15.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/e84f47ade44726923f65d60a66fa39677ab41328\"\u003e\u003ccode\u003ee84f47a\u003c/code\u003e\u003c/a\u003e Prepare pmd release 7.15.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/8e5654fa786955f969b6904241fd56b2d10bb6b3\"\u003e\u003ccode\u003e8e5654f\u003c/code\u003e\u003c/a\u003e [ci] publish-snapshot/release: also create javadocs for kotlin (dokka)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/48e6c5fb906858bce774dcdf1aa54684705be54e\"\u003e\u003ccode\u003e48e6c5f\u003c/code\u003e\u003c/a\u003e [doc] Fix javadoc plugin offline link configuration\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/77276fb5453220a3951c29004645f44552ff111b\"\u003e\u003ccode\u003e77276fb\u003c/code\u003e\u003c/a\u003e [ci] Fix condition for publish-release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/2b40c9eac39b4f4b450edde6a316d568e03de900\"\u003e\u003ccode\u003e2b40c9e\u003c/code\u003e\u003c/a\u003e [ci] Fix regression tester script for release builds\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/888eb624616dcc660c096d5136a8c3768a32851d\"\u003e\u003ccode\u003e888eb62\u003c/code\u003e\u003c/a\u003e [ci] Fix dogfood check during release builds\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/59e32be4d8a807c4ef378aa1a2869e89df1aa660\"\u003e\u003ccode\u003e59e32be\u003c/code\u003e\u003c/a\u003e Bump build-tools from 30 to 32 (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5853\"\u003e#5853\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/5e2bf355ae7af818cc5f81f52008e524fc4693d5\"\u003e\u003ccode\u003e5e2bf35\u003c/code\u003e\u003c/a\u003e [ci] New \u0026quot;Publish Release\u0026quot; workflow (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5745\"\u003e#5745\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/6462b0cf0993b72e9093e0bbd095bc0b9aebecef\"\u003e\u003ccode\u003e6462b0c\u003c/code\u003e\u003c/a\u003e [ci] Small fixes\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pmd/pmd/compare/pmd_releases/7.14.0...pmd_releases/7.15.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot merge` will merge this PR after your CI passes on it\n- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it\n- `@dependabot cancel merge` will cancel a previously requested merge and block automerging\n- `@dependabot reopen` will reopen this PR if it is closed\n- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)\n\n\n\u003c/details\u003e","html_url":"https://github.com/apache/maven-pmd-plugin/pull/643","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/apache%2Fmaven-pmd-plugin/issues/643","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/643/packages"}},{"old_version":"7.0.0","new_version":"7.2.0","update_type":"minor","path":null,"pr_created_at":"2025-06-02T08:24:48.000Z","version_change":"7.0.0 → 7.2.0","issue":{"uuid":"3109141574","node_id":"PR_kwDOLWJuBc6YkoxK","number":44,"state":"open","title":"Bump pmdVersion from 7.0.0 to 7.2.0","user":"dependabot[bot]","labels":["dependencies","java"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":"CONTRIBUTOR","state_reason":null,"created_at":"2025-06-02T08:24:48.000Z","updated_at":"2025-07-08T16:45:59.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","packages":[{"name":"pmdVersion","old_version":"7.0.0","new_version":"7.2.0","repository_url":null}],"path":null,"ecosystem":"maven"},"body":"Bumps `pmdVersion` from 7.0.0 to 7.2.0.\nUpdates `net.sourceforge.pmd:pmd-compat6` from 7.0.0 to 7.2.0\n\nUpdates `net.sourceforge.pmd:pmd-core` from 7.0.0 to 7.2.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pmd/pmd/releases\"\u003enet.sourceforge.pmd:pmd-core's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ePMD 7.2.0 (31-May-2024)\u003c/h2\u003e\n\u003ch2\u003e31-May-2024 - 7.2.0\u003c/h2\u003e\n\u003cp\u003eThe PMD team is pleased to announce PMD 7.2.0.\u003c/p\u003e\n\u003cp\u003eThis is a minor release.\u003c/p\u003e\n\u003ch3\u003eTable Of Contents\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-and-noteworthy\"\u003e🚀 New and noteworthy\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#collections-exposed-as-xpath-attributes\"\u003eCollections exposed as XPath attributes\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#updated-pmd-designer\"\u003eUpdated PMD Designer\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#fixed-issues\"\u003e🐛 Fixed Issues\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#api-changes\"\u003e🚨 API Changes\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#deprecated-api\"\u003eDeprecated API\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#external-contributions\"\u003e✨ External Contributions\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#stats\"\u003e📈 Stats\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🚀 New and noteworthy\u003c/h3\u003e\n\u003ch4\u003eCollections exposed as XPath attributes\u003c/h4\u003e\n\u003cp\u003eUp to now, all AST node getters would be exposed to XPath, as long as the return type was a primitive (boxed or unboxed), String or Enum. That meant that collections, even of these basic types, were not exposed, so for instance accessing Apex's \u003ccode\u003eASTUserClass.getInterfaceNames()\u003c/code\u003e to list the interfaces implemented by a class was impossible from XPath, and would require writing a Java rule to check it.\u003c/p\u003e\n\u003cp\u003eSince this release, PMD will also expose any getter returning a collection of any supported type as a sequence through an XPath attribute. They would require to use apropriate XQuery functions to manipulate the sequence. So for instance, to detect any given \u003ccode\u003eASTUserClass\u003c/code\u003e in Apex that implements \u003ccode\u003eQueueable\u003c/code\u003e, it is now possible to write:\u003c/p\u003e\n\u003cpre lang=\"xml\"\u003e\u003ccode\u003e/UserClass[@InterfaceNames = 'Queueable']\n\u003c/code\u003e\u003c/pre\u003e\n\u003ch4\u003eUpdated PMD Designer\u003c/h4\u003e\n\u003cp\u003eThis PMD release ships a new version of the pmd-designer.\nFor the changes, see \u003ca href=\"https://github.com/pmd/pmd-designer/releases/tag/7.2.0\"\u003ePMD Designer Changelog (7.2.0)\u003c/a\u003e.\u003c/p\u003e\n\u003ch3\u003e🐛 Fixed Issues\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ecore\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/4467\"\u003e#4467\u003c/a\u003e: [core] Expose collections from getters as XPath sequence attributes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/4978\"\u003e#4978\u003c/a\u003e: [core] Referenced Rulesets do not emit details on validation errors\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/pull/4983\"\u003e#4983\u003c/a\u003e: [cpd] Fix CPD crashes about unicode escapes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5009\"\u003e#5009\u003c/a\u003e: [core] Kotest tests aren't picked up by surefire\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003ejava\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/4912\"\u003e#4912\u003c/a\u003e: [java] Unable to parse some Java9+ resource references\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/pull/4973\"\u003e#4973\u003c/a\u003e: [java] Stop parsing Java for CPD\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/4980\"\u003e#4980\u003c/a\u003e: [java] Bad intersection, unrelated class types java.lang.Object[] and java.lang.Number\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/pull/4988\"\u003e#4988\u003c/a\u003e: [java] Fix impl of ASTVariableId::isResourceDeclaration / VariableId/@\u003c!-- raw HTML omitted --\u003eResourceDeclaration\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/4990\"\u003e#4990\u003c/a\u003e: [java] Add an attribute @\u003c!-- raw HTML omitted --\u003ePackageQualifier to ASTClassType\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5006\"\u003e#5006\u003c/a\u003e: [java] Bad intersection, unrelated class types Child and Parent\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5029\"\u003e#5029\u003c/a\u003e: [java] PMD 7.x throws stack overflow in TypeOps$ProjectionVisitor while parsing a Java class\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/38bc997d4e7f4b29cee86829915f17f925211800\"\u003e\u003ccode\u003e38bc997\u003c/code\u003e\u003c/a\u003e [release] prepare release pmd_releases/7.2.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/27a14cc61e4659447125422756e545fe2a7b96f0\"\u003e\u003ccode\u003e27a14cc\u003c/code\u003e\u003c/a\u003e Prepare pmd release 7.2.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/e27b30e0b52229f66c5dae8aab0c2b95d877a135\"\u003e\u003ccode\u003ee27b30e\u003c/code\u003e\u003c/a\u003e Bump pmd-designer from 7.2.0-SNAPSHOT to 7.2.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/d37769e71c64b9c8ffdea521bade7a17b0da39a8\"\u003e\u003ccode\u003ed37769e\u003c/code\u003e\u003c/a\u003e Bump builds-tools from 25-SNAPSHOT to 25\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/2a0cba7b9155505a2a065339cf439dcd8e986692\"\u003e\u003ccode\u003e2a0cba7\u003c/code\u003e\u003c/a\u003e [java] Improve LocalVariableCouldBeFinal (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5003\"\u003e#5003\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/8a8402a0bd255c46375d452092643ef31bde7ba2\"\u003e\u003ccode\u003e8a8402a\u003c/code\u003e\u003c/a\u003e [doc] Update release notes (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/1619\"\u003e#1619\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/pmd/pmd/issues/3122\"\u003e#3122\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5003\"\u003e#5003\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/3890b561a13191af49a71d19aab81ba11e6b5129\"\u003e\u003ccode\u003e3890b56\u003c/code\u003e\u003c/a\u003e [java] Remove FPs in UnnecessaryBoxing (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5019\"\u003e#5019\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/224f5b83039b646c1dd5f29b9453346006425159\"\u003e\u003ccode\u003e224f5b8\u003c/code\u003e\u003c/a\u003e [doc] Update release notes (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/4903\"\u003e#4903\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/pmd/pmd/issues/4924\"\u003e#4924\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5019\"\u003e#5019\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/910c0985ca952c3ef68c372d06f67661c31d7a97\"\u003e\u003ccode\u003e910c098\u003c/code\u003e\u003c/a\u003e [core] Fix Kotest based tests (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5022\"\u003e#5022\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/37451931dc0b290c7de44691bea2b175f6d34612\"\u003e\u003ccode\u003e3745193\u003c/code\u003e\u003c/a\u003e [test] Add missing junit jupiter engine\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pmd/pmd/compare/pmd_releases/7.0.0...pmd_releases/7.2.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `net.sourceforge.pmd:pmd-java` from 7.0.0 to 7.2.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pmd/pmd/releases\"\u003enet.sourceforge.pmd:pmd-java's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ePMD 7.2.0 (31-May-2024)\u003c/h2\u003e\n\u003ch2\u003e31-May-2024 - 7.2.0\u003c/h2\u003e\n\u003cp\u003eThe PMD team is pleased to announce PMD 7.2.0.\u003c/p\u003e\n\u003cp\u003eThis is a minor release.\u003c/p\u003e\n\u003ch3\u003eTable Of Contents\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-and-noteworthy\"\u003e🚀 New and noteworthy\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#collections-exposed-as-xpath-attributes\"\u003eCollections exposed as XPath attributes\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#updated-pmd-designer\"\u003eUpdated PMD Designer\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#fixed-issues\"\u003e🐛 Fixed Issues\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#api-changes\"\u003e🚨 API Changes\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#deprecated-api\"\u003eDeprecated API\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#external-contributions\"\u003e✨ External Contributions\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#stats\"\u003e📈 Stats\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🚀 New and noteworthy\u003c/h3\u003e\n\u003ch4\u003eCollections exposed as XPath attributes\u003c/h4\u003e\n\u003cp\u003eUp to now, all AST node getters would be exposed to XPath, as long as the return type was a primitive (boxed or unboxed), String or Enum. That meant that collections, even of these basic types, were not exposed, so for instance accessing Apex's \u003ccode\u003eASTUserClass.getInterfaceNames()\u003c/code\u003e to list the interfaces implemented by a class was impossible from XPath, and would require writing a Java rule to check it.\u003c/p\u003e\n\u003cp\u003eSince this release, PMD will also expose any getter returning a collection of any supported type as a sequence through an XPath attribute. They would require to use apropriate XQuery functions to manipulate the sequence. So for instance, to detect any given \u003ccode\u003eASTUserClass\u003c/code\u003e in Apex that implements \u003ccode\u003eQueueable\u003c/code\u003e, it is now possible to write:\u003c/p\u003e\n\u003cpre lang=\"xml\"\u003e\u003ccode\u003e/UserClass[@InterfaceNames = 'Queueable']\n\u003c/code\u003e\u003c/pre\u003e\n\u003ch4\u003eUpdated PMD Designer\u003c/h4\u003e\n\u003cp\u003eThis PMD release ships a new version of the pmd-designer.\nFor the changes, see \u003ca href=\"https://github.com/pmd/pmd-designer/releases/tag/7.2.0\"\u003ePMD Designer Changelog (7.2.0)\u003c/a\u003e.\u003c/p\u003e\n\u003ch3\u003e🐛 Fixed Issues\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ecore\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/4467\"\u003e#4467\u003c/a\u003e: [core] Expose collections from getters as XPath sequence attributes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/4978\"\u003e#4978\u003c/a\u003e: [core] Referenced Rulesets do not emit details on validation errors\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/pull/4983\"\u003e#4983\u003c/a\u003e: [cpd] Fix CPD crashes about unicode escapes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5009\"\u003e#5009\u003c/a\u003e: [core] Kotest tests aren't picked up by surefire\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003ejava\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/4912\"\u003e#4912\u003c/a\u003e: [java] Unable to parse some Java9+ resource references\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/pull/4973\"\u003e#4973\u003c/a\u003e: [java] Stop parsing Java for CPD\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/4980\"\u003e#4980\u003c/a\u003e: [java] Bad intersection, unrelated class types java.lang.Object[] and java.lang.Number\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/pull/4988\"\u003e#4988\u003c/a\u003e: [java] Fix impl of ASTVariableId::isResourceDeclaration / VariableId/@\u003c!-- raw HTML omitted --\u003eResourceDeclaration\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/4990\"\u003e#4990\u003c/a\u003e: [java] Add an attribute @\u003c!-- raw HTML omitted --\u003ePackageQualifier to ASTClassType\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5006\"\u003e#5006\u003c/a\u003e: [java] Bad intersection, unrelated class types Child and Parent\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5029\"\u003e#5029\u003c/a\u003e: [java] PMD 7.x throws stack overflow in TypeOps$ProjectionVisitor while parsing a Java class\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/38bc997d4e7f4b29cee86829915f17f925211800\"\u003e\u003ccode\u003e38bc997\u003c/code\u003e\u003c/a\u003e [release] prepare release pmd_releases/7.2.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/27a14cc61e4659447125422756e545fe2a7b96f0\"\u003e\u003ccode\u003e27a14cc\u003c/code\u003e\u003c/a\u003e Prepare pmd release 7.2.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/e27b30e0b52229f66c5dae8aab0c2b95d877a135\"\u003e\u003ccode\u003ee27b30e\u003c/code\u003e\u003c/a\u003e Bump pmd-designer from 7.2.0-SNAPSHOT to 7.2.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/d37769e71c64b9c8ffdea521bade7a17b0da39a8\"\u003e\u003ccode\u003ed37769e\u003c/code\u003e\u003c/a\u003e Bump builds-tools from 25-SNAPSHOT to 25\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/2a0cba7b9155505a2a065339cf439dcd8e986692\"\u003e\u003ccode\u003e2a0cba7\u003c/code\u003e\u003c/a\u003e [java] Improve LocalVariableCouldBeFinal (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5003\"\u003e#5003\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/8a8402a0bd255c46375d452092643ef31bde7ba2\"\u003e\u003ccode\u003e8a8402a\u003c/code\u003e\u003c/a\u003e [doc] Update release notes (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/1619\"\u003e#1619\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/pmd/pmd/issues/3122\"\u003e#3122\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5003\"\u003e#5003\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/3890b561a13191af49a71d19aab81ba11e6b5129\"\u003e\u003ccode\u003e3890b56\u003c/code\u003e\u003c/a\u003e [java] Remove FPs in UnnecessaryBoxing (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5019\"\u003e#5019\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/224f5b83039b646c1dd5f29b9453346006425159\"\u003e\u003ccode\u003e224f5b8\u003c/code\u003e\u003c/a\u003e [doc] Update release notes (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/4903\"\u003e#4903\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/pmd/pmd/issues/4924\"\u003e#4924\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5019\"\u003e#5019\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/910c0985ca952c3ef68c372d06f67661c31d7a97\"\u003e\u003ccode\u003e910c098\u003c/code\u003e\u003c/a\u003e [core] Fix Kotest based tests (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5022\"\u003e#5022\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/37451931dc0b290c7de44691bea2b175f6d34612\"\u003e\u003ccode\u003e3745193\u003c/code\u003e\u003c/a\u003e [test] Add missing junit jupiter engine\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pmd/pmd/compare/pmd_releases/7.0.0...pmd_releases/7.2.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `net.sourceforge.pmd:pmd-javascript` from 7.0.0 to 7.2.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pmd/pmd/releases\"\u003enet.sourceforge.pmd:pmd-javascript's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ePMD 7.2.0 (31-May-2024)\u003c/h2\u003e\n\u003ch2\u003e31-May-2024 - 7.2.0\u003c/h2\u003e\n\u003cp\u003eThe PMD team is pleased to announce PMD 7.2.0.\u003c/p\u003e\n\u003cp\u003eThis is a minor release.\u003c/p\u003e\n\u003ch3\u003eTable Of Contents\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-and-noteworthy\"\u003e🚀 New and noteworthy\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#collections-exposed-as-xpath-attributes\"\u003eCollections exposed as XPath attributes\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#updated-pmd-designer\"\u003eUpdated PMD Designer\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#fixed-issues\"\u003e🐛 Fixed Issues\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#api-changes\"\u003e🚨 API Changes\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#deprecated-api\"\u003eDeprecated API\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#external-contributions\"\u003e✨ External Contributions\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#stats\"\u003e📈 Stats\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🚀 New and noteworthy\u003c/h3\u003e\n\u003ch4\u003eCollections exposed as XPath attributes\u003c/h4\u003e\n\u003cp\u003eUp to now, all AST node getters would be exposed to XPath, as long as the return type was a primitive (boxed or unboxed), String or Enum. That meant that collections, even of these basic types, were not exposed, so for instance accessing Apex's \u003ccode\u003eASTUserClass.getInterfaceNames()\u003c/code\u003e to list the interfaces implemented by a class was impossible from XPath, and would require writing a Java rule to check it.\u003c/p\u003e\n\u003cp\u003eSince this release, PMD will also expose any getter returning a collection of any supported type as a sequence through an XPath attribute. They would require to use apropriate XQuery functions to manipulate the sequence. So for instance, to detect any given \u003ccode\u003eASTUserClass\u003c/code\u003e in Apex that implements \u003ccode\u003eQueueable\u003c/code\u003e, it is now possible to write:\u003c/p\u003e\n\u003cpre lang=\"xml\"\u003e\u003ccode\u003e/UserClass[@InterfaceNames = 'Queueable']\n\u003c/code\u003e\u003c/pre\u003e\n\u003ch4\u003eUpdated PMD Designer\u003c/h4\u003e\n\u003cp\u003eThis PMD release ships a new version of the pmd-designer.\nFor the changes, see \u003ca href=\"https://github.com/pmd/pmd-designer/releases/tag/7.2.0\"\u003ePMD Designer Changelog (7.2.0)\u003c/a\u003e.\u003c/p\u003e\n\u003ch3\u003e🐛 Fixed Issues\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ecore\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/4467\"\u003e#4467\u003c/a\u003e: [core] Expose collections from getters as XPath sequence attributes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/4978\"\u003e#4978\u003c/a\u003e: [core] Referenced Rulesets do not emit details on validation errors\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/pull/4983\"\u003e#4983\u003c/a\u003e: [cpd] Fix CPD crashes about unicode escapes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5009\"\u003e#5009\u003c/a\u003e: [core] Kotest tests aren't picked up by surefire\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003ejava\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/4912\"\u003e#4912\u003c/a\u003e: [java] Unable to parse some Java9+ resource references\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/pull/4973\"\u003e#4973\u003c/a\u003e: [java] Stop parsing Java for CPD\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/4980\"\u003e#4980\u003c/a\u003e: [java] Bad intersection, unrelated class types java.lang.Object[] and java.lang.Number\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/pull/4988\"\u003e#4988\u003c/a\u003e: [java] Fix impl of ASTVariableId::isResourceDeclaration / VariableId/@\u003c!-- raw HTML omitted --\u003eResourceDeclaration\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/4990\"\u003e#4990\u003c/a\u003e: [java] Add an attribute @\u003c!-- raw HTML omitted --\u003ePackageQualifier to ASTClassType\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5006\"\u003e#5006\u003c/a\u003e: [java] Bad intersection, unrelated class types Child and Parent\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5029\"\u003e#5029\u003c/a\u003e: [java] PMD 7.x throws stack overflow in TypeOps$ProjectionVisitor while parsing a Java class\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/38bc997d4e7f4b29cee86829915f17f925211800\"\u003e\u003ccode\u003e38bc997\u003c/code\u003e\u003c/a\u003e [release] prepare release pmd_releases/7.2.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/27a14cc61e4659447125422756e545fe2a7b96f0\"\u003e\u003ccode\u003e27a14cc\u003c/code\u003e\u003c/a\u003e Prepare pmd release 7.2.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/e27b30e0b52229f66c5dae8aab0c2b95d877a135\"\u003e\u003ccode\u003ee27b30e\u003c/code\u003e\u003c/a\u003e Bump pmd-designer from 7.2.0-SNAPSHOT to 7.2.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/d37769e71c64b9c8ffdea521bade7a17b0da39a8\"\u003e\u003ccode\u003ed37769e\u003c/code\u003e\u003c/a\u003e Bump builds-tools from 25-SNAPSHOT to 25\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/2a0cba7b9155505a2a065339cf439dcd8e986692\"\u003e\u003ccode\u003e2a0cba7\u003c/code\u003e\u003c/a\u003e [java] Improve LocalVariableCouldBeFinal (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5003\"\u003e#5003\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/8a8402a0bd255c46375d452092643ef31bde7ba2\"\u003e\u003ccode\u003e8a8402a\u003c/code\u003e\u003c/a\u003e [doc] Update release notes (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/1619\"\u003e#1619\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/pmd/pmd/issues/3122\"\u003e#3122\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5003\"\u003e#5003\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/3890b561a13191af49a71d19aab81ba11e6b5129\"\u003e\u003ccode\u003e3890b56\u003c/code\u003e\u003c/a\u003e [java] Remove FPs in UnnecessaryBoxing (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5019\"\u003e#5019\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/224f5b83039b646c1dd5f29b9453346006425159\"\u003e\u003ccode\u003e224f5b8\u003c/code\u003e\u003c/a\u003e [doc] Update release notes (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/4903\"\u003e#4903\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/pmd/pmd/issues/4924\"\u003e#4924\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5019\"\u003e#5019\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/910c0985ca952c3ef68c372d06f67661c31d7a97\"\u003e\u003ccode\u003e910c098\u003c/code\u003e\u003c/a\u003e [core] Fix Kotest based tests (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5022\"\u003e#5022\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/37451931dc0b290c7de44691bea2b175f6d34612\"\u003e\u003ccode\u003e3745193\u003c/code\u003e\u003c/a\u003e [test] Add missing junit jupiter engine\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pmd/pmd/compare/pmd_releases/7.0.0...pmd_releases/7.2.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `net.sourceforge.pmd:pmd-jsp` from 7.0.0 to 7.2.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pmd/pmd/releases\"\u003enet.sourceforge.pmd:pmd-jsp's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ePMD 7.2.0 (31-May-2024)\u003c/h2\u003e\n\u003ch2\u003e31-May-2024 - 7.2.0\u003c/h2\u003e\n\u003cp\u003eThe PMD team is pleased to announce PMD 7.2.0.\u003c/p\u003e\n\u003cp\u003eThis is a minor release.\u003c/p\u003e\n\u003ch3\u003eTable Of Contents\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-and-noteworthy\"\u003e🚀 New and noteworthy\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#collections-exposed-as-xpath-attributes\"\u003eCollections exposed as XPath attributes\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#updated-pmd-designer\"\u003eUpdated PMD Designer\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#fixed-issues\"\u003e🐛 Fixed Issues\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#api-changes\"\u003e🚨 API Changes\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#deprecated-api\"\u003eDeprecated API\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#external-contributions\"\u003e✨ External Contributions\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#stats\"\u003e📈 Stats\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🚀 New and noteworthy\u003c/h3\u003e\n\u003ch4\u003eCollections exposed as XPath attributes\u003c/h4\u003e\n\u003cp\u003eUp to now, all AST node getters would be exposed to XPath, as long as the return type was a primitive (boxed or unboxed), String or Enum. That meant that collections, even of these basic types, were not exposed, so for instance accessing Apex's \u003ccode\u003eASTUserClass.getInterfaceNames()\u003c/code\u003e to list the interfaces implemented by a class was impossible from XPath, and would require writing a Java rule to check it.\u003c/p\u003e\n\u003cp\u003eSince this release, PMD will also expose any getter returning a collection of any supported type as a sequence through an XPath attribute. They would require to use apropriate XQuery functions to manipulate the sequence. So for instance, to detect any given \u003ccode\u003eASTUserClass\u003c/code\u003e in Apex that implements \u003ccode\u003eQueueable\u003c/code\u003e, it is now possible to write:\u003c/p\u003e\n\u003cpre lang=\"xml\"\u003e\u003ccode\u003e/UserClass[@InterfaceNames = 'Queueable']\n\u003c/code\u003e\u003c/pre\u003e\n\u003ch4\u003eUpdated PMD Designer\u003c/h4\u003e\n\u003cp\u003eThis PMD release ships a new version of the pmd-designer.\nFor the changes, see \u003ca href=\"https://github.com/pmd/pmd-designer/releases/tag/7.2.0\"\u003ePMD Designer Changelog (7.2.0)\u003c/a\u003e.\u003c/p\u003e\n\u003ch3\u003e🐛 Fixed Issues\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ecore\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/4467\"\u003e#4467\u003c/a\u003e: [core] Expose collections from getters as XPath sequence attributes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/4978\"\u003e#4978\u003c/a\u003e: [core] Referenced Rulesets do not emit details on validation errors\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/pull/4983\"\u003e#4983\u003c/a\u003e: [cpd] Fix CPD crashes about unicode escapes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5009\"\u003e#5009\u003c/a\u003e: [core] Kotest tests aren't picked up by surefire\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003ejava\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/4912\"\u003e#4912\u003c/a\u003e: [java] Unable to parse some Java9+ resource references\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/pull/4973\"\u003e#4973\u003c/a\u003e: [java] Stop parsing Java for CPD\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/4980\"\u003e#4980\u003c/a\u003e: [java] Bad intersection, unrelated class types java.lang.Object[] and java.lang.Number\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/pull/4988\"\u003e#4988\u003c/a\u003e: [java] Fix impl of ASTVariableId::isResourceDeclaration / VariableId/@\u003c!-- raw HTML omitted --\u003eResourceDeclaration\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/4990\"\u003e#4990\u003c/a\u003e: [java] Add an attribute @\u003c!-- raw HTML omitted --\u003ePackageQualifier to ASTClassType\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5006\"\u003e#5006\u003c/a\u003e: [java] Bad intersection, unrelated class types Child and Parent\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5029\"\u003e#5029\u003c/a\u003e: [java] PMD 7.x throws stack overflow in TypeOps$ProjectionVisitor while parsing a Java class\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/38bc997d4e7f4b29cee86829915f17f925211800\"\u003e\u003ccode\u003e38bc997\u003c/code\u003e\u003c/a\u003e [release] prepare release pmd_releases/7.2.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/27a14cc61e4659447125422756e545fe2a7b96f0\"\u003e\u003ccode\u003e27a14cc\u003c/code\u003e\u003c/a\u003e Prepare pmd release 7.2.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/e27b30e0b52229f66c5dae8aab0c2b95d877a135\"\u003e\u003ccode\u003ee27b30e\u003c/code\u003e\u003c/a\u003e Bump pmd-designer from 7.2.0-SNAPSHOT to 7.2.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/d37769e71c64b9c8ffdea521bade7a17b0da39a8\"\u003e\u003ccode\u003ed37769e\u003c/code\u003e\u003c/a\u003e Bump builds-tools from 25-SNAPSHOT to 25\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/2a0cba7b9155505a2a065339cf439dcd8e986692\"\u003e\u003ccode\u003e2a0cba7\u003c/code\u003e\u003c/a\u003e [java] Improve LocalVariableCouldBeFinal (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5003\"\u003e#5003\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/8a8402a0bd255c46375d452092643ef31bde7ba2\"\u003e\u003ccode\u003e8a8402a\u003c/code\u003e\u003c/a\u003e [doc] Update release notes (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/1619\"\u003e#1619\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/pmd/pmd/issues/3122\"\u003e#3122\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5003\"\u003e#5003\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/3890b561a13191af49a71d19aab81ba11e6b5129\"\u003e\u003ccode\u003e3890b56\u003c/code\u003e\u003c/a\u003e [java] Remove FPs in UnnecessaryBoxing (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5019\"\u003e#5019\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/224f5b83039b646c1dd5f29b9453346006425159\"\u003e\u003ccode\u003e224f5b8\u003c/code\u003e\u003c/a\u003e [doc] Update release notes (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/4903\"\u003e#4903\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/pmd/pmd/issues/4924\"\u003e#4924\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5019\"\u003e#5019\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/910c0985ca952c3ef68c372d06f67661c31d7a97\"\u003e\u003ccode\u003e910c098\u003c/code\u003e\u003c/a\u003e [core] Fix Kotest based tests (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5022\"\u003e#5022\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/37451931dc0b290c7de44691bea2b175f6d34612\"\u003e\u003ccode\u003e3745193\u003c/code\u003e\u003c/a\u003e [test] Add missing junit jupiter engine\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pmd/pmd/compare/pmd_releases/7.0.0...pmd_releases/7.2.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\nYou can trigger a rebase of this PR by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot merge` will merge this PR after your CI passes on it\n- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it\n- `@dependabot cancel merge` will cancel a previously requested merge and block automerging\n- `@dependabot reopen` will reopen this PR if it is closed\n- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)\n\n\n\u003c/details\u003e\n\n\u003e **Note**\n\u003e Automatic rebases have been disabled on this pull request as it has been open for over 30 days.\n","html_url":"https://github.com/ApplauseOSS/auto-sdk-java/pull/44","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/ApplauseOSS%2Fauto-sdk-java/issues/44","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/44/packages"}},{"old_version":"7.12.0","new_version":"7.14.0","update_type":"minor","path":null,"pr_created_at":"2025-06-02T07:19:24.000Z","version_change":"7.12.0 → 7.14.0","issue":{"uuid":"2559565036","node_id":"PR_kwDOBsaZJs6Yj9zs","number":213,"state":"open","title":"Bump pmdVersion from 7.12.0 to 7.14.0","user":"dependabot[bot]","labels":["enhancement","dependencies","java"],"assignees":["slawekjaranowski"],"locked":false,"comments_count":0,"pull_request":true,"closed_at":null,"author_association":"CONTRIBUTOR","state_reason":null,"created_at":"2025-06-02T07:19:24.000Z","updated_at":"2025-06-05T04:54:40.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","packages":[{"name":"pmdVersion","old_version":"7.12.0","new_version":"7.14.0","repository_url":null}],"path":null,"ecosystem":"maven"},"body":"Bumps `pmdVersion` from 7.12.0 to 7.14.0.\nUpdates `net.sourceforge.pmd:pmd-core` from 7.12.0 to 7.14.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pmd/pmd/releases\"\u003enet.sourceforge.pmd:pmd-core's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ePMD 7.14.0 (30-May-2025)\u003c/h2\u003e\n\u003ch2\u003e30-May-2025 - 7.14.0\u003c/h2\u003e\n\u003cp\u003eThe PMD team is pleased to announce PMD 7.14.0.\u003c/p\u003e\n\u003cp\u003eThis is a minor release.\u003c/p\u003e\n\u003ch3\u003eTable Of Contents\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-and-noteworthy\"\u003e🚀 New and noteworthy\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#pmd-cli-now-uses-threaded-execution-by-default\"\u003ePMD CLI now uses threaded execution by default\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"#new-rule-unnecessarywarningsuppression-https://github.com/pmd/pmd/blob/HEAD/experimental\"\u003eNew Rule UnnecessaryWarningSuppression (https://github.com/pmd/pmd/blob/HEAD/experimental)\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#migrating-to-central-publisher-portal\"\u003eMigrating to Central Publisher Portal\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#more-cli-parameters-shared-between-pmd-and-cpd\"\u003eMore CLI parameters shared between PMD and CPD\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#fixed-issues\"\u003e🐛 Fixed Issues\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#api-changes\"\u003e🚨 API Changes\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#cli\"\u003eCLI\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#deprecations\"\u003eDeprecations\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#experimental\"\u003eExperimental\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#merged-pull-requests\"\u003e✨ Merged pull requests\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#dependency-updates\"\u003e📦 Dependency updates\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#stats\"\u003e📈 Stats\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🚀 New and noteworthy\u003c/h3\u003e\n\u003ch4\u003ePMD CLI now uses threaded execution by default\u003c/h4\u003e\n\u003cp\u003eIn the PMD CLI, the \u003ccode\u003e--threads\u003c/code\u003e (\u003ccode\u003e-t\u003c/code\u003e) option can now accept a thread\ncount given relative to the number of cores of the machine. For instance,\nit is now possible to write \u003ccode\u003e-t 1C\u003c/code\u003e to spawn one thread per core, or \u003ccode\u003e-t 0.5C\u003c/code\u003e\nto spawn one thread for every other core.\u003c/p\u003e\n\u003cp\u003eThe thread count option now defaults to \u003ccode\u003e1C\u003c/code\u003e, meaning parallel execution\nis used by default. You can disable this by using \u003ccode\u003e-t 1\u003c/code\u003e.\u003c/p\u003e\n\u003ch4\u003eNew Rule UnnecessaryWarningSuppression (experimental)\u003c/h4\u003e\n\u003cp\u003eThis new Java rule \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.14.0/pmd_rules_java_bestpractices.html#unnecessarywarningsuppression\"\u003e\u003ccode\u003eUnnecessaryWarningSuppression\u003c/code\u003e\u003c/a\u003e reports unused suppression\nannotations and comments. Violations of this rule cannot be suppressed.\u003c/p\u003e\n\u003cp\u003eHow to use it? Just include it in your ruleset:\u003c/p\u003e\n\u003cpre lang=\"xml\"\u003e\u003ccode\u003e\u0026lt;rule ref=\u0026quot;category/java/bestpractices.xml/UnnecessaryWarningSuppression\u0026quot; /\u0026gt;\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eNote: This rule is currently experimental. It is available for now only for Java.\nThe rule for now only reports annotations specific to PMD, like \u003ccode\u003e@SuppressWarnings(\u0026quot;PMD\u0026quot;)\u003c/code\u003e.\nIn the future we might be able to check for other common ones like \u003ccode\u003e@SuppressWarnings(\u0026quot;unchecked\u0026quot;)\u003c/code\u003e or \u003ccode\u003e\u0026quot;fallthrough\u0026quot;\u003c/code\u003e.\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/876d4ab8ac5fb0940cd545b9c7a41866029cd519\"\u003e\u003ccode\u003e876d4ab\u003c/code\u003e\u003c/a\u003e [ci] Use correct credentials for central deployment\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/3a6e7a464dc14fa3315ced668680f442160db18b\"\u003e\u003ccode\u003e3a6e7a4\u003c/code\u003e\u003c/a\u003e [release] prepare release pmd_releases/7.14.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/0cdb9c8795f227abc8d63cfa64617453c0a4c9f4\"\u003e\u003ccode\u003e0cdb9c8\u003c/code\u003e\u003c/a\u003e Prepare pmd release 7.14.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/1c1ef837b7ee523e4cbd8a21d939ba72f3e0882d\"\u003e\u003ccode\u003e1c1ef83\u003c/code\u003e\u003c/a\u003e Add \u003ca href=\"https://github.com/Ledmington\"\u003e\u003ccode\u003e@​Ledmington\u003c/code\u003e\u003c/a\u003e as a contributor\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/49a321dd5472430d4ad6e9cf9568748e8730063a\"\u003e\u003ccode\u003e49a321d\u003c/code\u003e\u003c/a\u003e Add \u003ca href=\"https://github.com/Daniel-Ventura-25\"\u003e\u003ccode\u003e@​Daniel-Ventura-25\u003c/code\u003e\u003c/a\u003e as a contributor\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/3bd234c2edabf2d1bfcc51c185bd229f32661e4d\"\u003e\u003ccode\u003e3bd234c\u003c/code\u003e\u003c/a\u003e [core] Add rule to report unnecessary suppression comments/annotations (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5609\"\u003e#5609\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/4f9df6f48cdc9f643ccb40433d6be1f5eaa91d1c\"\u003e\u003ccode\u003e4f9df6f\u003c/code\u003e\u003c/a\u003e [cli] Make CLI default to multithreaded (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5741\"\u003e#5741\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/1924d235964cc987f32b9b8fc108eda7a36e157f\"\u003e\u003ccode\u003e1924d23\u003c/code\u003e\u003c/a\u003e Fix unit tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/f479b7de272453108e7b7adef045605619767bcc\"\u003e\u003ccode\u003ef479b7d\u003c/code\u003e\u003c/a\u003e Apply suggestions from review\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/c69c881bc5fb3be73c5ff331b3d804c348b191e1\"\u003e\u003ccode\u003ec69c881\u003c/code\u003e\u003c/a\u003e Fix unit tests\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pmd/pmd/compare/pmd_releases/7.12.0...pmd_releases/7.14.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `net.sourceforge.pmd:pmd-java` from 7.12.0 to 7.14.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pmd/pmd/releases\"\u003enet.sourceforge.pmd:pmd-java's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ePMD 7.14.0 (30-May-2025)\u003c/h2\u003e\n\u003ch2\u003e30-May-2025 - 7.14.0\u003c/h2\u003e\n\u003cp\u003eThe PMD team is pleased to announce PMD 7.14.0.\u003c/p\u003e\n\u003cp\u003eThis is a minor release.\u003c/p\u003e\n\u003ch3\u003eTable Of Contents\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-and-noteworthy\"\u003e🚀 New and noteworthy\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#pmd-cli-now-uses-threaded-execution-by-default\"\u003ePMD CLI now uses threaded execution by default\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"#new-rule-unnecessarywarningsuppression-https://github.com/pmd/pmd/blob/HEAD/experimental\"\u003eNew Rule UnnecessaryWarningSuppression (https://github.com/pmd/pmd/blob/HEAD/experimental)\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#migrating-to-central-publisher-portal\"\u003eMigrating to Central Publisher Portal\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#more-cli-parameters-shared-between-pmd-and-cpd\"\u003eMore CLI parameters shared between PMD and CPD\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#fixed-issues\"\u003e🐛 Fixed Issues\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#api-changes\"\u003e🚨 API Changes\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#cli\"\u003eCLI\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#deprecations\"\u003eDeprecations\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#experimental\"\u003eExperimental\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#merged-pull-requests\"\u003e✨ Merged pull requests\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#dependency-updates\"\u003e📦 Dependency updates\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#stats\"\u003e📈 Stats\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🚀 New and noteworthy\u003c/h3\u003e\n\u003ch4\u003ePMD CLI now uses threaded execution by default\u003c/h4\u003e\n\u003cp\u003eIn the PMD CLI, the \u003ccode\u003e--threads\u003c/code\u003e (\u003ccode\u003e-t\u003c/code\u003e) option can now accept a thread\ncount given relative to the number of cores of the machine. For instance,\nit is now possible to write \u003ccode\u003e-t 1C\u003c/code\u003e to spawn one thread per core, or \u003ccode\u003e-t 0.5C\u003c/code\u003e\nto spawn one thread for every other core.\u003c/p\u003e\n\u003cp\u003eThe thread count option now defaults to \u003ccode\u003e1C\u003c/code\u003e, meaning parallel execution\nis used by default. You can disable this by using \u003ccode\u003e-t 1\u003c/code\u003e.\u003c/p\u003e\n\u003ch4\u003eNew Rule UnnecessaryWarningSuppression (experimental)\u003c/h4\u003e\n\u003cp\u003eThis new Java rule \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.14.0/pmd_rules_java_bestpractices.html#unnecessarywarningsuppression\"\u003e\u003ccode\u003eUnnecessaryWarningSuppression\u003c/code\u003e\u003c/a\u003e reports unused suppression\nannotations and comments. Violations of this rule cannot be suppressed.\u003c/p\u003e\n\u003cp\u003eHow to use it? Just include it in your ruleset:\u003c/p\u003e\n\u003cpre lang=\"xml\"\u003e\u003ccode\u003e\u0026lt;rule ref=\u0026quot;category/java/bestpractices.xml/UnnecessaryWarningSuppression\u0026quot; /\u0026gt;\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eNote: This rule is currently experimental. It is available for now only for Java.\nThe rule for now only reports annotations specific to PMD, like \u003ccode\u003e@SuppressWarnings(\u0026quot;PMD\u0026quot;)\u003c/code\u003e.\nIn the future we might be able to check for other common ones like \u003ccode\u003e@SuppressWarnings(\u0026quot;unchecked\u0026quot;)\u003c/code\u003e or \u003ccode\u003e\u0026quot;fallthrough\u0026quot;\u003c/code\u003e.\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/876d4ab8ac5fb0940cd545b9c7a41866029cd519\"\u003e\u003ccode\u003e876d4ab\u003c/code\u003e\u003c/a\u003e [ci] Use correct credentials for central deployment\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/3a6e7a464dc14fa3315ced668680f442160db18b\"\u003e\u003ccode\u003e3a6e7a4\u003c/code\u003e\u003c/a\u003e [release] prepare release pmd_releases/7.14.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/0cdb9c8795f227abc8d63cfa64617453c0a4c9f4\"\u003e\u003ccode\u003e0cdb9c8\u003c/code\u003e\u003c/a\u003e Prepare pmd release 7.14.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/1c1ef837b7ee523e4cbd8a21d939ba72f3e0882d\"\u003e\u003ccode\u003e1c1ef83\u003c/code\u003e\u003c/a\u003e Add \u003ca href=\"https://github.com/Ledmington\"\u003e\u003ccode\u003e@​Ledmington\u003c/code\u003e\u003c/a\u003e as a contributor\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/49a321dd5472430d4ad6e9cf9568748e8730063a\"\u003e\u003ccode\u003e49a321d\u003c/code\u003e\u003c/a\u003e Add \u003ca href=\"https://github.com/Daniel-Ventura-25\"\u003e\u003ccode\u003e@​Daniel-Ventura-25\u003c/code\u003e\u003c/a\u003e as a contributor\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/3bd234c2edabf2d1bfcc51c185bd229f32661e4d\"\u003e\u003ccode\u003e3bd234c\u003c/code\u003e\u003c/a\u003e [core] Add rule to report unnecessary suppression comments/annotations (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5609\"\u003e#5609\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/4f9df6f48cdc9f643ccb40433d6be1f5eaa91d1c\"\u003e\u003ccode\u003e4f9df6f\u003c/code\u003e\u003c/a\u003e [cli] Make CLI default to multithreaded (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5741\"\u003e#5741\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/1924d235964cc987f32b9b8fc108eda7a36e157f\"\u003e\u003ccode\u003e1924d23\u003c/code\u003e\u003c/a\u003e Fix unit tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/f479b7de272453108e7b7adef045605619767bcc\"\u003e\u003ccode\u003ef479b7d\u003c/code\u003e\u003c/a\u003e Apply suggestions from review\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/c69c881bc5fb3be73c5ff331b3d804c348b191e1\"\u003e\u003ccode\u003ec69c881\u003c/code\u003e\u003c/a\u003e Fix unit tests\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pmd/pmd/compare/pmd_releases/7.12.0...pmd_releases/7.14.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `net.sourceforge.pmd:pmd-javascript` from 7.12.0 to 7.14.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pmd/pmd/releases\"\u003enet.sourceforge.pmd:pmd-javascript's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ePMD 7.14.0 (30-May-2025)\u003c/h2\u003e\n\u003ch2\u003e30-May-2025 - 7.14.0\u003c/h2\u003e\n\u003cp\u003eThe PMD team is pleased to announce PMD 7.14.0.\u003c/p\u003e\n\u003cp\u003eThis is a minor release.\u003c/p\u003e\n\u003ch3\u003eTable Of Contents\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-and-noteworthy\"\u003e🚀 New and noteworthy\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#pmd-cli-now-uses-threaded-execution-by-default\"\u003ePMD CLI now uses threaded execution by default\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"#new-rule-unnecessarywarningsuppression-https://github.com/pmd/pmd/blob/HEAD/experimental\"\u003eNew Rule UnnecessaryWarningSuppression (https://github.com/pmd/pmd/blob/HEAD/experimental)\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#migrating-to-central-publisher-portal\"\u003eMigrating to Central Publisher Portal\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#more-cli-parameters-shared-between-pmd-and-cpd\"\u003eMore CLI parameters shared between PMD and CPD\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#fixed-issues\"\u003e🐛 Fixed Issues\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#api-changes\"\u003e🚨 API Changes\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#cli\"\u003eCLI\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#deprecations\"\u003eDeprecations\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#experimental\"\u003eExperimental\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#merged-pull-requests\"\u003e✨ Merged pull requests\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#dependency-updates\"\u003e📦 Dependency updates\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#stats\"\u003e📈 Stats\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🚀 New and noteworthy\u003c/h3\u003e\n\u003ch4\u003ePMD CLI now uses threaded execution by default\u003c/h4\u003e\n\u003cp\u003eIn the PMD CLI, the \u003ccode\u003e--threads\u003c/code\u003e (\u003ccode\u003e-t\u003c/code\u003e) option can now accept a thread\ncount given relative to the number of cores of the machine. For instance,\nit is now possible to write \u003ccode\u003e-t 1C\u003c/code\u003e to spawn one thread per core, or \u003ccode\u003e-t 0.5C\u003c/code\u003e\nto spawn one thread for every other core.\u003c/p\u003e\n\u003cp\u003eThe thread count option now defaults to \u003ccode\u003e1C\u003c/code\u003e, meaning parallel execution\nis used by default. You can disable this by using \u003ccode\u003e-t 1\u003c/code\u003e.\u003c/p\u003e\n\u003ch4\u003eNew Rule UnnecessaryWarningSuppression (experimental)\u003c/h4\u003e\n\u003cp\u003eThis new Java rule \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.14.0/pmd_rules_java_bestpractices.html#unnecessarywarningsuppression\"\u003e\u003ccode\u003eUnnecessaryWarningSuppression\u003c/code\u003e\u003c/a\u003e reports unused suppression\nannotations and comments. Violations of this rule cannot be suppressed.\u003c/p\u003e\n\u003cp\u003eHow to use it? Just include it in your ruleset:\u003c/p\u003e\n\u003cpre lang=\"xml\"\u003e\u003ccode\u003e\u0026lt;rule ref=\u0026quot;category/java/bestpractices.xml/UnnecessaryWarningSuppression\u0026quot; /\u0026gt;\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eNote: This rule is currently experimental. It is available for now only for Java.\nThe rule for now only reports annotations specific to PMD, like \u003ccode\u003e@SuppressWarnings(\u0026quot;PMD\u0026quot;)\u003c/code\u003e.\nIn the future we might be able to check for other common ones like \u003ccode\u003e@SuppressWarnings(\u0026quot;unchecked\u0026quot;)\u003c/code\u003e or \u003ccode\u003e\u0026quot;fallthrough\u0026quot;\u003c/code\u003e.\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/876d4ab8ac5fb0940cd545b9c7a41866029cd519\"\u003e\u003ccode\u003e876d4ab\u003c/code\u003e\u003c/a\u003e [ci] Use correct credentials for central deployment\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/3a6e7a464dc14fa3315ced668680f442160db18b\"\u003e\u003ccode\u003e3a6e7a4\u003c/code\u003e\u003c/a\u003e [release] prepare release pmd_releases/7.14.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/0cdb9c8795f227abc8d63cfa64617453c0a4c9f4\"\u003e\u003ccode\u003e0cdb9c8\u003c/code\u003e\u003c/a\u003e Prepare pmd release 7.14.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/1c1ef837b7ee523e4cbd8a21d939ba72f3e0882d\"\u003e\u003ccode\u003e1c1ef83\u003c/code\u003e\u003c/a\u003e Add \u003ca href=\"https://github.com/Ledmington\"\u003e\u003ccode\u003e@​Ledmington\u003c/code\u003e\u003c/a\u003e as a contributor\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/49a321dd5472430d4ad6e9cf9568748e8730063a\"\u003e\u003ccode\u003e49a321d\u003c/code\u003e\u003c/a\u003e Add \u003ca href=\"https://github.com/Daniel-Ventura-25\"\u003e\u003ccode\u003e@​Daniel-Ventura-25\u003c/code\u003e\u003c/a\u003e as a contributor\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/3bd234c2edabf2d1bfcc51c185bd229f32661e4d\"\u003e\u003ccode\u003e3bd234c\u003c/code\u003e\u003c/a\u003e [core] Add rule to report unnecessary suppression comments/annotations (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5609\"\u003e#5609\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/4f9df6f48cdc9f643ccb40433d6be1f5eaa91d1c\"\u003e\u003ccode\u003e4f9df6f\u003c/code\u003e\u003c/a\u003e [cli] Make CLI default to multithreaded (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5741\"\u003e#5741\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/1924d235964cc987f32b9b8fc108eda7a36e157f\"\u003e\u003ccode\u003e1924d23\u003c/code\u003e\u003c/a\u003e Fix unit tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/f479b7de272453108e7b7adef045605619767bcc\"\u003e\u003ccode\u003ef479b7d\u003c/code\u003e\u003c/a\u003e Apply suggestions from review\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/c69c881bc5fb3be73c5ff331b3d804c348b191e1\"\u003e\u003ccode\u003ec69c881\u003c/code\u003e\u003c/a\u003e Fix unit tests\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pmd/pmd/compare/pmd_releases/7.12.0...pmd_releases/7.14.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `net.sourceforge.pmd:pmd-jsp` from 7.12.0 to 7.14.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pmd/pmd/releases\"\u003enet.sourceforge.pmd:pmd-jsp's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ePMD 7.14.0 (30-May-2025)\u003c/h2\u003e\n\u003ch2\u003e30-May-2025 - 7.14.0\u003c/h2\u003e\n\u003cp\u003eThe PMD team is pleased to announce PMD 7.14.0.\u003c/p\u003e\n\u003cp\u003eThis is a minor release.\u003c/p\u003e\n\u003ch3\u003eTable Of Contents\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-and-noteworthy\"\u003e🚀 New and noteworthy\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#pmd-cli-now-uses-threaded-execution-by-default\"\u003ePMD CLI now uses threaded execution by default\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"#new-rule-unnecessarywarningsuppression-https://github.com/pmd/pmd/blob/HEAD/experimental\"\u003eNew Rule UnnecessaryWarningSuppression (https://github.com/pmd/pmd/blob/HEAD/experimental)\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#migrating-to-central-publisher-portal\"\u003eMigrating to Central Publisher Portal\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#more-cli-parameters-shared-between-pmd-and-cpd\"\u003eMore CLI parameters shared between PMD and CPD\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#fixed-issues\"\u003e🐛 Fixed Issues\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#api-changes\"\u003e🚨 API Changes\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#cli\"\u003eCLI\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#deprecations\"\u003eDeprecations\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#experimental\"\u003eExperimental\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#merged-pull-requests\"\u003e✨ Merged pull requests\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#dependency-updates\"\u003e📦 Dependency updates\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#stats\"\u003e📈 Stats\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🚀 New and noteworthy\u003c/h3\u003e\n\u003ch4\u003ePMD CLI now uses threaded execution by default\u003c/h4\u003e\n\u003cp\u003eIn the PMD CLI, the \u003ccode\u003e--threads\u003c/code\u003e (\u003ccode\u003e-t\u003c/code\u003e) option can now accept a thread\ncount given relative to the number of cores of the machine. For instance,\nit is now possible to write \u003ccode\u003e-t 1C\u003c/code\u003e to spawn one thread per core, or \u003ccode\u003e-t 0.5C\u003c/code\u003e\nto spawn one thread for every other core.\u003c/p\u003e\n\u003cp\u003eThe thread count option now defaults to \u003ccode\u003e1C\u003c/code\u003e, meaning parallel execution\nis used by default. You can disable this by using \u003ccode\u003e-t 1\u003c/code\u003e.\u003c/p\u003e\n\u003ch4\u003eNew Rule UnnecessaryWarningSuppression (experimental)\u003c/h4\u003e\n\u003cp\u003eThis new Java rule \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.14.0/pmd_rules_java_bestpractices.html#unnecessarywarningsuppression\"\u003e\u003ccode\u003eUnnecessaryWarningSuppression\u003c/code\u003e\u003c/a\u003e reports unused suppression\nannotations and comments. Violations of this rule cannot be suppressed.\u003c/p\u003e\n\u003cp\u003eHow to use it? Just include it in your ruleset:\u003c/p\u003e\n\u003cpre lang=\"xml\"\u003e\u003ccode\u003e\u0026lt;rule ref=\u0026quot;category/java/bestpractices.xml/UnnecessaryWarningSuppression\u0026quot; /\u0026gt;\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eNote: This rule is currently experimental. It is available for now only for Java.\nThe rule for now only reports annotations specific to PMD, like \u003ccode\u003e@SuppressWarnings(\u0026quot;PMD\u0026quot;)\u003c/code\u003e.\nIn the future we might be able to check for other common ones like \u003ccode\u003e@SuppressWarnings(\u0026quot;unchecked\u0026quot;)\u003c/code\u003e or \u003ccode\u003e\u0026quot;fallthrough\u0026quot;\u003c/code\u003e.\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/876d4ab8ac5fb0940cd545b9c7a41866029cd519\"\u003e\u003ccode\u003e876d4ab\u003c/code\u003e\u003c/a\u003e [ci] Use correct credentials for central deployment\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/3a6e7a464dc14fa3315ced668680f442160db18b\"\u003e\u003ccode\u003e3a6e7a4\u003c/code\u003e\u003c/a\u003e [release] prepare release pmd_releases/7.14.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/0cdb9c8795f227abc8d63cfa64617453c0a4c9f4\"\u003e\u003ccode\u003e0cdb9c8\u003c/code\u003e\u003c/a\u003e Prepare pmd release 7.14.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/1c1ef837b7ee523e4cbd8a21d939ba72f3e0882d\"\u003e\u003ccode\u003e1c1ef83\u003c/code\u003e\u003c/a\u003e Add \u003ca href=\"https://github.com/Ledmington\"\u003e\u003ccode\u003e@​Ledmington\u003c/code\u003e\u003c/a\u003e as a contributor\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/49a321dd5472430d4ad6e9cf9568748e8730063a\"\u003e\u003ccode\u003e49a321d\u003c/code\u003e\u003c/a\u003e Add \u003ca href=\"https://github.com/Daniel-Ventura-25\"\u003e\u003ccode\u003e@​Daniel-Ventura-25\u003c/code\u003e\u003c/a\u003e as a contributor\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/3bd234c2edabf2d1bfcc51c185bd229f32661e4d\"\u003e\u003ccode\u003e3bd234c\u003c/code\u003e\u003c/a\u003e [core] Add rule to report unnecessary suppression comments/annotations (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5609\"\u003e#5609\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/4f9df6f48cdc9f643ccb40433d6be1f5eaa91d1c\"\u003e\u003ccode\u003e4f9df6f\u003c/code\u003e\u003c/a\u003e [cli] Make CLI default to multithreaded (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5741\"\u003e#5741\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/1924d235964cc987f32b9b8fc108eda7a36e157f\"\u003e\u003ccode\u003e1924d23\u003c/code\u003e\u003c/a\u003e Fix unit tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/f479b7de272453108e7b7adef045605619767bcc\"\u003e\u003ccode\u003ef479b7d\u003c/code\u003e\u003c/a\u003e Apply suggestions from review\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/c69c881bc5fb3be73c5ff331b3d804c348b191e1\"\u003e\u003ccode\u003ec69c881\u003c/code\u003e\u003c/a\u003e Fix unit tests\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pmd/pmd/compare/pmd_releases/7.12.0...pmd_releases/7.14.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot merge` will merge this PR after your CI passes on it\n- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it\n- `@dependabot cancel merge` will cancel a previously requested merge and block automerging\n- `@dependabot reopen` will reopen this PR if it is closed\n- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)\n\n\n\u003c/details\u003e","html_url":"https://github.com/apache/maven-pmd-plugin/pull/213","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/apache%2Fmaven-pmd-plugin/issues/213","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/213/packages"}},{"old_version":"7.13.0","new_version":"7.14.0","update_type":"minor","path":null,"pr_created_at":"2025-06-02T03:16:28.000Z","version_change":"7.13.0 → 7.14.0","issue":{"uuid":"3108377889","node_id":"PR_kwDOG8B9086YiFFl","number":1363,"state":"open","title":"Bump pmdVersion from 7.13.0 to 7.14.0","user":"dependabot[bot]","labels":["dependencies","java"],"assignees":["EvaristeGalois11"],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":"CONTRIBUTOR","state_reason":null,"created_at":"2025-06-02T03:16:28.000Z","updated_at":"2025-06-02T10:16:52.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","packages":[{"name":"pmdVersion","old_version":"7.13.0","new_version":"7.14.0","repository_url":null}],"path":null,"ecosystem":"maven"},"body":"Bumps `pmdVersion` from 7.13.0 to 7.14.0.\nUpdates `net.sourceforge.pmd:pmd-core` from 7.13.0 to 7.14.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pmd/pmd/releases\"\u003enet.sourceforge.pmd:pmd-core's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ePMD 7.14.0 (30-May-2025)\u003c/h2\u003e\n\u003ch2\u003e30-May-2025 - 7.14.0\u003c/h2\u003e\n\u003cp\u003eThe PMD team is pleased to announce PMD 7.14.0.\u003c/p\u003e\n\u003cp\u003eThis is a minor release.\u003c/p\u003e\n\u003ch3\u003eTable Of Contents\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-and-noteworthy\"\u003e🚀 New and noteworthy\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#pmd-cli-now-uses-threaded-execution-by-default\"\u003ePMD CLI now uses threaded execution by default\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"#new-rule-unnecessarywarningsuppression-https://github.com/pmd/pmd/blob/HEAD/experimental\"\u003eNew Rule UnnecessaryWarningSuppression (https://github.com/pmd/pmd/blob/HEAD/experimental)\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#migrating-to-central-publisher-portal\"\u003eMigrating to Central Publisher Portal\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#more-cli-parameters-shared-between-pmd-and-cpd\"\u003eMore CLI parameters shared between PMD and CPD\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#fixed-issues\"\u003e🐛 Fixed Issues\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#api-changes\"\u003e🚨 API Changes\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#cli\"\u003eCLI\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#deprecations\"\u003eDeprecations\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#experimental\"\u003eExperimental\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#merged-pull-requests\"\u003e✨ Merged pull requests\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#dependency-updates\"\u003e📦 Dependency updates\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#stats\"\u003e📈 Stats\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🚀 New and noteworthy\u003c/h3\u003e\n\u003ch4\u003ePMD CLI now uses threaded execution by default\u003c/h4\u003e\n\u003cp\u003eIn the PMD CLI, the \u003ccode\u003e--threads\u003c/code\u003e (\u003ccode\u003e-t\u003c/code\u003e) option can now accept a thread\ncount given relative to the number of cores of the machine. For instance,\nit is now possible to write \u003ccode\u003e-t 1C\u003c/code\u003e to spawn one thread per core, or \u003ccode\u003e-t 0.5C\u003c/code\u003e\nto spawn one thread for every other core.\u003c/p\u003e\n\u003cp\u003eThe thread count option now defaults to \u003ccode\u003e1C\u003c/code\u003e, meaning parallel execution\nis used by default. You can disable this by using \u003ccode\u003e-t 1\u003c/code\u003e.\u003c/p\u003e\n\u003ch4\u003eNew Rule UnnecessaryWarningSuppression (experimental)\u003c/h4\u003e\n\u003cp\u003eThis new Java rule \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.14.0/pmd_rules_java_bestpractices.html#unnecessarywarningsuppression\"\u003e\u003ccode\u003eUnnecessaryWarningSuppression\u003c/code\u003e\u003c/a\u003e reports unused suppression\nannotations and comments. Violations of this rule cannot be suppressed.\u003c/p\u003e\n\u003cp\u003eHow to use it? Just include it in your ruleset:\u003c/p\u003e\n\u003cpre lang=\"xml\"\u003e\u003ccode\u003e\u0026lt;rule ref=\u0026quot;category/java/bestpractices.xml/UnnecessaryWarningSuppression\u0026quot; /\u0026gt;\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eNote: This rule is currently experimental. It is available for now only for Java.\nThe rule for now only reports annotations specific to PMD, like \u003ccode\u003e@SuppressWarnings(\u0026quot;PMD\u0026quot;)\u003c/code\u003e.\nIn the future we might be able to check for other common ones like \u003ccode\u003e@SuppressWarnings(\u0026quot;unchecked\u0026quot;)\u003c/code\u003e or \u003ccode\u003e\u0026quot;fallthrough\u0026quot;\u003c/code\u003e.\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/876d4ab8ac5fb0940cd545b9c7a41866029cd519\"\u003e\u003ccode\u003e876d4ab\u003c/code\u003e\u003c/a\u003e [ci] Use correct credentials for central deployment\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/3a6e7a464dc14fa3315ced668680f442160db18b\"\u003e\u003ccode\u003e3a6e7a4\u003c/code\u003e\u003c/a\u003e [release] prepare release pmd_releases/7.14.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/0cdb9c8795f227abc8d63cfa64617453c0a4c9f4\"\u003e\u003ccode\u003e0cdb9c8\u003c/code\u003e\u003c/a\u003e Prepare pmd release 7.14.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/1c1ef837b7ee523e4cbd8a21d939ba72f3e0882d\"\u003e\u003ccode\u003e1c1ef83\u003c/code\u003e\u003c/a\u003e Add \u003ca href=\"https://github.com/Ledmington\"\u003e\u003ccode\u003e@​Ledmington\u003c/code\u003e\u003c/a\u003e as a contributor\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/49a321dd5472430d4ad6e9cf9568748e8730063a\"\u003e\u003ccode\u003e49a321d\u003c/code\u003e\u003c/a\u003e Add \u003ca href=\"https://github.com/Daniel-Ventura-25\"\u003e\u003ccode\u003e@​Daniel-Ventura-25\u003c/code\u003e\u003c/a\u003e as a contributor\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/3bd234c2edabf2d1bfcc51c185bd229f32661e4d\"\u003e\u003ccode\u003e3bd234c\u003c/code\u003e\u003c/a\u003e [core] Add rule to report unnecessary suppression comments/annotations (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5609\"\u003e#5609\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/4f9df6f48cdc9f643ccb40433d6be1f5eaa91d1c\"\u003e\u003ccode\u003e4f9df6f\u003c/code\u003e\u003c/a\u003e [cli] Make CLI default to multithreaded (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5741\"\u003e#5741\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/1924d235964cc987f32b9b8fc108eda7a36e157f\"\u003e\u003ccode\u003e1924d23\u003c/code\u003e\u003c/a\u003e Fix unit tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/f479b7de272453108e7b7adef045605619767bcc\"\u003e\u003ccode\u003ef479b7d\u003c/code\u003e\u003c/a\u003e Apply suggestions from review\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/c69c881bc5fb3be73c5ff331b3d804c348b191e1\"\u003e\u003ccode\u003ec69c881\u003c/code\u003e\u003c/a\u003e Fix unit tests\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pmd/pmd/compare/pmd_releases/7.13.0...pmd_releases/7.14.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `net.sourceforge.pmd:pmd-java` from 7.13.0 to 7.14.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pmd/pmd/releases\"\u003enet.sourceforge.pmd:pmd-java's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ePMD 7.14.0 (30-May-2025)\u003c/h2\u003e\n\u003ch2\u003e30-May-2025 - 7.14.0\u003c/h2\u003e\n\u003cp\u003eThe PMD team is pleased to announce PMD 7.14.0.\u003c/p\u003e\n\u003cp\u003eThis is a minor release.\u003c/p\u003e\n\u003ch3\u003eTable Of Contents\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-and-noteworthy\"\u003e🚀 New and noteworthy\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#pmd-cli-now-uses-threaded-execution-by-default\"\u003ePMD CLI now uses threaded execution by default\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"#new-rule-unnecessarywarningsuppression-https://github.com/pmd/pmd/blob/HEAD/experimental\"\u003eNew Rule UnnecessaryWarningSuppression (https://github.com/pmd/pmd/blob/HEAD/experimental)\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#migrating-to-central-publisher-portal\"\u003eMigrating to Central Publisher Portal\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#more-cli-parameters-shared-between-pmd-and-cpd\"\u003eMore CLI parameters shared between PMD and CPD\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#fixed-issues\"\u003e🐛 Fixed Issues\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#api-changes\"\u003e🚨 API Changes\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#cli\"\u003eCLI\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#deprecations\"\u003eDeprecations\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#experimental\"\u003eExperimental\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#merged-pull-requests\"\u003e✨ Merged pull requests\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#dependency-updates\"\u003e📦 Dependency updates\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#stats\"\u003e📈 Stats\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🚀 New and noteworthy\u003c/h3\u003e\n\u003ch4\u003ePMD CLI now uses threaded execution by default\u003c/h4\u003e\n\u003cp\u003eIn the PMD CLI, the \u003ccode\u003e--threads\u003c/code\u003e (\u003ccode\u003e-t\u003c/code\u003e) option can now accept a thread\ncount given relative to the number of cores of the machine. For instance,\nit is now possible to write \u003ccode\u003e-t 1C\u003c/code\u003e to spawn one thread per core, or \u003ccode\u003e-t 0.5C\u003c/code\u003e\nto spawn one thread for every other core.\u003c/p\u003e\n\u003cp\u003eThe thread count option now defaults to \u003ccode\u003e1C\u003c/code\u003e, meaning parallel execution\nis used by default. You can disable this by using \u003ccode\u003e-t 1\u003c/code\u003e.\u003c/p\u003e\n\u003ch4\u003eNew Rule UnnecessaryWarningSuppression (experimental)\u003c/h4\u003e\n\u003cp\u003eThis new Java rule \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.14.0/pmd_rules_java_bestpractices.html#unnecessarywarningsuppression\"\u003e\u003ccode\u003eUnnecessaryWarningSuppression\u003c/code\u003e\u003c/a\u003e reports unused suppression\nannotations and comments. Violations of this rule cannot be suppressed.\u003c/p\u003e\n\u003cp\u003eHow to use it? Just include it in your ruleset:\u003c/p\u003e\n\u003cpre lang=\"xml\"\u003e\u003ccode\u003e\u0026lt;rule ref=\u0026quot;category/java/bestpractices.xml/UnnecessaryWarningSuppression\u0026quot; /\u0026gt;\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eNote: This rule is currently experimental. It is available for now only for Java.\nThe rule for now only reports annotations specific to PMD, like \u003ccode\u003e@SuppressWarnings(\u0026quot;PMD\u0026quot;)\u003c/code\u003e.\nIn the future we might be able to check for other common ones like \u003ccode\u003e@SuppressWarnings(\u0026quot;unchecked\u0026quot;)\u003c/code\u003e or \u003ccode\u003e\u0026quot;fallthrough\u0026quot;\u003c/code\u003e.\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/876d4ab8ac5fb0940cd545b9c7a41866029cd519\"\u003e\u003ccode\u003e876d4ab\u003c/code\u003e\u003c/a\u003e [ci] Use correct credentials for central deployment\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/3a6e7a464dc14fa3315ced668680f442160db18b\"\u003e\u003ccode\u003e3a6e7a4\u003c/code\u003e\u003c/a\u003e [release] prepare release pmd_releases/7.14.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/0cdb9c8795f227abc8d63cfa64617453c0a4c9f4\"\u003e\u003ccode\u003e0cdb9c8\u003c/code\u003e\u003c/a\u003e Prepare pmd release 7.14.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/1c1ef837b7ee523e4cbd8a21d939ba72f3e0882d\"\u003e\u003ccode\u003e1c1ef83\u003c/code\u003e\u003c/a\u003e Add \u003ca href=\"https://github.com/Ledmington\"\u003e\u003ccode\u003e@​Ledmington\u003c/code\u003e\u003c/a\u003e as a contributor\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/49a321dd5472430d4ad6e9cf9568748e8730063a\"\u003e\u003ccode\u003e49a321d\u003c/code\u003e\u003c/a\u003e Add \u003ca href=\"https://github.com/Daniel-Ventura-25\"\u003e\u003ccode\u003e@​Daniel-Ventura-25\u003c/code\u003e\u003c/a\u003e as a contributor\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/3bd234c2edabf2d1bfcc51c185bd229f32661e4d\"\u003e\u003ccode\u003e3bd234c\u003c/code\u003e\u003c/a\u003e [core] Add rule to report unnecessary suppression comments/annotations (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5609\"\u003e#5609\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/4f9df6f48cdc9f643ccb40433d6be1f5eaa91d1c\"\u003e\u003ccode\u003e4f9df6f\u003c/code\u003e\u003c/a\u003e [cli] Make CLI default to multithreaded (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5741\"\u003e#5741\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/1924d235964cc987f32b9b8fc108eda7a36e157f\"\u003e\u003ccode\u003e1924d23\u003c/code\u003e\u003c/a\u003e Fix unit tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/f479b7de272453108e7b7adef045605619767bcc\"\u003e\u003ccode\u003ef479b7d\u003c/code\u003e\u003c/a\u003e Apply suggestions from review\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/c69c881bc5fb3be73c5ff331b3d804c348b191e1\"\u003e\u003ccode\u003ec69c881\u003c/code\u003e\u003c/a\u003e Fix unit tests\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pmd/pmd/compare/pmd_releases/7.13.0...pmd_releases/7.14.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `net.sourceforge.pmd:pmd-javascript` from 7.13.0 to 7.14.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pmd/pmd/releases\"\u003enet.sourceforge.pmd:pmd-javascript's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ePMD 7.14.0 (30-May-2025)\u003c/h2\u003e\n\u003ch2\u003e30-May-2025 - 7.14.0\u003c/h2\u003e\n\u003cp\u003eThe PMD team is pleased to announce PMD 7.14.0.\u003c/p\u003e\n\u003cp\u003eThis is a minor release.\u003c/p\u003e\n\u003ch3\u003eTable Of Contents\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-and-noteworthy\"\u003e🚀 New and noteworthy\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#pmd-cli-now-uses-threaded-execution-by-default\"\u003ePMD CLI now uses threaded execution by default\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"#new-rule-unnecessarywarningsuppression-https://github.com/pmd/pmd/blob/HEAD/experimental\"\u003eNew Rule UnnecessaryWarningSuppression (https://github.com/pmd/pmd/blob/HEAD/experimental)\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#migrating-to-central-publisher-portal\"\u003eMigrating to Central Publisher Portal\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#more-cli-parameters-shared-between-pmd-and-cpd\"\u003eMore CLI parameters shared between PMD and CPD\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#fixed-issues\"\u003e🐛 Fixed Issues\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#api-changes\"\u003e🚨 API Changes\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#cli\"\u003eCLI\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#deprecations\"\u003eDeprecations\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#experimental\"\u003eExperimental\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#merged-pull-requests\"\u003e✨ Merged pull requests\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#dependency-updates\"\u003e📦 Dependency updates\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#stats\"\u003e📈 Stats\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🚀 New and noteworthy\u003c/h3\u003e\n\u003ch4\u003ePMD CLI now uses threaded execution by default\u003c/h4\u003e\n\u003cp\u003eIn the PMD CLI, the \u003ccode\u003e--threads\u003c/code\u003e (\u003ccode\u003e-t\u003c/code\u003e) option can now accept a thread\ncount given relative to the number of cores of the machine. For instance,\nit is now possible to write \u003ccode\u003e-t 1C\u003c/code\u003e to spawn one thread per core, or \u003ccode\u003e-t 0.5C\u003c/code\u003e\nto spawn one thread for every other core.\u003c/p\u003e\n\u003cp\u003eThe thread count option now defaults to \u003ccode\u003e1C\u003c/code\u003e, meaning parallel execution\nis used by default. You can disable this by using \u003ccode\u003e-t 1\u003c/code\u003e.\u003c/p\u003e\n\u003ch4\u003eNew Rule UnnecessaryWarningSuppression (experimental)\u003c/h4\u003e\n\u003cp\u003eThis new Java rule \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.14.0/pmd_rules_java_bestpractices.html#unnecessarywarningsuppression\"\u003e\u003ccode\u003eUnnecessaryWarningSuppression\u003c/code\u003e\u003c/a\u003e reports unused suppression\nannotations and comments. Violations of this rule cannot be suppressed.\u003c/p\u003e\n\u003cp\u003eHow to use it? Just include it in your ruleset:\u003c/p\u003e\n\u003cpre lang=\"xml\"\u003e\u003ccode\u003e\u0026lt;rule ref=\u0026quot;category/java/bestpractices.xml/UnnecessaryWarningSuppression\u0026quot; /\u0026gt;\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eNote: This rule is currently experimental. It is available for now only for Java.\nThe rule for now only reports annotations specific to PMD, like \u003ccode\u003e@SuppressWarnings(\u0026quot;PMD\u0026quot;)\u003c/code\u003e.\nIn the future we might be able to check for other common ones like \u003ccode\u003e@SuppressWarnings(\u0026quot;unchecked\u0026quot;)\u003c/code\u003e or \u003ccode\u003e\u0026quot;fallthrough\u0026quot;\u003c/code\u003e.\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/876d4ab8ac5fb0940cd545b9c7a41866029cd519\"\u003e\u003ccode\u003e876d4ab\u003c/code\u003e\u003c/a\u003e [ci] Use correct credentials for central deployment\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/3a6e7a464dc14fa3315ced668680f442160db18b\"\u003e\u003ccode\u003e3a6e7a4\u003c/code\u003e\u003c/a\u003e [release] prepare release pmd_releases/7.14.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/0cdb9c8795f227abc8d63cfa64617453c0a4c9f4\"\u003e\u003ccode\u003e0cdb9c8\u003c/code\u003e\u003c/a\u003e Prepare pmd release 7.14.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/1c1ef837b7ee523e4cbd8a21d939ba72f3e0882d\"\u003e\u003ccode\u003e1c1ef83\u003c/code\u003e\u003c/a\u003e Add \u003ca href=\"https://github.com/Ledmington\"\u003e\u003ccode\u003e@​Ledmington\u003c/code\u003e\u003c/a\u003e as a contributor\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/49a321dd5472430d4ad6e9cf9568748e8730063a\"\u003e\u003ccode\u003e49a321d\u003c/code\u003e\u003c/a\u003e Add \u003ca href=\"https://github.com/Daniel-Ventura-25\"\u003e\u003ccode\u003e@​Daniel-Ventura-25\u003c/code\u003e\u003c/a\u003e as a contributor\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/3bd234c2edabf2d1bfcc51c185bd229f32661e4d\"\u003e\u003ccode\u003e3bd234c\u003c/code\u003e\u003c/a\u003e [core] Add rule to report unnecessary suppression comments/annotations (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5609\"\u003e#5609\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/4f9df6f48cdc9f643ccb40433d6be1f5eaa91d1c\"\u003e\u003ccode\u003e4f9df6f\u003c/code\u003e\u003c/a\u003e [cli] Make CLI default to multithreaded (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5741\"\u003e#5741\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/1924d235964cc987f32b9b8fc108eda7a36e157f\"\u003e\u003ccode\u003e1924d23\u003c/code\u003e\u003c/a\u003e Fix unit tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/f479b7de272453108e7b7adef045605619767bcc\"\u003e\u003ccode\u003ef479b7d\u003c/code\u003e\u003c/a\u003e Apply suggestions from review\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/c69c881bc5fb3be73c5ff331b3d804c348b191e1\"\u003e\u003ccode\u003ec69c881\u003c/code\u003e\u003c/a\u003e Fix unit tests\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pmd/pmd/compare/pmd_releases/7.13.0...pmd_releases/7.14.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `net.sourceforge.pmd:pmd-jsp` from 7.13.0 to 7.14.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pmd/pmd/releases\"\u003enet.sourceforge.pmd:pmd-jsp's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ePMD 7.14.0 (30-May-2025)\u003c/h2\u003e\n\u003ch2\u003e30-May-2025 - 7.14.0\u003c/h2\u003e\n\u003cp\u003eThe PMD team is pleased to announce PMD 7.14.0.\u003c/p\u003e\n\u003cp\u003eThis is a minor release.\u003c/p\u003e\n\u003ch3\u003eTable Of Contents\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-and-noteworthy\"\u003e🚀 New and noteworthy\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#pmd-cli-now-uses-threaded-execution-by-default\"\u003ePMD CLI now uses threaded execution by default\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"#new-rule-unnecessarywarningsuppression-https://github.com/pmd/pmd/blob/HEAD/experimental\"\u003eNew Rule UnnecessaryWarningSuppression (https://github.com/pmd/pmd/blob/HEAD/experimental)\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#migrating-to-central-publisher-portal\"\u003eMigrating to Central Publisher Portal\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#more-cli-parameters-shared-between-pmd-and-cpd\"\u003eMore CLI parameters shared between PMD and CPD\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#fixed-issues\"\u003e🐛 Fixed Issues\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#api-changes\"\u003e🚨 API Changes\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#cli\"\u003eCLI\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#deprecations\"\u003eDeprecations\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#experimental\"\u003eExperimental\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#merged-pull-requests\"\u003e✨ Merged pull requests\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#dependency-updates\"\u003e📦 Dependency updates\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#stats\"\u003e📈 Stats\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🚀 New and noteworthy\u003c/h3\u003e\n\u003ch4\u003ePMD CLI now uses threaded execution by default\u003c/h4\u003e\n\u003cp\u003eIn the PMD CLI, the \u003ccode\u003e--threads\u003c/code\u003e (\u003ccode\u003e-t\u003c/code\u003e) option can now accept a thread\ncount given relative to the number of cores of the machine. For instance,\nit is now possible to write \u003ccode\u003e-t 1C\u003c/code\u003e to spawn one thread per core, or \u003ccode\u003e-t 0.5C\u003c/code\u003e\nto spawn one thread for every other core.\u003c/p\u003e\n\u003cp\u003eThe thread count option now defaults to \u003ccode\u003e1C\u003c/code\u003e, meaning parallel execution\nis used by default. You can disable this by using \u003ccode\u003e-t 1\u003c/code\u003e.\u003c/p\u003e\n\u003ch4\u003eNew Rule UnnecessaryWarningSuppression (experimental)\u003c/h4\u003e\n\u003cp\u003eThis new Java rule \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.14.0/pmd_rules_java_bestpractices.html#unnecessarywarningsuppression\"\u003e\u003ccode\u003eUnnecessaryWarningSuppression\u003c/code\u003e\u003c/a\u003e reports unused suppression\nannotations and comments. Violations of this rule cannot be suppressed.\u003c/p\u003e\n\u003cp\u003eHow to use it? Just include it in your ruleset:\u003c/p\u003e\n\u003cpre lang=\"xml\"\u003e\u003ccode\u003e\u0026lt;rule ref=\u0026quot;category/java/bestpractices.xml/UnnecessaryWarningSuppression\u0026quot; /\u0026gt;\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eNote: This rule is currently experimental. It is available for now only for Java.\nThe rule for now only reports annotations specific to PMD, like \u003ccode\u003e@SuppressWarnings(\u0026quot;PMD\u0026quot;)\u003c/code\u003e.\nIn the future we might be able to check for other common ones like \u003ccode\u003e@SuppressWarnings(\u0026quot;unchecked\u0026quot;)\u003c/code\u003e or \u003ccode\u003e\u0026quot;fallthrough\u0026quot;\u003c/code\u003e.\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/876d4ab8ac5fb0940cd545b9c7a41866029cd519\"\u003e\u003ccode\u003e876d4ab\u003c/code\u003e\u003c/a\u003e [ci] Use correct credentials for central deployment\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/3a6e7a464dc14fa3315ced668680f442160db18b\"\u003e\u003ccode\u003e3a6e7a4\u003c/code\u003e\u003c/a\u003e [release] prepare release pmd_releases/7.14.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/0cdb9c8795f227abc8d63cfa64617453c0a4c9f4\"\u003e\u003ccode\u003e0cdb9c8\u003c/code\u003e\u003c/a\u003e Prepare pmd release 7.14.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/1c1ef837b7ee523e4cbd8a21d939ba72f3e0882d\"\u003e\u003ccode\u003e1c1ef83\u003c/code\u003e\u003c/a\u003e Add \u003ca href=\"https://github.com/Ledmington\"\u003e\u003ccode\u003e@​Ledmington\u003c/code\u003e\u003c/a\u003e as a contributor\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/49a321dd5472430d4ad6e9cf9568748e8730063a\"\u003e\u003ccode\u003e49a321d\u003c/code\u003e\u003c/a\u003e Add \u003ca href=\"https://github.com/Daniel-Ventura-25\"\u003e\u003ccode\u003e@​Daniel-Ventura-25\u003c/code\u003e\u003c/a\u003e as a contributor\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/3bd234c2edabf2d1bfcc51c185bd229f32661e4d\"\u003e\u003ccode\u003e3bd234c\u003c/code\u003e\u003c/a\u003e [core] Add rule to report unnecessary suppression comments/annotations (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5609\"\u003e#5609\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/4f9df6f48cdc9f643ccb40433d6be1f5eaa91d1c\"\u003e\u003ccode\u003e4f9df6f\u003c/code\u003e\u003c/a\u003e [cli] Make CLI default to multithreaded (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/5741\"\u003e#5741\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/1924d235964cc987f32b9b8fc108eda7a36e157f\"\u003e\u003ccode\u003e1924d23\u003c/code\u003e\u003c/a\u003e Fix unit tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/f479b7de272453108e7b7adef045605619767bcc\"\u003e\u003ccode\u003ef479b7d\u003c/code\u003e\u003c/a\u003e Apply suggestions from review\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/c69c881bc5fb3be73c5ff331b3d804c348b191e1\"\u003e\u003ccode\u003ec69c881\u003c/code\u003e\u003c/a\u003e Fix unit tests\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pmd/pmd/compare/pmd_releases/7.13.0...pmd_releases/7.14.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot merge` will merge this PR after your CI passes on it\n- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it\n- `@dependabot cancel merge` will cancel a previously requested merge and block automerging\n- `@dependabot reopen` will reopen this PR if it is closed\n- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)\n\n\n\u003c/details\u003e","html_url":"https://github.com/instancio/instancio/pull/1363","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/instancio%2Finstancio/issues/1363","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/1363/packages"}},{"old_version":"7.0.0","new_version":"7.1.0","update_type":"minor","path":null,"pr_created_at":"2024-04-26T11:21:29.000Z","version_change":"7.0.0 → 7.1.0","issue":{"uuid":"2265574501","node_id":"PR_kwDOBsaZJs5t1N06","number":149,"state":"closed","title":"Bump pmdVersion from 7.0.0 to 7.1.0","user":"dependabot[bot]","labels":["dependencies","java"],"assignees":[],"locked":false,"comments_count":5,"pull_request":true,"closed_at":"2025-06-02T07:17:41.000Z","author_association":"CONTRIBUTOR","state_reason":null,"created_at":"2024-04-26T11:21:29.000Z","updated_at":"2025-06-08T01:53:20.873Z","time_to_close":34718172,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","packages":[{"name":"pmdVersion","old_version":"7.0.0","new_version":"7.1.0","repository_url":null}],"path":null,"ecosystem":"maven"},"body":"Bumps `pmdVersion` from 7.0.0 to 7.1.0.\nUpdates `net.sourceforge.pmd:pmd-core` from 7.0.0 to 7.1.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pmd/pmd/releases\"\u003enet.sourceforge.pmd:pmd-core's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ePMD 7.1.0 (26-April-2024)\u003c/h2\u003e\n\u003ch2\u003e26-April-2024 - 7.1.0\u003c/h2\u003e\n\u003cp\u003eThe PMD team is pleased to announce PMD 7.1.0.\u003c/p\u003e\n\u003cp\u003eThis is a minor release.\u003c/p\u003e\n\u003ch3\u003eTable Of Contents\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-and-noteworthy\"\u003e🚀 New and noteworthy\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#more-robust-cpd-reports\"\u003eMore robust CPD reports\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-rules\"\u003e✨ New Rules\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#rule-changes\"\u003e🌟 Rule Changes\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#fixed-issues\"\u003e🐛 Fixed Issues\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#api-changes\"\u003e🚨 API Changes\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#deprecated-methods\"\u003eDeprecated methods\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#external-contributions\"\u003e✨ External Contributions\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#stats\"\u003e📈 Stats\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🚀 New and noteworthy\u003c/h3\u003e\n\u003ch4\u003eMore robust CPD reports\u003c/h4\u003e\n\u003cp\u003eThere were a number of circumstances, specially around (but not limited to) literal sequences, were CPD would\nreport duplicate overlapping or partially overlapping matches. These have now been fixed, and CPD will report\nonly the longest non-overlapping duplicate.\u003c/p\u003e\n\u003cp\u003eThese improvements apply to all supported languages, irrespective of supported flags.\u003c/p\u003e\n\u003ch4\u003e✨ New Rules\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eThe new Java rule \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.1.0/pmd_rules_java_bestpractices.html#unnecessaryvarargsarraycreation\"\u003e\u003ccode\u003eUnnecessaryVarargsArrayCreation\u003c/code\u003e\u003c/a\u003e reports explicit array creation\nwhen a varargs is expected. This is more heavy to read and could be simplified.\u003c/li\u003e\n\u003cli\u003eThe new Java rule \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.1.0/pmd_rules_java_errorprone.html#confusingargumenttovarargsmethod\"\u003e\u003ccode\u003eConfusingArgumentToVarargsMethod\u003c/code\u003e\u003c/a\u003e reports some confusing situations\nwhere a varargs method is called with an inexact argument type. These may end up in a mismatch between the expected\nparameter type and the actual value.\u003c/li\u003e\n\u003cli\u003eThe new Java rule \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.1.0/pmd_rules_java_codestyle.html#lambdacanbemethodreference\"\u003e\u003ccode\u003eLambdaCanBeMethodReference\u003c/code\u003e\u003c/a\u003e reports lambda expressions that can be replaced\nwith a method reference. Please read the documentation of the rule for more info. This rule is now part of the Quickstart\nruleset.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003e🌟 Rule Changes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.1.0/pmd_rules_java_bestpractices.html#junittestsshouldincludeassert\"\u003e\u003ccode\u003eJUnitTestsShouldIncludeAssert\u003c/code\u003e\u003c/a\u003e and \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.1.0/pmd_rules_java_bestpractices.html#junittestcontainstoomanyasserts\"\u003e\u003ccode\u003eJUnitTestContainsTooManyAsserts\u003c/code\u003e\u003c/a\u003e\nhave a new property named \u003ccode\u003eextraAssertMethodNames\u003c/code\u003e. With this property, you can configure which additional static\nmethods should be considered as valid verification methods. This allows to use custom mocking or assertion libraries.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🐛 Fixed Issues\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ecore\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/494\"\u003e#494\u003c/a\u003e: [core] Adopt JApiCmp to enforce control over API changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/4942\"\u003e#4942\u003c/a\u003e: [core] CPD: \u003ccode\u003e--skip-duplicate-files\u003c/code\u003e has no effect (7.0.0 regression)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/pull/4959\"\u003e#4959\u003c/a\u003e: [core] Upgrade saxon to 12.4\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003ecli\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/592e80d4a9e01b4294d10bcad8ead80291c6ffa7\"\u003e\u003ccode\u003e592e80d\u003c/code\u003e\u003c/a\u003e [release] prepare release pmd_releases/7.1.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/7d0dfa0b13e96dbbe678b067853631429c61f02e\"\u003e\u003ccode\u003e7d0dfa0\u003c/code\u003e\u003c/a\u003e Prepare pmd release 7.1.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/31585acc6f5f8aa396d3f1365df348da8e3ca076\"\u003e\u003ccode\u003e31585ac\u003c/code\u003e\u003c/a\u003e Bump build-tools from 24-SNAPSHOT to 24\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/d0870f3aa3ddf8508bb172532bfa4a94a136a661\"\u003e\u003ccode\u003ed0870f3\u003c/code\u003e\u003c/a\u003e [java] New rule ConfusingArgumentToVarargsMethod (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/4971\"\u003e#4971\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/04206ecd80dca03495c85c196365579c299732af\"\u003e\u003ccode\u003e04206ec\u003c/code\u003e\u003c/a\u003e Revert \u0026quot;[ci] Disable auto-gen-config for regression tests\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/f5d47ac36e7975919bfafdd0c386f81da2038591\"\u003e\u003ccode\u003ef5d47ac\u003c/code\u003e\u003c/a\u003e [ci] Disable auto-gen-config for regression tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/102ba1e9625400912548e3ab3a19c765bb2d6727\"\u003e\u003ccode\u003e102ba1e\u003c/code\u003e\u003c/a\u003e [ci] Disable auto-gen-config for regression tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/a154f783bddf8f76ab9cd858eab0701c2e9ce1f8\"\u003e\u003ccode\u003ea154f78\u003c/code\u003e\u003c/a\u003e [doc] Update all-contributors\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/16df3dd4469eae105c104deebfac951894f64e03\"\u003e\u003ccode\u003e16df3dd\u003c/code\u003e\u003c/a\u003e [core] Make CPD report maximal, non-repeating and non-overlapping duplicates ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/202943e0cfc2e5dc4f3b24778460693c5aeb9443\"\u003e\u003ccode\u003e202943e\u003c/code\u003e\u003c/a\u003e [java] Fix \u003ca href=\"https://redirect.github.com/pmd/pmd/issues/4948\"\u003e#4948\u003c/a\u003e - ImplicitSwitchFallthrough false positive with nested switc...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pmd/pmd/compare/pmd_releases/7.0.0...pmd_releases/7.1.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `net.sourceforge.pmd:pmd-java` from 7.0.0 to 7.1.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pmd/pmd/releases\"\u003enet.sourceforge.pmd:pmd-java's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ePMD 7.1.0 (26-April-2024)\u003c/h2\u003e\n\u003ch2\u003e26-April-2024 - 7.1.0\u003c/h2\u003e\n\u003cp\u003eThe PMD team is pleased to announce PMD 7.1.0.\u003c/p\u003e\n\u003cp\u003eThis is a minor release.\u003c/p\u003e\n\u003ch3\u003eTable Of Contents\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-and-noteworthy\"\u003e🚀 New and noteworthy\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#more-robust-cpd-reports\"\u003eMore robust CPD reports\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-rules\"\u003e✨ New Rules\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#rule-changes\"\u003e🌟 Rule Changes\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#fixed-issues\"\u003e🐛 Fixed Issues\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#api-changes\"\u003e🚨 API Changes\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#deprecated-methods\"\u003eDeprecated methods\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#external-contributions\"\u003e✨ External Contributions\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#stats\"\u003e📈 Stats\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🚀 New and noteworthy\u003c/h3\u003e\n\u003ch4\u003eMore robust CPD reports\u003c/h4\u003e\n\u003cp\u003eThere were a number of circumstances, specially around (but not limited to) literal sequences, were CPD would\nreport duplicate overlapping or partially overlapping matches. These have now been fixed, and CPD will report\nonly the longest non-overlapping duplicate.\u003c/p\u003e\n\u003cp\u003eThese improvements apply to all supported languages, irrespective of supported flags.\u003c/p\u003e\n\u003ch4\u003e✨ New Rules\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eThe new Java rule \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.1.0/pmd_rules_java_bestpractices.html#unnecessaryvarargsarraycreation\"\u003e\u003ccode\u003eUnnecessaryVarargsArrayCreation\u003c/code\u003e\u003c/a\u003e reports explicit array creation\nwhen a varargs is expected. This is more heavy to read and could be simplified.\u003c/li\u003e\n\u003cli\u003eThe new Java rule \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.1.0/pmd_rules_java_errorprone.html#confusingargumenttovarargsmethod\"\u003e\u003ccode\u003eConfusingArgumentToVarargsMethod\u003c/code\u003e\u003c/a\u003e reports some confusing situations\nwhere a varargs method is called with an inexact argument type. These may end up in a mismatch between the expected\nparameter type and the actual value.\u003c/li\u003e\n\u003cli\u003eThe new Java rule \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.1.0/pmd_rules_java_codestyle.html#lambdacanbemethodreference\"\u003e\u003ccode\u003eLambdaCanBeMethodReference\u003c/code\u003e\u003c/a\u003e reports lambda expressions that can be replaced\nwith a method reference. Please read the documentation of the rule for more info. This rule is now part of the Quickstart\nruleset.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003e🌟 Rule Changes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.1.0/pmd_rules_java_bestpractices.html#junittestsshouldincludeassert\"\u003e\u003ccode\u003eJUnitTestsShouldIncludeAssert\u003c/code\u003e\u003c/a\u003e and \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.1.0/pmd_rules_java_bestpractices.html#junittestcontainstoomanyasserts\"\u003e\u003ccode\u003eJUnitTestContainsTooManyAsserts\u003c/code\u003e\u003c/a\u003e\nhave a new property named \u003ccode\u003eextraAssertMethodNames\u003c/code\u003e. With this property, you can configure which additional static\nmethods should be considered as valid verification methods. This allows to use custom mocking or assertion libraries.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🐛 Fixed Issues\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ecore\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/494\"\u003e#494\u003c/a\u003e: [core] Adopt JApiCmp to enforce control over API changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/4942\"\u003e#4942\u003c/a\u003e: [core] CPD: \u003ccode\u003e--skip-duplicate-files\u003c/code\u003e has no effect (7.0.0 regression)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/pull/4959\"\u003e#4959\u003c/a\u003e: [core] Upgrade saxon to 12.4\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003ecli\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/592e80d4a9e01b4294d10bcad8ead80291c6ffa7\"\u003e\u003ccode\u003e592e80d\u003c/code\u003e\u003c/a\u003e [release] prepare release pmd_releases/7.1.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/7d0dfa0b13e96dbbe678b067853631429c61f02e\"\u003e\u003ccode\u003e7d0dfa0\u003c/code\u003e\u003c/a\u003e Prepare pmd release 7.1.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/31585acc6f5f8aa396d3f1365df348da8e3ca076\"\u003e\u003ccode\u003e31585ac\u003c/code\u003e\u003c/a\u003e Bump build-tools from 24-SNAPSHOT to 24\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/d0870f3aa3ddf8508bb172532bfa4a94a136a661\"\u003e\u003ccode\u003ed0870f3\u003c/code\u003e\u003c/a\u003e [java] New rule ConfusingArgumentToVarargsMethod (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/4971\"\u003e#4971\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/04206ecd80dca03495c85c196365579c299732af\"\u003e\u003ccode\u003e04206ec\u003c/code\u003e\u003c/a\u003e Revert \u0026quot;[ci] Disable auto-gen-config for regression tests\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/f5d47ac36e7975919bfafdd0c386f81da2038591\"\u003e\u003ccode\u003ef5d47ac\u003c/code\u003e\u003c/a\u003e [ci] Disable auto-gen-config for regression tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/102ba1e9625400912548e3ab3a19c765bb2d6727\"\u003e\u003ccode\u003e102ba1e\u003c/code\u003e\u003c/a\u003e [ci] Disable auto-gen-config for regression tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/a154f783bddf8f76ab9cd858eab0701c2e9ce1f8\"\u003e\u003ccode\u003ea154f78\u003c/code\u003e\u003c/a\u003e [doc] Update all-contributors\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/16df3dd4469eae105c104deebfac951894f64e03\"\u003e\u003ccode\u003e16df3dd\u003c/code\u003e\u003c/a\u003e [core] Make CPD report maximal, non-repeating and non-overlapping duplicates ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/202943e0cfc2e5dc4f3b24778460693c5aeb9443\"\u003e\u003ccode\u003e202943e\u003c/code\u003e\u003c/a\u003e [java] Fix \u003ca href=\"https://redirect.github.com/pmd/pmd/issues/4948\"\u003e#4948\u003c/a\u003e - ImplicitSwitchFallthrough false positive with nested switc...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pmd/pmd/compare/pmd_releases/7.0.0...pmd_releases/7.1.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `net.sourceforge.pmd:pmd-javascript` from 7.0.0 to 7.1.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pmd/pmd/releases\"\u003enet.sourceforge.pmd:pmd-javascript's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ePMD 7.1.0 (26-April-2024)\u003c/h2\u003e\n\u003ch2\u003e26-April-2024 - 7.1.0\u003c/h2\u003e\n\u003cp\u003eThe PMD team is pleased to announce PMD 7.1.0.\u003c/p\u003e\n\u003cp\u003eThis is a minor release.\u003c/p\u003e\n\u003ch3\u003eTable Of Contents\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-and-noteworthy\"\u003e🚀 New and noteworthy\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#more-robust-cpd-reports\"\u003eMore robust CPD reports\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-rules\"\u003e✨ New Rules\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#rule-changes\"\u003e🌟 Rule Changes\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#fixed-issues\"\u003e🐛 Fixed Issues\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#api-changes\"\u003e🚨 API Changes\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#deprecated-methods\"\u003eDeprecated methods\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#external-contributions\"\u003e✨ External Contributions\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#stats\"\u003e📈 Stats\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🚀 New and noteworthy\u003c/h3\u003e\n\u003ch4\u003eMore robust CPD reports\u003c/h4\u003e\n\u003cp\u003eThere were a number of circumstances, specially around (but not limited to) literal sequences, were CPD would\nreport duplicate overlapping or partially overlapping matches. These have now been fixed, and CPD will report\nonly the longest non-overlapping duplicate.\u003c/p\u003e\n\u003cp\u003eThese improvements apply to all supported languages, irrespective of supported flags.\u003c/p\u003e\n\u003ch4\u003e✨ New Rules\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eThe new Java rule \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.1.0/pmd_rules_java_bestpractices.html#unnecessaryvarargsarraycreation\"\u003e\u003ccode\u003eUnnecessaryVarargsArrayCreation\u003c/code\u003e\u003c/a\u003e reports explicit array creation\nwhen a varargs is expected. This is more heavy to read and could be simplified.\u003c/li\u003e\n\u003cli\u003eThe new Java rule \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.1.0/pmd_rules_java_errorprone.html#confusingargumenttovarargsmethod\"\u003e\u003ccode\u003eConfusingArgumentToVarargsMethod\u003c/code\u003e\u003c/a\u003e reports some confusing situations\nwhere a varargs method is called with an inexact argument type. These may end up in a mismatch between the expected\nparameter type and the actual value.\u003c/li\u003e\n\u003cli\u003eThe new Java rule \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.1.0/pmd_rules_java_codestyle.html#lambdacanbemethodreference\"\u003e\u003ccode\u003eLambdaCanBeMethodReference\u003c/code\u003e\u003c/a\u003e reports lambda expressions that can be replaced\nwith a method reference. Please read the documentation of the rule for more info. This rule is now part of the Quickstart\nruleset.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003e🌟 Rule Changes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.1.0/pmd_rules_java_bestpractices.html#junittestsshouldincludeassert\"\u003e\u003ccode\u003eJUnitTestsShouldIncludeAssert\u003c/code\u003e\u003c/a\u003e and \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.1.0/pmd_rules_java_bestpractices.html#junittestcontainstoomanyasserts\"\u003e\u003ccode\u003eJUnitTestContainsTooManyAsserts\u003c/code\u003e\u003c/a\u003e\nhave a new property named \u003ccode\u003eextraAssertMethodNames\u003c/code\u003e. With this property, you can configure which additional static\nmethods should be considered as valid verification methods. This allows to use custom mocking or assertion libraries.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🐛 Fixed Issues\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ecore\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/494\"\u003e#494\u003c/a\u003e: [core] Adopt JApiCmp to enforce control over API changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/4942\"\u003e#4942\u003c/a\u003e: [core] CPD: \u003ccode\u003e--skip-duplicate-files\u003c/code\u003e has no effect (7.0.0 regression)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/pull/4959\"\u003e#4959\u003c/a\u003e: [core] Upgrade saxon to 12.4\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003ecli\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/592e80d4a9e01b4294d10bcad8ead80291c6ffa7\"\u003e\u003ccode\u003e592e80d\u003c/code\u003e\u003c/a\u003e [release] prepare release pmd_releases/7.1.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/7d0dfa0b13e96dbbe678b067853631429c61f02e\"\u003e\u003ccode\u003e7d0dfa0\u003c/code\u003e\u003c/a\u003e Prepare pmd release 7.1.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/31585acc6f5f8aa396d3f1365df348da8e3ca076\"\u003e\u003ccode\u003e31585ac\u003c/code\u003e\u003c/a\u003e Bump build-tools from 24-SNAPSHOT to 24\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/d0870f3aa3ddf8508bb172532bfa4a94a136a661\"\u003e\u003ccode\u003ed0870f3\u003c/code\u003e\u003c/a\u003e [java] New rule ConfusingArgumentToVarargsMethod (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/4971\"\u003e#4971\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/04206ecd80dca03495c85c196365579c299732af\"\u003e\u003ccode\u003e04206ec\u003c/code\u003e\u003c/a\u003e Revert \u0026quot;[ci] Disable auto-gen-config for regression tests\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/f5d47ac36e7975919bfafdd0c386f81da2038591\"\u003e\u003ccode\u003ef5d47ac\u003c/code\u003e\u003c/a\u003e [ci] Disable auto-gen-config for regression tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/102ba1e9625400912548e3ab3a19c765bb2d6727\"\u003e\u003ccode\u003e102ba1e\u003c/code\u003e\u003c/a\u003e [ci] Disable auto-gen-config for regression tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/a154f783bddf8f76ab9cd858eab0701c2e9ce1f8\"\u003e\u003ccode\u003ea154f78\u003c/code\u003e\u003c/a\u003e [doc] Update all-contributors\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/16df3dd4469eae105c104deebfac951894f64e03\"\u003e\u003ccode\u003e16df3dd\u003c/code\u003e\u003c/a\u003e [core] Make CPD report maximal, non-repeating and non-overlapping duplicates ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/202943e0cfc2e5dc4f3b24778460693c5aeb9443\"\u003e\u003ccode\u003e202943e\u003c/code\u003e\u003c/a\u003e [java] Fix \u003ca href=\"https://redirect.github.com/pmd/pmd/issues/4948\"\u003e#4948\u003c/a\u003e - ImplicitSwitchFallthrough false positive with nested switc...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pmd/pmd/compare/pmd_releases/7.0.0...pmd_releases/7.1.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `net.sourceforge.pmd:pmd-jsp` from 7.0.0 to 7.1.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pmd/pmd/releases\"\u003enet.sourceforge.pmd:pmd-jsp's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ePMD 7.1.0 (26-April-2024)\u003c/h2\u003e\n\u003ch2\u003e26-April-2024 - 7.1.0\u003c/h2\u003e\n\u003cp\u003eThe PMD team is pleased to announce PMD 7.1.0.\u003c/p\u003e\n\u003cp\u003eThis is a minor release.\u003c/p\u003e\n\u003ch3\u003eTable Of Contents\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-and-noteworthy\"\u003e🚀 New and noteworthy\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#more-robust-cpd-reports\"\u003eMore robust CPD reports\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#new-rules\"\u003e✨ New Rules\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#rule-changes\"\u003e🌟 Rule Changes\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#fixed-issues\"\u003e🐛 Fixed Issues\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#api-changes\"\u003e🚨 API Changes\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#deprecated-methods\"\u003eDeprecated methods\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#external-contributions\"\u003e✨ External Contributions\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/blob/HEAD/#stats\"\u003e📈 Stats\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🚀 New and noteworthy\u003c/h3\u003e\n\u003ch4\u003eMore robust CPD reports\u003c/h4\u003e\n\u003cp\u003eThere were a number of circumstances, specially around (but not limited to) literal sequences, were CPD would\nreport duplicate overlapping or partially overlapping matches. These have now been fixed, and CPD will report\nonly the longest non-overlapping duplicate.\u003c/p\u003e\n\u003cp\u003eThese improvements apply to all supported languages, irrespective of supported flags.\u003c/p\u003e\n\u003ch4\u003e✨ New Rules\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eThe new Java rule \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.1.0/pmd_rules_java_bestpractices.html#unnecessaryvarargsarraycreation\"\u003e\u003ccode\u003eUnnecessaryVarargsArrayCreation\u003c/code\u003e\u003c/a\u003e reports explicit array creation\nwhen a varargs is expected. This is more heavy to read and could be simplified.\u003c/li\u003e\n\u003cli\u003eThe new Java rule \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.1.0/pmd_rules_java_errorprone.html#confusingargumenttovarargsmethod\"\u003e\u003ccode\u003eConfusingArgumentToVarargsMethod\u003c/code\u003e\u003c/a\u003e reports some confusing situations\nwhere a varargs method is called with an inexact argument type. These may end up in a mismatch between the expected\nparameter type and the actual value.\u003c/li\u003e\n\u003cli\u003eThe new Java rule \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.1.0/pmd_rules_java_codestyle.html#lambdacanbemethodreference\"\u003e\u003ccode\u003eLambdaCanBeMethodReference\u003c/code\u003e\u003c/a\u003e reports lambda expressions that can be replaced\nwith a method reference. Please read the documentation of the rule for more info. This rule is now part of the Quickstart\nruleset.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003e🌟 Rule Changes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.1.0/pmd_rules_java_bestpractices.html#junittestsshouldincludeassert\"\u003e\u003ccode\u003eJUnitTestsShouldIncludeAssert\u003c/code\u003e\u003c/a\u003e and \u003ca href=\"https://docs.pmd-code.org/pmd-doc-7.1.0/pmd_rules_java_bestpractices.html#junittestcontainstoomanyasserts\"\u003e\u003ccode\u003eJUnitTestContainsTooManyAsserts\u003c/code\u003e\u003c/a\u003e\nhave a new property named \u003ccode\u003eextraAssertMethodNames\u003c/code\u003e. With this property, you can configure which additional static\nmethods should be considered as valid verification methods. This allows to use custom mocking or assertion libraries.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🐛 Fixed Issues\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ecore\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/494\"\u003e#494\u003c/a\u003e: [core] Adopt JApiCmp to enforce control over API changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/4942\"\u003e#4942\u003c/a\u003e: [core] CPD: \u003ccode\u003e--skip-duplicate-files\u003c/code\u003e has no effect (7.0.0 regression)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pmd/pmd/pull/4959\"\u003e#4959\u003c/a\u003e: [core] Upgrade saxon to 12.4\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003ecli\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/592e80d4a9e01b4294d10bcad8ead80291c6ffa7\"\u003e\u003ccode\u003e592e80d\u003c/code\u003e\u003c/a\u003e [release] prepare release pmd_releases/7.1.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/7d0dfa0b13e96dbbe678b067853631429c61f02e\"\u003e\u003ccode\u003e7d0dfa0\u003c/code\u003e\u003c/a\u003e Prepare pmd release 7.1.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/31585acc6f5f8aa396d3f1365df348da8e3ca076\"\u003e\u003ccode\u003e31585ac\u003c/code\u003e\u003c/a\u003e Bump build-tools from 24-SNAPSHOT to 24\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/d0870f3aa3ddf8508bb172532bfa4a94a136a661\"\u003e\u003ccode\u003ed0870f3\u003c/code\u003e\u003c/a\u003e [java] New rule ConfusingArgumentToVarargsMethod (\u003ca href=\"https://redirect.github.com/pmd/pmd/issues/4971\"\u003e#4971\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/04206ecd80dca03495c85c196365579c299732af\"\u003e\u003ccode\u003e04206ec\u003c/code\u003e\u003c/a\u003e Revert \u0026quot;[ci] Disable auto-gen-config for regression tests\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/f5d47ac36e7975919bfafdd0c386f81da2038591\"\u003e\u003ccode\u003ef5d47ac\u003c/code\u003e\u003c/a\u003e [ci] Disable auto-gen-config for regression tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/102ba1e9625400912548e3ab3a19c765bb2d6727\"\u003e\u003ccode\u003e102ba1e\u003c/code\u003e\u003c/a\u003e [ci] Disable auto-gen-config for regression tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/a154f783bddf8f76ab9cd858eab0701c2e9ce1f8\"\u003e\u003ccode\u003ea154f78\u003c/code\u003e\u003c/a\u003e [doc] Update all-contributors\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/16df3dd4469eae105c104deebfac951894f64e03\"\u003e\u003ccode\u003e16df3dd\u003c/code\u003e\u003c/a\u003e [core] Make CPD report maximal, non-repeating and non-overlapping duplicates ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmd/pmd/commit/202943e0cfc2e5dc4f3b24778460693c5aeb9443\"\u003e\u003ccode\u003e202943e\u003c/code\u003e\u003c/a\u003e [java] Fix \u003ca href=\"https://redirect.github.com/pmd/pmd/issues/4948\"\u003e#4948\u003c/a\u003e - ImplicitSwitchFallthrough false positive with nested switc...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pmd/pmd/compare/pmd_releases/7.0.0...pmd_releases/7.1.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot merge` will merge this PR after your CI passes on it\n- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it\n- `@dependabot cancel merge` will cancel a previously requested merge and block automerging\n- `@dependabot reopen` will reopen this PR if it is closed\n- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)\n\n\n\u003c/details\u003e","html_url":"https://github.com/apache/maven-pmd-plugin/pull/149","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/apache%2Fmaven-pmd-plugin/issues/149","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/149/packages"}}]}