[jug.bg] hackaton to fix warnings in openjdk

Today, 17.02.2015, the Bulgarian Java User Group (BGJUG) organized another hackaton. This time we wanted to fix warnings inside the jdk.

Screen Shot 2015-02-17 at 8.33.57 PM

First we did

make clean JAVAC_WARNINGS="-Xlint:all,deprecation,rawtypes,\
empty,finally -Xmaxwarns 10000" DISABLE_WARNINGS="-Xlint:all"\
 LOG=info images

to generate a build.log to find out all the warnings. Then with any text editor one could open jdk9/build/linux-x86_64-normal-server-release/build.log and use these searches (using regular expressions) to find all the warnings:

openjdk/jdk9/corba(.)* warning
openjdk/jdk9/jaxp(.)* warning
openjdk/jdk9/jaxws(.)* warning
openjdk/jdk9/nashorn(.)* warning
(Substitute with your username)
The result was:
359 corba
100 jaxp
500 jaxws
0 nashorn
Initially Mitya proposed nashorn, but all of them were already fixed. Then Ivan and Nayden settled on jaxp. Because we all dislike corba.
Joe Darcy has a blog post on different warning types and how to fix them. We split the warnings into different types:
rawtypes 43
unchecked 14
serial 32
cast 10
dep-ann 1

Note: Dep-ann is to add the @Deprecated annotation.

We fixed the last three types and created a patch: http://bgjug.sty.bz/bgjug/~bgjug/fix-warnings-jaxp-part1/webrev.00/, because the unchecked and the rawtypes are a bit tricky as they involve changing public APIs.

We then tried to solve as much of the latter as possible and then created a second patch: http://bgjug.sty.bz/bgjug/~bgjug/fix-warnings-jaxp-full/webrev.00/


Leave a Reply

Your email address will not be published. Required fields are marked *

Notify me of followup comments via e-mail. You can also subscribe without commenting.