Skip to content

CHANGE @W-22462048@ Upgrade PMD from 7.25.0 to 7.26.0 - #486

Merged
nikhil-mittal-165 merged 1 commit into
devfrom
nikhil.mittal/pmd-version-upgrade-20260727
Jul 27, 2026
Merged

CHANGE @W-22462048@ Upgrade PMD from 7.25.0 to 7.26.0#486
nikhil-mittal-165 merged 1 commit into
devfrom
nikhil.mittal/pmd-version-upgrade-20260727

Conversation

@nikhil-mittal-165

Copy link
Copy Markdown
Contributor

What & Why

Upgrades the PMD engine from 7.25.0 to 7.26.0 as part of the monthly release (@W-22462048@).

Changes

  • PMD version bumped to 7.26.0 in gradle/libs.versions.toml and src/constants.ts (kept in sync).
  • Package version code-analyzer-pmd-engine bumped 0.43.00.44.0-SNAPSHOT.
  • New Apex rule InvocableClassNoArgConstructor (added in PMD 7.26.0) added to RULE_MAPPINGS:
    • Severity Moderate, tags Recommended / ErrorProne / Apex — matching the treatment of the previously-added Apex ErrorProne rule (AvoidInterfaceAsMapKey, CHANGE @W-22270236@ - Upgrade PMD from 7.23.0 to 7.24.0  #463).
    • Corresponding entry added to test/test-data/pmdGoldfiles/rules_apexOnly.goldfile.json (description sourced directly from the built engine).
  • Java dependencies (hamcrest, junit-jupiter, slf4j-nop, gson) verified against PMD 7.26.0 core — no changes required (slf4j/gson still match pmd-core's transitive versions; junit-jupiter/hamcrest intentionally held to keep this PR scoped to the PMD upgrade).

Validation

  • ✅ Java build BUILD SUCCESSFUL; clean rebuild of dist/java-lib confirms only pmd-*-7.26.0.jar present (no stale 7.25.0 jars).
  • ✅ TypeScript tests 127/127 passing, coverage thresholds met.
  • ✅ Lint clean; pre-commit interdependency validation passed.

PMD Version Comparison (Step 1.2)

In progress — full scan comparison (pmd_7_25 vs pmd_7_26) running across the local repo corpus (435 repos, github.com). Results will be reviewed and attached before merge.

🚦 Do not merge until the comparison results are reviewed and confirmed (only expected diff: new InvocableClassNoArgConstructor findings).

- Updated PMD from 7.25.0 to 7.26.0 in libs.versions.toml and constants.ts
- Bumped code-analyzer-pmd-engine package version to 0.44.0-SNAPSHOT
- Added new Apex rule InvocableClassNoArgConstructor to RULE_MAPPINGS
  (Moderate severity; Recommended/ErrorProne/Apex tags) and apex rules goldfile
- Java deps (hamcrest, junit-jupiter, slf4j-nop, gson) verified against PMD 7.26.0 core; no changes needed
@git2gus

git2gus Bot commented Jul 27, 2026

Copy link
Copy Markdown

Git2Gus App is installed but the .git2gus/config.json doesn't have right values. You should add the required configuration.

@aruntyagiTutu aruntyagiTutu left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Change itself looks good — minor PMD version bump (7.25.0 → 7.26.0), version kept in sync between libs.versions.toml and constants.ts, new InvocableClassNoArgConstructor rule mapping follows the established severity/tag pattern (matches AvoidInterfaceAsMapKey treatment from #463), and the goldfile entry is updated accordingly. Java/TS builds and tests are reported green.

Holding off on approval per the PR description itself: the PMD 7.25 vs 7.26 scan comparison across the repo corpus is still "⏳ In progress" and the description explicitly says "Do not merge until the comparison results are reviewed and confirmed." Please post those results (or confirm the only diff is the new rule's findings, as expected) before merging — happy to approve once that's attached.

@nikhil-mittal-165
nikhil-mittal-165 merged commit b470a4d into dev Jul 27, 2026
9 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants