Greetings,

I was tempted to address this point my initial message, but since it has been raised I will do so now.

Many of the warnings in the JDK have been there for years or even more than a decade in some cases. Therefore, historically those of us who have worked on the JDK apparently have a very high tolerance for warning messages ;-)

The better should not be the enemy of the good. Suppressing the warnings can be done relatively quickly and the warnings can be turned on in the build, preventing new warnings from being introduced. The subtasks of

    JDK-8066618: Fix deprecation warnings in jdk libraries

contain a snapshot of the current deprecation warnings. Therefore, information about the state of the deprecation warnings has been captured and can be acted upon in due course.

-Joe

On 12/4/2014 9:09 AM, Bernd wrote:
Hello,

I am not sure this is a good idea, while I can understand a policy of "no
(new) lint warnings" and also activities to remove them (based on the
asumption that every warning is a potential bug or code smell) I absolutely
think supressing all remaining warnings without working to resolve them
(i.e. w/o evaluating) is a bad thing. First of all it does not improve code
quality but glutter it. Secondly it makes it impossible later on to
distinguish between well considered supressions and mass supressions.

I would instead favor a solution which can easily detect if any change does
add more/new warnings and fail the review for it. (I.e. baselining the
current warnings which is yet another option you will kill when you supress
them all). The original JEP does BTW not even mention the possibility of
using supression.

Gruss
Bernd
Am 04.12.2014 09:49 schrieb "joe darcy" <joe.da...@oracle.com>:

Hello,

First some background, one of the JEPs targeted to JDK 9 is

     JEP 212: Resolve Lint and Doclint Warnings
     http://openjdk.java.net/jeps/212

In the jdk repository, only the deprecation category of lint warnings
remain. While resolving the other categories of warnings mostly involved
area-agnostic Java language expertise (say, to generify an API), fixing a
deprecation warning by modifying code often involves very detailed
area-specific knowledge. For that reason, to resolve the deprecation
category of lint warnings, rather than updating the code per se, I'm only
planning to @SuppressWarnings the issues. To track that work, I've filed
the umbrella bug

     JDK-8066616: Suppress deprecation warnings in jdk libraries
     https://bugs.openjdk.java.net/browse/JDK-8066616

with subtasks for different modules in the build. I've also filed a
sibling umbrella bug

     JDK-8066618: Fix deprecation warnings in jdk libraries
     https://bugs.openjdk.java.net/browse/JDK-8066618

which has a matching set of subtasks to have each deprecation location in
the code be reexamined by someone familiar with the area.

With that background, first up is this review request for

     JDK-8066617: Suppress deprecation warnings in java.base module
     http://cr.openjdk.java.net/~darcy/8066617.0/

Thanks,

-Joe


Reply via email to