Skip to content

Bump dependency net.sourceforge.pmd:pmd-javascript to v7.25.0#1881

Merged
uhafner merged 1 commit into
mainfrom
renovate/pmd.version
May 29, 2026
Merged

Bump dependency net.sourceforge.pmd:pmd-javascript to v7.25.0#1881
uhafner merged 1 commit into
mainfrom
renovate/pmd.version

Conversation

@renovate
Copy link
Copy Markdown
Contributor

@renovate renovate Bot commented May 29, 2026

This PR contains the following updates:

Package Change Age Confidence
net.sourceforge.pmd:pmd-javascript (source) 7.24.07.25.0 age confidence

Release Notes

pmd/pmd (net.sourceforge.pmd:pmd-javascript)

v7.25.0: PMD 7.25.0 (29-May-2026)

29-May-2026 - 7.25.0

The PMD team is pleased to announce PMD 7.25.0.

This is a minor release.

Table Of Contents
🚀️ New and noteworthy
Updated ANTLR library to 4.13.2

We have updated the ANTLR library (parser generator) from 4.9.3 to the latest version 4.13.2,
in order to be able to use the latest version of Apex parser library.

This is an incompatible update: In case you use custom language modules based on ANTLR, you
need to make sure to regenerate all of your lexers and parsers with the new ANTLR version.

For the ANTLR based language modules, that PMD ships (kotlin and swift and various CPD modules),
this is already done.

🌟️ New and Changed Rules
New Rules
  • The new Java rule JUnitJupiterTestNoPrivateModifier find JUnit test classes and
    methods that are private. Test classes, test methods, and lifecycle methods are not required to be public,
    but they must not be private. Otherwise, they won’t be found by the test framework.
  • The new Java rule UnnecessaryBlock reports blocks that are unnecessary as
    they don't introduce a new scope. This rule helps simplify code structure by identifying and flagging
    redundant blocks that can make code harder to read and may be misleading.
  • The new Java rule VariableDeclarationUsageDistance flags local variables that are declared
    far from their usage, which can make code harder to read. The rule has a property maxDistance that allows to
    configure the maximum allowed distance between declaration and usage.
  • The new Java rule AssertStatementInTest detects usages of assert statement in tests.
    These should be replaced by framework assertion methods such as assertEquals.
    Such methods provide better error messages and make test behave correctly when running without -ea.
Changed Rules
Renamed rules and properties
  • One rule and one property have been renamed to reflect the fact that they work for both JUnit 5 and 6:

The old names still work but are deprecated.

