I was clarifying what I was expecting the setup to look like wrt different versions supported. I agree that the granularity of the supported version doesn't need to be lower than what is useful to us (which I think is driven by both LTS and also by GWT releases).
On Mon, Jun 29, 2020 at 7:47 PM Colin Alworth <[email protected]> wrote: > Right - the excludes via ant are certainly an option ("use ant filters"), > my main hope is to avoid adding another stanza of xml for the emulation for > each release. Cutting out Java7 and adding a "java 11 or higher" to lump > all the java 9, 10, 11 tests in would at least be a net equal in XML from > what we have today (since compiling under Java 7 isn't an option), but > still a bit messier than I'd like - especially if we agree that "run all > internal tests in Java11" is reasonable (plus another few build steps to > validate the build under other versions of Java). > > If that isn't deemed reasonably, we'll need a Java9 check (for the new > of() methods), Java 10 check (new optional methods, collections copyOf), > Java 11 check (string methods) to get caught up with the JDT we're using > today, and 12, 13, 14 are out now, with 15 soon. Again, not impossible, > just perhaps messy - and unwinding the "java8" flag (which really seems to > mean "newer than java7") is less fun than I'd like. > > -- > Colin Alworth > [email protected] > > > > On Mon, Jun 29, 2020, at 9:21 PM, 'Goktug Gokdogan' via GWT Contributors > wrote: > > wrt running tests: > See https://gwt-review.googlesource.com/c/gwt/+/13861 for the pattern > used in JRE earlier; and the CI was updated to run in both 7 and 8 at the > same time. > > PS: Compiler tests ("jjs.test.Java8Test") was different because we really > needed to run the compiler tests with new syntax inside Google which didn't > have the Java8 VM at the time. It wasn't a deal breaker to be not able run > Java8 JRE tests at the time so they are not super sourced. > > I recommend the same approach. > > > On Mon, Jun 29, 2020 at 6:45 PM Colin Alworth <[email protected]> wrote: > > As of somewhere in the time leading up to the GWT 2.9.0 release, it is no > longer possible to build GWT with Java7, and similarly the decision was > made to no longer officially support running on Java7 > (jsinterop-annotations use of "TYPE_USE", newer jetty version too I > believe). > > There is still some defunct wiring in the build to handle Java 7 vs Java 8 > though, mostly with regards to running tests - since we first javac our > java classes, and then run gwtc on them, we need to make sure that the java > version being use can correctly compile those tests. > > The issue https://github.com/gwtproject/gwt/issues/9683 is tracking some > of the existing work on this: the main remaining piece is to decide how to > handle javadoc. GWT has its own custom doclet to handle a few custom tags, > "example", "gwt.include", and "tip". None of this compiles after Java 8, > since Java 9 came with a new, incompatible API to build custom tags, so > either we drop Java 8 support for building the toolkit, require _only_ Java > 8 to build, support two parallel copies of the custom doc wiring, or drop > the doc wiring entirely and remove these custom tags throughout the > codebase. > > Since the release of GWT 2.9 and my own work on the above ticket, I've > been picking back up some Java 9/10/11 JRE emulation work that I had > previously paused, and I'm running into the issue described at the top - if > you write a test that calls Map.of() and run it on Java8 as a GWTTestCase, > you'll get a compile error. > > Two basic ways I can easily see to fix this: we can make two copies of > each test, one as an empty "real" java type and one as supersource, or we > can guard those tests behind java version args in the build glue like we > did for Java7 vs Java8. The first option is clunky, and while I see this > was done for `com.google.gwt.dev.jjs.test.Java8Test`, it clearly wasn't > done for JRE emulation tests, and I assume there was a reason for that. The > second option requires changing our CI to build+test on some new JRE... > > ...and given the constraints of the Java LTS system, and the java 8/9 > divide for custom doclet stuff, it seems like the clearest win is to move > all the way to Java11, though continue to target java 8 releases, and test > on all JREs up until current. > > So that's my pitch. For completeness, some other options that seem > workable, keeping in mind that at present there are about 3 important JRE > versions to support well: Java 8, Java 11, and the current stable release. > * Require Java8 for javadoc, supersource tests > * Allow any JRE 8+, use ant filters for tests for each version, maintain > two javadoc builds > * Allow any JRE 8+, use ant filters, only actually produce javadoc on > java9+ builds > > Other technical ways to deal with this, or have a missed an easier > solution to one of these problems? > > > -- > 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/0aa0701b-4287-4e4c-bbef-23952898c64an%40googlegroups.com > <https://groups.google.com/d/msgid/google-web-toolkit-contributors/0aa0701b-4287-4e4c-bbef-23952898c64an%40googlegroups.com?utm_medium=email&utm_source=footer> > . > > > -- > 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/CAN%3DyUA1L4gAaaEkqgWnqL%3DiKDX_aUjX1L0WThdG4yuxUyHdQMQ%40mail.gmail.com > <https://groups.google.com/d/msgid/google-web-toolkit-contributors/CAN%3DyUA1L4gAaaEkqgWnqL%3DiKDX_aUjX1L0WThdG4yuxUyHdQMQ%40mail.gmail.com?utm_medium=email&utm_source=footer> > . > > > -- > 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/f2219bb2-6ce3-409e-bcff-63c560be67b0%40www.fastmail.com > <https://groups.google.com/d/msgid/google-web-toolkit-contributors/f2219bb2-6ce3-409e-bcff-63c560be67b0%40www.fastmail.com?utm_medium=email&utm_source=footer> > . > -- 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/CAN%3DyUA27SHfLBzX3__QkU54L7UzCQf6t49CHpg3inO%2BZ6wcP9Q%40mail.gmail.com.
