Skip to content

[java] Java 16 support (pmd7)#3120

Merged
oowekyala merged 19 commits into
pmd:pmd/7.0.xfrom
adangel:pmd7-java-16-support
Feb 19, 2021
Merged

[java] Java 16 support (pmd7)#3120
oowekyala merged 19 commits into
pmd:pmd/7.0.xfrom
adangel:pmd7-java-16-support

Conversation

@adangel

@adangel adangel commented Feb 18, 2021

Copy link
Copy Markdown
Member

Describe the PR

This is the merge of #3111 into the pmd7 branch, so the merge order should be:

  1. [java] Java 16 support #3111 into master
  2. master into pmd/7.0.x
  3. pmd/7.0.x into [java] Java 16 support (pmd7) #3120 (this)
  4. [java] Java 16 support (pmd7) #3120 (this) into pmd/7.0.x

I've also cleaned up LanguageLevelChecker a bit.

The biggest change between pmd6 and pmd7 is the handling of modifiers for instanceof type patterns: I adjust the AST afterwards, to move the annotations to the correct place. In case of type patterns, the annotation apply to the binding variable and not to the type.

Related issues

Ready?

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

The TypePattern now allows the final keyword
and Annotations. Pattern variables are now only
effectively final.


With JEP 394 / Java16, this production has been renamed.
Pattern Matching for Instanceof is now a standard feature,
therefore the AST node is not experimental anymore.
- Renamed ASTRecordConstructorDeclaration to
  ASTCompactConstructorDeclaration to align naming to JLS
- ASTRecordDeclaration, ASTRecordComponentList, ASTRecordComponent,
  ASTRecordBody, ASTCompactConstructorDeclaration are not
  longer @experimental
This has been withdrawn and is not implemented in the grammar
anymore.
@adangel adangel added this to the 7.0.0 milestone Feb 18, 2021
@adangel adangel mentioned this pull request Feb 18, 2021
12 tasks
@ghost

ghost commented Feb 18, 2021

Copy link
Copy Markdown
2 Messages
📖 Compared to pmd/7.0.x:
This changeset changes 0 violations,
introduces 0 new violations, 0 new errors and 0 new configuration errors,
removes 0 violations, 1 errors and 0 configuration errors.
Full report
📖 Compared to master:
This changeset changes 1606 violations,
introduces 4187 new violations, 1 new errors and 0 new configuration errors,
removes 6137 violations, 10 errors and 2 configuration errors.
Full report
Compared to pmd/7.0.x:
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.
Full report
Compared to master:
This changeset changes 1606 violations,
introduces 4187 new violations, 2 new errors and 0 new configuration errors,
removes 6137 violations, 10 errors and 2 configuration errors.
Full report

Generated by 🚫 Danger

Comment thread pmd-java/etc/grammar/Java.jjt
@oowekyala oowekyala merged commit 8bccbab into pmd:pmd/7.0.x Feb 19, 2021
@adangel adangel mentioned this pull request Jan 23, 2023
55 tasks
@adangel adangel deleted the pmd7-java-16-support branch January 26, 2023 08:12
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