🐛️ Fixed Issues
  • core
    • #​4972: [core] Update ANTLR to 4.13.2
    • #​6308: [core] CPD Markdown format: Add syntax highlighting
  • doc
    • #​6708: [doc] Update minimal Java version for building PMD in documentation
  • java
    • #​1102: [java] Improve consistency of utility class detection across rules
    • #​5721: [java] StackOverflowError in 7.17.0 with nested wildcard generics
    • #​5746: [java] Separate test sources and resources
    • #​6688: [java] LocalVariableCouldBeFinalRule API changed
    • #​6704: [java] Rename rules and properties with JUnit5 in the name
  • java-bestpractices
    • #​3212: [java] Enhance UseStandardCharsets to flag some constructors of IO-related classes
    • #​3777: [java] New rule: AssertStatementInTest
    • #​5477: [java] JUnit5TestShouldBePackagePrivate is not applied when @​Test method is only present in parent class
    • #​6606: [java] UnusedPrivateField: False positive on JUnit Jupiter @​FieldSource
    • #​6681: [java] UnitTestShouldIncludeAssert: False positive with JUnitSoftAssertions Rule (JUnit 4)
    • #​6710: [java] UseStandardCharsets: False negative when using lowercase standard charset names
    • #​6719: [java] UseStandardCharsets: False negative with Java 22+ and UTF-32 charsets
  • java-codestyle
    • #​2801: [java] OnlyOneReturn should have a property to allow early exits (guard clauses)
    • #​4350: [java] ClassNamingConventions: testClassPattern not applied to class that inherits all its @​Test methods
    • #​6427: [java] UnnecessaryCast: False positive for long cast before bit-shift operations on int/byte
    • #​6602: [java] LocalVariableCouldBeFinal: False negative when multiple variables are declared at once
    • #​6622: [java] New rule: UnnecessaryBlock
    • #​6640: [java] New rule: VariableDeclarationUsageDistance
  • java-design
    • #​559: [java] UseUtilityClass: False negative for constant only classes
  • java-errorprone
    • #​3288: [java] New Rule: JUnit5TestNoPrivateModifier
    • #​4288: [java] Document that CallSuperFirst/CallSuperLast are Android specific
    • #​6163: [java] ConstructorCallsOverridableMethod: False positive when method is from enclosing class
    • #​6517: [java] UselessPureMethodCall: False negative for methods on IntStream/LongStream/DoubleStream
    • #​6652: [java] AvoidInstanceofChecksInCatchClause: false negative when pattern-matching instanceof
    • #​6712: [java] UnnecessaryBooleanAssertion: Use InvocationMatcher to find assertions
  • java-multithreading
    • #​6520: [java] DoNotUseThreads: False positive on legitimate java.lang.Thread.onSpinWait() call
    • #​6636: [java] OverridingThreadRun: Fix false negatives with other methods and anonymous classes
  • kotlin
    • #​6608: [kotlin] Lexer or parse errors are reported to stderr only without file context
    • #​6648: [kotlin] Multi-dollar interpolation parse error in annotations
    • #​6659: [kotlin] Parser hangs on complex files due to unbounded ATN prediction loop
    • #​6669: [kotlin] Add AST improvements, KotlinAstUtil
🚨️ API Changes
Deprecations
Experimental API
✨️ Merged pull requests
📦️ Dependency updates
  • #​6612: chore(deps): bump io.github.apex-dev-tools:apex-parser from 4.4.1 to 5.0.0
  • #​6620: Bump PMD from 7.23.0 to 7.24.0
  • #​6621: [core] Fix #​4972: Update ANTLR from 4.9.3 to 4.13.2
  • #​6631: chore(deps): bump ruby/setup-ruby from 1.305.0 to 1.306.0
  • #​6635: chore(deps): bump com.google.code.gson:gson from 2.13.2 to 2.14.0
  • #​6642: chore(deps): bump crate-ci/typos from 1.45.1 to 1.46.0
  • #​6643: chore(deps): bump com.puppycrawl.tools:checkstyle from 13.4.0 to 13.4.2
  • #​6644: chore(deps): bump org.checkerframework:checker-qual from 4.0.0 to 4.1.0
  • #​6656: chore(deps): bump nokogiri from 1.19.2 to 1.19.3 in /.ci/files
  • #​6662: chore(deps): bump actions/create-github-app-token from 3.1.1 to 3.2.0
  • #​6663: chore(deps): bump scalameta.version from 4.16.1 to 4.17.0
  • #​6664: chore(deps): bump ruby/setup-ruby from 1.306.0 to 1.307.0
  • #​6666: chore(deps): bump crate-ci/typos from 1.46.0 to 1.46.1
  • #​6665: chore(deps-dev): bump log4j.version from 2.25.4 to 2.26.0
  • #​6667: chore(deps): bump org.apache.groovy:groovy from 5.0.5 to 5.0.6
  • #​6668: chore(deps): bump com.github.siom79.japicmp:japicmp-maven-plugin from 0.25.6 to 0.25.7
  • #​6697: chore(deps): bump ruby/setup-ruby from 1.307.0 to 1.308.0
  • #​6698: chore(deps): bump junit.version from 6.0.3 to 6.1.0
  • #​6699: chore(deps): bump crate-ci/typos from 1.46.1 to 1.46.2
  • #​6700: chore(deps): bump org.apache.maven.plugins:maven-enforcer-plugin from 3.6.2 to 3.6.3
  • #​6701: chore(deps): bump org.ow2.asm:asm from 9.9.1 to 9.10
  • #​6702: chore(deps): bump com.google.protobuf:protobuf-java from 4.34.1 to 4.35.0
  • #​6720: chore(deps): bump crate-ci/typos from 1.46.2 to 1.46.3
  • #​6721: chore(deps): bump com.github.siom79.japicmp:japicmp-maven-plugin from 0.25.7 to 0.26.0
  • #​6722: chore(deps): bump ruby/setup-ruby from 1.308.0 to 1.310.0
  • #​6723: chore(deps): bump org.ow2.asm:asm from 9.10 to 9.10.1
  • #​6724: chore(deps-dev): bump com.github.hazendaz.maven:coveralls-maven-plugin from 5.0.0 to 5.1.0
  • #​6725: chore(deps-dev): Update tmp from 0.2.5 to 0.2.6
  • #​6729: chore(deps-dev): bump build-tools from 37 to 38
