pmd-devel Mailing List for PMD (Page 7)
A source code analyzer
Brought to you by:
adangel,
juansotuyo
You can subscribe to this list here.
| 2002 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
(2) |
Jul
(768) |
Aug
(543) |
Sep
(364) |
Oct
(326) |
Nov
(182) |
Dec
(148) |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2003 |
Jan
(144) |
Feb
(223) |
Mar
(339) |
Apr
(406) |
May
(128) |
Jun
(225) |
Jul
(171) |
Aug
(171) |
Sep
(153) |
Oct
(150) |
Nov
(176) |
Dec
(88) |
| 2004 |
Jan
(71) |
Feb
(28) |
Mar
(91) |
Apr
(184) |
May
(127) |
Jun
(144) |
Jul
(186) |
Aug
(78) |
Sep
(193) |
Oct
(153) |
Nov
(92) |
Dec
(177) |
| 2005 |
Jan
(223) |
Feb
(319) |
Mar
(253) |
Apr
(106) |
May
(215) |
Jun
(299) |
Jul
(341) |
Aug
(286) |
Sep
(270) |
Oct
(212) |
Nov
(283) |
Dec
(345) |
| 2006 |
Jan
(243) |
Feb
(426) |
Mar
(278) |
Apr
(254) |
May
(259) |
Jun
(197) |
Jul
(156) |
Aug
(84) |
Sep
(150) |
Oct
(719) |
Nov
(319) |
Dec
(169) |
| 2007 |
Jan
(484) |
Feb
(222) |
Mar
(61) |
Apr
(51) |
May
(63) |
Jun
(182) |
Jul
(177) |
Aug
(89) |
Sep
(46) |
Oct
(178) |
Nov
(116) |
Dec
(89) |
| 2008 |
Jan
(23) |
Feb
(198) |
Mar
(227) |
Apr
(203) |
May
(174) |
Jun
(215) |
Jul
(55) |
Aug
(152) |
Sep
(129) |
Oct
(177) |
Nov
(79) |
Dec
(84) |
| 2009 |
Jan
(91) |
Feb
(179) |
Mar
(102) |
Apr
(67) |
May
(40) |
Jun
(41) |
Jul
(43) |
Aug
(53) |
Sep
(4) |
Oct
(17) |
Nov
(48) |
Dec
(76) |
| 2010 |
Jan
(28) |
Feb
(17) |
Mar
(27) |
Apr
(9) |
May
(19) |
Jun
(50) |
Jul
(21) |
Aug
(9) |
Sep
(42) |
Oct
(30) |
Nov
(33) |
Dec
(10) |
| 2011 |
Jan
(14) |
Feb
(6) |
Mar
(18) |
Apr
(8) |
May
(4) |
Jun
(18) |
Jul
(21) |
Aug
(19) |
Sep
(298) |
Oct
(82) |
Nov
(102) |
Dec
(241) |
| 2012 |
Jan
(41) |
Feb
(29) |
Mar
(43) |
Apr
(18) |
May
(42) |
Jun
(53) |
Jul
(53) |
Aug
(43) |
Sep
(16) |
Oct
(20) |
Nov
(36) |
Dec
(26) |
| 2013 |
Jan
(15) |
Feb
(14) |
Mar
(36) |
Apr
(38) |
May
(20) |
Jun
(5) |
Jul
(6) |
Aug
(18) |
Sep
(3) |
Oct
(24) |
Nov
(14) |
Dec
(1) |
| 2014 |
Jan
(13) |
Feb
(12) |
Mar
(8) |
Apr
(19) |
May
(4) |
Jun
(4) |
Jul
(27) |
Aug
(18) |
Sep
(11) |
Oct
(15) |
Nov
(32) |
Dec
(13) |
| 2015 |
Jan
(11) |
Feb
(13) |
Mar
(21) |
Apr
(22) |
May
(32) |
Jun
(14) |
Jul
(11) |
Aug
(7) |
Sep
(33) |
Oct
(40) |
Nov
(20) |
Dec
(13) |
| 2016 |
Jan
(24) |
Feb
(16) |
Mar
(11) |
Apr
(25) |
May
(46) |
Jun
(13) |
Jul
(3) |
Aug
(3) |
Sep
(8) |
Oct
(3) |
Nov
(17) |
Dec
(9) |
| 2017 |
Jan
(6) |
Feb
(3) |
Mar
(13) |
Apr
(16) |
May
(7) |
Jun
(5) |
Jul
(30) |
Aug
(3) |
Sep
(3) |
Oct
(10) |
Nov
(2) |
Dec
(3) |
| 2018 |
Jan
(8) |
Feb
(4) |
Mar
(6) |
Apr
(2) |
May
(3) |
Jun
(3) |
Jul
(6) |
Aug
(4) |
Sep
(4) |
Oct
(4) |
Nov
(4) |
Dec
(5) |
| 2019 |
Jan
(3) |
Feb
(2) |
Mar
(3) |
Apr
(2) |
May
(3) |
Jun
(2) |
Jul
(5) |
Aug
(2) |
Sep
(5) |
Oct
(3) |
Nov
(7) |
Dec
(1) |
| 2020 |
Jan
(3) |
Feb
(2) |
Mar
(2) |
Apr
(2) |
May
(3) |
Jun
(2) |
Jul
(2) |
Aug
(2) |
Sep
(2) |
Oct
(3) |
Nov
(3) |
Dec
(2) |
| 2021 |
Jan
(2) |
Feb
(2) |
Mar
(2) |
Apr
(4) |
May
(4) |
Jun
(3) |
Jul
(4) |
Aug
(2) |
Sep
(3) |
Oct
(5) |
Nov
(1) |
Dec
(1) |
| 2022 |
Jan
(3) |
Feb
(2) |
Mar
(4) |
Apr
(2) |
May
(2) |
Jun
(3) |
Jul
(2) |
Aug
(2) |
Sep
(3) |
Oct
(1) |
Nov
(2) |
Dec
(2) |
| 2023 |
Jan
(2) |
Feb
(2) |
Mar
(2) |
Apr
(1) |
May
(2) |
Jun
(1) |
Jul
(1) |
Aug
(1) |
Sep
(1) |
Oct
(1) |
Nov
(1) |
Dec
(1) |
| 2024 |
Jan
(1) |
Feb
(1) |
Mar
(1) |
Apr
(3) |
May
(1) |
Jun
(2) |
Jul
(2) |
Aug
(2) |
Sep
(1) |
Oct
(1) |
Nov
(8) |
Dec
(2) |
| 2025 |
Jan
(1) |
Feb
(2) |
Mar
(1) |
Apr
(2) |
May
(1) |
Jun
(2) |
Jul
(1) |
Aug
(1) |
Sep
(2) |
Oct
|
Nov
|
Dec
|
|
From: Rory O'D. <ror...@or...> - 2019-11-12 09:44:15
|
Hi Andreas, *OpenJDK builds - JDK 14 *- Early Access build 22 is available at http://jdk.java.net/14/ These early-access, open-source builds are provided under the GNU General Public License, version 2, with the Classpath Exception <http://openjdk.java.net/legal/gplv2+ce.html>. * Release notes o https://jdk.java.net/14/release-notes * JEPs targeted to JDK 14, so far: * JEP 345: NUMA-Aware Memory Allocation for G1 <http://openjdk.java.net/jeps/345> was Targeted to JDK 14. * JEP 349: JFR Event Streaming <http://openjdk.java.net/jeps/349> was Integrated. * JEP 361: Switch Expressions (Standard) <http://openjdk.java.net/jeps/361> was Targeted to JDK 14. * JEP 363: Remove the Concurrent Mark Sweep (CMS) Garbage Collector <http://openjdk.java.net/jeps/363> was Targeted to JDK 14. * JEP 364: ZGC on macOS <http://openjdk.java.net/jeps/364> was Targeted to JDK 14. * JEP 365: ZGC on Windows <http://openjdk.java.net/jeps/365> moved to Candidate. * JEP 366: Deprecate the ParallelScavenge + SerialOld GC Combination <http://openjdk.java.net/jeps/366> was Proposed to target JDK 14. * JEP 367: Remove the Pack200 Tools and API <http://openjdk.java.net/jeps/367> was Targeted to JDK 14. * JEP 368: Text Blocks (Second Preview) <http://openjdk.java.net/jeps/368> moved to Candidate. * Changes in this build <http://hg.openjdk.java.net/jdk/jdk/log?rev=reverse%28%22jdk-14%2B21%22%3A%3A%22jdk-14%2B22%22-%22jdk-14%2B21%22%29&revcount=1000> *jpackage EA -* Build 14-jpackage+1-67 (2019/11/4) * This is an early access build of JEP 343: Packaging Tool <https://openjdk.java.net/jeps/343>, aimed at testing a prototype implementation of jpackage, which is a new tool for packaging self-contained Java applications along with a Java Runtime Environment. * These early-access builds are provided under the GNU General Public License, version 2, with the Classpath Exception <http://openjdk.java.net/legal/gplv2+ce.html> * Build 14 is now available http://jdk.java.net/jpackage/ * Please send feedback via e-mail to cor...@op... <mailto:cor...@op...> -- Rgds, Rory O'Donnell Quality Engineering Manager Oracle EMEA, Dublin, Ireland |
|
From: Rory O'D. <ror...@or...> - 2019-10-20 06:49:10
|
Hi Andreas, *OpenJDK builds - JDK 14 *- Early Access build 19 is available at http://jdk.java.net/14/ These early-access, open-source builds are provided under the GNU General Public License, version 2, with the Classpath Exception <http://openjdk.java.net/legal/gplv2+ce.html>. * Release notes o https://jdk.java.net/14/release-notes * JEPs targeted to JDK 14, so far o 352 - Non-Volatile Mapped Byte Buffers <https://openjdk.java.net/jeps/352> o 358 - Helpful NullPointerExceptions <http://openjdk.java.net/jeps/358> o 349 - JFR Event Streaming <https://openjdk.java.net/jeps/349> * *I want to draw your attention to some notable changes in previous builds of JDK 14.* o *Build 14* - Classes are now loaded and linked by Class.forName() (JDK-8212117 <https://bugs.openjdk.java.net/browse/JDK-8212117>) + we need help testing changes to 3-arg Class.forName method. The method has always been specified to link the class but the implementation has historically not done this when invoked with the "initialize" parameter set to false. The bug has been fixed in JDK 14 but it has the potential to change the behavior of code that uses Class.forName to load classes that cannot be linked. * Changes in this build <https://hg.openjdk.java.net/jdk/jdk/log?rev=reverse%28%22jdk-14%2B18%22%3A%3A%22jdk-14%2B19%22-%22jdk-14%2B18%22%29&revcount=1000> *Openjdk Builds - JDK 13.0.1 *General Availability - https://jdk.java.net/13/ These early-access, open-source builds are provided under the GNU General Public License, version 2, with the Classpath Exception <http://openjdk.java.net/legal/gplv2+ce.html>. * Release notes <https://jdk.java.net/13/release-notes> * Changes in this release <https://hg.openjdk.java.net/jdk/jdk/log?rev=reverse%28%22jdk-13.0.1%2B8%22%3A%3A%22jdk-13.0.1%2B9%22-%22jdk-13.0.1%2B8%22%29&revcount=1000> *Crypto roadmap updated* - https://www.java.com/en/jre-jdk-cryptoroadmap.html Targeted Date^(2) Targeted Release(s) Algorithm/Protocol Action How to test/enable change Change Log 2019-10-15 13, 11, 8, 7 ECC on TLS Disable non-NIST Suite B EC curves (sect283k1, sect283r1, sect409k1, sect409r1, sect571k1, sect571r1, secp256k1) when negotiating TLS sessions Disabling non-NIST Suite B EC curves when negotiating TLS sessions <https://java.com/en/configure_crypto.html#DisablenonNIST> 2019-10-08 Announced. Rgds,Rory -- Rgds, Rory O'Donnell Quality Engineering Manager Oracle EMEA, Dublin, Ireland |
|
From: Rory O'D. <ror...@or...> - 2019-10-04 09:14:34
|
Hi Andreas, *OpenJDK builds *- JDK 14 - Early Access build 17 is available at http://jdk.java.net/14/ These early-access, open-source builds are provided under the GNU General Public License, version 2, with the Classpath Exception <http://openjdk.java.net/legal/gplv2+ce.html>. * Schedule for JDK 14 o 2019/12/12 Rampdown Phase One o 2020/01/16 Rampdown Phase Two o 2020/02/06 Initial Release Candidate o 2020/02/20 Final Release Candidate o 2020/03/17 General Availability * Release notes o https://jdk.java.net/14/release-notes * JEPs targeted to JDK 14, so far o 352 - Non-Volatile Mapped Byte Buffers <https://openjdk.java.net/jeps/352> o 358 - Helpful NullPointerExceptions <http://openjdk.java.net/jeps/358> * Recent Bug fixes of Interest o Build 16:- + JDK-8228580: DnsClient TCP socket timeout + JDK-8229800: WindowsServerCore 1809 does not provide d2d1.dll library required by awt.dll + JDK-8230814: Enable SAX ContentHandler to handle XML Declaration o Build 15:- + JDK-8229202: Docker reporting causes secondary crashes in error handling + JDK-8223490: Optimize search algorithm for determining default time zone * Changes in this build <http://hg.openjdk.java.net/jdk/jdk/log?rev=reverse%28%22jdk-14%2B16%22%3A%3A%22jdk-14%2B17%22-%22jdk-14%2B16%22%29&revcount=1000> *jpackage EA -* Build 14-jpackage+1-49 (2019/10/2) * This is an early access build of JEP 343: Packaging Tool <https://openjdk.java.net/jeps/343>, aimed at testing a prototype implementation of jpackage, which is a new tool for packaging self-contained Java applications along with a Java Runtime Environment. * These early-access builds are provided under the GNU General Public License, version 2, with the Classpath Exception <http://openjdk.java.net/legal/gplv2+ce.html> * Build 14 is now available http://jdk.java.net/jpackage/ * Please send feedback via e-mail to cor...@op... <mailto:cor...@op...> * * CodeOne * Missed some of the Core Java Platform track, see a thread of some of the captured sessions: here <https://twitter.com/Sharat_Chander/status/1176202284134330368?s=20> Rgds,Rory -- Rgds, Rory O'Donnell Quality Engineering Manager Oracle EMEA, Dublin, Ireland |
|
From: Rory O'D. <ror...@or...> - 2019-09-17 20:23:13
|
Hi Andreas,
*Release Announcement: General Availability of Java 13 / JDK 13 [1] *
* JDK 13, the reference implementation of Java 13, is now Generally
Available.
* GPL-licensed OpenJDK builds from Oracle are available here:
https://jdk.java.net/13
* Release notes - https://jdk.java.net/13/release-notes
This release includes the following five features:
* 350: Dynamic CDS Archives
* 351: ZGC: Uncommit Unused Memory
* 353: Reimplement the Legacy Socket API
* 354: Switch Expressions (Preview)
* 355: Text Blocks (Preview)
Along with many smaller enhancements and bug fixes.
Thanks to everyone who contributed JDK 13, whether by creating features
or enhancements, logging bugs, or downloading and testing the
early-access builds.
*JDK 14 EA build 14, under both the GPL and Oracle EA licenses, is now
available at **http://jdk.java.net/14**.*
* JEPs targeted to JDK 14, so far
o 352 - Non-Volatile Mapped Byte Buffers
<https://openjdk.java.net/jeps/352>
* Release Notes
o https://jdk.java.net/14/release-notes
* Recent Bug fixes of Interest
o Build 14:
+ 8229785: MethodType::fromMethodDescriptorString requires
"getClassLoader" permission
+ 8212117: Classes are now loaded and linked by Class.forName()
+ 8228854: Default ErrorListener No Longer Reports Warnings
and Errors to the Console
* Changes in this build
<https://hg.openjdk.java.net/jdk/jdk/log?rev=reverse%28%22jdk-14%2B13%22%3A%3A%22jdk-14%2B14%22-%22jdk-14%2B13%22%29&revcount=1000>
[14]
*Quality Report for September 2019 is available*
* https://wiki.openjdk.java.net/display/quality/Quality+Outreach+report+September+2019
Rgds,Rory
[1]
https://mail.openjdk.java.net/pipermail/jdk-dev/2019-September/003335.html
--
Rgds,Rory O'Donnell
Quality Engineering Manager
Oracle EMEA, Dublin,Ireland
|
|
From: Andreas D. <and...@pm...> - 2019-09-15 09:17:14
|
* Downloads: https://github.com/pmd/pmd/releases/tag/pmd_releases%2F6.18.0 * Documentation: https://pmd.github.io/pmd-6.18.0/ 15-September-2019 - 6.18.0 The PMD team is pleased to announce PMD 6.18.0. This is a minor release. Table Of Contents * New and noteworthy <https://sourceforge.net/p/pmd/news/2019/09/pmd-6180-released/#new-and-noteworthy> o Java 13 Support <https://sourceforge.net/p/pmd/news/2019/09/pmd-6180-released/#java-13-support> o Full support for Scala <https://sourceforge.net/p/pmd/news/2019/09/pmd-6180-released/#full-support-for-scala> o New rule designer documentation <https://sourceforge.net/p/pmd/news/2019/09/pmd-6180-released/#new-rule-designer-documentation> o New rules <https://sourceforge.net/p/pmd/news/2019/09/pmd-6180-released/#new-rules> o Modified Rules <https://sourceforge.net/p/pmd/news/2019/09/pmd-6180-released/#modified-rules> * Fixed Issues <https://sourceforge.net/p/pmd/news/2019/09/pmd-6180-released/#fixed-issues> * API Changes <https://sourceforge.net/p/pmd/news/2019/09/pmd-6180-released/#api-changes> o Changes to Renderer <https://sourceforge.net/p/pmd/news/2019/09/pmd-6180-released/#changes-to-renderer> o Deprecated APIs <https://sourceforge.net/p/pmd/news/2019/09/pmd-6180-released/#deprecated-apis> + For removal <https://sourceforge.net/p/pmd/news/2019/09/pmd-6180-released/#for-removal> + Internal APIs <https://sourceforge.net/p/pmd/news/2019/09/pmd-6180-released/#internal-apis> * External Contributions <https://sourceforge.net/p/pmd/news/2019/09/pmd-6180-released/#external-contributions> New and noteworthy Java 13 Support This release of PMD brings support for Java 13. PMD can parse Switch Expressions <http://openjdk.java.net/jeps/354> with the new |yield| statement and resolve the type of such an expression. PMD also parses Text Blocks <http://openjdk.java.net/jeps/355> as String literals. Note: The Switch Expressions and Text Blocks are a preview language feature of OpenJDK 13 and are not enabled by default. In order to analyze a project with PMD that uses these language features, you'll need to enable it via the environment variable |PMD_JAVA_OPTS| and select the new language version |13-preview|: export PMD_JAVA_OPTS=--enable-preview ./run.sh pmd -language java -version 13-preview ... Note: Support for the extended break statement introduced in Java 12 as a preview language feature will be removed with the next PMD version 6.19.0. Full support for Scala Thanks to Chris Smith <https://github.com/tophersmith> PMD now fully supports Scala. Now rules for analyzing Scala code can be developed in addition to the Copy-Paste-Detection (CPD) functionality. There are no rules yet, so contributions are welcome. Additionally Scala support has been upgraded from 2.12.4 to 2.13. New rule designer documentation The documentation for the rule designer is now available on the main PMD documentation page: Rule Designer Reference <https://sourceforge.net/p/pmd/news/2019/09/pmd_userdocs_extending_designer_reference.html>. Check it out to learn about the usage and features of the rule designer. New rules * The Java rule |AvoidMessageDigestField| <https://pmd.github.io/pmd-6.18.0/pmd_rules_java_bestpractices.html#avoidmessagedigestfield> (|java-bestpractices|) detects fields of the type |java.security.MessageDigest|. Using a message digest instance as a field would need to be synchronized, as it can easily be used by multiple threads. Without synchronization the calculated hash could be entirely wrong. Instead of declaring this as a field and synchronize access to use it from multiple threads, a new instance should be created when needed. This rule is also active when using java's quickstart ruleset. * The Apex rule |DebugsShouldUseLoggingLevel| <https://pmd.github.io/pmd-6.18.0/pmd_rules_apex_bestpractices.html#debugsshoulduselogginglevel> (|apex-bestpractices|) detects usages of |System.debug()| method calls that are used without specifying the log level. Having the log level specified provides a cleaner log, and improves readability of it. Modified Rules * The Java rule |CloseResource| <https://pmd.github.io/pmd-6.18.0/pmd_rules_java_errorprone.html#closeresource> (|java-errorprone|) now ignores by default instances of |java.util.stream.Stream|. These streams are |AutoCloseable|, but most streams are backed by collections, arrays, or generating functions, which require no special resource management. However, there are some exceptions: The stream returned by |Files::lines(Path)| is backed by a actual file and needs to be closed. These instances won't be found by default by the rule anymore. Fixed Issues * all o #1465 <https://github.com/pmd/pmd/issues/1465>: [core] Stylesheet pmd-report.xslt fails to display filepath if 'java' in path o #1923 <https://github.com/pmd/pmd/issues/1923>: [core] Incremental analysis does not work with shortnames o #1983 <https://github.com/pmd/pmd/pull/1983>: [core] Avoid crashes with analysis cache when classpath references non-existing directories o #1990 <https://github.com/pmd/pmd/pull/1990>: [core] Incremental analysis mixes XPath rule violations * apex o #1901 <https://github.com/pmd/pmd/issues/1901>: [apex] Expose super type name of UserClass o #1942 <https://github.com/pmd/pmd/issues/1942>: [apex] Add best practice rule for debug statements in Apex * java o #1930 <https://github.com/pmd/pmd/issues/1930>: [java] Add Java 13 support * java-bestpractices o #1227 <https://github.com/pmd/pmd/issues/1227>: [java] UnusedFormalParameter should explain checkAll better o #1862 <https://github.com/pmd/pmd/issues/1862>: [java] New rule for MessageDigest.getInstance o #1952 <https://github.com/pmd/pmd/issues/1952>: [java] UnusedPrivateField not triggering if @Value annotation present * java-codestyle o #1951 <https://github.com/pmd/pmd/issues/1951>: [java] UnnecessaryFullyQualifiedName rule triggered when variable name clashes with package name * java-errorprone o #1922 <https://github.com/pmd/pmd/issues/1922>: [java] CloseResource possible false positive with Streams o #1966 <https://github.com/pmd/pmd/issues/1966>: [java] CloseResource false positive if Stream is passed as method parameter o #1967 <https://github.com/pmd/pmd/issues/1967>: [java] CloseResource false positive with late assignment of variable * plsql o #1933 <https://github.com/pmd/pmd/issues/1933>: [plsql] ParseException with cursor declared in anonymous block o #1935 <https://github.com/pmd/pmd/issues/1935>: [plsql] ParseException with SELECT INTO record defined as global variable o #1936 <https://github.com/pmd/pmd/issues/1936>: [plslq] ParseException with cursor inside procedure declaration o #1946 <https://github.com/pmd/pmd/issues/1946>: [plsql] ParseException with using TRIM inside IF statements condition o #1947 <https://github.com/pmd/pmd/issues/1947>: [plsql] ParseError - SELECT with FOR UPDATE OF o #1948 <https://github.com/pmd/pmd/issues/1948>: [plsql] ParseException with INSERT INTO using package global variables o #1950 <https://github.com/pmd/pmd/issues/1950>: [plsql] ParseException with UPDATE and package record variable o #1953 <https://github.com/pmd/pmd/issues/1953>: [plsql] ParseException with WITH in CURSOR API Changes Changes to Renderer * Each renderer has now a new method |Renderer#setUseShortNames| <https://javadoc.io/page/net.sourceforge.pmd/pmd-core/6.18.0/net/sourceforge/pmd/renderers/Renderer.html#setUseShortNames(List)> which is used for implementing the "shortnames" CLI option. The method is automatically called by PMD, if this CLI option is in use. When rendering filenames to the report, the new helper method |AbstractRenderer#determineFileName| <https://javadoc.io/page/net.sourceforge.pmd/pmd-core/6.18.0/net/sourceforge/pmd/renderers/AbstractRenderer.html#determineFileName(String)> should be used. This will change the filename to a short name, if the CLI option "shortnames" is used. Not adjusting custom renderers will make them render always the full file names and not honoring the CLI option "shortnames". Deprecated APIs For removal * The methods |getImportedNameNode| <https://javadoc.io/page/net.sourceforge.pmd/pmd-java/6.18.0/net/sourceforge/pmd/lang/java/ast/ASTImportDeclaration.html#getImportedNameNode()> and |getPackage| <https://javadoc.io/page/net.sourceforge.pmd/pmd-java/6.18.0/net/sourceforge/pmd/lang/java/ast/ASTImportDeclaration.html#getPackage()> have been deprecated and will be removed with PMD 7.0.0. * The method |RuleContext#setSourceCodeFilename| <https://javadoc.io/page/net.sourceforge.pmd/pmd-core/6.18.0/net/sourceforge/pmd/RuleContext.html#setSourceCodeFilename(String)> has been deprecated and will be removed. The already existing method |RuleContext#setSourceCodeFile| <https://javadoc.io/page/net.sourceforge.pmd/pmd-core/6.18.0/net/sourceforge/pmd/RuleContext.html#setSourceCodeFile(File)> should be used instead. The method |RuleContext#getSourceCodeFilename| <https://javadoc.io/page/net.sourceforge.pmd/pmd-core/6.18.0/net/sourceforge/pmd/RuleContext.html#getSourceCodeFilename()> still exists and returns just the filename without the full path. * The method |AbstractPMDProcessor#filenameFrom| <https://javadoc.io/page/net.sourceforge.pmd/pmd-core/6.18.0/net/sourceforge/pmd/processor/AbstractPMDProcessor.html#filenameFrom(DataSource)> has been deprecated. It was used to determine a "short name" of the file being analyzed, so that the report can use short names. However, this logic has been moved to the renderers. * The method |Report#metrics| <https://javadoc.io/page/net.sourceforge.pmd/pmd-core/6.18.0/net/sourceforge/pmd/Report.html#metrics()> and |Report| <https://javadoc.io/page/net.sourceforge.pmd/pmd-core/6.18.0/net/sourceforge/pmd/Report.html#> have been deprecated. They were leftovers from a previous deprecation round targeting |StatisticalRule| <https://javadoc.io/page/net.sourceforge.pmd/pmd-core/6.18.0/net/sourceforge/pmd/lang/rule/stat/StatisticalRule.html#>. Internal APIs Those APIs are not intended to be used by clients, and will be hidden or removed with PMD 7.0.0. You can identify them with the |@InternalApi| annotation. You'll also get a deprecation warning. * pmd-core * |net.sourceforge.pmd.cache| <https://javadoc.io/page/net.sourceforge.pmd/pmd-core/6.18.0/net/sourceforge/pmd/cache/package-summary.html#> * pmd-java * |net.sourceforge.pmd.lang.java.typeresolution| <https://javadoc.io/page/net.sourceforge.pmd/pmd-java/6.18.0/net/sourceforge/pmd/lang/java/typeresolution/package-summary.html#>: Everything, including subpackages, except |TypeHelper| <https://javadoc.io/page/net.sourceforge.pmd/pmd-java/6.18.0/net/sourceforge/pmd/lang/java/typeresolution/TypeHelper.html#> and |JavaTypeDefinition| <https://javadoc.io/page/net.sourceforge.pmd/pmd-java/6.18.0/net/sourceforge/pmd/lang/java/typeresolution/typedefinition/JavaTypeDefinition.html#>. * |ASTCompilationUnit#getClassTypeResolver| <https://javadoc.io/page/net.sourceforge.pmd/pmd-java/6.18.0/net/sourceforge/pmd/lang/java/ast/ASTCompilationUnit.html#getClassTypeResolver()> External Contributions * #1943 <https://github.com/pmd/pmd/pull/1943>: [apex] Adds "debug should use logging level" best practice rule for Apex - Renato Oliveira <https://github.com/renatoliveira> * #1965 <https://github.com/pmd/pmd/pull/1965>: [scala] Use Scalameta for parsing - Chris Smith <https://github.com/tophersmith> * #1970 <https://github.com/pmd/pmd/pull/1970>: [java] DoubleBraceInitialization: Fix example - Tobias Weimer <https://github.com/tweimer> * #1971 <https://github.com/pmd/pmd/pull/1971>: [java] 1862 - Message Digest should not be used as class field - AnthonyKot <https://github.com/AnthonyKot> * #1972 <https://github.com/pmd/pmd/pull/1972>: [plsql] ParseError - SELECT with FOR UPDATE OF - Piotr Szymanski <https://github.com/szyman23> * #1974 <https://github.com/pmd/pmd/pull/1974>: [plsql] Fixes for referencing record type variables - Piotr Szymanski <https://github.com/szyman23> * #1975 <https://github.com/pmd/pmd/pull/1975>: [plsql] TRIM function with record type variables - Piotr Szymanski <https://github.com/szyman23> * #1976 <https://github.com/pmd/pmd/pull/1976>: [plsql] Fix for mistaking / for MultiplicativeExpression - Piotr Szymanski <https://github.com/szyman23> * #1977 <https://github.com/pmd/pmd/pull/1977>: [plsql] fix for skipping sql starting with WITH - Piotr Szymanski <https://github.com/szyman23> * #1986 <https://github.com/pmd/pmd/pull/1986>: [plsql] Fix for cursors in anonymous blocks - Piotr Szymanski <https://github.com/szyman23> * #1994 <https://github.com/pmd/pmd/pull/1994>: [core] Resolve pmd-report failure when java folder in filepath - Amish Shah <https://github.com/shahamish150294> * #2015 <https://github.com/pmd/pmd/pull/2015>: [java] Update doc for unused formal parameter - Amish Shah <https://github.com/shahamish150294> |
|
From: Andreas D. <and...@ad...> - 2019-09-12 18:13:46
|
Hi, offline installation files (aka update site zip-archives) are available under https://github.com/pmd/pmd-eclipse-plugin/releases or https://dl.bintray.com/pmd/pmd-eclipse-plugin/zipped/ However, you are looking for a version, that is compatible with eclipse 3.4 (Ganymed). According to wikipedia (https://en.wikipedia.org/wiki/Eclipse_(software)#Releases) this is now more than 10 years old. There is not even online help available anymore: https://help.eclipse.org/ganymed/index.jsp The current PMD Eclipse Plugin should (I write should, because I don't test such old software) still work with Juno, which is eclipse 3.8/4.2 and might be changed to a newer version at any time. The alternative PMD Eclipse Plugin https://github.com/acanda/eclipse-pmd/ seems to support Indigo, which is Eclipse 3.7. You can try this, maybe you have luck and it is still compatible. In other words: there is no recent pmd eclipse plugin, that I'm aware of, that works today with eclipse 3.4. You can have a look at older versions and try each one of them, until one version works: * https://dl.bintray.com/pmd/pmd-eclipse-plugin/zipped/ * https://sourceforge.net/projects/pmd/files/pmd-eclipse/update-site/old/ * https://sourceforge.net/projects/pmd/files/pmd-eclipse/ Regards, Andreas Am 10.09.19 um 09:39 schrieb P, Ramya Smruti: > > Hi PMD Team, > > > > Could you please share the offline installation file for PMD that > supports eclipse 3.4. > > > > We are using IBM’s IID which is built on eclipse 3.4 and java 1.7.0. > > > > Please share the offline installation file as IID doesn’t have market > place. > > > > Attached are the errors I am getting, downloaded offline installation > zip from the below location, and on workbench start up getting > attached error, which says activation failed. > > > > https://github.com/pmd/pmd-eclipse-plugin/releases > > > > > > > > Thanks, > > Ramyasmruti P > > *C*ommunications, *M*edia and *E*ntertainment Group | *CGI*** > > SAFe^® Practitioner > > *E-Mail: *ram...@cg... <mailto:ram...@cg...> > > *Cell: *+91.974.236.6523*| Direct: *+91 80 6642 4059*| VOIP: *+1 866 > 354 9295 x 8014059 > > *Address:*CGI, Tower 2, #95/1 & 95/2, Electronic City - Phase 1, > Bangalore, India - 560 100 > > *Vacation Alert: Sep 2^nd , Oct 26^th .* > > > > > > _______________________________________________ > Pmd-devel mailing list > Pmd...@li... > https://lists.sourceforge.net/lists/listinfo/pmd-devel |
|
From: P, R. S. <ram...@cg...> - 2019-09-10 08:41:40
|
Hi PMD Team, Could you please share the offline installation file for PMD that supports eclipse 3.4. We are using IBM's IID which is built on eclipse 3.4 and java 1.7.0. Please share the offline installation file as IID doesn't have market place. Attached are the errors I am getting, downloaded offline installation zip from the below location, and on workbench start up getting attached error, which says activation failed. https://github.com/pmd/pmd-eclipse-plugin/releases Thanks, Ramyasmruti P Communications, Media and Entertainment Group | CGI SAFe(r) Practitioner E-Mail: ram...@cg...<mailto:ram...@cg...> Cell: +91.974.236.6523 | Direct: +91 80 6642 4059 | VOIP: +1 866 354 9295 x 8014059 Address: CGI, Tower 2, #95/1 & 95/2, Electronic City - Phase 1, Bangalore, India - 560 100 Vacation Alert: Sep 2nd, Oct 26th. |
|
From: Andreas D. <and...@ad...> - 2019-09-02 18:07:27
|
Hi Jeffrey, sorry for the late response - vacation time. You could use a custom XSLT in order to achieve this. If you use output format "xslt", you can provide a XSLT file, from which PMD's XML output is transformed. https://pmd.github.io/latest/pmd_userdocs_cli_reference.html#available-report-formats The commandline should look something like: ./run.sh pmd -d src -R your-ruleset.xml -f xslt -property xsltFilename=myreport.xslt -r report.html You can have a look at some sample xslt files here: https://github.com/pmd/pmd/tree/master/pmd-core/etc/xslt https://github.com/pmd/pmd/blob/master/pmd-core/etc/xslt/pmd-report.xslt looks like a good canditate to start modifying to your needs. Hope that helps, Andreas Am 21.08.19 um 20:11 schrieb Jeffrey Samson: > > Hi Andreas, > > > I'm currently using the PMD tool you've contributed to and I had a > question about its functionality. Right now I have it set to > outputting a html and I want to edit that html's format so that > whenever the PMD is run it outputs a html in that modified format. Is > there any way to do this? > > > Thank you, > > > Jeffrey Samson > > > |
|
From: Rory O'D. <ror...@or...> - 2019-08-24 16:36:03
|
Hi Andreas,
*JDK 13 is now in the Release Candidate Phase
*
Per the JDK 13 schedule [1], we are now in the Release Candidate phase.
The stabilization repository, jdk/jdk13, is open for P1 bug fixes per
the JDK Release Process (JEP 3) [2].
All changes require approval via the Fix-Request Process [3].
For more details, see Mark Reinhold's email to jdk-dev mailing list [4]
* Milestone Schedule:
o GAC - Aug 22, 2019
o GAR - Sept 5, 2019
o GA - Sept 17, 2019
**OpenJDK 14 *EA build 11 is now available at **http://jdk.java.net/14**
*
* These early access, open source builds are provided under the GNU
General Public License, version 2, with the Classpath Exception
<http://openjdk.java.net/legal/gplv2+ce.html>.
* Release Notes
o http://jdk.java.net/14/release-notes
* JEPs targeted to JDK 14
o JEP 352 <http://openjdk.java.net/jeps/352> - Non-Volatile Mapped
Byte Buffers
* Significant changes since the last availability email:
o Build 10
+ 8226374: Restrict TLS signature schemes and named groups
+ 8227439: Turn off AOT by default
o Build 11
+ 8224974: Implement JEP 352
* Changes in this build
<http://hg.openjdk.java.net/jdk/jdk/log?rev=reverse%28%22jdk-14%2B10%22%3A%3A%22jdk-14%2B11%22-%22jdk-14%2B10%22%29&revcount=1000>
*jpackage EA - **Build 1 (2019/8/20) *
* This is an early access build of JEP 343: Packaging Tool
<https://openjdk.java.net/jeps/343>, aimed at testing a prototype
implementation of jpackage, which is a new tool for packaging
self-contained Java applications along with a Java Runtime Environment.
* Build 1 (2019/8/20) is now available http://jdk.java.net/jpackage/
* Please send feedback via e-mail to cor...@op...
<mailto:cor...@op...>
Regards,
Rory
[1] https://openjdk.java.net/projects/jdk/13/#Schedule
[2] https://openjdk.java.net/jeps/3
[3] https://openjdk.java.net/jeps/3#Fix-Request-Process
[4] https://mail.openjdk.java.net/pipermail/jdk-dev/2019-August/003250.html
--
Rgds,Rory O'Donnell
Quality Engineering Manager
Oracle EMEA , Dublin, Ireland
|
|
From: Rory O'D. <ror...@or...> - 2019-08-10 10:17:47
|
Hi Andreas,
*JDK 13 is now in the Release Candidate Phase - if you are aware of any
issues, please let us know.
*
Per the JDK 13 schedule [1], we are now in the Release Candidate phase.
The stabilization repository, jdk/jdk13, is open for P1 bug fixes per
the JDK Release Process (JEP 3) [2].
All changes require approval via the Fix-Request Process [3].
For more details, see Mark Reinhold's email to jdk-dev mailing list [4]
* Milestone Schedule:
o Initial RC Build 33 - Aug 9, 2019
o GAC - Aug 22, 2019
o GAR - Sept 5, 2019
o GA - Sept 17, 2019
*OpenJDK 13 build 33 is available at http://jdk.java.net/13/*
* These early access, open source builds are provided under the GNU
General Public License, version 2, with the Classpath Exception
<http://openjdk.java.net/legal/gplv2+ce.html>.
* Schedule, status & features
o http://openjdk.java.net/projects/jdk/13/
* Release Notes
o http://jdk.java.net/13/release-notes
* Bug fixes reported by Open Source Projects :
o JDK-8228764 - fixed in b32 -reported by Apache Tomcat
**OpenJDK 14 *EA build 9 is now available at **http://jdk.java.net/14**
*
* These early access, open source builds are provided under the GNU
General Public License, version 2, with the Classpath Exception
<http://openjdk.java.net/legal/gplv2+ce.html>.
* Release Notes
o http://jdk.java.net/14/release-notes
* JEPs targeted to JDK 14
o JEP 352 <http://openjdk.java.net/jeps/352> - Non-Volatile Mapped
Byte Buffers
* Changes in this build
<http://hg.openjdk.java.net/jdk/jdk/log?rev=reverse%28%22jdk-14%2B8%22%3A%3A%22jdk-14%2B9%22-%22jdk-14%2B8%22%29&revcount=1000>
* Bug fixes reported by Open Source Projects :
o JDK-8227170 - fixed in b8 -reported by Apache Ant
o JDK-8228485 - fixed in b8 -reported by JaCoCo
o JDK-8222791 - fixed in b7 -reported by Apache Lucene
*Project Panama Early-Access Builds*
* Build jdk-14-panama+1-15 (2019/8/8) is available at
http://jdk.java.net/panama/
* These early-access, open-source builds are provided under the GNU
General Public License, version 2, with the Classpath Exception
<http://openjdk.java.net/legal/gplv2+ce.html>.
Regards,
Rory
[1] https://openjdk.java.net/projects/jdk/13/#Schedule
[2] https://openjdk.java.net/jeps/3
[3] https://openjdk.java.net/jeps/3#Fix-Request-Process
[4] https://mail.openjdk.java.net/pipermail/jdk-dev/2019-August/003250.html
--
Rgds,Rory O'Donnell
Quality Engineering Manager
Oracle EMEA , Dublin, Ireland
|
|
From: Andreas D. <and...@pm...> - 2019-07-28 08:58:48
|
* Downloads: https://github.com/pmd/pmd/releases/tag/pmd_releases%2F6.17.0 * Documentation: https://pmd.github.io/pmd-6.17.0/ 28-July-2019 - 6.17.0 // The PMD team is pleased to announce PMD 6.17.0. This is a minor release. New and noteworthy Updated PMD Designer This PMD release ships a new version of the pmd-designer. For the changes, see PMD Designer Changelog <https://github.com/pmd/pmd-designer/releases/tag/6.17.0>. It contains a new feature to edit test cases directly within the designer. Any feedback is highly appreciated. Lua support Thanks to the contribution from Maikel Steneker <https://github.com/maikelsteneker>, and built on top of the ongoing efforts to fully support Antlr-based languages, PMD now has CPD support for Lua <https://www.lua.org/>. Being based on a proper Antlr grammar, CPD can: * ignore comments * honor comment-based suppressions <https://pmd.sourceforge.io/pmd-6.17.0/pmd_userdocs_cpd.html#suppression> Modified Rules * The Java rule |CloseResource| <https://pmd.sourceforge.io/pmd-6.17.0/pmd_rules_java_errorprone.html#closeresource> (|java-errorprone|) ignores now by default |java.io.ByteArrayInputStream| and |java.io.CharArrayWriter|. Such streams/writers do not need to be closed. * The Java rule |MissingStaticMethodInNonInstantiatableClass| <https://pmd.sourceforge.io/pmd-6.17.0/pmd_rules_java_errorprone.html#missingstaticmethodinnoninstantiatableclass> (|java-errorprone|) has now the new property |annotations|. When one of the private constructors is annotated with one of the annotations, then the class is not considered non-instantiatable anymore and no violation will be reported. By default, Spring’s |@Autowired| and Java EE’s |@Inject| annotations are recognized. Fixed Issues * core o #1913 <https://github.com/pmd/pmd/issues/1913>: [core] “-help” CLI option ends with status code != 0 * doc o #1896 <https://github.com/pmd/pmd/issues/1896>: [doc] Error in changelog 6.16.0 due to not properly closed rule tag o #1898 <https://github.com/pmd/pmd/issues/1898>: [doc] Incorrect code example for DoubleBraceInitialization in documentation on website o #1906 <https://github.com/pmd/pmd/issues/1906>: [doc] Broken link for adding own CPD languages o #1909 <https://github.com/pmd/pmd/issues/1909>: [doc] Sample usage example refers to deprecated ruleset “basic.xml” instead of “quickstart.xml” * java o #1910 <https://github.com/pmd/pmd/issues/1910>: [java] ATFD calculation problem * java-errorprone o #1749 <https://github.com/pmd/pmd/issues/1749>: [java] DD False Positive in DataflowAnomalyAnalysis o #1832 <https://github.com/pmd/pmd/issues/1832>: [java] False positives for MissingStaticMethodInNonInstantiatableClass when DI is used o #1921 <https://github.com/pmd/pmd/issues/1921>: [java] CloseResource false positive with ByteArrayInputStream * java-multithreading o #1903 <https://github.com/pmd/pmd/issues/1903>: [java] UnsynchronizedStaticFormatter doesn’t allow block-level synchronization when using allowMethodLevelSynchronization=true * plsql o #1902 <https://github.com/pmd/pmd/issues/1902>: [pslql] ParseException when parsing (+) * xml o #1666 <https://github.com/pmd/pmd/issues/1666>: [xml] wrong cdata rule description and examples External Contributions * #1869 <https://github.com/pmd/pmd/pull/1869>: [xml] fix #1666 wrong cdata rule description and examples - Artem <https://github.com/KroArtem> * #1892 <https://github.com/pmd/pmd/pull/1892>: [lua] [cpd] Added CPD support for Lua - Maikel Steneker <https://github.com/maikelsteneker> * #1905 <https://github.com/pmd/pmd/pull/1905>: [java] DataflowAnomalyAnalysis Rule in right order - YoonhoChoi96 <https://github.com/YoonhoChoi96> * #1908 <https://github.com/pmd/pmd/pull/1908>: [doc] Update ruleset filename from deprecated basic.xml to quickstart.xml - crunsk <https://github.com/crunsk> * #1916 <https://github.com/pmd/pmd/pull/1916>: [java] Exclude Autowired and Inject for MissingStaticMethodInNonInstantiatableClass - AnthonyKot <https://github.com/AnthonyKot> * #1917 <https://github.com/pmd/pmd/pull/1917>: [core] Add ‘no error’ return option, and assign it to the cli when the help command is invoked - Renato Oliveira <https://github.com/renatoliveira> |
|
From: Rory O'D. <ror...@or...> - 2019-07-22 09:57:19
|
Hi Andreas, Any issues to report on JDK 13 , would like to hear the status as we are now in rampdown phase 2 ? **OpenJDK builds *- JDK 13 Early Access build 30 **is now available **at : - jdk.java.net/13/* * Per the JDK 13 schedule [1], we are now in Rampdown Phase Two. o For more details , see Mark Reinhold's email to jdk-dev mailing list [2] o The overall feature set is frozen, no further JEPs will be targeted to this release. o Per the JDK Release Process [3] we now turn our focus to P1 and P2 bugs. * I want to draw your attention to some noteable changes in previous builds of JDK 13. These changes are important for those that develop/maintain their own socket implementation (java.net.SocketImpl) or use the setSocketImplFactory or setSocketFactory APIs to change the system-wide socket implementation: o http://jdk.java.net/13/release-notes#JDK-8224477 - delivered in build 23 o http://jdk.java.net/13/release-notes#JDK-8216978 - delivered in build 20 o http://jdk.java.net/13/release-notes#JDK-8220493 - delivered in build 13 **OpenJDK builds *- JDK 14 Early Access build 6 is **now available **at : - jdk.java.net/14/* * These early-access, open-source builds are provided under the o GNU General Public License, version 2, with the Classpath Exception <http://openjdk.java.net/legal/gplv2+ce.html>. * Changes of interest since last email o 8225239: Refactor NetworkInterface lookups o 8226409: Enable argument profiling for sun.misc.Unsafe.put*/get* * JEP targeted to JDK 14: o JEP352: Non-Volatile Mapped * Bug fixes reported by Open Source Projects : o JDK-8227080 - fixed in b5 -reported by Eclipse Jetty The Java Crypto Roadmap <https://www.java.com/en/jre-jdk-cryptoroadmap.html> has been updated : * Released - 16-July-2019 - Release Affected JDK 7u231 - Disabled Kerberos DES encryption by default * Targeted Date - 2020 - Targeted Release - JDK 8 - Transport Layer Security (TLS) 1.3 Rgds,Rory [1] http://openjdk.java.net/projects/jdk/13/#Schedule [2] https://mail.openjdk.java.net/pipermail/jdk-dev/2019-July/003170.html -- Rgds, Rory O'Donnell Quality Engineering Manager Oracle EMEA, Dublin, Ireland |
|
From: Rory O'D. <ror...@or...> - 2019-07-08 12:47:34
|
Hi Andreas, **OpenJDK* 13 Early Access build **28 is now available **at : - jdk.java.net/13/* * These early-access, open-source builds are provided under the GNU General Public License, version 2, with the Classpath Exception <http://openjdk.java.net/legal/gplv2+ce.html>. * Changes in this build 28 [1] *Reminder of a change in b24 - A jrt URI can only encode paths to files in /modules tree **(JDK-8224946 <https://bugs.openjdk.java.net/browse/JDK-8224946>)* A |jrt| URL is a hierarchical URI with syntax |jrt:/[$MODULE[/$PATH]]|. When using the |jrt| file system, a |java.net.URI| object can be created with the |java.nio.file.Path::toUri| method to encode a normalized path to a file in the |/modules| tree. A |jrt| URL cannot encode a path to a file in the |/packages| tree. The |jrt| file system provider has changed in this release so that |toUri| fails with |IOError| when it is not possible to encode the file path as a jrt URI. *This change may impact tools have been making use of URLs that are not compliant with the syntax. Tools with paths to files in **|/packages|**can use the **|toRealPath()|**method to obtain the real path (in **|/modules|**) before attempting to convert the file path to a URI.* *OpenJDK 14 **Early Access build 4 **is now available **at : - jdk.java.net/14/* * These early-access, open-source builds are provided under the GNU General Public License, version 2, with the Classpath Exception <http://openjdk.java.net/legal/gplv2+ce.html>. * Changes in this build [2] *Project Valhalla "L-World Inline Types" Early-Access Builds* * Build jdk-14-valhalla+1-8 * These early-access builds are provided under the GNU General Public License, version 2, with the Classpath Exception <http://openjdk.java.net/legal/gplv2+ce.html>. * Please send feedback via e-mail to val...@op... <mailto:val...@op...>. To send e-mail to this address you must first subscribe to the mailing list. *The Skara tooling is now open source *[3] we are happy to announce that the tooling for project Skara is now open source and available at * https://github.com/openjdk/skara <https://github.com/openjdk/skara.> The Skara tooling includes both server-side tools (so called "bots") as well as several command-line tools ** If you have any questions, feedback etc. send them to Skara mailing list [4] Rgds, Rory [1] JDK 13 - Changes in b28 here <http://hg.openjdk.java.net/jdk/jdk/log?rev=reverse%28%22jdk-13%2B27%22%3A%3A%22jdk-13%2B28%22-%22jdk-13%2B27%22%29&revcount=1000> [2] JDK 14 - Changes in b4 here <http://hg.openjdk.java.net/jdk/jdk/log?rev=reverse%28%22jdk-14%2B3%22%3A%3A%22jdk-14%2B4%22-%22jdk-14%2B3%22%29&revcount=1000> [3] https://mail.openjdk.java.net/pipermail/skara-dev/2019-June/000047.html [4] https://mail.openjdk.java.net/mailman/listinfo/skara-dev -- Rgds, Rory O'Donnell Quality Engineering Manager Oracle EMEA, Dublin, Ireland |
|
From: Andreas D. <and...@pm...> - 2019-07-06 08:56:12
|
Hi Igor, thanks for letting us know. I've created https://github.com/pmd/pmd/issues/1906 for this. Add an issue in the main repo is usually the right place. The page you are searching is https://pmd.github.io/latest/pmd_devdocs_major_adding_new_cpd_language.html - it's located in the menu under "Developer Documentation / Major contributions". Regards, Andreas Am 05.07.19 um 10:06 schrieb Igor Moreno Santos: > Hi, > > In this page: > https://pmd.github.io/latest/pmd_userdocs_cpd.html > > there is a broken link in "here": > > Your own language is missing? See how to add it here > <https://pmd.github.io/pmd_devdocs_major_adding_new_cpd_language.html>. > > > Is this the right place so submit this kind of issue? Maybe issues > should be allowed in this repo: > https://github.com/pmd/pmd.github.io > > Where do I find information about how to add support for another language? > > Thank you. > Regards, > Igor Moreno |
|
From: Igor M. S. <igo...@gm...> - 2019-07-05 08:06:48
|
Hi, In this page: https://pmd.github.io/latest/pmd_userdocs_cpd.html there is a broken link in "here": Your own language is missing? See how to add it here <https://pmd.github.io/pmd_devdocs_major_adding_new_cpd_language.html>. Is this the right place so submit this kind of issue? Maybe issues should be allowed in this repo: https://github.com/pmd/pmd.github.io Where do I find information about how to add support for another language? Thank you. Regards, Igor Moreno |
|
From: Andreas D. <and...@pm...> - 2019-06-30 09:08:29
|
* Downloads: https://github.com/pmd/pmd/releases/tag/pmd_releases%2F6.16.0 * Documentation: https://pmd.github.io/pmd-6.16.0/ 30-June-2019 - 6.16.0 The PMD team is pleased to announce PMD 6.16.0. This is a minor release. Table Of Contents * New and noteworthy <https://sourceforge.net/p/pmd/news/2019/06/pmd-6160-released/#new-and-noteworthy> o Updated PMD Designer <https://sourceforge.net/p/pmd/news/2019/06/pmd-6160-released/#updated-pmd-designer> o PLSQL Grammar Updates <https://sourceforge.net/p/pmd/news/2019/06/pmd-6160-released/#plsql-grammar-updates> o New Rules <https://sourceforge.net/p/pmd/news/2019/06/pmd-6160-released/#new-rules> o Modified Rules <https://sourceforge.net/p/pmd/news/2019/06/pmd-6160-released/#modified-rules> o Deprecated Rules <https://sourceforge.net/p/pmd/news/2019/06/pmd-6160-released/#deprecated-rules> * Fixed Issues <https://sourceforge.net/p/pmd/news/2019/06/pmd-6160-released/#fixed-issues> * API Changes <https://sourceforge.net/p/pmd/news/2019/06/pmd-6160-released/#api-changes> o Deprecated APIs <https://sourceforge.net/p/pmd/news/2019/06/pmd-6160-released/#deprecated-apis> + In ASTs <https://sourceforge.net/p/pmd/news/2019/06/pmd-6160-released/#in-asts> * External Contributions <https://sourceforge.net/p/pmd/news/2019/06/pmd-6160-released/#external-contributions> New and noteworthy Updated PMD Designer This PMD release ships a new version of the pmd-designer. For the changes, see PMD Designer Changelog <https://github.com/pmd/pmd-designer/releases/tag/6.16.0>. PLSQL Grammar Updates The grammar has been updated to support inline constraints in CREATE TABLE statements. Additionally, the CREATE TABLE statement may now be followed by physical properties and table properties. However, these properties are skipped over during parsing. The CREATE VIEW statement now supports subquery views. The EXTRACT function can now be parsed correctly. It is used to extract values from a specified datetime field. Also date time literals are parsed now correctly. The CASE expression can now be properly used within SELECT statements. Table aliases are now supported when specifying columns in INSERT INTO clauses. New Rules * The Java rule |DoubleBraceInitialization| <https://pmd.github.io/pmd-6.16.0/pmd_rules_java_bestpractices.html#doublebraceinitialization> (|java-bestpractices|) detects non static initializers in anonymous classes also known as "double brace initialization". This can be problematic, since a new class file is generated and object holds a strong reference to the surrounding class. Note: This rule is also part of the Java quickstart ruleset (|rulesets/java/quickstart.xml|). Modified Rules * The Java rule |UnusedPrivateField| <https://pmd.github.io/pmd-6.16.0/pmd_rules_java_bestpractices.html#unusedprivatefield> (|java-bestpractices|) now ignores by default fields, that are annotated with the Lombok experimental annotation |@Delegate|. This can be customized with the property |ignoredAnnotations|. * The Java rule |SingularField| <https://pmd.github.io/pmd-6.16.0/pmd_rules_java_design.html#singularfield> (|java-design|) now ignores by default fields, that are annotated with the Lombok experimental annotation |@Delegate|. This can be customized with the property |ignoredAnnotations|. * The Java rules |UnsynchronizedStaticFormatter| <https://pmd.github.io/pmd-6.16.0/pmd_rules_java_multithreading.html#unsynchronizedstaticformatter> and |UnsynchronizedStaticDateFormatter| <https://pmd.github.io/pmd-6.16.0/pmd_rules_java_multithreading.html#unsynchronizedstaticdateformatter> (|java-multithreading|) now prefer synchronized blocks by default. They will raise a violation, if the synchronization is implemented on the method level. To allow the old behavior, the new property |allowMethodLevelSynchronization| can be enabled. * The Java rule |UseUtilityClass| <https://pmd.github.io/pmd-6.16.0/pmd_rules_java_design.html#useutilityclass> (|java-design|) has a new property |ignoredAnnotations|. By default, classes that are annotated with Lombok's |@UtilityClass| are ignored now. * The Java rule |NonStaticInitializer| <https://pmd.github.io/pmd-6.16.0/pmd_rules_java_errorprone.html#nonstaticinitializer> (|java-errorprone|) does not report non static initializers in anonymous classes anymore. For this use case, there is a new rule now: |DoubleBraceInitialization| <https://pmd.github.io/pmd-6.16.0/pmd_rules_java_bestpractices.html#doublebraceinitialization> (|java-bestpractices|). * The Java rule |CommentDefaultAccessModifier| <https://pmd.github.io/pmd-6.16.0/pmd_rules_java_codestyle.html#commentdefaultaccessmodifier> (|java-errorprone|) now by default searches for any unclosed |java.lang.AutoCloseable| resource. This includes now the standard |java.io.*Stream| classes. Previously only SQL-related resources were considered by this rule. The types can still be configured via the |types| property. Some resources do not need to be closed (e.g. |ByteArrayOutputStream|). These exceptions can be configured via the new property |allowedResourceTypes|. In order to restore the old behaviour, just remove the type |java.lang.AutoCloseable| from the |types| property and keep the remaining SQL-related classes. Deprecated Rules * The Java rule |AvoidFinalLocalVariable| <https://pmd.github.io/pmd-6.16.0/pmd_rules_java_codestyle.html#avoidfinallocalvariable> (|java-codestyle|) has been deprecated and will be removed with PMD 7.0.0. The rule is controversial and also contradicts other existing rules such as |LocalVariableCouldBeFinal| <https://pmd.github.io/pmd-6.16.0/pmd_rules_java_codestyle.html#localvariablecouldbefinal>. If the goal is to avoid defining constants in a scope smaller than the class, then the rule |AvoidDuplicateLiterals| <https://pmd.github.io/pmd-6.16.0/pmd_rules_java_errorprone.html#avoidduplicateliterals> should be used instead. Fixed Issues * apex o #1664 <https://github.com/pmd/pmd/issues/1664>: [apex] False positive ApexSharingViolationsRule, unsupported Apex feature * java o #1848 <https://github.com/pmd/pmd/issues/1848>: [java] Local classes should preserve their modifiers * java-bestpractices o #1703 <https://github.com/pmd/pmd/issues/1703>: [java] UnusedPrivateField on member annotated with lombok @Delegate o #1845 <https://github.com/pmd/pmd/issues/1845>: [java] Regression in MethodReturnsInternalArray not handling enums o #1854 <https://github.com/pmd/pmd/issues/1854>: [java] Rule to check for double brace initialisation * java-codestyle o #1612 <https://github.com/pmd/pmd/issues/1612>: [java] Deprecate AvoidFinalLocalVariable o #1880 <https://github.com/pmd/pmd/issues/1880>: [java] CommentDefaultAccessModifier should be configurable for top-level classes * java-design o #1094 <https://github.com/pmd/pmd/issues/1094>: [java] UseUtilityClass should be LombokAware * java-errorprone o #1000 <https://github.com/pmd/pmd/issues/1000>: [java] The rule CloseResource should deal with IO stream as default o #1853 <https://github.com/pmd/pmd/issues/1853>: [java] False positive for NonStaticInitializer in anonymous class * java-multithreading o #1814 <https://github.com/pmd/pmd/issues/1814>: [java] UnsynchronizedStaticFormatter documentation and implementation wrong o #1815 <https://github.com/pmd/pmd/issues/1815>: [java] False negative in UnsynchronizedStaticFormatter * plsql o #1828 <https://github.com/pmd/pmd/issues/1828>: [plsql] Parentheses stopped working o #1850 <https://github.com/pmd/pmd/issues/1850>: [plsql] Parsing errors with INSERT using returning or records and TRIM expression o #1873 <https://github.com/pmd/pmd/issues/1873>: [plsql] Expression list not working o #1878 <https://github.com/pmd/pmd/issues/1878>: [pslql] ParseException when parsing USING o #1879 <https://github.com/pmd/pmd/issues/1879>: [pslql] ParseException when parsing LEFT JOIN API Changes Deprecated APIs Reminder: Please don't use members marked with the annotation |InternalApi| <https://javadoc.io/page/net.sourceforge.pmd/pmd-core/6.16.0/net/sourceforge/pmd/annotation/InternalApi.html#>, as they will likely be removed, hidden, or otherwise intentionally broken with 7.0.0. In ASTs As part of the changes we'd like to do to AST classes for 7.0.0, we would like to hide some methods and constructors that rule writers should not have access to. The following usages are now deprecated *in the Java AST* (with other languages to come): * Manual instantiation of nodes. *Constructors of node classes are deprecated* and marked |InternalApi| <https://javadoc.io/page/net.sourceforge.pmd/pmd-core/6.16.0/net/sourceforge/pmd/annotation/InternalApi.html#>. Nodes should only be obtained from the parser, which for rules, means that never need to instantiate node themselves. Those constructors will be made package private with 7.0.0. * *Subclassing of abstract node classes, or usage of their type*. Version 7.0.0 will bring a new set of abstractions that will be public API, but the base classes are and will stay internal. You should not couple your code to them. * In the meantime you should use interfaces like |JavaNode| <https://javadoc.io/page/net.sourceforge.pmd/pmd-java/6.16.0/net/sourceforge/pmd/lang/java/ast/JavaNode.html#> or |Node| <https://javadoc.io/page/net.sourceforge.pmd/pmd-core/6.16.0/net/sourceforge/pmd/lang/ast/Node.html#>, or the other published interfaces in this package, to refer to nodes generically. * Concrete node classes will *be made final* with 7.0.0. * Setters found in any node class or interface. *Rules should consider the AST immutable*. We will make those setters package private with 7.0.0. Please look at |net.sourceforge.pmd.lang.java.ast| <https://javadoc.io/page/net.sourceforge.pmd/pmd-java/6.16.0/net/sourceforge/pmd/lang/java/ast/package-summary.html#> to find out the full list of deprecations. External Contributions * #1482 <https://github.com/pmd/pmd/pull/1482>: [java] Explain the existence of AvoidFinalLocalVariable in it's description - Karl-Philipp Richter <https://github.com/krichter722> * #1792 <https://github.com/pmd/pmd/pull/1792>: [java] Added lombok.experimental to AbstractLombokAwareRule - jakivey32 <https://github.com/jakivey32> * #1808 <https://github.com/pmd/pmd/pull/1808>: [plsql] Fix PL/SQL Syntax errors - Hugo Araya Nash <https://github.com/kabroxiko> * #1829 <https://github.com/pmd/pmd/pull/1829>: [java] Fix false negative in UnsynchronizedStaticFormatter - Srinivasan Venkatachalam <https://github.com/Srini1993> * #1847 <https://github.com/pmd/pmd/pull/1847>: [java] Regression in MethodReturnsInternalArray not handling enums - Artem <https://github.com/KroArtem> * #1863 <https://github.com/pmd/pmd/pull/1863>: [plsql] Add Table InlineConstraint - Hugo Araya Nash <https://github.com/kabroxiko> * #1864 <https://github.com/pmd/pmd/pull/1864>: [plsql] Add support for Subquery Views - Hugo Araya Nash <https://github.com/kabroxiko> * #1865 <https://github.com/pmd/pmd/pull/1865>: [plsql] Add Support for Extract Expression - Hugo Araya Nash <https://github.com/kabroxiko> * #1874 <https://github.com/pmd/pmd/pull/1874>: [plsql] Add parenthesis equation support for Update - Hugo Araya Nash <https://github.com/kabroxiko> * #1876 <https://github.com/pmd/pmd/pull/1876>: [plsql] Datetime support for queries - Hugo Araya Nash <https://github.com/kabroxiko> * #1883 <https://github.com/pmd/pmd/pull/1883>: [plsql] Fix #1873 Expression list not working - Hugo Araya Nash <https://github.com/kabroxiko> * #1884 <https://github.com/pmd/pmd/pull/1884>: [plsql] fix #1878 Support explicit INNER word for INNER JOIN - Hugo Araya Nash <https://github.com/kabroxiko> * #1885 <https://github.com/pmd/pmd/pull/1885>: [plsql] Correct case expression - Hugo Araya Nash <https://github.com/kabroxiko> * #1886 <https://github.com/pmd/pmd/pull/1886>: [plsql] Support table alias for Insert Clause - Hugo Araya Nash <https://github.com/kabroxiko> |
|
From: Rory O'D. <ror...@or...> - 2019-06-16 05:41:43
|
Hi Andreas, *JDK 13 Early Access build **25 is now available **at : - jdk.java.net/13/* * Per the JDK 13 schedule [1], we are now in Rampdown Phase One. o For more details , see Mark Reinhold's email to jdk-dev mailing list [2] o The overall feature set is frozen, no further JEPs will be targeted to this release. * Changes in this build 25 [4] *Request for feedback on JEP 353 integrated in b24 * JEP 353: Reimplement the Legacy Socket API" has been integrated into jdk-13+24. It would be very useful if applications or libraries using java.net.Socket or java.net.ServerSocket APIs could test with this build and report any issues found. The JEP provides information on the system property that can be used to switch back to the old implementation and that may be useful to check for behavior differences between the old and new implementation. It would be very useful to get feedback via the OpenJDK net-dev mailing list, bugs via the usual channel. *Updates to Release Notes since last email* * b25 - Support Kerberos cross-realm referrals (RFC 6806)(JDK-8215032 <https://bugs.openjdk.java.net/browse/JDK-8215032>) * b25 - Add -XX:SoftMaxHeapSize flag(JDK-8222145 <https://bugs.openjdk.java.net/browse/JDK-8222145>) * b24 - Reimplement the Legacy Socket API(JDK-8221481 <https://bugs.openjdk.java.net/browse/JDK-8221481>) o see above request for feedback * b24 - Deprecated rmic tool For Removal(JDK-8217412 <https://bugs.openjdk.java.net/browse/JDK-8217412>) * b24 - New String constants for Canonical XML 1.1 URIs(JDK-8224767 <https://bugs.openjdk.java.net/browse/JDK-8224767>) * b23 - Support for Unicode 12.1 (JDK-8221431 <https://bugs.openjdk.java.net/browse/JDK-8221431>) * b21 - Upgrade CLDR to Version 35.1 (JDK-8221432 <https://bugs.openjdk.java.net/browse/JDK-8221432>) *OpenJDK 14 **Early Access build 1 **is now available **at : - jdk.java.net/14/* * These early-access, open-source builds are provided under the GNU General Public License, version 2, with the Classpath Exception <http://openjdk.java.net/legal/gplv2+ce.html>. * Changes in this build [5] ** Rgds, Rory [1] http://openjdk.java.net/projects/jdk/13/#Schedule <http://openjdk.java.net/projects/jdk/12/#Schedule> [2] https://mail.openjdk.java.net/pipermail/jdk-dev/2019-June/003060.html [3] http://jdk.java.net/13/release-notes [4] JDK 13 - Changes in b25 here <http://hg.openjdk.java.net/jdk/jdk/log?rev=reverse%28%22jdk-13%2B24%22%3A%3A%22jdk-13%2B25%22-%22jdk-13%2B24%22%29&revcount=1000> [5] JDK 14 - Changes in b1 here <http://hg.openjdk.java.net/jdk/jdk/log?rev=reverse%28%22jdk-14%2B0%22%3A%3A%22jdk-14%2B1%22-%22jdk-14%2B0%22%29&revcount=1000> -- Rgds,Rory O'Donnell Quality Engineering Manager Oracle EMEA, Dublin,Ireland |
|
From: Rory O'D. <ror...@or...> - 2019-05-31 06:55:15
|
Hi Andreas,
*OpenJDK builds *- JDK 13 - Early Access build 23 is available at
http://jdk.java.net/13/
* These early-access , open-source builds are provided under the
o GNU General Public License, version 2, with the Classpath
Exception <http://openjdk.java.net/legal/gplv2+ce.html>.
* Changes in this build
<http://hg.openjdk.java.net/jdk/jdk/log?rev=reverse%28%22jdk-13%2B22%22%3A%3A%22jdk-13%2B23%22-%22jdk-13%2B22%22%29&revcount=1000>
* Release notes [1]
*Significant changes since the last availability email*
* build 23
o Support for Unicode 12.1 (JDK-8221431
<https://bugs.openjdk.java.net/browse/JDK-8221431>)
o Add new keytool -showinfo -tls command for displaying TLS
configuration information (JDK-8219861
<https://bugs.openjdk.java.net/browse/JDK-8219861>)
* build 22
o New methods for creating DOM and SAX factories with Namespace
support (JDK-8219692
<https://bugs.openjdk.java.net/browse/JDK-8219692>)
o Removal of two DocuSign root CA certificates (JDK-8223499
<https://bugs.openjdk.java.net/browse/JDK-8223499>)
* build 21
o JDWP support for IPv6 (JDK-8184770
<https://bugs.openjdk.java.net/browse/JDK-8184770>)
o Change the mechanism by which JDK loads the platform-specific
AWT Toolkit (JDK-8212700
<https://bugs.openjdk.java.net/browse/JDK-8212700>)
o Upgrade CLDR to Version 35.1 (JDK-8221432
<https://bugs.openjdk.java.net/browse/JDK-8221432>)
o xConfigurable Read Timeout for CRLs (JDK-8191808
<https://bugs.openjdk.java.net/browse/JDK-8191808>)
o Removal of two Comodo root CA certificates (JDK-8222136
<https://bugs.openjdk.java.net/browse/JDK-8222136>)
Bug fixes for issues reported by Open Source Projects
* build 22
o OutOfMemory on compiling with darcula.jar in classpath
(JDK-8222807 <https://bugs.openjdk.java.net/browse/JDK-8222807>)
* build 21
o java -version output and certain system properties contain
"null" text in their values (JDK-8223695
<https://bugs.openjdk.java.net/browse/JDK-8223695>)
* build 20
o assert(Compile::current()->live_nodes() <
Compile::current()->max_node_limit()) failed: Live Node limit
exceeded limit (JDK-8219520
<https://bugs.openjdk.java.net/browse/JDK-8219520>)
o C2: MemNode::can_see_stored_value() ignores casts which carry
control dependency (JDK-8219902
<https://bugs.openjdk.java.net/browse/JDK-8219902>)
o New fix of the deadlock in sun.security.ssl.SSLSocketImpl
(JDK-8219991 <https://bugs.openjdk.java.net/browse/JDK-8219991>)
JEP updates since last email
* JEP 350: Dynamic CDS Archives <http://openjdk.java.net/jeps/350> was
*Integrated*.
* JEP 351: ZGC: Uncommit Unused Memory
<http://openjdk.java.net/jeps/351> was *Integrated*.
* JEP 353: Reimplement the Legacy Socket API
<http://openjdk.java.net/jeps/353> was*Targetted* JDK 13.
* JEP 355: Text Blocks (Preview)
<http://openjdk.java.net/jeps/355> was *Proposed to target* JDK 13.
Rgds,Rory
[1] http://jdk.java.net/13/release-notes
--
Rgds, Rory O'Donnell
Quality Engineering Manager
Oracle EMEA, Dublin, Ireland
|
|
From: Andreas D. <and...@pm...> - 2019-05-26 09:54:48
|
* Downloads: https://github.com/pmd/pmd/releases/tag/pmd_releases%2F6.15.0 * Documentation: https://pmd.github.io/pmd-6.15.0/ 26-May-2019 - 6.15.0 The PMD team is pleased to announce PMD 6.15.0. This is a minor release. Table Of Contents * New and noteworthy <https://sourceforge.net/p/pmd/news/2019/05/pmd-6150-released/#new-and-noteworthy> o Enhanced Matlab support <https://sourceforge.net/p/pmd/news/2019/05/pmd-6150-released/#enhanced-matlab-support> o Enhanced C++ support <https://sourceforge.net/p/pmd/news/2019/05/pmd-6150-released/#enhanced-c++-support> o New Rules <https://sourceforge.net/p/pmd/news/2019/05/pmd-6150-released/#new-rules> o Modified Rules <https://sourceforge.net/p/pmd/news/2019/05/pmd-6150-released/#modified-rules> o Deprecated Rules <https://sourceforge.net/p/pmd/news/2019/05/pmd-6150-released/#deprecated-rules> * Fixed Issues <https://sourceforge.net/p/pmd/news/2019/05/pmd-6150-released/#fixed-issues> * API Changes <https://sourceforge.net/p/pmd/news/2019/05/pmd-6150-released/#api-changes> o Deprecated APIs <https://sourceforge.net/p/pmd/news/2019/05/pmd-6150-released/#deprecated-apis> + For removal <https://sourceforge.net/p/pmd/news/2019/05/pmd-6150-released/#for-removal> * External Contributions <https://sourceforge.net/p/pmd/news/2019/05/pmd-6150-released/#external-contributions> New and noteworthy Enhanced Matlab support Thanks to the contributions from Maikel Steneker <https://github.com/maikelsteneker> CPD for Matlab can now parse Matlab programs which use the question mark operator to specify access to class members: classdef Class1 properties (SetAccess = ?Class2) CPD also understands now double quoted strings, which are supported since version R2017a of Matlab: str = "This is a string" Enhanced C++ support CPD now supports digit separators in C++ (language module "cpp"). This is a C++14 feature. Example: |auto integer_literal = 1'000'000;| The single quotes can be used to add some structure to large numbers. CPD also parses raw string literals now correctly (see #1784 <https://github.com/pmd/pmd/issues/1784>). New Rules * The new Apex rule |FieldNamingConventions| <https://pmd.github.io/pmd-6.15.0/pmd_rules_apex_codestyle.html#fieldnamingconventions> (|apex-codestyle|) checks the naming conventions for field declarations. By default this rule uses the standard Apex naming convention (Camel case), but it can be configured through properties. * The new Apex rule |FormalParameterNamingConventions| <https://pmd.github.io/pmd-6.15.0/pmd_rules_apex_codestyle.html#formalparameternamingconventions> (|apex-codestyle|) checks the naming conventions for formal parameters of methods. By default this rule uses the standard Apex naming convention (Camel case), but it can be configured through properties. * The new Apex rule |LocalVariableNamingConventions| <https://pmd.github.io/pmd-6.15.0/pmd_rules_apex_codestyle.html#localvariablenamingconventions> (|apex-codestyle|) checks the naming conventions for local variable declarations. By default this rule uses the standard Apex naming convention (Camel case), but it can be configured through properties. * The new Apex rule |PropertyNamingConventions| <https://pmd.github.io/pmd-6.15.0/pmd_rules_apex_codestyle.html#propertynamingconventions> (|apex-codestyle|) checks the naming conventions for property declarations. By default this rule uses the standard Apex naming convention (Camel case), but it can be configured through properties. * The new Java rule |UseShortArrayInitializer| <https://pmd.github.io/pmd-6.15.0/pmd_rules_java_codestyle.html#useshortarrayinitializer> (|java-codestyle|) searches for array initialization expressions, which can be written shorter. Modified Rules * The Apex rule |ClassNamingConventions| <https://pmd.github.io/pmd-6.15.0/pmd_rules_apex_codestyle.html#classnamingconventions> (|apex-codestyle|) can now be configured using various properties for the specific kind of type declarations (e.g. class, interface, enum). As before, this rule uses by default the standard Apex naming convention (Pascal case). * The Apex rule |MethodNamingConventions| <https://pmd.github.io/pmd-6.15.0/pmd_rules_apex_codestyle.html#methodnamingconventions> (|apex-codestyle|) can now be configured using various properties to differenciate e.g. static methods and test methods. As before, this rule uses by default the standard Apex naming convention (Camel case). * The Java rule |FieldNamingConventions| <https://pmd.github.io/pmd-6.15.0/pmd_rules_java_codestyle.html#fieldnamingconventions> (|java-codestyle|) now by default ignores the field |serialPersistentFields|. Since this is a field which needs to have this special name, no field naming conventions can be applied here. It is excluded the same way like |serialVersionUID| via the property |exclusions|. * The Java rule |CommentRequired| <https://pmd.github.io/pmd-6.15.0/pmd_rules_java_documentation.html#commentrequired> (|java-documentation|) has a new property |serialPersistentFieldsCommentRequired| with the default value "Ignored". This means that from now on comments for the field |serialPersistentFields| are not required anymore. You can change the property to restore the old behavior. * The Java rule |ProperLogger| <https://pmd.github.io/pmd-6.15.0/pmd_rules_java_errorprone.html#properlogger> (|java-errorprone|) has two new properties to configure the logger class (e.g. "org.slf4j.Logger") and the logger name of the special case, when the logger is not static. The name of the static logger variable was already configurable. The new property "loggerClass" allows to use this rule for different logging frameworks. This rule covers all the cases of the now deprecated rule |LoggerIsNotStaticFinal| <https://pmd.github.io/pmd-6.15.0/pmd_rules_java_errorprone.html#loggerisnotstaticfinal>. * The Java rule |CommentDefaultAccessModifier| <https://pmd.github.io/pmd-6.15.0/pmd_rules_java_codestyle.html#commentdefaultaccessmodifier> (|java-codestyle|) now reports also missing comments for top-level classes and annotations, that are package-private. Deprecated Rules * The Apex rule |VariableNamingConventions| <https://pmd.github.io/pmd-6.15.0/pmd_rules_apex_codestyle.html#variablenamingconventions> (|apex-codestyle|) has been deprecated and will be removed with PMD 7.0.0. The rule is replaced by the more general rules |FieldNamingConventions| <https://pmd.github.io/pmd-6.15.0/pmd_rules_apex_codestyle.html#fieldnamingconventions>, |FormalParameterNamingConventions| <https://pmd.github.io/pmd-6.15.0/pmd_rules_apex_codestyle.html#formalparameternamingconventions>, |LocalVariableNamingConventions| <https://pmd.github.io/pmd-6.15.0/pmd_rules_apex_codestyle.html#localvariablenamingconventions>, and |PropertyNamingConventions| <https://pmd.github.io/pmd-6.15.0/pmd_rules_apex_codestyle.html#propertynamingconventions>. * The Java rule |LoggerIsNotStaticFinal| <https://pmd.github.io/pmd-6.15.0/pmd_rules_java_errorprone.html#loggerisnotstaticfinal> (|java-errorprone|) has been deprecated and will be removed with PMD 7.0.0. The rule is replaced by |ProperLogger| <https://pmd.github.io/pmd-6.15.0/pmd_rules_java_errorprone.html#properlogger>. Fixed Issues * apex o #1321 <https://github.com/pmd/pmd/issues/1321>: [apex] Should VariableNamingConventions require properties to start with a lowercase letter? o #1783 <https://github.com/pmd/pmd/issues/1783>: [apex] comments on constructor not recognized when the Class has inner class * cpp o #1784 <https://github.com/pmd/pmd/issues/1784>: [cpp] Improve support for raw string literals * dart o #1809 <https://github.com/pmd/pmd/issues/1809>: [dart] [cpd] Parse error with escape sequences * java o #1842 <https://github.com/pmd/pmd/issues/1842>: [java] Annotated module declarations cause parse error * java-bestpractices o #1738 <https://github.com/pmd/pmd/issues/1738>: [java] MethodReturnsInternalArray does not work in inner classes * java-codestyle o #1495 <https://github.com/pmd/pmd/issues/1495>: [java] Rule to detect overly verbose array initializiation o #1684 <https://github.com/pmd/pmd/issues/1684>: [java] Properly whitelist serialPersistentFields o #1804 <https://github.com/pmd/pmd/issues/1804>: [java] NPE in UnnecessaryLocalBeforeReturnRule * python o #1810 <https://github.com/pmd/pmd/issues/1810>: [python] [cpd] Parse error when using Python 2 backticks * matlab o #1830 <https://github.com/pmd/pmd/issues/1830>: [matlab] [cpd] Parse error with comments o #1793 <https://github.com/pmd/pmd/issues/1793>: [java] CommentDefaultAccessModifier not working for classes API Changes Deprecated APIs For removal * The |DumpFacades| in all languages, that could be used to transform a AST into a textual representation, will be removed with PMD 7. The rule designer is a better way to inspect nodes. o |net.sourceforge.pmd.lang.apex.ast.DumpFacade| <https://javadoc.io/page/net.sourceforge.pmd/pmd-apex/6.15.0/net/sourceforge/pmd/lang/apex/ast/DumpFacade.html#> o |net.sourceforge.pmd.lang.java.ast.DumpFacade| <https://javadoc.io/page/net.sourceforge.pmd/pmd-java/6.15.0/net/sourceforge/pmd/lang/java/ast/DumpFacade.html#> o |net.sourceforge.pmd.lang.ecmascript.ast.DumpFacade| <https://javadoc.io/page/net.sourceforge.pmd/pmd-javascript/6.15.0/net/sourceforge/pmd/lang/ecmascript/ast/DumpFacade.html#> o |net.sourceforge.pmd.lang.jsp.ast.DumpFacade| <https://javadoc.io/page/net.sourceforge.pmd/pmd-jsp/6.15.0/net/sourceforge/pmd/lang/jsp/ast/DumpFacade.html#> o |net.sourceforge.pmd.lang.plsql.ast.DumpFacade| <https://javadoc.io/page/net.sourceforge.pmd/pmd-plsql/6.15.0/net/sourceforge/pmd/lang/plsql/ast/DumpFacade.html#> o |net.sourceforge.pmd.lang.vf.ast.DumpFacade| <https://javadoc.io/page/net.sourceforge.pmd/pmd-visualforce/6.15.0/net/sourceforge/pmd/lang/vf/ast/DumpFacade.html#> o |net.sourceforge.pmd.lang.vm.ast.AbstractVmNode#dump| <https://javadoc.io/page/net.sourceforge.pmd/pmd-vm/6.15.0/net/sourceforge/pmd/lang/vm/ast/AbstractVmNode.html#dump(String,boolean,Writer)> o |net.sourceforge.pmd.lang.xml.ast.DumpFacade| <https://javadoc.io/page/net.sourceforge.pmd/pmd-xml/6.15.0/net/sourceforge/pmd/lang/xml/ast/DumpFacade.html#> * The method |LanguageVersionHandler#getDumpFacade| <https://javadoc.io/page/net.sourceforge.pmd/pmd-core/6.15.0/net/sourceforge/pmd/lang/LanguageVersionHandler.html#getDumpFacade(Writer,String,boolean)> will be removed as well. It is deprecated, along with all its implementations in the subclasses of |LanguageVersionHandler| <https://javadoc.io/page/net.sourceforge.pmd/pmd-core/6.15.0/net/sourceforge/pmd/lang/LanguageVersionHandler.html#>. External Contributions * #1647 <https://github.com/pmd/pmd/pull/1647>: [java] Rule to detect overly verbose array initialization - Victor <https://github.com/IDoCodingStuffs> * #1762 <https://github.com/pmd/pmd/pull/1762>: [java] LoggerIsNotStaticFinal and ProperLogger - make class-name configurable - Ivo Šmíd <https://github.com/bedla> * #1798 <https://github.com/pmd/pmd/pull/1798>: [java] Make CommentDefaultAccessModifier work for top-level classes - Boris Petrov <https://github.com/boris-petrov> * #1799 <https://github.com/pmd/pmd/pull/1799>: [java] MethodReturnsInternalArray does not work in inner classes - Fixed #1738 - Srinivasan Venkatachalam <https://github.com/Srini1993> * #1802 <https://github.com/pmd/pmd/pull/1802>: [python] [cpd] Add support for Python 2 backticks - Maikel Steneker <https://github.com/maikelsteneker> * #1803 <https://github.com/pmd/pmd/pull/1803>: [dart] [cpd] Dart escape sequences - Maikel Steneker <https://github.com/maikelsteneker> * #1807 <https://github.com/pmd/pmd/pull/1807>: [ci] Fix missing local branch issues when executing pmd-regression-tester - BBG <https://github.com/djydewang> * #1813 <https://github.com/pmd/pmd/pull/1813>: [matlab] [cpd] Matlab comments - Maikel Steneker <https://github.com/maikelsteneker> * #1816 <https://github.com/pmd/pmd/pull/1816>: [apex] Fix ApexDoc handling with inner classes - Jeff Hube <https://github.com/jeffhube> * #1817 <https://github.com/pmd/pmd/pull/1817>: [apex] Add configurable naming convention rules - Jeff Hube <https://github.com/jeffhube> * #1819 <https://github.com/pmd/pmd/pull/1819>: [cpp] [cpd] Add support for digit separators - Maikel Steneker <https://github.com/maikelsteneker> * #1820 <https://github.com/pmd/pmd/pull/1820>: [cpp] [cpd] Improve support for raw string literals - Maikel Steneker <https://github.com/maikelsteneker> * #1821 <https://github.com/pmd/pmd/pull/1821>: [matlab] [cpd] Matlab question mark token - Maikel Steneker <https://github.com/maikelsteneker> * #1822 <https://github.com/pmd/pmd/pull/1822>: [matlab] [cpd] Double quoted string - Maikel Steneker <https://github.com/maikelsteneker> * #1837 <https://github.com/pmd/pmd/pull/1837>: [core] Minor performance improvements - Michael Hausegger <https://github.com/TheRealHaui> * #1838 <https://github.com/pmd/pmd/pull/1838>: [dart] [cpd] Improved string tokenization - Maikel Steneker <https://github.com/maikelsteneker> * #1840 <https://github.com/pmd/pmd/pull/1840>: [java] Whitelist serialPersistentFields - Marcel Härle <https://github.com/marcelhaerle> |
|
From: Rory O'D. <ror...@or...> - 2019-05-10 07:49:37
|
Hi Andreas,
*OpenJDK builds *- JDK 13 - Early Access build 20 is available at
http://jdk.java.net/13/
* These early-access , open-source builds are provided under the
o GNU General Public License, version 2, with the Classpath
Exception <http://openjdk.java.net/legal/gplv2+ce.html>.
* Changes in this build
<http://hg.openjdk.java.net/jdk/jdk/log?rev=reverse%28%22jdk-13%2B19%22%3A%3A%22jdk-13%2B20%22-%22jdk-13%2B19%22%29&revcount=1000>
* Release notes [1]
*Significant changes since the last availability email*
* build 20
o Removal of T-Systems Deutsche Telekom Root CA 2 certificate
(JDK-8222137)
o Add new FileSystems.newFileSystem methods (JDK-8218875)
o Enhance auto vectorization for x86 (JDK-8222074)
o Remove CollectorPolicy and its subclasses (JDK-8198505)
o Drop support for pre JDK 1.4 SocketImpl implementations
(JDK-8216978)
* build 19
o add support for generating method handles from a variable symbol
(JDK-8222744)
o mark new VM option AllowRedefinitionToAddOrDeleteMethods as
deprecated (JDK-8222934)
* build 18
o Improve String::equals warmup characteristics (JDK-8215017)
o [Containers] Improve systemd slice memory limit support
(JDK-8217338)
Bug fixes for issues reported by Open Source Projects
* build 20
o assert(Compile::current()->live_nodes() <
Compile::current()->max_node_limit()) failed: Live Node limit
exceeded limit (JDK-8219520)
o C2: MemNode::can_see_stored_value() ignores casts which carry
control dependency (JDK-8219902)
o New fix of the deadlock in sun.security.ssl.SSLSocketImpl
(JDK-8219991)
JEP updates since last email
* JEP 350: Dynamic CDS Archives <http://openjdk.java.net/jeps/350>
istargeted for JDK 13.
* JEP 351: ZGC: Uncommit Unused Memory
<http://openjdk.java.net/jeps/351> istargeted for JDK 13
* JEP 353: Reimplement the Legacy Socket API
<http://openjdk.java.net/jeps/353> moved to Candidate
* JEP 354: Switch Expressions <http://openjdk.java.net/jeps/354> moved
to Candidate.
OpenJDK Committers’ Workshop, 1–2 August 2019 [2]
Rgds,Rory
[1] http://jdk.java.net/13/release-notes
[2] https://mail.openjdk.java.net/pipermail/announce/2019-April/000269.html
--
Rgds, Rory O'Donnell
Quality Engineering Manager
Oracle EMEA, Dublin, Ireland
|
|
From: Andreas D. <and...@ad...> - 2019-04-28 09:10:47
|
* Downloads: https://github.com/pmd/pmd/releases/tag/pmd_releases%2F6.14.0 * Documentation: https://pmd.github.io/pmd-6.14.0/ 28-April-2019 - 6.14.0 The PMD team is pleased to announce PMD 6.14.0. This is a minor release. Table Of Contents * New and noteworthy <https://sourceforge.net/p/pmd/news/2019/04/pmd-6140-released/#new-and-noteworthy> o Dart support <https://sourceforge.net/p/pmd/news/2019/04/pmd-6140-released/#dart-support> o Updated PMD Designer <https://sourceforge.net/p/pmd/news/2019/04/pmd-6140-released/#updated-pmd-designer> * Modified Rules <https://sourceforge.net/p/pmd/news/2019/04/pmd-6140-released/#modified-rules> * Fixed Issues <https://sourceforge.net/p/pmd/news/2019/04/pmd-6140-released/#fixed-issues> * API Changes <https://sourceforge.net/p/pmd/news/2019/04/pmd-6140-released/#api-changes> * External Contributions <https://sourceforge.net/p/pmd/news/2019/04/pmd-6140-released/#external-contributions> New and noteworthy Dart support Thanks to the contribution from Maikel Steneker <https://github.com/maikelsteneker>, and built on top of the ongoing efforts to fully support Antlr-based languages, PMD now has CPD support for Dart <https://www.dartlang.org/>. Being based on a proper Antlr grammar, CPD can: * ignore comments * ignore imports / libraries * honor comment-based suppressions <https://sourceforge.net/p/pmd/news/2019/04/pmd_userdocs_cpd.html#suppression> Updated PMD Designer This PMD release ships a new version of the pmd-designer. For the changes, see PMD Designer Changelog <https://github.com/pmd/pmd-designer/blob/6.14.0/CHANGELOG.md>. Modified Rules * The Java rule |AssignmentToNonFinalStatic| <https://pmd.github.io/pmd-6.14.0/pmd_rules_java_errorprone.html#assignmenttononfinalstatic> (|java-errorprone|) will now report on each assignment made within a constructor rather than on the field declaration. This makes it easier for developers to find the offending statements. * The Java rule |NoPackage| <https://pmd.github.io/pmd-6.14.0/pmd_rules_java_codestyle.html#nopackage> (|java-codestyle|) will now report additionally enums and annotations that do not have a package declaration. Fixed Issues * all o #1515 <https://github.com/pmd/pmd/issues/1515>: [core] Module pmd-lang-test is missing javadoc artifact o #1788 <https://github.com/pmd/pmd/issues/1788>: [cpd] [core] Use better |ClassLoader| for |ServiceLoader| in |LanguageFactory| o #1794 <https://github.com/pmd/pmd/issues/1794>: [core] Ruleset Compatibility fails with excluding rules * go o #1751 <https://github.com/pmd/pmd/issues/1751>: [go] Parsing errors encountered with escaped backslash * java o #1532 <https://github.com/pmd/pmd/issues/1532>: [java] NPE with incomplete auxclasspath o #1691 <https://github.com/pmd/pmd/issues/1691>: [java] Possible Data Race in JavaTypeDefinitionSimple.getGenericType o #1729 <https://github.com/pmd/pmd/issues/1729>: [java] JavaRuleViolation loses information in |className| field when class has package-private access level * java-bestpractices o #1190 <https://github.com/pmd/pmd/issues/1190>: [java] UnusedLocalVariable/UnusedPrivateField false-positive o #1720 <https://github.com/pmd/pmd/issues/1720>: [java] UnusedImports false positive for Javadoc link with array type * java-codestyle o #1755 <https://github.com/pmd/pmd/issues/1775>: [java] False negative in UnnecessaryLocalBeforeReturn when splitting statements across multiple lines o #1782 <https://github.com/pmd/pmd/issues/1782>: [java] NoPackage: False Negative for enums * java-design o #1760 <https://github.com/pmd/pmd/issues/1760>: [java] UseObjectForClearerAPI flags private methods API Changes No changes. External Contributions * #1745 <https://github.com/pmd/pmd/pull/1745>: [doc] Fixed some errors in docs - 0xflotus <https://github.com/0xflotus> * #1746 <https://github.com/pmd/pmd/pull/1746>: [java] Update rule to prevent UnusedImport when using JavaDoc with array type - itaigilo <https://github.com/itaigilo> * #1752 <https://github.com/pmd/pmd/pull/1752>: [java] UseObjectForClearerAPI Only For Public - Björn Kautler <https://github.com/Vampire> * #1761 <https://github.com/pmd/pmd/pull/1761>: [dart] [cpd] Added CPD support for Dart - Maikel Steneker <https://github.com/maikelsteneker> * #1776 <https://github.com/pmd/pmd/pull/1776>: [java] Show more detailed message when can't resolve field type - Andrey Fomin <https://github.com/andrey-fomin> * #1781 <https://github.com/pmd/pmd/pull/1781>: [java] Location change in AssignmentToNonFinalStatic - Maikel Steneker <https://github.com/maikelsteneker> * #1789 <https://github.com/pmd/pmd/pull/1789>: [cpd] [core] Use current classloader instead of Thread's classloader - Andreas Schmid <https://github.com/aaschmid> * #1791 <https://github.com/pmd/pmd/pull/1791>: [dart] [cpd] Dart escaped string - Maikel Steneker <https://github.com/maikelsteneker> |
|
From: Rory O'D. <ror...@or...> - 2019-04-19 12:07:48
|
*Hi Andreas, * *OpenJDK builds *- JDK 13 - Early Access build 17 is available at http://jdk.java.net/13/ * These early-access , open-source builds are provided under the o GNU General Public License, version 2, with the Classpath Exception <http://openjdk.java.net/legal/gplv2+ce.html>. * Changes in this build <http://hg.openjdk.java.net/jdk/jdk/log?rev=reverse%28%22jdk-13%2B16%22%3A%3A%22jdk-13%2B17%22-%22jdk-13%2B16%22%29&revcount=1000> * Release notes [1] *Significant changes since the last availability email* * build 16 - Update the default enabled cipher suites preference (JDK-8163326 <https://bugs.openjdk.java.net/browse/JDK-8163326>) * build 16 - Add new keytool -showinfo -tls command for displaying TLS configuration information (JDK-8219861 <https://bugs.openjdk.java.net/browse/JDK-8219861>) * build 15 -*New Japanese Era Name **(JDK-8205432 <https://bugs.openjdk.java.net/browse/JDK-8205432>)* * build 15 - Accessing REIWA era in java.time.chrono.JapaneseEra (JDK-8174268 <https://bugs.openjdk.java.net/browse/JDK-8174268>) * build 15 - Duplicated RSA services are no longer supported by SunJSSE provider (JDK-8220016 <https://bugs.openjdk.java.net/browse/JDK-8220016>) * build 15 - Use server cipher suites preference by default (JDK-8168261 <https://bugs.openjdk.java.net/browse/JDK-8168261>) * build 15 - The Swing Motif Look and Feel is deprecated and unsupported on macOS (JDK-8177960 <https://bugs.openjdk.java.net/browse/JDK-8177960>) * build 15 - Remove support for javadoc "frames" mode (JDK-8215599 <https://bugs.openjdk.java.net/browse/JDK-8215599>) Bug fix reported by Open Source Projects : * build 15 - Unable to read certain PKCS12 keystores from SequenceInputStream (JDK-8157404) <https://bugs.openjdk.java.net/browse/JDK-8157404> *April 2019 CPU Released* * As part of the Apr 2019 Critical Patch Update we released OpenJDK 12.0.1 under the GNU General Public License, version 2, with the Classpath Exception <http://openjdk.java.net/legal/gplv2+ce.html>. [2] * One change previously announced in the Java Cryptographic Roadmap [3] *Request for feedback *- switch expressions in JDK 12 , feedback via amber-dev list [4] Rgds,Rory [1] http://jdk.java.net/13/release-notes [2] http://jdk.java.net/12 [3] https://java.com/en/jre-jdk-cryptoroadmap.html [4] https://mail.openjdk.java.net/pipermail/jdk-dev/2019-April/002770.html -- Rgds, Rory O'Donnell Quality Engineering Manager Oracle EMEA, Dublin, Ireland |
|
From: Andreas D. <and...@ad...> - 2019-03-31 11:26:21
|
* Downloads: https://github.com/pmd/pmd/releases/tag/pmd_releases%2F6.13.0 * Documentation: https://pmd.github.io/pmd-6.13.0/ 31-March-2019 - 6.13.0 The PMD team is pleased to announce PMD 6.13.0. This is a minor release. Table Of Contents * New and noteworthy <https://sourceforge.net/p/pmd/news/2019/03/pmd-6130-released/#new-and-noteworthy> o Call For Logo <https://sourceforge.net/p/pmd/news/2019/03/pmd-6130-released/#call-for-logo> o Java 12 Support <https://sourceforge.net/p/pmd/news/2019/03/pmd-6130-released/#java-12-support> o Quickstart Ruleset for Apex <https://sourceforge.net/p/pmd/news/2019/03/pmd-6130-released/#quickstart-ruleset-for-apex> o PMD Designer <https://sourceforge.net/p/pmd/news/2019/03/pmd-6130-released/#pmd-designer> o Improved Apex Support <https://sourceforge.net/p/pmd/news/2019/03/pmd-6130-released/#improved-apex-support> o New Rules <https://sourceforge.net/p/pmd/news/2019/03/pmd-6130-released/#new-rules> * Fixed Issues <https://sourceforge.net/p/pmd/news/2019/03/pmd-6130-released/#fixed-issues> * API Changes <https://sourceforge.net/p/pmd/news/2019/03/pmd-6130-released/#api-changes> o Command Line Interface <https://sourceforge.net/p/pmd/news/2019/03/pmd-6130-released/#command-line-interface> o Deprecated API <https://sourceforge.net/p/pmd/news/2019/03/pmd-6130-released/#deprecated-api> * External Contributions <https://sourceforge.net/p/pmd/news/2019/03/pmd-6130-released/#external-contributions> New and noteworthy Call For Logo We are still searching for a new logo for PMD for the next major release. Learn more about how to participate on github issue 1663 <https://github.com/pmd/pmd/issues/1663>. Java 12 Support This release of PMD brings support for Java 12. PMD can parse the new Switch Expressions <http://openjdk.java.net/jeps/325> and resolve the type of such an expression. Note: The Switch Expressions are a preview language feature of OpenJDK 12 and are not enabled by default. In order to analyze a project with PMD that uses these language features, you'll need to enable it via the new environment variable |PMD_JAVA_OPTS|: export PMD_JAVA_OPTS=--enable-preview ./run.sh pmd ... Quickstart Ruleset for Apex PMD provides now a quickstart ruleset for Salesforce.com Apex, which you can use as a base ruleset to get your custom ruleset started. You can reference it with |rulesets/apex/quickstart.xml|. You are strongly encouraged to create your own ruleset <https://pmd.github.io/pmd-6.12.0/pmd_userdocs_making_rulesets.html> though. The quickstart ruleset has the intention, to be useful out-of-the-box for many projects. Therefore it references only rules, that are most likely to apply everywhere. Any feedback would be greatly appreciated. PMD Designer The rule designer's codebase has been moved out of the main repository and will be developed at pmd/pmd-designer <https://github.com/pmd/pmd-designer> from now on. The maven coordinates will stay the same for the time being. The designer will still be shipped with PMD's binaries. Improved Apex Support * Many AST nodes now expose more information which makes it easier to write XPath-based rules for Apex. Here are some examples: o |Annotation[@Resolved = false()]| finds unsupported annotations. o |AnnotationParameter[@Name='RestResource'][@Value='/myurl']| gives access to annotation parameters. o |CatchBlockStatement[@ExceptionType='Exception'][@VariableName='e']| finds catch block for specific exception types. o |Field[@Type='String']| find all String fields, |Field[string-length(@Name) < 5]| finds all fields with short names and |Field[@Value='a']| find alls fields, that are initialized with a specific value. o |LiteralExpression[@String = true()]| finds all String literals. There are attributes for each type: |@Boolean|, |@Integer|, |@Double|, |@Long|, |@Decimal|, |@Null|. o |Method[@Constructor = true()]| selects all constructors. |Method[@ReturnType = 'String']| selects all methods that return a String. o The |ModifierNode| node has a couple of attributes to check for the existence of specific modifiers: |@Test|, |@TestOrTestSetup|, |@WithSharing|, |@WithoutSharing|, |@InheritedSharing|, |@WebService|, |@Global|, |@Override|. o Many nodes now expose their type. E.g. with |Parameter[@Type='Integer']| you can find all method parameters of type Integer. The same attribute |Type| exists as well for: |NewObjectExpression|, |Property|, |VariableDeclaration|. o |VariableExpression[@Image='i']| finds all variable usages of the variable "i". New Rules * The new Java rule |AvoidUncheckedExceptionsInSignatures| <https://pmd.github.io/pmd-6.13.0/pmd_rules_java_design.html#avoiduncheckedexceptionsinsignatures> (|java-design|) finds methods or constructors that declare unchecked exceptions in their |throws| clause. This forces the caller to handle the exception, even though it is a runtime exception. * The new Java rule |DetachedTestCase| <https://pmd.github.io/pmd-6.13.0/pmd_rules_java_errorprone.html#detachedtestcase> (|java-errorprone|) searches for public methods in test classes, which are not annotated with |@Test|. These methods might be test cases where the annotation has been forgotten. Because of that those test cases are never executed. * The new Java rule |WhileLoopWithLiteralBoolean| <https://pmd.github.io/pmd-6.13.0/pmd_rules_java_bestpractices.html#whileloopwithliteralboolean> (|java-bestpractices|) finds Do-While-Loops and While-Loops that can be simplified since they use simply |true| or |false| as their loop condition. * The new Apex rule |ApexAssertionsShouldIncludeMessage| <https://pmd.github.io/pmd-6.13.0/pmd_rules_apex_bestpractices.html#apexassertionsshouldincludemessage> (|apex-bestpractices|) searches for assertions in unit tests and checks, whether they use a message argument. * The new Apex rule |ApexUnitTestMethodShouldHaveIsTestAnnotation| <https://pmd.github.io/pmd-6.13.0/pmd_rules_apex_bestpractices.html#apexunittestmethodshouldhaveistestannotation> (|apex-bestpractices|) searches for methods in test classes, which are missing the |@IsTest| annotation. * The new PLSQL rule |AvoidTabCharacter| <https://pmd.github.io/pmd-6.13.0/pmd_rules_plsql_codestyle.html#avoidtabcharacter> (|plsql-codestyle|) checks, that there are no tab characters ("\t") in the source file. * The new PLSQL rule |LineLength| <https://pmd.github.io/pmd-6.13.0/pmd_rules_plsql_codestyle.html#linelength> (|plsql-codestyle|) helps to enforce a maximum line length. Fixed Issues * doc o #1721 <https://github.com/pmd/pmd/issues/1721>: [doc] Documentation provides an invalid property configuration example * java o #1537 <https://github.com/pmd/pmd/issues/1537>: [java] Java 12 support * java-bestpractices o #1701 <https://github.com/pmd/pmd/issues/1701>: [java] UseTryWithResources does not handle multiple argument close methods * java-codestyle o #1527 <https://github.com/pmd/pmd/issues/1527>: [java] UseUnderscoresInNumericLiterals false positive on floating point numbers o #1674 <https://github.com/pmd/pmd/issues/1674>: [java] documentation of CommentDefaultAccessModifier is wrong * java-errorprone o #1570 <https://github.com/pmd/pmd/issues/1570>: [java] AvoidDuplicateLiterals warning about deprecated separator property when not used * plsql o #1510 <https://github.com/pmd/pmd/issues/1510>: [plsql] Support XMLTABLE functions o #1716 <https://github.com/pmd/pmd/issues/1716>: [plsql] Support access to whole plsql code o #1731 <https://github.com/pmd/pmd/issues/1731>: [pslql] ParseException when parsing ELSIF o #1733 <https://github.com/pmd/pmd/issues/1733>: [plsql] % not supported in "TestSearch%notfound" o #1734 <https://github.com/pmd/pmd/issues/1734>: [plsql] TooManyMethods false-negative o #1735 <https://github.com/pmd/pmd/issues/1735>: [plsql] False-negatives for TO_DATE_TO_CHAR, TO_DATEWithoutDateFormat, TO_TIMESTAMPWithoutDateFormat API Changes Command Line Interface The start scripts |run.sh|, |pmd.bat| and |cpd.bat| support the new environment variable |PMD_JAVA_OPTS|. This can be used to set arbitrary JVM options for running PMD, such as memory settings (e.g. |PMD_JAVA_OPTS=-Xmx512m|) or enable preview language features (e.g. |PMD_JAVA_OPTS=--enable-preview|). The previously available variables such as |OPTS| or |HEAPSIZE| are deprecated and will be removed with PMD 7.0.0. Deprecated API * |CodeClimateRule| <https://javadoc.io/page/net.sourceforge.pmd/pmd-core/6.13.0/net/sourceforge/pmd/renderers/CodeClimateRule.html#> is deprecated in 7.0.0 because it was unused for 2 years and created an unwanted dependency. Properties "cc_categories", "cc_remediation_points_multiplier", "cc_block_highlighting" will also be removed. See #1702 <https://github.com/pmd/pmd/pull/1702> for more. * The Apex ruleset |rulesets/apex/ruleset.xml| has been deprecated and will be removed in 7.0.0. Please use the new quickstart ruleset |rulesets/apex/quickstart.xml| instead. External Contributions * #1694 <https://github.com/pmd/pmd/pull/1694>: [apex] New rules for test method and assert statements - triandicAnt <https://github.com/triandicAnt> * #1697 <https://github.com/pmd/pmd/pull/1697>: [doc] Update CPD documentation - Matías Fraga <https://github.com/matifraga> * #1704 <https://github.com/pmd/pmd/pull/1704>: [java] Added AvoidUncheckedExceptionsInSignatures Rule - Bhanu Prakash Pamidi <https://github.com/pamidi99> * #1706 <https://github.com/pmd/pmd/pull/1706>: [java] Add DetachedTestCase rule - David Burström <https://github.com/davidburstromspotify> * #1709 <https://github.com/pmd/pmd/pull/1709>: [java] Detect while loops with literal booleans conditions - David Burström <https://github.com/davidburstromspotify> * #1717 <https://github.com/pmd/pmd/pull/1717>: [java] Fix false positive in useTryWithResources when using a custom close method with multiple arguments - Rishabh Jain <https://github.com/jainrish> * #1724 <https://github.com/pmd/pmd/pull/1724>: [doc] Correct property override example - Felix W. Dekker <https://github.com/FWDekker> * #1737 <https://github.com/pmd/pmd/pull/1737>: [java] fix escaping of CommentDefaultAccessModifier documentation - itaigilo <https://github.com/itaigilo> |
|
From: Rory O'D. <ror...@or...> - 2019-03-29 11:01:27
|
Hi Andreas, *OpenJDK builds *- JDK 13 - Early Access build 14 is available at http://jdk.java.net/13/ * These early-access, open-source builds are provided under the GNU General Public License, version 2, with the Classpath Exception <http://openjdk.java.net/legal/gplv2+ce.html>. * Changes in this build <http://hg.openjdk.java.net/jdk/jdk/log?rev=reverse%28%22jdk-13%2B13%22%3A%3A%22jdk-13%2B14%22-%22jdk-13%2B13%22%29&revcount=1000> * Release notes [1] * JDK 13 Schedule proposal accepted [2] o 2019/06/13 Rampdown Phase One o 2019/07/18 Rampdown Phase Two o 2019/08/08 Initial Release Candidate o 2019/08/22 Final Release Candidate o 2019/09/17 General Availability *jpackage EA * * This is an early access build of JEP 343: Packaging Tool <https://openjdk.java.net/jeps/343>, aimed at testing a prototype implementation of jpackage, which is a new tool for packaging self-contained Java applications along with a Java Runtime Environment. * Build 30 is now available http://jdk.java.net/jpackage/ * Please send feedback via e-mail to cor...@op... <mailto:cor...@op...> *Quality Outreach report for **March 2019* * The report for March 2019 is available here <https://wiki.openjdk.java.net/display/quality/Quality+Outreach+report+March+2019> * Thanks to all those contributed ! *Recent Blog:* A new (Japanese) era for Java! <https://blogs.oracle.com/java-platform-group/a-new-japanese-era-for-java> Rgds,Rory [1] http://jdk.java.net/13/release-notes [2] https://mail.openjdk.java.net/pipermail/jdk-dev/2019-March/002736.html -- Rgds,Rory O'Donnell Quality Engineering Manager Oracle EMEA , Dublin, Ireland |