Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.
Bug 313007 - Send major eclipse version as query parameter
Summary: Send major eclipse version as query parameter
Status: RESOLVED FIXED
Alias: None
Product: MPC
Classification: Technology
Component: wizard (show other bugs)
Version: unspecified   Edit
Hardware: PC Mac OS X - Carbon (unsup.)
: P3 critical (vote)
Target Milestone: 1.0.0   Edit
Assignee: Project Inbox CLA
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2010-05-15 07:03 EDT by Jochen Krause CLA
Modified: 2010-06-02 11:46 EDT (History)
1 user (show)

See Also:


Attachments
mylyn/context/zip (36.62 KB, application/octet-stream)
2010-05-19 14:33 EDT, David Green CLA
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description Jochen Krause CLA 2010-05-15 07:03:46 EDT
The mpc currently sends information on operating system, windowing system and java version as url parameters to the marketplace provider. Please add a parameter for the major eclipse version (eclipse platform), e.g. version=3.5

Many solutions have strong dependencies on eclipse versions, so the marketplace provider can do a better job in only providing solutions which can be installed in the eclipse installation calling the service. With Eclipse 4.0 on the horizon this is even more important.

The user experience of the MPC client is strongly affected by the ability of the mpc to display solutions that can be installed into the Eclipse installation, so I mark this bug as critical.

The Eclipse Marketplace has information about the supported eclipse versions which can be used for the server side of the marketplace.
Comment 1 Nathan Gervais CLA 2010-05-17 09:53:48 EDT
Moving to MPC
Comment 2 David Green CLA 2010-05-17 22:20:29 EDT
I'm not sure if this will provide any value, given recent capabilities added to p2.  For example, I can have 3.5 installed and update most of it to 3.6M7, and the about dialog still lists the major version as 3.5.
Comment 3 Jochen Krause CLA 2010-05-18 10:29:12 EDT
You are right with respect to milestone builds. But developers using milestone builds can not really expect that everything works out of the box. For developers sticking with releases the major version of the platform is meaningful. Our experience with this approach is quite positive.
Comment 4 David Green CLA 2010-05-18 20:14:33 EDT
Sounds reasonable to me.  What does it mean to provide the major eclipse version?  We could provide the symbolic name and version of the org.eclipse.core.runtime.IProduct bundle, as provided by org.eclipse.core.runtime.Platform.  Do you have any suggestions?
Comment 5 Jochen Krause CLA 2010-05-19 13:59:02 EDT
One possibility is the one you outlined, the other is using the version number of the org.eclipse.core.runtime bundle. The mpc client depends on this bundle anyway, and this bundle is in every Eclipse installation. The IProduct may have a version that has little to do with the Eclipse runtime.

Independent of which version number you use I would only send the major version dot minor version, because that matches the data available in the marketplace and is not too fine grained.
Comment 6 David Green CLA 2010-05-19 14:33:05 EDT
Fixed.  
(In reply to comment #5)
> One possibility is the one you outlined, the other is using the version number
> of the org.eclipse.core.runtime bundle. The mpc client depends on this bundle
> anyway, and this bundle is in every Eclipse installation. The IProduct may have
> a version that has little to do with the Eclipse runtime.

We're now passing the following metadata:
* client=org.eclipse.epp.mpc.core
* os=macosx - as provided by  Platform.getOS()
* ws=cocoa - as provided by  Platform.getWS()
* java.version=1.6.0_17 - as provided by System.getProperty("java.version")
* product=org.eclipse.platform.ide  - as provided by Platform.getProduct().getId()
* product.version=3.6.0.v201004061034 - as provided by Platform.getProduct().getDefiningBundle().getVersion()
* runtime.version=3.6.0.v20091204 - as provided by Platform.getBundle("org.eclipse.core.runtime").getVersion()

> Independent of which version number you use I would only send the major version
> dot minor version, because that matches the data available in the marketplace
> and is not too fine grained.

MPC sends the whole version number.  That way the server policy can decide what to do with it.
Comment 7 David Green CLA 2010-05-19 14:33:08 EDT
Created attachment 169177 [details]
mylyn/context/zip
Comment 8 Nathan Gervais CLA 2010-06-02 09:31:29 EDT
Changing Target Milestone.

I don't believe that there are enough cycles left before Helios to shoehorn this into Marketplace REST calls.
Comment 9 David Green CLA 2010-06-02 11:46:09 EDT
This is fixed: it's already part of Helios RC3 (installation metadata is passed per comment #6)

Please track related filtering on bug 313449