This Bugzilla instance is deprecated, and most Eclipse projects now use GitHub or Eclipse GitLab. Please see the deprecation plan for details.
Bug 483803 - Move core.jobs back to requiring Java 7
Summary: Move core.jobs back to requiring Java 7
Status: RESOLVED FIXED
Alias: None
Product: Platform
Classification: Eclipse Project
Component: Runtime (show other bugs)
Version: 4.6   Edit
Hardware: PC Windows 7
: P3 normal (vote)
Target Milestone: 4.6 M5   Edit
Assignee: Lars Vogel CLA
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2015-12-07 09:29 EST by John Arthorne CLA
Modified: 2016-01-25 08:57 EST (History)
11 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description John Arthorne CLA 2015-12-07 09:29:49 EST
Some consumers of org.eclipse.core.jobs are affected by the move to require Java 8. In particular RAP will no longer be able to participate in the Neon simultaneous release due to this limitation:

http://dev.eclipse.org/mhonarc/lists/cross-project-issues-dev/msg12737.html

Since the change requiring Java 8 was cosmetic, we should consider reverting that to help out our consumer community. This is the commit that would need reverting to fix it:

http://git.eclipse.org/c/platform/eclipse.platform.runtime.git/commit/?id=e0c1dc5111c5200d39f4611082b34110d735ac29
Comment 1 Ed Willink CLA 2015-12-07 10:06:00 EST
One 'advantage' of the move to Java 8 is to remove ambiguity in the unfortunately incompatible Java 7/8 jdt.annotation support. I find it convenient that I no longer need to make any pretence at supporting the Java 7 source available in Luna/Mars for Eclipse OCL. Java 7 is after all EOL, so we should move on. If the platform supports Java 7 again, maybe I have to too.
Comment 2 Lars Vogel CLA 2015-12-07 10:17:54 EST
We moved lots of platform plug-ins already to Java 8, I doubt that moving one plug-ins back will help RAP.
Comment 3 Thomas Watson CLA 2015-12-07 11:13:40 EST
(In reply to Ed Willink from comment #1)
> If the platform supports Java 7 again, maybe I have to too.

It all depends on what your consumers want to do with your bundles.  Just because one bundle in a release moves up to Java 8 does not mean all bundles in the release have to move up.  Many bundles can be consumed independent of other bundles in a release.  In my opinion low level components, such as jobs, should not be moved up to the very latest Java without considering how the community consumes the individual bundles.
Comment 4 Ralf Sternberg CLA 2015-12-07 13:12:20 EST
I've checked again, besides org.eclipse.core.jobs, these core.databinding bundles have also been updated to Java 8 recently[1]:

org.eclipse.core.databinding
org.eclipse.core.databinding.observable
org.eclipse.core.databinding.property

While this change did not affect the API, there is one change on top of it that requires Java 8 [2].

[1] http://git.eclipse.org/c/platform/eclipse.platform.ui.git/commit/bundles/org.eclipse.core.databinding?id=5e2ca9d1501a11fa56ef0de27bfc3d9884216a51
[2] http://git.eclipse.org/c/platform/eclipse.platform.ui.git/commit/bundles/org.eclipse.core.databinding?id=a2a9931aba4ab34dcaa72612d8343824a62cf726
Comment 5 Scott Lewis CLA 2015-12-07 13:16:48 EST
<stuff deleted>

>Since the change requiring Java 8 was cosmetic, we should consider reverting >that to help out our consumer community. This is the commit that would need >reverting to fix it:
>
>http://git.eclipse.org/c/platform/eclipse.platform.runtime.git/commit/?>id=e0c1dc5111c5200d39f4611082b34110d735ac29

ECF depends upon the jobs API for async remote services (server/peers/clients) as well as some of it's Eclipse-based tooling.   

We would like to continue supporting Java 7 for remote services for at least one more release cycle, but the good news is that we certainly could do this by not consuming the Neon version of jobs (i.e. using and distributing the Mars version of jobs) as Thomas suggests in comment 3.   Though this can/might make things overly complicated for us an our consumers once Neon is released.

However, since these changes do seem to be only cosmetic, we would be +1 to having jobs remain with Java7 for Neon.
Comment 6 Lars Vogel CLA 2015-12-07 14:09:29 EST
Sergey / Stefan, anything you need from Java 8 for jobs or can we revert it to Java 7?
Comment 7 Lars Vogel CLA 2015-12-07 14:10:34 EST
(In reply to Ralf Sternberg from comment #4)
> org.eclipse.core.databinding
> org.eclipse.core.databinding.observable
> org.eclipse.core.databinding.property

For databinding we are planning to support the new Java 8 Date and Time API, so we should not revert that to Java 7.
Comment 8 Sergey Prigogin CLA 2015-12-07 14:31:14 EST
(In reply to Lars Vogel from comment #6)

I do not object to reverting jobs to Java 7 for Neon.
Comment 9 Lars Vogel CLA 2015-12-07 14:39:38 EST
 (In reply to Sergey Prigogin from comment #8)
> (In reply to Lars Vogel from comment #6)
> 
> I do not object to reverting jobs to Java 7 for Neon.

Thanks Sergey. If this helps RAP and ECF, I suggest to revert jobs to Java 7 in M5.
Comment 10 Stefan Xenos CLA 2015-12-07 14:43:22 EST
> For databinding we are planning to support the new Java 8 Date and Time API,
> so we should not revert that to Java 7.

Agreed, databinding should stay on Java 8... but I think this bug is only asking about jobs.
Comment 11 Dani Megert CLA 2015-12-08 11:21:18 EST
In our PMC call today [1] we decided to move back to JavaSE-1.7.

[1] https://wiki.eclipse.org/Eclipse/PMC#Meeting_Minutes
Comment 12 Ralf Sternberg CLA 2015-12-09 11:46:47 EST
Update from RAP: In today's meeting we agreed to

- keep RAP 3.1 in the Neon simultaneous release despite the core.databinding dependencies on Java 8
- keep the RAP 3.1 bundles Java 7 compatible
- provide an alternative target platform based on Eclipse Mars for Java 7 users.

With this policy, the core.jobs BREE would not be an issue for RAP anymore. However, for users that depend on Java 7 but don't require databinding, having core.jobs on 1.7 would still allow them to use the Neon version.
Comment 13 Lars Vogel CLA 2015-12-09 12:11:55 EST
Ralf, thanks for the update. I suggest that we still move back to Java 7 for jobs to help ECF.
Comment 14 Dani Megert CLA 2015-12-09 14:47:26 EST
(In reply to Lars Vogel from comment #13)
> Ralf, thanks for the update. I suggest that we still move back to Java 7 for
> jobs to help ECF.

Yes, see comment 11.
Comment 15 Eclipse Genie CLA 2016-01-25 04:43:56 EST
New Gerrit change created: https://git.eclipse.org/r/65088
Comment 17 Lars Vogel CLA 2016-01-25 06:12:00 EST
Jobs backported to Java 7 for M5.