On 25. 10. 19 19:30, Mikolaj Izdebski wrote:
Hello,
Currently default Java runtime in Fedora is OpenJDK 8. This is not the latest OpenJDK packaged, but still remains system-default version. Because of that Apache Maven and Apache Ant in Fedora are built using OpenJDK 8 and run on OpenJDK 8.
I am planning to switch Maven 3.6 and Ant 1.10 modules to build with and run on OpenJDK 11, which is the latest LTS release of OpenJDK. This also means that future streams of javapackages-tools module will default to use OpenJDK 11 for building packages. Please let me know if you have any concerns.
Hello, I am not very familiar with how Java works in this regard, but since this is the default stream etc., wouldn't it be wise to coordinate such change with a general OpenJDK 11 default Fedora system wide change?
E.g. would the dependent OpenJDK 8 packages still build in stable releases if this change is done globally and for example if Ursa Major/Prime/... is activated?
On Fri, Oct 25, 2019 at 8:47 PM Miro Hrončok mhroncok@redhat.com wrote:
On 25. 10. 19 19:30, Mikolaj Izdebski wrote:
Hello,
Currently default Java runtime in Fedora is OpenJDK 8. This is not the latest OpenJDK packaged, but still remains system-default version. Because of that Apache Maven and Apache Ant in Fedora are built using OpenJDK 8 and run on OpenJDK 8.
I am planning to switch Maven 3.6 and Ant 1.10 modules to build with and run on OpenJDK 11, which is the latest LTS release of OpenJDK. This also means that future streams of javapackages-tools module will default to use OpenJDK 11 for building packages. Please let me know if you have any concerns.
Hello, I am not very familiar with how Java works in this regard, but since this is the default stream etc., wouldn't it be wise to coordinate such change with a general OpenJDK 11 default Fedora system wide change?
It probably would, but I'm not aware of any existing change proposal to switch default OpenJDK versions in Fedora.
E.g. would the dependent OpenJDK 8 packages still build in stable releases if this change is done globally and for example if Ursa Major/Prime/... is activated?
Changing underlying OpenJDK version of maven:3.6 module doesn't change anything with regards to building other packages. Right now nothing build-depends on maven:3.6 module. And if Ursa-Major were enabled in Fedora, most of ursine Java packages would become FTBFS anyway as maven modules are not capable of building packages with. See below for more details.
Since always Maven in Fedora was available in 2 flavors, each having different purposes. "maven" module provides Maven application for end users. This is pure upstream Maven that doesn't "know" how to access libraries packaged as RPMs and included in Fedora. Therefore it is mostly useless for building packages with and I am not aware of any package in Fedora being built with this pure Maven. For purposes of building packages "javapackages-tools" module is available - it provides XMvn - Maven with extensions that enable it to be used for building packages. It also provides RPM macros and other necessary tools which are not available in "maven".
-- Mikolaj Izdebski
On Fri, Oct 25, 2019 at 10:30 PM Mikolaj Izdebski mizdebsk@redhat.com wrote:
On Fri, Oct 25, 2019 at 8:47 PM Miro Hrončok mhroncok@redhat.com wrote:
On 25. 10. 19 19:30, Mikolaj Izdebski wrote:
Hello,
Currently default Java runtime in Fedora is OpenJDK 8. This is not the latest OpenJDK packaged, but still remains system-default version. Because of that Apache Maven and Apache Ant in Fedora are built using OpenJDK 8 and run on OpenJDK 8.
I am planning to switch Maven 3.6 and Ant 1.10 modules to build with and run on OpenJDK 11, which is the latest LTS release of OpenJDK. This also means that future streams of javapackages-tools module will default to use OpenJDK 11 for building packages. Please let me know if you have any concerns.
Hello, I am not very familiar with how Java works in this regard, but since this is the default stream etc., wouldn't it be wise to coordinate such change with a general OpenJDK 11 default Fedora system wide change?
It probably would, but I'm not aware of any existing change proposal to switch default OpenJDK versions in Fedora.
Probably because the Java SIG is basically non-existent right now? Just a guess.
Is there even anybody left who is qualified to submit and go through with a "switch to OpenJDK 11" Change in fedora?
I really don't want to have to do that myself ...
E.g. would the dependent OpenJDK 8 packages still build in stable releases if this change is done globally and for example if Ursa Major/Prime/... is activated?
Changing underlying OpenJDK version of maven:3.6 module doesn't change anything with regards to building other packages. Right now nothing build-depends on maven:3.6 module. And if Ursa-Major were enabled in Fedora, most of ursine Java packages would become FTBFS anyway as maven modules are not capable of building packages with. See below for more details.
Uhh ... wait, what? That's not good. Is there anything we can do to prevent this clusterf*ck?
Fabio
Since always Maven in Fedora was available in 2 flavors, each having different purposes. "maven" module provides Maven application for end users. This is pure upstream Maven that doesn't "know" how to access libraries packaged as RPMs and included in Fedora. Therefore it is mostly useless for building packages with and I am not aware of any package in Fedora being built with this pure Maven. For purposes of building packages "javapackages-tools" module is available - it provides XMvn - Maven with extensions that enable it to be used for building packages. It also provides RPM macros and other necessary tools which are not available in "maven".
-- Mikolaj Izdebski _______________________________________________ devel mailing list -- devel@lists.fedoraproject.org To unsubscribe send an email to devel-leave@lists.fedoraproject.org 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@lists.fedoraproject.org
On Fri, Oct 25, 2019 at 11:27 PM Fabio Valentini decathorpe@gmail.com wrote:
E.g. would the dependent OpenJDK 8 packages still build in stable releases if this change is done globally and for example if Ursa Major/Prime/... is activated?
Changing underlying OpenJDK version of maven:3.6 module doesn't change anything with regards to building other packages. Right now nothing build-depends on maven:3.6 module. And if Ursa-Major were enabled in Fedora, most of ursine Java packages would become FTBFS anyway as maven modules are not capable of building packages with. See below for more details.
Uhh ... wait, what? That's not good. Is there anything we can do to prevent this clusterf*ck?
I'm planning to make Maven modules parallel-installable with ursine packages - maven-3.6 module would not have any conflicts with any ursine packages. The required packaging work is already done, parallel-installable PoC of Maven 3.6 is available from MBI repos [1]. Currently I'm waiting for one MBS/Koji [2] issue to be resolved before building the module in Fedora infrastructure. The issue is already fixed in staging Koji and I hope that production will be fixed soon too.
Once parallel-installability is implemented, existence of Maven modules will not affect building any packages. Ursine Java packages will be built with ursine Maven, while modular Java packages will be built with javapackages-tools module, maintained by me.
[1] https://koji.kjnet.xyz/kojifiles/repos/m36/latest/x86_64/ [2] https://pagure.io/fm-orchestrator/issue/1321
-- Mikolaj Izdebski
On Sat, Oct 26, 2019, 13:08 Mikolaj Izdebski mizdebsk@redhat.com wrote:
On Fri, Oct 25, 2019 at 11:27 PM Fabio Valentini decathorpe@gmail.com wrote:
E.g. would the dependent OpenJDK 8 packages still build in stable
releases if
this change is done globally and for example if Ursa Major/Prime/...
is activated?
Changing underlying OpenJDK version of maven:3.6 module doesn't change anything with regards to building other packages. Right now nothing build-depends on maven:3.6 module. And if Ursa-Major were enabled in Fedora, most of ursine Java packages would become FTBFS anyway as maven modules are not capable of building packages with. See below for more details.
Uhh ... wait, what? That's not good. Is there anything we can do to prevent this clusterf*ck?
I'm planning to make Maven modules parallel-installable with ursine packages - maven-3.6 module would not have any conflicts with any ursine packages. The required packaging work is already done, parallel-installable PoC of Maven 3.6 is available from MBI repos [1]. Currently I'm waiting for one MBS/Koji [2] issue to be resolved before building the module in Fedora infrastructure. The issue is already fixed in staging Koji and I hope that production will be fixed soon too.
Once parallel-installability is implemented, existence of Maven modules will not affect building any packages. Ursine Java packages will be built with ursine Maven, while modular Java packages will be built with javapackages-tools module, maintained by me.
Oh, great. That's good news. Thank you for working on this!
Fabio
[1] https://koji.kjnet.xyz/kojifiles/repos/m36/latest/x86_64/ [2] https://pagure.io/fm-orchestrator/issue/1321
-- Mikolaj Izdebski _______________________________________________ devel mailing list -- devel@lists.fedoraproject.org To unsubscribe send an email to devel-leave@lists.fedoraproject.org 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@lists.fedoraproject.org
Mikolaj Izdebski wrote:
I'm planning to make Maven modules parallel-installable with ursine packages - maven-3.6 module would not have any conflicts with any ursine packages. The required packaging work is already done, parallel-installable PoC of Maven 3.6 is available from MBI repos [1]. Currently I'm waiting for one MBS/Koji [2] issue to be resolved before building the module in Fedora infrastructure. The issue is already fixed in staging Koji and I hope that production will be fixed soon too.
Once parallel-installability is implemented, existence of Maven modules will not affect building any packages. Ursine Java packages will be built with ursine Maven, while modular Java packages will be built with javapackages-tools module, maintained by me.
That sounds good. Now the only question that you have not answered (and sorry if the answer is obvious) is: What are the advantages of the version packaged as a module? Or in other words: Under which use cases would one want to use that version rather than the XMvn version packaged in the ursine packages and in the javapackages-tools module?
Kevin Kofler
any package can switch to jdk11, but sysem jdk should be jdk8, at least for some more time...
On 10/25/19 8:47 PM, Miro Hrončok wrote:
On 25. 10. 19 19:30, Mikolaj Izdebski wrote:
Hello,
Currently default Java runtime in Fedora is OpenJDK 8. This is not the latest OpenJDK packaged, but still remains system-default version. Because of that Apache Maven and Apache Ant in Fedora are built using OpenJDK 8 and run on OpenJDK 8.
I am planning to switch Maven 3.6 and Ant 1.10 modules to build with and run on OpenJDK 11, which is the latest LTS release of OpenJDK. This also means that future streams of javapackages-tools module will default to use OpenJDK 11 for building packages. Please let me know if you have any concerns.
Hello, I am not very familiar with how Java works in this regard, but since this is the default stream etc., wouldn't it be wise to coordinate such change with a general OpenJDK 11 default Fedora system wide change?
E.g. would the dependent OpenJDK 8 packages still build in stable releases if this change is done globally and for example if Ursa Major/Prime/... is activated?
On Sat, Oct 26, 2019 at 03:53:28PM +0200, Jiri Vanek wrote:
any package can switch to jdk11, but sysem jdk should be jdk8, at least for some more time...
Any reasons? Defaulting to ancient software conflicts with our “First” foundation.
On Sat, 26 Oct 2019 15:59:27 +0200, you wrote:
On Sat, Oct 26, 2019 at 03:53:28PM +0200, Jiri Vanek wrote:
any package can switch to jdk11, but sysem jdk should be jdk8, at least for some more time...
Any reasons? Defaulting to ancient software conflicts with our First foundation.
Simple reason - while Oracle decided to move Java to a faster, time based release cycle the Java community essentially shrugged the proverbial shoulders and ignored Oracle.
Much of the Java ecosystem is still only supported on Java 8, and if you go to adoptopenjdk.net the default choice remains Java 8.
Hadoop, Tomcat, etc. all still are only supported by their communities on Java 8.
So while it might be noble for Fedora to try and force the issue, the likely result is that users needing Java will simply use a different distribution while Fedora will get a bad repuation in the Java community.
On Sat, Oct 26, 2019, 19:07 Gerald Henriksen ghenriks@gmail.com wrote:
On Sat, 26 Oct 2019 15:59:27 +0200, you wrote:
On Sat, Oct 26, 2019 at 03:53:28PM +0200, Jiri Vanek wrote:
any package can switch to jdk11, but sysem jdk should be jdk8, at least
for some more time...
Any reasons? Defaulting to ancient software conflicts with our “First”
foundation.
Simple reason - while Oracle decided to move Java to a faster, time based release cycle the Java community essentially shrugged the proverbial shoulders and ignored Oracle.
Much of the Java ecosystem is still only supported on Java 8, and if you go to adoptopenjdk.net the default choice remains Java 8.
Hadoop, Tomcat, etc. all still are only supported by their communities on Java 8.
So while it might be noble for Fedora to try and force the issue, the likely result is that users needing Java will simply use a different distribution while Fedora will get a bad repuation in the Java community.
You are aware that OpenJDK 11 is the default even on Debian stable now, right? Other than RHEL, most mainstream distros ship 11 as default now, AFAIK. So fedora really is the odd one out here
_______________________________________________
devel mailing list -- devel@lists.fedoraproject.org To unsubscribe send an email to devel-leave@lists.fedoraproject.org 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@lists.fedoraproject.org
On Sat, Oct 26, 2019 at 1:07 PM Gerald Henriksen ghenriks@gmail.com wrote:
On Sat, 26 Oct 2019 15:59:27 +0200, you wrote:
On Sat, Oct 26, 2019 at 03:53:28PM +0200, Jiri Vanek wrote:
any package can switch to jdk11, but sysem jdk should be jdk8, at least for some more time...
Any reasons? Defaulting to ancient software conflicts with our “First” foundation.
Simple reason - while Oracle decided to move Java to a faster, time based release cycle the Java community essentially shrugged the proverbial shoulders and ignored Oracle.
Much of the Java ecosystem is still only supported on Java 8, and if you go to adoptopenjdk.net the default choice remains Java 8.
Kind of like perl, gcc, kernels, and python releases. Software updates are an inevitable part of software development. Then some excited people go "hey, I know, let's support multiple versions of critical software with a web of technical requirements and invent modules". Hilarity ensue, and many painful old lessons are being rehashed in *that* thread. But let's keep this one away from the "modularity" adventures.
I'm afraid that Oracle inherited a lot of Sun's practices on software versioning when they bought Java. The version naming scheme, numbering scheme, and the release schedule, are inconsistent, unpredictable, and cannot be relied on from Oracle's announcements, Ergo, right now, Oracle is deprecating Java 8, and encouraging the current LTS, Java 11. Make no prodictions for the schedule or the next LTS release, this is *right now*.
Hadoop, Tomcat, etc. all still are only supported by their communities on Java 8.
So while it might be noble for Fedora to try and force the issue, the likely result is that users needing Java will simply use a different distribution while Fedora will get a bad repuation in the Java community.
This is unnecessary. The current consistent layout of parallel installed versions of Java releases in /usr/lib/jvm, with consistent release numbering, allows a predictable use of JAVA_HOME and of binary paths to permit the use of multiple Java releases on the same host. It's been working well this way for years.
On Sat, Oct 26, 2019 at 02:23:33PM -0400, Nico Kadel-Garcia wrote:
Any reasons? Defaulting to ancient software conflicts with our “First” foundation.
Simple reason - while Oracle decided to move Java to a faster, time based release cycle the Java community essentially shrugged the proverbial shoulders and ignored Oracle.
Much of the Java ecosystem is still only supported on Java 8, and if you go to adoptopenjdk.net the default choice remains Java 8.
I'm afraid that Oracle inherited a lot of Sun's practices on software versioning when they bought Java. The version naming scheme, numbering scheme, and the release schedule, are inconsistent, unpredictable, and cannot be relied on from Oracle's announcements, Ergo, right now, Oracle is deprecating Java 8, and encouraging the current LTS, Java 11. Make no prodictions for the schedule or the next LTS release, this is *right now*.
According to the table at https://en.wikipedia.org/wiki/Java_version_history Java 11 is LTS, and the next LTS will be Java 17 in 2021. There are also planned releases in between, with dates given. By the way, isn't Redhat main driving force behind Java 11 at the moment? What to make from https://www.redhat.com/en/about/press-releases/leadership-openjdk-8-and-open... ?
On Sat, Oct 26, 2019 at 3:41 PM Tomasz Torcz tomek@pipebreaker.pl wrote:
On Sat, Oct 26, 2019 at 02:23:33PM -0400, Nico Kadel-Garcia wrote:
Any reasons? Defaulting to ancient software conflicts with our “First” foundation.
Simple reason - while Oracle decided to move Java to a faster, time based release cycle the Java community essentially shrugged the proverbial shoulders and ignored Oracle.
Much of the Java ecosystem is still only supported on Java 8, and if you go to adoptopenjdk.net the default choice remains Java 8.
I'm afraid that Oracle inherited a lot of Sun's practices on software versioning when they bought Java. The version naming scheme, numbering scheme, and the release schedule, are inconsistent, unpredictable, and cannot be relied on from Oracle's announcements, Ergo, right now, Oracle is deprecating Java 8, and encouraging the current LTS, Java 11. Make no prodictions for the schedule or the next LTS release, this is *right now*.
According to the table at https://en.wikipedia.org/wiki/Java_version_history Java 11 is LTS, and the next LTS will be Java 17 in 2021. There are also planned releases in between, with dates given. By the way, isn't Redhat main driving force behind Java 11 at the moment? What to make from https://www.redhat.com/en/about/press-releases/leadership-openjdk-8-and-open... ?
That press release reflects the uncertainties. It says Red Hat "is stewarding both OpenJDK 8 and OpenJDK 11, which will converge with the Oracle JDK". A steward, in legal terms, is not the owner. They are typically an employee entrusted with responsibility, but that trust and authority can be withdrawn. And which way will the convergence go? Will OpenJDK become the reference release, which might make sense? And what about IBM Java, now that IBM bought Red Hat?
Announcements like that are precisely why I would not trust any major release schedule for Java for any company right now. Since Java 11 is the latest long-t4erm release right now, I'd switch to it by default to get architectural features and bug fixes.
On Sat, Oct 26, 2019, 15:54 Jiri Vanek jvanek@redhat.com wrote:
any package can switch to jdk11, but sysem jdk should be jdk8, at least for some more time...
Would you care to elaborate why?
Fabio
On 10/25/19 8:47 PM, Miro Hrončok wrote:
On 25. 10. 19 19:30, Mikolaj Izdebski wrote:
Hello,
Currently default Java runtime in Fedora is OpenJDK 8. This is not the latest OpenJDK packaged, but still remains system-default version. Because of that Apache Maven and Apache Ant in Fedora are built using OpenJDK 8 and run on OpenJDK 8.
I am planning to switch Maven 3.6 and Ant 1.10 modules to build with and run on OpenJDK 11, which is the latest LTS release of OpenJDK. This also means that future streams of javapackages-tools module will default to use OpenJDK 11 for building packages. Please let me know if you have any concerns.
Hello, I am not very familiar with how Java works in this regard, but
since this is the default
stream etc., wouldn't it be wise to coordinate such change with a
general OpenJDK 11 default Fedora
system wide change?
E.g. would the dependent OpenJDK 8 packages still build in stable
releases if this change is done
globally and for example if Ursa Major/Prime/... is activated?
-- Jiri Vanek Senior QE engineer, OpenJDK QE lead, Mgr. Red Hat Czech jvanek@redhat.com M: +420775390109 _______________________________________________ devel mailing list -- devel@lists.fedoraproject.org To unsubscribe send an email to devel-leave@lists.fedoraproject.org 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@lists.fedoraproject.org
On Sat, Oct 26, 2019 at 9:53 AM Jiri Vanek jvanek@redhat.com wrote:
any package can switch to jdk11, but sysem jdk should be jdk8, at least for some more time...
If anything, we're late to the party of moving to JDK 11 by default. Java 8 has been EOL for a while now.
On 10/26/19 4:33 PM, Neal Gompa wrote:
On Sat, Oct 26, 2019 at 9:53 AM Jiri Vanek jvanek@redhat.com wrote:
any package can switch to jdk11, but sysem jdk should be jdk8, at least for some more time...
If anything, we're late to the party of moving to JDK 11 by default. Java 8 has been EOL for a while now.
Oh this is heavily incorrect. JDK8 is very much alive, and fully supported by upstream. Will be getting all security patches and also many enhancements for several another years.
On Sat, 26 Oct 2019 10:33:59 -0400, you wrote:
On Sat, Oct 26, 2019 at 9:53 AM Jiri Vanek jvanek@redhat.com wrote:
any package can switch to jdk11, but sysem jdk should be jdk8, at least for some more time...
If anything, we're late to the party of moving to JDK 11 by default. Java 8 has been EOL for a while now.
Given that Java 8 is the default in the new RHEL 8 I suspect it will be getting support for quite a while yet.