-
Notifications
You must be signed in to change notification settings - Fork 2
Update dependency pmd to v7 #673
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Open
renovate
wants to merge
1
commit into
master
Choose a base branch
from
renovate/pmd-7.x
base: master
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
6b5ddda to
5303ae5
Compare
5303ae5 to
39adec4
Compare
f51b9ce to
237558a
Compare
be75902 to
1246db9
Compare
35a706b to
fe51798
Compare
e57e71a to
1286f12
Compare
1286f12 to
765e953
Compare
765e953 to
5fdf0d7
Compare
5fdf0d7 to
46c0c2f
Compare
075ee57 to
cd7319d
Compare
cd7319d to
36fa84e
Compare
dd8110e to
024c1dd
Compare
024c1dd to
a511681
Compare
a511681 to
f1f1c49
Compare
f1f1c49 to
96d9aa8
Compare
de1b7f3 to
6afb356
Compare
6afb356 to
8ebc0a6
Compare
8ebc0a6 to
0d02c12
Compare
0d02c12 to
d878f3f
Compare
d878f3f to
02e98ff
Compare
02e98ff to
05c5519
Compare
0051aac to
b121c0e
Compare
b121c0e to
7b8f266
Compare
7b8f266 to
4c66d0d
Compare
2bad624 to
2f1264e
Compare
85cf92e to
04cbfcf
Compare
04cbfcf to
cd7adef
Compare
cd7adef to
4424333
Compare
4424333 to
c35d53c
Compare
c35d53c to
a6360bf
Compare
a6360bf to
4681653
Compare
e3c2af9 to
a622b40
Compare
a622b40 to
3bdf865
Compare
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Labels
None yet
0 participants
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR contains the following updates:
6.55.0→7.21.0Release Notes
pmd/pmd (pmd)
v7.21.0: PMD 7.21.0 (30-January-2026)30-January-2026 - 7.21.0
The PMD team is pleased to announce PMD 7.21.0.
This is a minor release.
Table Of Contents
🚀️ New and noteworthy
🚀️ New: Java 26 Support
This release of PMD brings support for Java 26.
There are no new standard language features.
There is one preview language feature:
In order to analyze a project with PMD that uses these preview language features,
you'll need to select the new language version
26-preview:Note: Support for Java 24 preview language features have been removed. The version "24-preview"
is no longer available.
Build Requirement is Java 21
From now on, Java 21 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.
CPD
CPD-ON/CPD-OFFcomment pairs. See #6417🌟️ New and Changed Rules
New Rules
PublicMemberInNonPublicTypedetects public members (such as methodsor fields) within non-public types. Non-public types should not declare public members, as their effective
visibility is limited, and using the
publicmodifier can create confusion.UnsupportedJdkApiUsageflags the use of unsupported and non-portableJDK APIs, including
sun.*packages,sun.misc.Unsafe, andjdk.internal.misc.Unsafe. These APIs are unstable,intended for internal use, and may change or be removed. The rule complements Java compiler warnings by
highlighting such usage during code reviews and encouraging migration to official APIs like VarHandle and
the Foreign Function & Memory API.
Changed Rules
The following rules have been changed to use a consistent implementation of enum based
rule properties:
checkAddressTypesof ruleAvoidUsingHardCodedIPhas changed:IPv4useipv4IPv6useipv6IPv4 mapped IPv6useipv4MappedIpv6nullCheckBranchof ruleConfusingTernaryhas changed:AnyuseanyThenusethenElseuseelsetypeAnnotationsof ruleModifierOrderhas changed:ontypeuseonTypeondecluseonDeclCommentRequiredhave changed:RequireduserequiredIgnoreduseignoredUnwanteduseunwantedDeprecated Rules
DontImportSunhas been deprecated. It is replaced byUnsupportedJdkApiUsage.🐛️ Fixed Issues
🚨️ API Changes
Deprecations
MetricOption#valueName: When metrics are used for (rule) properties,then the conventional enum mapping (from SCREAMING_SNAKE_CASE to camelCase) will be used for the enum values.
See
conventionalEnumListProperty.PropertyFactory:enumProperty(String, Map). UseconventionalEnumPropertyinstead.enumProperty(String, Class). UseconventionalEnumPropertyinstead.enumProperty(String, Class, Function). UseconventionalEnumPropertyinstead.enumListProperty(String, Map). UseconventionalEnumListPropertyinstead.enumListProperty(String, Class, Function). UseconventionalEnumListPropertyinstead.AvoidBranchingStatementAsLastInLoopRule#CHECK_FOR. This constant shouldhave never been public.
AvoidBranchingStatementAsLastInLoopRule#CHECK_DO. This constant shouldhave never been public.
AvoidBranchingStatementAsLastInLoopRule#CHECK_WHILE. This constant shouldhave never been public.
AvoidBranchingStatementAsLastInLoopRule#CHECK_BREAK_LOOP_TYPES. This propertydescriptor should have been private. It won't be used anymore. Use
getPropertyDescriptoron the rule to retrieve the property descriptor.
AvoidBranchingStatementAsLastInLoopRule#CHECK_CONTINUE_LOOP_TYPES. This propertydescriptor should have been private. It won't be used anymore. Use
getPropertyDescriptoron the rule to retrieve the property descriptor.
AvoidBranchingStatementAsLastInLoopRule#CHECK_RETURN_LOOP_TYPES. This propertydescriptor should have been private. It won't be used anymore. Use
getPropertyDescriptoron the rule to retrieve the property descriptor.
AvoidBranchingStatementAsLastInLoopRule#check.This method should have been private and will be internalized.
AvoidBranchingStatementAsLastInLoopRule#hasPropertyValue.This method should have been private and will be internalized.
AvoidBranchingStatementAsLastInLoopRule#checksNothing.This method should have been private and will be internalized.
ClassFanOutOption#valueName,CycloOption#valueName,NcssOption#valueNameAbstractMetricTestRule#optionMappings. No extra mapping is required anymore.The
MetricOptionenum values are used. SeeAbstractMetricTestRule(Metric, Class)to provide the enum at construction time.
✨️ Merged pull requests
📦️ Dependency updates
📈️ Stats
Configuration
📅 Schedule: 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.
This PR was generated by Mend Renovate. View the repository job log.