Table of Contents

30-January-2026 - 7.21.0-SNAPSHOT

The PMD team is pleased to announce PMD 7.21.0-SNAPSHOT.

This is a minor release.

🚀️ New and noteworthy

Changed Rules

The following rules have been changed to use a consistent implementation of enum based rule properties:

  • The property checkAddressTypes of rule AvoidUsingHardCodedIP has changed:
    • Instead of IPv4 use ipv4
    • Instead of IPv6 use ipv6
    • Instead of IPv4 mapped IPv6 use ipv4MappedIpv6
    • The old values still work, but you’ll see a deprecation warning.
  • The property nullCheckBranch of rule ConfusingTernary has changed:
    • Instead of Any use any
    • Instead of Then use then
    • Instead of Else use else
    • The old values still work, but you’ll see a deprecation warning.
  • The property typeAnnotations of rule ModifierOrder has changed:
    • Instead of ontype use onType
    • Instead of ondecl use onDecl
    • The old values still work, but you’ll see a deprecation warning.
  • The values of the properties of rule CommentRequired have changed:
    • Instead of Required use required
    • Instead of Ignored use ignored
    • Instead of Unwanted use unwanted
    • The old values still work, but you’ll see a deprecation warning.

🐛️ Fixed Issues

  • core
    • #6184: [core] Consistent implementation of enum properties

🚨️ API Changes

Deprecations

✨️ Merged pull requests

📦️ Dependency updates

📈️ Stats