Skip to content

Conversation

@dependabot
Copy link
Contributor

@dependabot dependabot bot commented on behalf of github Oct 31, 2025

Bumps pmd.api.version from 7.17.0 to 7.18.0.
Updates net.sourceforge.pmd:pmd-core from 7.17.0 to 7.18.0

Release notes

Sourced from net.sourceforge.pmd:pmd-core's releases.

PMD 7.18.0 (31-October-2025)

31-October-2025 - 7.18.0

The PMD team is pleased to announce PMD 7.18.0.

This is a minor release.

Table Of Contents

🚀️ New and noteworthy

Build Requirement is Java 17

From now on, Java 17 or newer is required to build PMD. PMD itself still remains compatible with Java 8, so that it still can be used in a pure Java 8 environment. This allows us to use the latest checkstyle version during the build.

🌟️ New and Changed Rules

New Rules

  • The new Java rule IdenticalConditionalBranches finds conditional statements that do the same thing when the condition is true and false. This is either incorrect or redundant.
  • The new Java rule LabeledStatement finds labeled statements in code. Labels make control flow difficult to understand and should be avoided. By default, the rule allows labeled loops (do, while, for). But it has a property to flag also those labeled loops.
  • The new Java rule UnusedLabel finds unused labels which are unnecessary and only make the code hard to read. This new rule will be part of the quickstart ruleset.

Changed Rules

  • ConfusingTernary has a new property nullCheckBranch to control, whether null-checks should be allowed (the default case) or should lead to a violation.
  • AvoidCatchingGenericException is now configurable with the new property typesThatShouldNotBeCaught.
    ⚠️ The rule has also been moved from category "Design" to category "Error Prone". If you are currently bulk-adding all the rules from the "Design" category into your custom ruleset, then you need to add the rule explicitly again (otherwise it won't be included anymore):

... (truncated)

Commits
  • c37a323 [release] prepare release pmd_releases/7.18.0
  • 825f679 Prepare pmd release 7.18.0
  • f59b4d5 Update SPONSORS.md
  • aed4812 chore(deps): bump io.github.apex-dev-tools:apex-ls_2.13 from 5.10.0 to 6.0.1 ...
  • 7fdf466 Update contributors
  • 46f8b5f [doc] Update release notes
  • db8d305 [java] Fix #6131: Correct enum values for ModifierOrder (#6185)
  • e4f94a6 [java] Fix #6131: Correct enum values for ModifierOrder
  • d679f5d [java] InefficientEmptyStringCheck should include String#strip (#6172)
  • c04e428 [doc] Update release notes (#6172)
  • Additional commits viewable in compare view

Updates net.sourceforge.pmd:pmd-java from 7.17.0 to 7.18.0

Release notes

Sourced from net.sourceforge.pmd:pmd-java's releases.

PMD 7.18.0 (31-October-2025)

31-October-2025 - 7.18.0

The PMD team is pleased to announce PMD 7.18.0.

This is a minor release.

Table Of Contents

🚀️ New and noteworthy

Build Requirement is Java 17

From now on, Java 17 or newer is required to build PMD. PMD itself still remains compatible with Java 8, so that it still can be used in a pure Java 8 environment. This allows us to use the latest checkstyle version during the build.

🌟️ New and Changed Rules

New Rules

  • The new Java rule IdenticalConditionalBranches finds conditional statements that do the same thing when the condition is true and false. This is either incorrect or redundant.
  • The new Java rule LabeledStatement finds labeled statements in code. Labels make control flow difficult to understand and should be avoided. By default, the rule allows labeled loops (do, while, for). But it has a property to flag also those labeled loops.
  • The new Java rule UnusedLabel finds unused labels which are unnecessary and only make the code hard to read. This new rule will be part of the quickstart ruleset.

Changed Rules

  • ConfusingTernary has a new property nullCheckBranch to control, whether null-checks should be allowed (the default case) or should lead to a violation.
  • AvoidCatchingGenericException is now configurable with the new property typesThatShouldNotBeCaught.
    ⚠️ The rule has also been moved from category "Design" to category "Error Prone". If you are currently bulk-adding all the rules from the "Design" category into your custom ruleset, then you need to add the rule explicitly again (otherwise it won't be included anymore):

... (truncated)

Commits
  • c37a323 [release] prepare release pmd_releases/7.18.0
  • 825f679 Prepare pmd release 7.18.0
  • f59b4d5 Update SPONSORS.md
  • aed4812 chore(deps): bump io.github.apex-dev-tools:apex-ls_2.13 from 5.10.0 to 6.0.1 ...
  • 7fdf466 Update contributors
  • 46f8b5f [doc] Update release notes
  • db8d305 [java] Fix #6131: Correct enum values for ModifierOrder (#6185)
  • e4f94a6 [java] Fix #6131: Correct enum values for ModifierOrder
  • d679f5d [java] InefficientEmptyStringCheck should include String#strip (#6172)
  • c04e428 [doc] Update release notes (#6172)
  • Additional commits viewable in compare view

Dependabot 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.


Dependabot commands and options

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot merge will merge this PR after your CI passes on it
  • @dependabot squash and merge will squash and merge this PR after your CI passes on it
  • @dependabot cancel merge will cancel a previously requested merge and block automerging
  • @dependabot reopen will reopen this PR if it is closed
  • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
  • @dependabot show <dependency name> ignore conditions will show all of the ignore conditions of the specified dependency
  • @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)
  • @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)
  • @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)

Bumps `pmd.api.version` from 7.17.0 to 7.18.0.

Updates `net.sourceforge.pmd:pmd-core` from 7.17.0 to 7.18.0
- [Release notes](https://github.com/pmd/pmd/releases)
- [Changelog](https://github.com/pmd/pmd/blob/main/docs/render_release_notes.rb)
- [Commits](pmd/pmd@pmd_releases/7.17.0...pmd_releases/7.18.0)

Updates `net.sourceforge.pmd:pmd-java` from 7.17.0 to 7.18.0
- [Release notes](https://github.com/pmd/pmd/releases)
- [Changelog](https://github.com/pmd/pmd/blob/main/docs/render_release_notes.rb)
- [Commits](pmd/pmd@pmd_releases/7.17.0...pmd_releases/7.18.0)

---
updated-dependencies:
- dependency-name: net.sourceforge.pmd:pmd-core
  dependency-version: 7.18.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
- dependency-name: net.sourceforge.pmd:pmd-java
  dependency-version: 7.18.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>
@dependabot dependabot bot added dependencies Update of dependencies java Pull requests that update Maven Java dependencies labels Oct 31, 2025
@github-actions
Copy link

☀️   Quality Monitor

Tests

   JUnit   Unit Tests: 100% successful (1308 passed, 2 skipped)
   ⛔   Architecture Tests: 100% successful (12 passed)

Code Coverage

   〰️   Line Coverage: 93% (448 missed lines)
   ➰   Branch Coverage: 87% (298 missed branches)

Style

   CheckStyle   CheckStyle: No warnings
   PMD   PMD: No warnings
   ☕   Java Compiler: No warnings

Bugs

   SpotBugs   SpotBugs: No bugs
   🐛   Error Prone: No bugs

API Problems

   🚫   Revapi: No warnings

Vulnerabilities

   🛡️   OWASP Dependency Check: 1 vulnerability (normal: 1)

Software Metrics

   🌀   Cyclomatic Complexity: 2417 (total)
   💭   Cognitive Complexity: 1314 (total)
   ➿   N-Path Complexity: 3484 (total)
   📏   Lines of Code: 26388 (total)
   📝   Non Commenting Source Statements: 9482 (total)
   🔗   Class Cohesion: 100.00% (maximum)
   ⚖️   Weight of Class: 100.00% (maximum)

🚦 Quality Gates

Overall Status: ✅ SUCCESS

✅ Passed Gates

  • ✅ Tests Success Rate: 100.00 >= 100.00
  • ✅ Line Coverage: 93.00 >= 80.00
  • ✅ Branch Coverage: 87.00 >= 80.00
  • ✅ Potential Bugs: 0.00 <= 0.00
  • ✅ Style Violations: 0.00 <= 0.00

Created by Quality Monitor v3.5.0 (#e4cc310). More details are shown in the GitHub Checks Result.

@uhafner uhafner merged commit 9b8ce0b into main Nov 5, 2025
37 checks passed
@uhafner uhafner deleted the dependabot/maven/pmd.api.version-7.18.0 branch November 5, 2025 11:50
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Update of dependencies java Pull requests that update Maven Java dependencies

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants