You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@ant.apache.org by Jesse Glick <jg...@cloudbees.com> on 2013/07/18 00:59:00 UTC

Future of JDK 5 support in Ant

It has now been almost a year and a half since I called a vote to drop JDK 1.4 support for 1.9.0. Is anyone thinking about when to drop JDK 5 support for running Ant 
itself, e.g. in 1.10.0 or whatever? (Keeping the ability to fork older tools for <javac> etc. of course.) Jenkins has already done so in dev builds, and Maven devs are 
discussing it. Eclipse Kepler and IDEA 12 both seem to require JDK 6+, and NetBeans 7.4 beta already requires JDK 7+. Potential benefits of a 6+ dependency include:

· fewer combinations to test—do not need to debug test failures only occurring on JDK 5 any more
· easier to test against baseline JDK (cannot download JDK 5 without oracle.com login, and IIUC it is not available on Macs at all)
· OpenJDK 6 exists, so we would be based on an OSS platform (no OSS Java 5 impl is widely used)
· -target 6 bytecode is faster to load due to split verifier, reducing Ant run time a bit
· miscellaneous new APIs useful to us, e.g. File.setWritable which makes /usr/bin/chmod unnecessary in most cases, or java.io.Console, etc.
· javax.script instead of having to depend on BSH
. javax.tools so that in-process javac can be run with a supported API (incl. rich diagnostics, virtual input files, etc.)
· javax.annotation.processing & javax.lang.model for various purposes, e.g. compile-time verification of task class signatures if defining tasks w/ annotations

Of course Java 7 introduces more things of interest, such as java.nio.file and minor language improvements, but I expect Java 6 is still widely enough used at this point 
that requiring 7+ would be unpopular.

This message should not be considered a proposal so much as a testing of the waters.


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@ant.apache.org
For additional commands, e-mail: dev-help@ant.apache.org


Re: Future of JDK 5 support in Ant

Posted by Nicolas Lalevée <ni...@hibnet.org>.
I have always been able to hack the java installs on Mac OS X to be able to run the java 1.4 and 1.5, even if their official support were dropped a long time ago. But since that last OS upgrade, they don't run anymore. Now I can only build against their rt.jar to verify that I am not using too young API.

Stefan reported that he don't have a jdk 1.5 either, probably lot of us don't either. I think this is an issue important enough to require Java 1.6 sooner than later.

BTW, both Ivy and IvyDE still only require Java 1.4. I think we can safely move to Java 5 now (and I am quite bored to code without the generics :p).

Nicolas

Le 18 juil. 2013 à 00:59, Jesse Glick <jg...@cloudbees.com> a écrit :

> It has now been almost a year and a half since I called a vote to drop JDK 1.4 support for 1.9.0. Is anyone thinking about when to drop JDK 5 support for running Ant itself, e.g. in 1.10.0 or whatever? (Keeping the ability to fork older tools for <javac> etc. of course.) Jenkins has already done so in dev builds, and Maven devs are discussing it. Eclipse Kepler and IDEA 12 both seem to require JDK 6+, and NetBeans 7.4 beta already requires JDK 7+. Potential benefits of a 6+ dependency include:
> 
> · fewer combinations to test—do not need to debug test failures only occurring on JDK 5 any more
> · easier to test against baseline JDK (cannot download JDK 5 without oracle.com login, and IIUC it is not available on Macs at all)
> · OpenJDK 6 exists, so we would be based on an OSS platform (no OSS Java 5 impl is widely used)
> · -target 6 bytecode is faster to load due to split verifier, reducing Ant run time a bit
> · miscellaneous new APIs useful to us, e.g. File.setWritable which makes /usr/bin/chmod unnecessary in most cases, or java.io.Console, etc.
> · javax.script instead of having to depend on BSH
> . javax.tools so that in-process javac can be run with a supported API (incl. rich diagnostics, virtual input files, etc.)
> · javax.annotation.processing & javax.lang.model for various purposes, e.g. compile-time verification of task class signatures if defining tasks w/ annotations
> 
> Of course Java 7 introduces more things of interest, such as java.nio.file and minor language improvements, but I expect Java 6 is still widely enough used at this point that requiring 7+ would be unpopular.
> 
> This message should not be considered a proposal so much as a testing of the waters.
> 
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe@ant.apache.org
> For additional commands, e-mail: dev-help@ant.apache.org
> 


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@ant.apache.org
For additional commands, e-mail: dev-help@ant.apache.org


Re: Future of JDK 5 support in Ant

Posted by Jesse Glick <jg...@cloudbees.com>.
On 07/19/2013 11:00 AM, Stefan Bodewig wrote:
>> · javax.script instead of having to depend on BSH
>
> we already do that.

Well, using reflection yes; the same is true of some other post-5 APIs. Updating the minimum version would merely allow the code to be simplified.


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@ant.apache.org
For additional commands, e-mail: dev-help@ant.apache.org


Re: Future of JDK 5 support in Ant

Posted by Stefan Bodewig <bo...@apache.org>.
On 2013-07-18, Jesse Glick wrote:

> It has now been almost a year and a half since I called a vote to drop
> JDK 1.4 support for 1.9.0. Is anyone thinking about when to drop JDK 5
> support for running Ant itself, e.g. in 1.10.0 or whatever?

TBH I've been slacking with the 1.9.2 release and built it on Java6
keeping my fingers crossed, I don't have Java5 on any machine anymore.

OTOH 1.9.1 contained a fix to <jar> because the JARs created by 1.9.0
weren't properly readably on Java5 - something Jenkins kept telling us
but at least I didn't care enough to free up time and dig deeper.  We'll
lose the ability to catch those bugs even if we wanted to.

The new features for Java6 don't really appeal that much to me and I
think we don't have many features that requires anything beyond Java5 -
which might be more a sign of when we stopped to add new features than
of what the newer platforms have to offer.  Not sure.

That being said, I'm positive about moving on toe Java6 but see some
risks that I don't know how to cater for.  Java7 might be going too far
for me right now.

BTW

> · javax.script instead of having to depend on BSH

we already do that.

Stefan

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@ant.apache.org
For additional commands, e-mail: dev-help@ant.apache.org