On Fri, Aug 9, 2019 at 12:48 PM Michał Walenia <michal.wale...@polidea.com> wrote:
> From what I understand, the Java 8 -> 11 testing isn't in essence similar > to py2 -> py3 checks. > True. Python 3 is in many ways a new language, and much less (and more subtly) backwards compatible. You also can't "link" Python 3 code against Python 2 code the way you can use old Java classes in new JVMs. > In the case of Java, all we want to do is check if Beam downloaded by > users from Maven (and compiled with JDK8) won't act up if used from a > JDK/JRE 11 environment. We don't want to migrate the tool itself to a newer > language version. As I mentioned in my previous email, there already are > test suites checking compatibility - ValidatesRunner on Direct and Dataflow > runners running in normal and portable mode. > Those tests keep passing, so I believe we're mostly fine regarding > compatibility. > All I want to know is - is this enough? > How else can we test Beam to be sure it works in JRE 11? After several > accidental launches of build tasks in JDK 11, I am sure that it's not > buildable with it, but this is not the compatibility type we want to check. > Well, we will want this eventually. Before that, we'll want to be sure users can build their Java 11 code against our artifacts. > > Thank you for your replies, > Michal > > > On Thu, Aug 8, 2019 at 10:25 PM Valentyn Tymofieiev <valen...@google.com> > wrote: > >> From Python 3 migration standpoint, some high level pillars that increase >> our confidence are: >> - Test coverage: (PreCommit, PostCommit), creating a system to make it >> easy for add test coverage in new language for new functionality. >> - Support of new language version by core runners + ValidatesRunner test >> coverage. >> - Test of time: offer new functionality in a few releases, monitor & >> address user feedback. >> >> Dependency audit and critical feature support in new language, as >> mentioned by others, are important points. If you are curious about >> detailed AIs that went into Python 3 support, feel free to look into >> BEAM-1251 or Py3 Kanban Board ( >> https://issues.apache.org/jira/secure/RapidBoard.jspa?rapidView=245&view=detail >> ). >> >> Thanks, >> Valentyn >> >> >> On Thu, Aug 8, 2019 at 7:24 PM Mark Liu <mark...@google.com> wrote: >> >>> Some actions we did for py2 to py3 works: >>> - Check and resolve incompatible dependencies. >>> - Enable py3 lint. >>> - Fill feature gaps between py2 and py3 (e.g. new py3 container, new >>> solution for type hint) >>> - Add unit tests, integration tests and other tests on py3 for coverage. >>> - Release (p3) and deprecation (p2) plan. >>> >>> Hope this helps on Java upgrade. >>> >>> Mark >>> >>> On Wed, Aug 7, 2019 at 3:19 PM Ahmet Altay <al...@google.com> wrote: >>> >>>> >>>> >>>> On Wed, Aug 7, 2019 at 12:21 PM Elliotte Rusty Harold < >>>> elh...@ibiblio.org> wrote: >>>> >>>>> gRPC bug here: https://github.com/grpc/grpc-java/issues/3522 >>>>> >>>>> google-cloud-java bug: >>>>> https://github.com/googleapis/google-cloud-java/issues/5760 >>>>> >>>>> Neither has a cheap or easy fix, I'm afraid. Commenting on these >>>>> issues might help us prove that there's a demand to priorotize these >>>>> compared to other work. If anyone has a support contract and could >>>>> file a ticket asking for a fix, that would help even more. >>>>> >>>>> Those are the two I know about. There might be others elsewhere in the >>>>> dependency tree. >>>>> >>>>> >>>>> On Wed, Aug 7, 2019 at 2:25 PM Lukasz Cwik <lc...@google.com> wrote: >>>>> > >>>>> > Since java8 -> java11 is similar to python2 -> python3 migration, >>>>> what was the acceptance criteria there? >>>>> >>>> >>>> I do not remember formally discussing this. The bar used was, all >>>> existing tests will pass for python2 and python3. New tests will be added >>>> for python3 specific features. (To avoid any confusion this bar has not >>>> been cleared yet.) >>>> >>>> cc: +Valentyn Tymofieiev <valen...@google.com> could add more details. >>>> >>>> >>>>> > >>>>> > On Wed, Aug 7, 2019 at 1:54 PM Elliotte Rusty Harold < >>>>> elh...@ibiblio.org> wrote: >>>>> >> >>>>> >> >>>>> >> >>>>> >> On Wed, Aug 7, 2019 at 9:41 AM Michał Walenia < >>>>> michal.wale...@polidea.com> wrote: >>>>> >>> >>>>> >>> >>>>> >>> Are these tests sufficient to say that we’re java 11 compatible? >>>>> What other aspects do we need to test to be able to say that? >>>>> >>> >>>>> >>> >>>>> >> >>>>> >> Are any packages split across multiple jar files, including >>>>> packages beam dependns on? That's the one that's bitten some other >>>>> projects, including google-cloud-java and gRPC. If so, beam is not going >>>>> to >>>>> work with the module system. >>>>> >> >>>>> >> Work is ongoing to fix splitn packages in both gRPC and >>>>> google-cloud-java, but we're not very far down that path and I think it's >>>>> going to be an API breaking change. >>>>> >> >>>>> > Romain pointed this out earlier and I fixed the last case of >>>>> packages being split across multiple jars within Apache Beam but as you >>>>> point out our transitive dependencies are not ready. >>>>> >> >>>>> >> >>>>> >> -- >>>>> >> Elliotte Rusty Harold >>>>> >> elh...@ibiblio.org >>>>> >>>>> >>>>> >>>>> -- >>>>> Elliotte Rusty Harold >>>>> elh...@ibiblio.org >>>>> >>>> > > -- > > Michał Walenia > Polidea <https://www.polidea.com/> | Software Engineer > > M: +48 791 432 002 <+48791432002> > E: michal.wale...@polidea.com > > Unique Tech > Check out our projects! <https://www.polidea.com/our-work> >