Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.

Bug 458896

Summary: Support <copyright>, <provider> and <description> in a product definition file (.product)
Product: [Eclipse Project] Platform Reporter: David Williams <david_williams>
Component: RelengAssignee: David Williams <david_williams>
Status: RESOLVED FIXED QA Contact:
Severity: normal    
Priority: P3 CC: aleksandr.kravets, bohacekm, curtis.windatt.public, d_a_carver, gschaffran, nboldt, pwebster, remy.suen, Vikas.Chandra, wayne.beaton
Version: 4.3   
Target Milestone: 4.5 M6   
Hardware: PC   
OS: Linux   
Whiteboard:
Bug Depends on:    
Bug Blocks: 434596, 458776    
Attachments:
Description Flags
EPP JEE update first page
none
JEE second page, still blank description
none
Missing provider name none

Description David Williams CLA 2015-02-01 10:24:47 EST
+++ This bug was initially created as a clone of Bug #361033 +++

I'm cloning this bug from PDE, rather than moving the PDE bug here, because I think se can accomplish some of what this bug requests, via p2.inf file. But not necessarily all, and ... using p2.inf files is not as easy as using the product editor and "guiding" users through the definition. 

One thing I'm not sure we can accomplish with p2.inf files, at least not easily, is "translatability".
Comment 1 David Williams CLA 2015-02-01 10:35:34 EST
I've done local tests putting following at end of p2.inf file and seemed to work fine. 


properties.1.name = org.eclipse.equinox.p2.description
properties.1.value = Initial Mars Release of the Eclipse SDK.

properties.2.name = org.eclipse.equinox.p2.provider
properties.2.value = Eclipse.org
Comment 2 David Williams CLA 2015-02-01 21:31:32 EST
(In reply to David Williams from comment #1)
> I've done local tests putting following at end of p2.inf file and seemed to
> work fine. 
> 
> 
> properties.1.name = org.eclipse.equinox.p2.description
> properties.1.value = Initial Mars Release of the Eclipse SDK.
> 
> properties.2.name = org.eclipse.equinox.p2.provider
> properties.2.value = Eclipse.org

FWIW, for the "binary Platform", I plan to say 
Initial Mars Release of the Eclipse Platform.

And for Platform SDK, 
Initial Mars Release of the Eclipse Platform SDK. 

I've tried several "quick fixes" for copyright, but, could not get that to work. 
I'm sure there is a way ... but ... the description, and provider, I believe takes care of "80%" of the problem, and I would recommend not to worry about the other 20% unless/until it's fixed in PDE, Tycho, and/or P2.
Comment 3 David Williams CLA 2015-02-01 21:40:37 EST
To better describe the background, and reason why this is important ... rather than make everyone read all the associated bugs, I'll summarize here. 

The motivation comes from "products" such as EPP, which bases their own product on the Eclipse Platform binary product.

For one, when we had the recent "SR1a Security Release" one user was critical enough to write a blog about being "surprised" by an off-cycle release, and was unable to find any information about it. Our "release train" has become _so_ predictable I can see why someone would think twice about blindly installing something off-cycle, without any "description" or explanation. 

From a users point of view, the very initial description is blank, even though if they press "next", they did get some description (when using the pure SDK or Platform ... not sure about EPP). So, that "description in the middle of things" doesn't help someone who has mis-giving from the very start. 

I will attach screen shots of showing these, for "SDK". 

The other issue, where no "provider" is given, is especially noticeable in EPP packages, since then "Eclipse Platform" is in the middle of a long list, instead  of the first item in a very short list.  Will attach screen shot from EPP package.
Comment 4 David Williams CLA 2015-02-01 22:13:02 EST
Created attachment 250424 [details]
EPP JEE update first page

FWIW, the blog post was 
FYI, link to blog was 
http://jdevelopment.nl/mysterious-44120150109-eclipse-luna-update-sr1a/

= = = = =

Attachment shows first page of JEE EPP "update" to SR1, showing blank description, as "Platform" would be too.
Comment 5 David Williams CLA 2015-02-01 22:21:49 EST
Created attachment 250425 [details]
JEE second page, still blank description

Confirmed for EPP, even the second page of dialog is blank, whereas for "pure platform" we do have a description: "An update for 4.x generation Eclipse SDK."

This is provided by the following snippet in our *.p2.inf files: 

# Restrict range so we are not an automatic update for 3.x.
update.id = org.eclipse.platform.ide
update.range = [4.0,$version$)
update.severity = 0
update.description = An update for 4.x generation Eclipse SDK.

# Set the product property type
properties.0.name = org.eclipse.equinox.p2.type.product
properties.0.value = true

See 
http://git.eclipse.org/c/platform/eclipse.platform.releng.aggregator.git/tree/eclipse.platform.releng.tychoeclipsebuilder/platform.sdk/platform.sdk.p2.inf#n42

(Guess we should correct "Eclipse SDK" to be "Platform" or "Platform SDK").
Comment 6 David Williams CLA 2015-02-01 22:24:40 EST
The previous part, in *.p2.inf, has existed since "forever". 

The new part, that adds "description" on first page, and provides "Provider", begins at 

http://git.eclipse.org/c/platform/eclipse.platform.releng.aggregator.git/tree/eclipse.platform.releng.tychoeclipsebuilder/platform.sdk/platform.sdk.p2.inf#n52
Comment 7 David Williams CLA 2015-02-01 22:28:49 EST
Created attachment 250426 [details]
Missing provider name

This last attachment shows how the lack of provider name really stands out, for "Eclipse SDK". There's actually two missing, one for Eclipse "product", and the other for "JEE Product" from EPP. We can at least fix ours, ... and provide an example of how EPP can fix theres.
Comment 8 David Williams CLA 2015-02-01 22:52:49 EST
This first commit show the main "fix" for this bug. 

http://git.eclipse.org/c/platform/eclipse.platform.releng.aggregator.git/commit/?id=64b81faf36fed8423301ac8d060146289c7f9392

Once that fix was done, it becomes obvious we should also fix the "update" description to match in names ... though, I suspect unlikely anyone ever sees those. 

http://git.eclipse.org/c/platform/eclipse.platform.releng.aggregator.git/commit/?id=051b651a8534d1a436962c24da2568f85b7136c1


With that, I'm closing as "fixed", but will emphasize I am totally open to different wording. I did avoid repeating the "version" in this description, since the way it is present to end user, the version is "right there" as well.