Skip to content

[core] Remove support for deprecated rule set references notation#4786

Merged
adangel merged 3 commits into
pmd:masterfrom
adangel:issue-4313-remove-old-rule-reference-notation
Feb 2, 2024
Merged

[core] Remove support for deprecated rule set references notation#4786
adangel merged 3 commits into
pmd:masterfrom
adangel:issue-4313-remove-old-rule-reference-notation

Conversation

@adangel

@adangel adangel commented Jan 5, 2024

Copy link
Copy Markdown
Member

Describe the PR

The old notation - is not supported anymore. It is now interpreted as a ruleset reference without a ruleset and just referencing a single rule. Also the release number notation is not supported anymore.

Since RuleSetReferenceId is Internal+Deprecated, no API changes. Clarified External/Internal: A RuleSetReference is either absolute (RuleSet is known) or relative (RuleSet is not known).

Related issues

Ready?

  • Added unit tests for fixed bug/feature
  • Passing all unit tests
  • Complete build ./mvnw clean verify passes (checked automatically by github actions)
  • Added (in-code) documentation (if needed)

The old notation <lang>-<ruleset> is not supported anymore. It is
now interpreted as a ruleset reference without a ruleset and just
referencing a single rule. Also the release number notation is
not supported anymore.

Since RuleSetReferenceId is Internal+Deprecated, no API changes.
Clarified External/Internal: A RuleSetReference is either absolute
(RuleSet is known) or relative (RuleSet is not known).

Fixes pmd#4313
@adangel adangel added this to the 7.0.0 milestone Jan 5, 2024
@ghost

ghost commented Jan 5, 2024

Copy link
Copy Markdown
1 Message
📖 Compared to master:
This changeset changes 0 violations,
introduces 0 new violations, 0 new errors and 0 new configuration errors,
removes 0 violations, 0 errors and 0 configuration errors.
Download full report as build artifact
Compared to master:
This changeset changes 0 violations,
introduces 0 new violations, 0 new errors and 0 new configuration errors,
removes 0 violations, 0 errors and 0 configuration errors.
Download full report as build artifact

Generated by 🚫 Danger

@jsotuyod

jsotuyod commented Jan 5, 2024

Copy link
Copy Markdown
Member

Should we remove the old release ruleset too?

@adangel adangel mentioned this pull request Jan 5, 2024
55 tasks
@adangel

adangel commented Jan 5, 2024

Copy link
Copy Markdown
Member Author

Should we remove the old release ruleset too?

Eventually yes. I don't think, anyone has ever used these "rulesets/releases/xyz.xml" rulesets. And we anyway have a "since" attribute for each rule, so these release rulesets actually don't provide any additional information.

But we not only have these internal rulesets, we have many old (from PMD 5 !!) rulesets like "basic.xml" etc. These have been deprecated with PMD 6 and we finally can remove them as well.

However, I'd prefer to do this in a separate PR. -> #4796

@adangel adangel added is:feature-removal Remove an unneeded unused feature in:ruleset-xml About the ruleset schema/parser labels Jan 11, 2024
@adangel adangel merged commit 5b2b038 into pmd:master Feb 2, 2024
@adangel adangel deleted the issue-4313-remove-old-rule-reference-notation branch February 2, 2024 19:43
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

in:ruleset-xml About the ruleset schema/parser is:feature-removal Remove an unneeded unused feature

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[core] Remove support for <lang>-<ruleset> hyphen notation for ruleset references

2 participants