So, we talked about it during our Steering Committee meeting today and, hoping I'm transcribing correctly:
- GWT has moved to Java 7 and uses Java 7-isms, so Java 6 compatibility is gone (but I believe we announced it at some point already, that 2.7 would be the last version to support Java 6) - the current patches in review adding Java 8-only emulations (using defender methods in interfaces for instance) are only about super-sources, so shouldn't change the current requirement (i.e. they don't mean GWT would require Java 8) - as long as GWT can be built with Java 7, GWT 2.8 will be compatible with Java 7. We'll have to discuss the matter again if there's a change requiring Java 8 (such as CustomFieldSerializers for new Java 8 classes), so it's not totally excluded that GWT 2.8 might require Java 8 (and as I said above, if that's the case, it would mean gwt-servlet.jar would require Java 8 too unless one uses Retrolambda or similar; if that ever happens, –and this is my own comment, *not* in the name of the Steering Committee– contributions to apply Retrolambda during the build would be welcome, to produce a com.google.gwt:gwt-servlet:2.8.0:java7 in addition to the "normal" com.google.gwt:gwt-servlet:2.8.0 requiring Java 8). TL;DR: Java 6 compat is gone, GWT still compatible with Java 7 and 2.8 will likely be, though might require Java 8. On Tuesday, December 8, 2015 at 4:21:06 PM UTC+1, Paul Robinson wrote: > > Thanks for the clarification Thomas. > > On Tue, Dec 8, 2015 at 1:45 PM, Thomas Broyer <[email protected]> wrote: > >> >> >> On Tuesday, December 8, 2015 at 1:54:40 PM UTC+1, Paul Robinson wrote: >>> >>> >>> >>> On Mon, Dec 7, 2015 at 3:06 PM, Colin Alworth <[email protected]> >>> wrote: >>> >>>> If I could be permitted to slight restate what Julien just said: We >>>> will make a note of it, as we have done in the past, such as when the >>>> default moved from java6 to java7: >>>> http://www.gwtproject.org/release-notes.html#Release_Notes_2_6_0_RC1. >>>> >>> >>> I was questioning what happens for GWT RPC in production at runtime. >>> >>> GWT 2.6 (and also 2.7) did not require Java 7 at runtime for RPC, >>> whereas GWT 2.8 does. Does the suggestion that it might require Java 8 by >>> the time GWT 2.8 is released apply to compile time or run time? >>> >> >> With the current build scripts, yes; and it'll be quite hard to decouple >> the two. >> >> >>> The release notes should separate the requirements for compile time and >>> run time Java environment. >>> >> >> You have no guarantee that your code will run in an earlier Java >> environment when you compile with a later one (i.e. if you cross-compile; >> see >> https://docs.oracle.com/javase/8/docs/technotes/tools/unix/javac.html#BHCIJIEG). >> >> Things used to work earlier, but Java 8 makes it very real. >> See >> http://developer-blog.cloudbees.com/2014/12/beware-siren-target-call.html >> and http://www.draconianoverlord.com/2014/04/01/jdk-compatibility.html >> for examples of that. >> If you want to be compatible with Java 6, you should use a Java 6 JDK or >> at least a Java 6 bootclasspath (though as I said, Java 7 is in most cases >> –if not all– compatible with Java 6 if you make sure you don't use >> Java7-specific APIs). >> If you require Java 8 at compile-time, then there are risks that your >> code won't work in a Java 6 or Java 7 environment. >> >> If any statement could me made, it'd be about client-side and >> server-side; or compile-time in the sense of the GWT Compiler, not to be >> confused with JavaC. >> >> Building GWT in a way such that it's compatible at runtime with Java 7 >> (or 6) would at a minimum require building it (JavaC) with Java 7 (or 6) >> and then running tests with Java 8; or running Retrolambda or similar on >> gwt-servlet and requestfactory-* (but then ideally those would have to be >> exercised too). Anything else would require changing the build scripts and >> be much more complicated. >> Because Oracle Java 7 is EOL'd, the chances that this happens are very >> low *unless* someone helps make it happen (or Vaadin, Sencha or RedHat >> –who have paying customers that probably would face that issue– possibly >> jump in). >> (note: this is *me* talking, *not* in the name of the steering >> committee). >> >> -- >> You received this message because you are subscribed to the Google Groups >> "GWT Contributors" group. >> To unsubscribe from this group and stop receiving emails from it, send an >> email to [email protected]. >> To view this discussion on the web visit >> https://groups.google.com/d/msgid/google-web-toolkit-contributors/837ee151-4b87-42d5-8b2c-a9a83a157e68%40googlegroups.com >> >> <https://groups.google.com/d/msgid/google-web-toolkit-contributors/837ee151-4b87-42d5-8b2c-a9a83a157e68%40googlegroups.com?utm_medium=email&utm_source=footer> >> . >> >> For more options, visit https://groups.google.com/d/optout. >> > > -- You received this message because you are subscribed to the Google Groups "GWT Contributors" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To view this discussion on the web visit https://groups.google.com/d/msgid/google-web-toolkit-contributors/f05876cf-cebf-43e6-b0b7-b35c2c2af550%40googlegroups.com. For more options, visit https://groups.google.com/d/optout.
