[pmd-devel] [ANNOUNCE] PMD 6.6.0 Released
A source code analyzer
Brought to you by:
adangel,
juansotuyo
|
From: Andreas D. <and...@ad...> - 2018-07-29 11:21:32
|
* Downloads: https://github.com/pmd/pmd/releases/tag/pmd_releases%2F6.6.0 * Documentation: https://pmd.github.io/pmd-6.6.0/ 29-July-2018 - 6.6.0 The PMD team is pleased to announce PMD 6.6.0. This is a minor release. Table Of Contents * New and noteworthy <https://sourceforge.net/p/pmd/news/2018/07/pmd-660-released/#new-and-noteworthy> o Java 11 Support <https://sourceforge.net/p/pmd/news/2018/07/pmd-660-released/#java-11-support> o New Rules <https://sourceforge.net/p/pmd/news/2018/07/pmd-660-released/#new-rules> o Modified Rules <https://sourceforge.net/p/pmd/news/2018/07/pmd-660-released/#modified-rules> * Fixed Issues <https://sourceforge.net/p/pmd/news/2018/07/pmd-660-released/#fixed-issues> * API Changes <https://sourceforge.net/p/pmd/news/2018/07/pmd-660-released/#api-changes> * External Contributions <https://sourceforge.net/p/pmd/news/2018/07/pmd-660-released/#external-contributions> New and noteworthy Java 11 Support PMD is now able to parse the local-variable declaration syntax |var xxx|, that has been extended for lambda parameters with Java 11 via JEP 323: Local-Variable Syntax for Lambda Parameters <http://openjdk.java.net/jeps/323>. New Rules * The new Java rule |LocalVariableNamingConventions| <https://sourceforge.net/p/pmd/news/2018/07/pmd_rules_java_codestyle.html#localvariablenamingconventions> (|java-codestyle|) detects local variable names that don't comply to a given convention. It defaults to standard Java convention of using camelCase, but can be configured. Special cases can be configured for final variables and caught exceptions' names. * The new Java rule |FormalParameterNamingConventions| <https://sourceforge.net/p/pmd/news/2018/07/pmd_rules_java_codestyle.html#formalparameternamingconventions> (|java-codestyle|) detects formal parameter names that don't comply to a given convention. It defaults to standard Java convention of using camelCase, but can be configured. Special cases can be configured for final parameters and lambda parameters (considering whether they are explicitly typed or not). Modified Rules * The Java rules |AccessorClassGeneration| <https://sourceforge.net/p/pmd/news/2018/07/pmd_rules_java_bestpracices.html#accessorclassgeneration> and |AccessorMethodGeneration| <https://sourceforge.net/p/pmd/news/2018/07/pmd_rules_java_bestpracices.html#accessormethodgeneration> (both in category |java-bestpractices|) have been modified to be only valid up until Java 10. Java 11 adds support for JEP 181: Nest-Based Access Control <http://openjdk.java.net/jeps/181> which avoids the generation of accessor classes / methods altogether. Fixed Issues * core o #1178 <https://github.com/pmd/pmd/issues/1178>: [core] "Unsupported build listener" in gradle build o #1225 <https://github.com/pmd/pmd/issues/1225>: [core] Error in sed expression on line 82 of run.sh while detecting installed version of Java * doc o #1215 <https://github.com/pmd/pmd/issues/1215>: [doc] TOC links don't work? * java-codestyle o #1211 <https://github.com/pmd/pmd/issues/1211>: [java] CommentDefaultAccessModifier false positive with nested interfaces (regression from 6.4.0) o #1216 <https://github.com/pmd/pmd/issues/1216>: [java] UnnecessaryFullyQualifiedName false positive for the same name method * java-design o #1217 <https://github.com/pmd/pmd/issues/1217>: [java] CyclomaticComplexityRule counts ?-operator twice o #1226 <https://github.com/pmd/pmd/issues/1226>: [java] NPath complexity false negative due to overflow * plsql o #980 <https://github.com/pmd/pmd/issues/980>: [plsql] ParseException for CREATE TABLE o #981 <https://github.com/pmd/pmd/issues/981>: [plsql] ParseException when parsing VIEW o #1047 <https://github.com/pmd/pmd/issues/1047>: [plsql] ParseException when parsing EXECUTE IMMEDIATE * ui o #1233 <https://github.com/pmd/pmd/issues/1233>: [ui] XPath autocomplete arrows on first and last items API Changes * The |findDescendantsOfType| methods in |net.sourceforge.pmd.lang.ast.AbstractNode| no longer search for exact type matches, but will match subclasses, too. That means, it's now possible to look for abstract node types such as |AbstractJavaTypeNode| and not only for it's concrete subtypes. External Contributions * #1182 <https://github.com/pmd/pmd/pull/1182>: [ui] XPath AutoComplete - Akshat Bahety <https://github.com/akshatbahety> * #1231 <https://github.com/pmd/pmd/pull/1231>: [doc] Minor typo fix in installation.md - Ashish Rana <https://github.com/ashishrana160796> * #1250 <https://github.com/pmd/pmd/pull/1250>: [ci] [GSoC] Upload baseline of pmdtester automatically - BBG <https://github.com/djydewang> |