📈️ Stats
  • 308 commits
  • 72 closed tickets & PRs
  • Days since last release: 34

Configuration

📅 Schedule: (UTC)

  • Branch creation
    • At any time (no schedule defined)
  • Automerge
    • At any time (no schedule defined)

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about this update again.


  • If you want to rebase/retry this PR, check this box

This PR was generated by Mend Renovate. View the repository job log.

@renovate renovate Bot added the dependencies Update of dependencies label May 29, 2026
@github-actions github-actions Bot requested a review from uhafner May 29, 2026 08:23
@github-actions
Copy link
Copy Markdown

☀️   Quality Monitor

Tests

   JUnit   Unit Tests: ✅ successful — 87 passed, 2 skipped
   ⛔   Architecture Tests: ✅ successful — 17 passed, 2 skipped

Coverage for New Code

   〰️   Line Coverage: 100.00% — perfect 🎉
   ➰   Branch Coverage: 100.00% — perfect 🎉
   PIT   Mutation Coverage: 100.00% — perfect 🎉
   💪   Test Strength: 100.00% — perfect 🎉

Coverage for Whole Project

   〰️   Line Coverage: 92.03% — 64 missed lines
   ➰   Branch Coverage: 92.04% — 18 missed branches
   PIT   Mutation Coverage: 91.16% — 29 survived mutations
   💪   Test Strength: 93.15% — 22 survived mutations in tested code

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: No vulnerabilities

Software Metrics

   🌀   Cyclomatic Complexity: 397 (total)
   💭   Cognitive Complexity: 173 (total)
   ➿   N-Path Complexity: 361 (total)
   📏   Lines of Code: 4722 (total)
   📝   Non Commenting Source Statements: 1338 (total)
   🔗   Class Cohesion: 71.43% (maximum)
   ⚖️   Weight of Class: 100.00% (maximum)

🚦 Quality Gates

Overall Status: ✅ SUCCESS

✅ Passed Gates

  • ✅ Overall Tests Success Rate: 100.00 >= 100.00
  • ✅ Line Coverage in New Code: 100.00 >= 90.00
  • ✅ Branch Coverage in New Code: 100.00 >= 90.00
  • ✅ Mutation Coverage in New Code: 100.00 >= 90.00
  • ✅ Potential Bugs in Whole Project: 0.00 <= 0.00
  • ✅ Style Violation in Whole Project: 0.00 <= 0.00

Created by Quality Monitor v4.14.0 (#2a0fad1). More details are shown in the GitHub Checks Result.

@uhafner uhafner merged commit b14176a into main May 29, 2026
17 checks passed
@uhafner uhafner deleted the renovate/pmd.version branch May 29, 2026 15:10
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Update of dependencies

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant