All, about 2 years ago we discussed the roadmap for ending support for Java 6 [1]. In April it will be one year since Oracle ceased public support for Java 7. Towards the end of this year (hopefully) Java 9 will be released. As such I think it is time for us to start discussing how long we will continue to support Java 7 as a platform for new feature releases of the Java Broker and the AMQP 0-x client.
Our current Java roadmap[2] has us scheduled for a Q1 release of Qpid v6.1 and a Q3 release of Qpid v7 (with a v7.1 release to follow some time after that). What I would like to propose is that v6.1 will be the last feature release where we commit to supporting Java 7 for the Broker. That for Qpid v7 we commit to supporting Java 7 and 8 as platforms for the client - but that the Broker will support only Java 8. Further I propose that Qpid v8 (release data TBD, but sometime in 2017) will support Java 8 and Java 9 (presuming it has been released) but we will no longer support Java 7 as a platform for the client. To aid users who cannot upgrade from Java 7 we will commit to producing bug fix releases on the Qpid v6.1.x line for at least one further year (and probably longer) after the initial v6.1 release. In terms of drivers for ending Java 7 support... we have already seen some of our key dependencies (such as Jetty) drop support for Java 7. We also are running into issues where the age the Java 7 platform makes it hard to support modern security standards, or it simply does not support APIs necessary for correct implementations of AMQP 1.0 semantics (e.g. Java 7 does not provide server name identification support for TLS on the server side - which AMQP 1.0 requires to identify desired virtual hosts). From experience, it will also become overly burdensome to start trying to support three different Java versions once Java 9 is released. Thoughts? Rob [1] http://mail-archives.apache.org/mod_mbox/qpid-users/201404.mbox/%3CCACsaS94O8g3-+895GEKE-b0sP128mMM2hsg4mjNJHr28W=b...@mail.gmail.com%3E [2] https://cwiki.apache.org/confluence/display/qpid/Java+Roadmap
