On 5/3/20 10:56 PM, Iñaki Ucar wrote: > Hi, > Hi Iñaki! I have CCed devel@xxxxxxxxxxxxxxxxxxxxxxx as this issue may be shared. I have not yet written it to https://fedoraproject.org/wiki/Changes/Java11#common_issues_packagers_can_face_and_gathered_solutions as I hope it will be rare. Generally, no program can say, that do not support jdk11, because any javac/java application can be *hacked* to work with java11 - see https://jvanek.fedorapeople.org/devconf/2017/portingjavaInternalToJdk9/portingOfItwToJdk9-II.pdf (really all except package split over modules, which is impossible) Now above mentione approaches are indeed *hacked*, and I discourage everybody to do so. If you package is really bound to jdk8, you can move to the version-full requires: BuildRequires: java-1.8.0-openjdk-devel (or java-devel <= 1:1.8.0 or similar) ... Requires: java-1.8.0-openjdk(-headless) (or java(-headless) <= 1:1.8.0 or similar) However there is an trap - packages you depends on. Once some of your dependencies will be compiled with --target > 8, you are doomed, and you have to bundle it or create its compact version. By doing so you can easily end in dependency hell. With GWT, I'm afraid you will need to try this approach, as it is to complex framework that any hacking on this field is really risky. And I'm sorry to hear they are not on jdk11 already, as this fate can likely met many other packages. Looking to spec of rstudio, and considering it have nearly no not-bundled dependence, and its upstream being stuck on jdk8, requiring jdk8 looks like correct step for a while. If yo have any influence in upstream, please be force GWT to move to jdk11. Be aware, that you may end in needing to adapt also launcher, as japackage-tools will be enforcing java-11-openjdk. You can easily do it by exporting JAVA_HOME with /usr/lib/jvm/java-1.8.0-openjdk value Good luck, Please let me know once you success with it. I willa dd an chapter to https://fedoraproject.org/wiki/Changes/Java11#common_issues_packagers_can_face_and_gathered_solutions tahnx! J. > I'm the maintainer of RStudio, which is failing. RStudio uses a > bundled version of Google's GWT to compile some web components, and > upstream indicates that Java 11 is not supported [1, 2]. Maye a future > version of RStudio brings a newer GWT that supports Java 11, but I'm > not sure. Anyways, for the time being, we're stuck with Java 8. What > should I do keep RStudio working on rawhide? > > [1] https://github.com/rstudio/rstudio/issues/6088 > [2] https://github.com/gwtproject/gwt/issues/9626 > [3] https://github.com/rstudio/rstudio/issues/6694 > > Regards, > Iñaki > > On Sun, 3 May 2020 at 21:49, <jvanek@xxxxxxxxxx> wrote: >> >> Hello fellow java package maintainer iucar! >> >> We are planning to bump the JDK from java-1.8.0-openjdk to java-11-openjdk for F33. Please see https://fedoraproject.org/wiki/Changes/Java11 >> >> Short Story: >> * according to package database, you (co)maintain at least 1 java packages, be aware that we are bumping JDK in rawhide >> * Ensure your package builds and runs fine with JDK11 (see the https://copr.fedorainfracloud.org/coprs/jvanek/java11/builds/) >> * there is special tooling ready for this, before mass rebuild is launched >> ** See https://fedoraproject.org/wiki/Changes/Java11#copr_preliminary_rebuild >> * If you do not want Fedora rotten with JDK8 for ever, continue reading >> >> Long Story: >> We ran a preliminary mass rebuild of javastack in copr repo https://copr.fedorainfracloud.org/coprs/jvanek/java11/builds/ (select "all" instead of "25" at the bottom), on packages requiring java,javac, java-devel, maven-local, ant, ivy & comp for build. You can see, the result was quite dramatic: >> 1225 total; attempted to rebuild >> 483 failed; from those 191 are trivial failures (but if you fix it, there is no guarantee real troubles are not hidden behind that) >> 186 succeeded >> 556 orphans or dead or otherwise tragic so the build did not even start >> >> From those you (co)own following: rstudio >> >> If some of your packages is missing here at all, and you think it should be included, don't hesitate to email/ping me or the mailing lists. It could happen you have some very indirect requires or you require namely java-1.8.0-openjdk(-devel). In that case yo should bump it according to packaging guidelines to java(-devel), verify you run against JDK11 in my copr. Feel free to ask me to include such an package in my copr. I will gladly do so. >> >> >> >> Your summary is: >> 0 passed >> 0 are missing, delete, retired or somehow else utterly missing in action (see lower) >> 1 failed, from those 0 failed very quickly (see lower) >> >> Details: >> * Passed: N/A >> * Missing: N/A >> is/are probably orphan. If it is intentional, you may ignore it. If it is error, you should resurrect the package and if in that, ensure it runs against JDK11 (see failed) >> * Failed, suspiciously quickly: N/A >> those packages failed so quickly, that the build was in initial phases. That usually mean that you build with source/target lower then 1.6 JDK11 supports 1.6 and up. We recommend to bump the source/target to 1.8, to allow existence of compact 1.8 packages alongside main javastack. See https://fedoraproject.org/wiki/Changes/Java11#Wrong_source.2Ftarget_version. Don't forget to upstream the patch, or maybe it is enough to update to more fresh upstream release which supports JDK11? it may happen, that after the fix, your build will fail in more terrible way (see bellow) >> * Failed: rstudio >> those packages failed. Very often the scary error may be fixed by bump to latest upstream version. JDK 11 is out for several years. Please, >> try to fix the package. Don't hesitate to ask on devel@xxxxxxxxxxxxxxxxxxxxxxx or java-devel@xxxxxxxxxxxxxxxxxxxxxxx or directly to me jvanek@xxxxxxxxxx. If you fix the fail, feel free to share your fix, it may help others. >> We are trying to gather the most common issues at https://fedoraproject.org/wiki/Changes/Java11#common_issues_packagers_can_face_and_gathered_solutions . Feel free to enhance the page, or write us your case (possibly both with solution and without) so we can add it here. >> >> >> Debugging Your failures. >> The copr repo we maintain, contains builds of java-11-openjdk as system JDK, javapackages-tools honoring that, and java-1.8.0-openjdk as non system JDK. Also it contains successfully rebuilt packages. You can directly use this copr repo in several ways. >> * first glance on error. On https://copr.fedorainfracloud.org/coprs/jvanek/java11/builds/ find your build (select "all" instead of "25" at the bottom), >> ** Click its number, select chroot (currently fedora-32-x86_64 ) and check the logs. Main log is build.log.gz. >> * anything you push to rawhide, will automatically rebuild here in f32 chroot (we have a JDK in rawhide broken a bit currently) >> ** It is the best approach. If you can fix your package in rawhide directly, without breaking the rawhide too much, go for it >> ** If you need to experiment, I have a mock config for you (generated from copr-cli mock-config jvanek/java11 fedora-32-x86_64) which you can copy to your /etc/mock and use - https://jvanek.fedorapeople.org/java11/jvanek-java11-fedora-32-x86_64.cfg . Eg: >> >> sudo cp downloaded-fedora-32-x86_64.cfg /etc/mock/jvanek-java11-fedora-32-x86_64.cfg >> or >> cp downloaded-fedora-32-x86_64.cfg ~/.config/mock/jvanek-java11-fedora-32-x86_64.cfg >> then >> # change spec, bump sources, apply patches >> fedpkg srpm >> mock -r jvanek-java11-fedora-32-x86_64 *.src.rpm >> >> Or any other packaging workflow you use, and you can use against the copr repo. >> Thank you very much for your help, there are 500 failures, and 1000 java packagers, but only 2 active members of java sig. Without your help, the JDK bump will be very hard. >> >> Thank You! >> J. >> >> Those should be links to build logs: >> FAIL https://download.copr.fedorainfracloud.org/results/jvanek/java11/fedora-32-x86_64/01355829-rstudio/build.log.gz >> MISSING: N/A >> >> -- >> Jiri Vanek >> jvanek@xxxxxxxxxx >> +420 775 39 01 09 >> > > -- Jiri Vanek Senior QE engineer, OpenJDK QE lead, Mgr. Red Hat Czech jvanek@xxxxxxxxxx M: +420775390109 _______________________________________________ devel mailing list -- devel@xxxxxxxxxxxxxxxxxxxxxxx To unsubscribe send an email to devel-leave@xxxxxxxxxxxxxxxxxxxxxxx Fedora Code of Conduct: https://docs.fedoraproject.org/en-US/project/code-of-conduct/ List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines List Archives: https://lists.fedoraproject.org/archives/list/devel@xxxxxxxxxxxxxxxxxxxxxxx