diff --git a/docs/pages/release_notes.md b/docs/pages/release_notes.md index e8d7cdbf90..3a8d070f22 100644 --- a/docs/pages/release_notes.md +++ b/docs/pages/release_notes.md @@ -15,9 +15,18 @@ This is a {{ site.pmd.release_type }} release. ### 🚀 New and noteworthy ### 🐛 Fixed Issues +* pmd-java + * [#5050](https://github.com/pmd/pmd/issues/5050): \[java] Problems with pattern variables in switch branches ### 🚨 API Changes +#### Deprecated for removal + +* pmd-java + * {%jdoc java::lang.java.ast.ASTRecordPattern#getVarId() %} This method was added here by mistake. Record + patterns don't declare a pattern variable for the whole pattern, but rather for individual record + components, which can be accessed via {%jdoc java::lang.java.ast.ASTRecordPattern#getComponentPatterns() %}. + ### ✨ External Contributions {% endtocmaker %} diff --git a/pmd-java/src/main/java/net/sourceforge/pmd/lang/java/ast/ASTRecordPattern.java b/pmd-java/src/main/java/net/sourceforge/pmd/lang/java/ast/ASTRecordPattern.java index 8de3dd187c..874570e383 100644 --- a/pmd-java/src/main/java/net/sourceforge/pmd/lang/java/ast/ASTRecordPattern.java +++ b/pmd-java/src/main/java/net/sourceforge/pmd/lang/java/ast/ASTRecordPattern.java @@ -38,6 +38,8 @@ public final class ASTRecordPattern extends AbstractJavaPattern { /** * Return the patterns for each record component. + * + * @since 7.3.0 */ public ASTPatternList getComponentPatterns() { return firstChild(ASTPatternList.class); @@ -47,7 +49,9 @@ public final class ASTRecordPattern extends AbstractJavaPattern { /** * Returns the declared variable. * - * @deprecated This method was added here by mistake + * @deprecated This method was added here by mistake. Record patterns don't declare a pattern variable + * for the whole pattern, but rather for individual record components, which can be accessed via + * {@link #getComponentPatterns()}. */ @Deprecated public ASTVariableId getVarId() { diff --git a/pmd-java/src/main/java/net/sourceforge/pmd/lang/java/symbols/JRecordComponentSymbol.java b/pmd-java/src/main/java/net/sourceforge/pmd/lang/java/symbols/JRecordComponentSymbol.java index 4906a0facb..ef5d130868 100644 --- a/pmd-java/src/main/java/net/sourceforge/pmd/lang/java/symbols/JRecordComponentSymbol.java +++ b/pmd-java/src/main/java/net/sourceforge/pmd/lang/java/symbols/JRecordComponentSymbol.java @@ -18,7 +18,7 @@ import net.sourceforge.pmd.lang.java.types.Substitution; * with a private final {@link JFieldSymbol} and a public * {@linkplain JMethodSymbol accessor method}. * - * @since 7.0.0 + * @since 7.3.0 */ public interface JRecordComponentSymbol extends JAccessibleElementSymbol, BoundToNode { diff --git a/pmd-java/src/test/resources/net/sourceforge/pmd/lang/java/rule/performance/xml/StringInstantiation.xml b/pmd-java/src/test/resources/net/sourceforge/pmd/lang/java/rule/performance/xml/StringInstantiation.xml index d89377f03b..c38e4cb5f6 100644 --- a/pmd-java/src/test/resources/net/sourceforge/pmd/lang/java/rule/performance/xml/StringInstantiation.xml +++ b/pmd-java/src/test/resources/net/sourceforge/pmd/lang/java/rule/performance/xml/StringInstantiation.xml @@ -162,7 +162,7 @@ public class Foo { ]]> - FP in switch + FP in switch #5050 0