Hi Vlad, thanks for bringing that up: I mean to start a thread here among the lines of my answers on twitter.
The problem I see in our little survey is that in the way it was phrased it's not providing useful data for the purpose of understanding what we should be supporting in the next version of Hibernate libraries: to ask what JVM version people are using today doesn't mean they'd upgrade Hibernate to the latest right away. The reason is that I suspect people will be more comfortable to upgrade the JVM version than they are comfortable with upgrading their stack of frameworks and libraries; so when we get to know that 37% of people (assuming the survey's sample is good enough) what I read in that is that those 37% of people will not be migrating to Hibernate 5.0 either.. they are probably all using some 4.x version or maybe even some 3.x version. Why? Because until Java 9 all versions have been extremely conservative on backwards compatibility; it's very unusual to not be able to upgrade to a newer JVM (excluding Java9 here as it actually does remove some methods for the first time in history). Frameworks however have always been more aggressive in the deprecation & removal, or simply cross-library compatibilities are often a pain, so I'm pretty sure that people will be more comfortable in upgrading JVM than their libraries: when someone doesn't even touch their JVM that's usually because changing *anything* will require extensive and complex testing, maybe break some certification, etc.. so upgrading Hibernate is even less so interesting. No wonder people want us to backport patches for so long! So we should try to understand what kind of users are going to use Hibernate 6: my bet is that it's either new projects, or teams who are comfortable enough to upgrade to the latest in early months. More will use Hibernate 6 in the following years, but at that point JDK8 adoption will be even wider for sure.. if not obsolete. Either way, do we expect these to run on a pre-8 Java? I suspect a very small minority as I can only think of some very limited reasons to do that: - you need some other dependency which doesn't even work on Java8 (very unlikely? And you're not trying to get rid of it?) - your company has some weird policies (to force an older, unsupported JDK? And yet they'd allow your team to use the bleeding edge yet Hibernate?) - they are stuck using some exotic framework -> which likely means they can't upgrade Hibernate either but will need waiting for the framework maintainer to do so. So, yes I agree Hibernate ORM should probably require Java8: we get to simplify a bit of our build and embrace some new APIs. If we suspect it's premature, we might want to collect some more data but the survey should be different.. however since I'm arguing that this one was heavily biased favouring the pre-8 results and still it shows a majority of people on 8.. maybe that's good enough to show that we should! Thanks, Sanne On 2 March 2016 at 09:52, Vlad Mihalcea <mihalcea.v...@gmail.com> wrote: > Although Java 1.8 has seen a great adoption rate, on the enterprise side > things always move very slowly. > > https://twitter.com/Hibernate/status/700998618824753152 > > Anyway, we shouldn't be stuck with 1.6 just because some legacy systems > might not never migrate to a newer version. > > Other frameworks are also considering this move, like Spring 5.0. In my > opinion, Hibernate 6.0 should also use 1.8. > > Vlad > > On Wed, Mar 2, 2016 at 11:38 AM, Radim Vansa <rva...@redhat.com> wrote: > >> Btw., when does ORM plan to drop pre-8 support altogether? 6.0? >> >> Radim >> >> On 03/01/2016 10:18 PM, Steve Ebersole wrote: >> > Correct. hibernate-infinispan can use Java 8. As Sanne says, Infinispan >> > itself requires Java 8 so limiting hibernate-infinispan to > 8 really >> makes >> > no sense, >> > >> > On Tue, Mar 1, 2016 at 3:03 PM Sanne Grinovero <sa...@hibernate.org> >> wrote: >> > >> >> In general, probably yes. The Infinispan module is a bit special >> >> though, as Infinispan itself requires Java8 since Infinispan 8 so >> >> noone will be able to use those modules on previous Java versions.. so >> >> there's no point in avoiding pre-Java 8 code in there. >> >> >> >> On 1 March 2016 at 20:55, Gail Badner <gbad...@redhat.com> wrote: >> >>> I see a pull request on master for hibernate-infinispan that uses >> lambda >> >>> expressions. [1] >> >>> >> >>> There is a separate pull request for 5.0 that does not use them, so >> >> there's >> >>> no need to backport in this case. [2] >> >>> >> >>> In general, should we avoid using lambda expressions in master? >> >>> >> >>> Thanks, >> >>> Gail >> >>> >> >>> [1] https://github.com/hibernate/hibernate-orm/pull/1269/files >> >>> [2] https://github.com/hibernate/hibernate-orm/pull/1268/files >> >>> _______________________________________________ >> >>> hibernate-dev mailing list >> >>> hibernate-dev@lists.jboss.org >> >>> https://lists.jboss.org/mailman/listinfo/hibernate-dev >> >> _______________________________________________ >> >> hibernate-dev mailing list >> >> hibernate-dev@lists.jboss.org >> >> https://lists.jboss.org/mailman/listinfo/hibernate-dev >> >> >> > _______________________________________________ >> > hibernate-dev mailing list >> > hibernate-dev@lists.jboss.org >> > https://lists.jboss.org/mailman/listinfo/hibernate-dev >> >> >> -- >> Radim Vansa <rva...@redhat.com> >> JBoss Performance Team >> >> _______________________________________________ >> hibernate-dev mailing list >> hibernate-dev@lists.jboss.org >> https://lists.jboss.org/mailman/listinfo/hibernate-dev >> > _______________________________________________ > hibernate-dev mailing list > hibernate-dev@lists.jboss.org > https://lists.jboss.org/mailman/listinfo/hibernate-dev _______________________________________________ hibernate-dev mailing list hibernate-dev@lists.jboss.org https://lists.jboss.org/mailman/listinfo/hibernate-dev