Note: This is a public test instance of Red Hat Bugzilla. The data contained within is a snapshot of the live data so any changes you make will not be reflected in the production Bugzilla. Email is disabled so feel free to test any aspect of the site that you want. File any problems you find or give feedback at bugzilla.redhat.com.

Bug 1084097

Summary: Java 8
Product: [Fedora] Fedora Reporter: Jaroslav Reznik <jreznik>
Component: Changes TrackingAssignee: Jaroslav Reznik <jreznik>
Status: CLOSED CURRENTRELEASE QA Contact:
Severity: unspecified Docs Contact: Pete Travis <me>
Priority: unspecified    
Version: rawhideCC: dbhole, mailings, me, mizdebsk, omajid, pbokoc, yruseva
Target Milestone: ---Flags: pbokoc: fedora_requires_release_note+
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard: ChangeAcceptedF21 SystemWideChange
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2014-12-08 15:22:19 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On: 1082186, 1089975, 1089979, 1090770, 1096007, 1096012, 1106135    
Bug Blocks:    

Description Jaroslav Reznik 2014-04-03 15:19:09 UTC
This is a tracking bug for Change: Java 8
For more details, see: http://fedoraproject.org//wiki/Changes/Java8

Make Java 8 (provided by OpenJDK 8 which is java-1.8.0-openjdk) the default Java runtime. The current default Java runtime (Java 7, provided by OpenJDK 7, java-1.7.0-openjdk) will be obsoleted and removed.

Comment 1 Ferry Huberts 2014-04-09 07:19:53 UTC
please do NOT remove java 7 from Fedora.
java 7 is not EOL and it's used in waaaaay to many deployments.

we had this problem before when java 6 was removed...

Comment 2 Deepak Bhole 2014-04-09 14:46:41 UTC
Hi Ferry, Although Java 7 is not EOLd yet, it will be in April 2015:
http://www.oracle.com/technetwork/java/eol-135779.html

Assuming F21 is released in October per tentative plans, that means that Java 7 will be EOLd 8 months before F21 hits EOL [November 2015]. 

Not wanting to leave F21 with an insecure JDK is the primary reason for the switch to OpenJDK8.

Comment 3 Ferry Huberts 2014-04-09 15:09:37 UTC
I do appreciate that.
However, _removing_ it from Fedora denies the user the choice to install it.

Having Java 8 as the default is fine.
_not_ having Java 7 will be painful for many.
There are many (subtle) differences going from Java 7 to 8.
Removing J7 removes any transition time.

Comment 4 Deepak Bhole 2014-04-09 17:36:53 UTC
It is not as simple as just shipping it on the side unfortunately. 

Once we switch to OpenJDK8, we will begin rebuilding the Java stack with OpenJDK8 to flush out errors. As this happens, those packages will stop working with OpenJDK7/Java7 as Java 8 uses a new class file version. By the time F21 is released, a large part of the Fedora Java stack will no longer work with OpenJDK7.

Comment 5 Ferry Huberts 2014-04-09 19:01:57 UTC
you can easily avoid that by compiling for 1.7 profile and give people time to transition their packages.

And it still removes the choice.

People use Fedora with non-fedora software too, some of which is (blasphemy) not open source.

Personally, I'm involved in OSGi (bnd/bndtools) and I known this lack of transition time will give me some headaches

Comment 6 Omair Majid 2014-04-09 19:06:01 UTC
(In reply to Ferry Huberts from comment #3)
> Removing J7 removes any transition time.

The transition time is now: OpenJDK 8 is available in Fedora 19 and 20 as optional.

Comment 7 Deepak Bhole 2014-04-09 19:30:50 UTC
As Omair mentioned, OpenJDK8 has been in Fedora for a while.

Additionally, compiling for the 1.7 profile is non trivial given the sheer number of Java packages in Fedora (~800) and the myriad of build mechanisms they use.

Comment 8 Ferry Huberts 2014-04-16 21:54:52 UTC
A bit of gentle warning:

There are many subtle and not so subtle differences when going from J7 to J8.
The OSGi Alliance is prototyping conversion of all their builds to J8 and they're finding many issues.

There might be a non-trivial amount of fall-out from forcing J8

Just so that you'd know ;-)

Comment 9 Omair Majid 2014-04-16 22:04:26 UTC
(In reply to Ferry Huberts from comment #8)
> There might be a non-trivial amount of fall-out from forcing J8

At this point, we don't really have an option. OpenJDK 7 (and Java 7) are being EOL'ed in a year: http://mail.openjdk.java.net/pipermail/jdk7u-dev/2014-April/008910.html.

Should we really leave all Fedora users running a version of OpenJDK that may contain security vulnerabilities?

Comment 10 Pete Travis 2014-09-23 04:52:42 UTC
Release notes copy available for review at https://fedoraproject.org/wiki/Documentation_Java_Beat#Update_to_OpenJDK_8

Comment 11 Omair Majid 2014-09-23 13:42:16 UTC
(In reply to Pete Travis from comment #10)
> Release notes copy available for review at
> https://fedoraproject.org/wiki/Documentation_Java_Beat#Update_to_OpenJDK_8

Should I make changes to the page directly?

The link "http://openjdk.java.net/projects/jdk8/features/" doesn't work, it should be "http://openjdk.java.net/projects/jdk8/features" (no trailing slash).

Looks good otherwise. Thanks!

Comment 12 Pete Travis 2014-09-26 05:28:01 UTC
I've made that change, Omair, but if you think of something else, you are welcome to edit the page.

Comment 13 Jaroslav Reznik 2014-10-07 12:23:43 UTC
This message is a reminder that Fedora 21 Change Checkpoint: 100% Code Complete Deadline (Former Accepted Changes 100% Complete) is on 2014-10-14 [1].

All Accepted Changes has to be code complete and ready to be validated in the Beta release (optionally by Fedora QA). Required bug state at this point is ON_QA.

As for several System Wide Changes, Beta Change Deadline is a point of contingency plan. All incompleted Changes will be reported to FESCo on 2014-10-15 meeting. In case of any questions, don't hesitate to ask Wrangler (jreznik).

[1] https://fedoraproject.org/wiki/Releases/21/Schedule