Hi All,
We've had a brief chat with Dan earlier about the possibility of
introducing a Java 8 trunk after it was announced JAX-RS 2.1 API would
be Java 8 based.
I'd like to justify here why IMHO this would be a very good thing for CXF:
- Java 8 is recognized to have a lot of new language features that can
help with significantly enhancing the capabilities of a given project.
Functional programming, security related enhancements, etc, etc. IMHO
opening a Java 8 trunk would help us 're-invigorate' the CXF source (all
frontends) with respect to the asynchronous, security-related and other
processing and will likely lead to the introduction of the new features
we can not even think of now. It will also excite the CXF community at
large.
- JAX-RS 2.1 requires Java8. JAX-RS 2.1 started its work in December
2014 and I do expect Jersey and RestEasy teams publishing the snapshots
more or less in sync with the ongoing API updates. Many users do want to
play with the latest and greatest API asap. Besides, implementing
iteratively would make it easier for us to deal with the other
commitments we may have.
We have 3.1.0 and 3.0.x but there are no major differences between them
from a feature point of view except that 3.1.0 is Java 7 based (with
some related improvements).
So I believe it would be good to have a Java 8 trunk. The major question
is when. But I hope it can be opened by the end of this year or possibly
even a bit earlier.
IMHO the following may make sense:
Open it in the end of life for 2.7.x and either 3.1.0 or 3.1.1 releases.
2.7.x is nearly 2.7.15 now and I guess there will be 3 or so 2.7.x
releases afterwards max.
If 2.7.x can be 'closed' and '3.1.0' released at the same time then IMHO
it can just make sense to branch 3.1.x at that point and open a Java 8
CXF 4.0 trunk. Otherwise do it after 2.7.x is closed and 3.1.1 is released.
Thoughts are welcome
Thanks, Sergey