Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [p2-dev] Smooth transition for EclEmma

Thanks, Pascal.

feature.xml defines another IU, think I am in case when IU fully defined in p2.inf as

units.1.id=com.mountainminds.eclemma.core
units.1.properties.0.value=This version cannot...

I was just surprised that it doesn't appear in Help -> About Eclipse -> Installation Details, but found where it appears:

Inline image 1


Thanks again.



On Sat, Oct 29, 2016 at 7:59 PM, Pascal Rapicault <pascal@xxxxxxxxxxxxx> wrote:
The units.*.properties.* entries are published into the IU and serve for a number of things like the plug-in name, the plugin provider etc. Unless you define your IU entirely in p2.inf (which I don't think is the case for you), you usually get those for free from the manifest.mf, feature.xml and others.

Here is an example of the properties for the com.ibm.icu IU

        <property name='df_LT.pluginName' value='International Components for Unicode for Java (ICU4J)'/>
        <property name='df_LT.providerName' value='IBM Corporation'/>
        <property name='org.eclipse.equinox.p2.name' value='%pluginName'/>
        <property name='org.eclipse.equinox.p2.provider' value='%providerName'/>
        <property name='org.eclipse.equinox.p2.bundle.localization' value='plugin'/>

HTH

Pascal


On 10/29/2016 12:31 PM, Evgeny Mandrikov wrote:
Seems that I made a stupid copy-paste mistake - m2e-wtp has osgi bundle "org.eclipse.m2e.wtp", but in our case should be "com.mountainminds.eclemma.core" instead of "com.mountainminds.eclemma":

requires.0.name=com.mountainminds.eclemma.core
units.1.id=com.mountainminds.eclemma.core
units.1.provides.0.name=com.mountainminds.eclemma.core

So excuse me for a noise - all seems to work fine after this fix.

Still interested in explanation of values for "units.1.properties.0.name" and "units.1.properties.0.valuesince can't manage to see them in UI, but this is minor.

Thanks.


On Sat, Oct 29, 2016 at 3:27 PM, Evgeny Mandrikov <mandrikov@xxxxxxxxx> wrote:
Hi P2 experts,

We are preparing initial release of EclEmma <https://projects.eclipse.org/projects/technology.eclemma> under Eclipse Foundation umbrella.
And we would like to provide for our users smooth transition from its ancestor <https://github.com/jacoco/eclemma>.

So as was advised by our mentor Mickael Istria - based on <https://github.com/eclipse/m2e.wtp/blob/master/org.eclipse.m2e.wtp.feature/p2.inf> I've tried to create p2.inf
Here is its content with comments describing my assumptions:

###

# can update any "com.mountainminds.eclemma.feature" and previous versions of "org.eclipse.eclemma.feature"
update.matchExp = providedCapabilities.exists(pc | pc.namespace \=\= 'org.eclipse.equinox.p2.iu' && (pc.name \=\= 'com.mountainminds.eclemma.feature.feature.group' || pc.name \=\= 'org
.eclipse.eclemma.feature.feature.group' && pc.version < '$version$'))

# requires additional IU described below
requires.0.namespace=osgi.bundle
requires.0.name=com.mountainminds.eclemma
requires.0.range=[$version$, $version$]

units.1.id=com.mountainminds.eclemma
units.1.version=$version$
units.1.singleton=true
units.1.provides.0.namespace=osgi.bundle
units.1.provides.0.name=com.mountainminds.eclemma
units.1.provides.0.version=$version$

# to not overwrite the main artifact, the additional IU should have classifier (https://bugs.eclipse.org/bugs/show_bug.cgi?id=430728)
units.1.properties.1.name=maven-classifier
units.1.properties.1.value=p2inf

# TODO explain
units.1.properties.0.name=org.eclipse.equinox.p2.name
units.1.properties.0.value=This version cannot be installed on top of the already installed EclEmma plugin. Uninstall the previous version and try the install again.

###

And below is a description of performed testing with undesirable outcome.

Using:
 fresh installation of Eclipse IDE for Java Developers (Version: Neon.1a Release (4.6.1) Build id: 20161007-1200)
Given:
 old 2.3.3.201602231923 installed from <http://update.eclemma.org/>
When:
 installing new one from local build directory
Then:
 correctly upgraded to 2.3.4.201610291259
When:
 new build is available and checking for update
Then:
 correctly upgraded to more newer 2.3.4.201610291310
When:
 installing old one from <http://update.eclemma.org/>
Expected:
 failure
Actual:
 both (2.3.3.201602231923 and 2.3.4.201610291310) are installed

Any help/ideas are more than welcome.

Regards,
Evgeny





--
Best regards,
Evgeny Mandrikov aka Godin <http://godin.net.ru>
http://twitter.com/_godin_


_______________________________________________
p2-dev mailing list
p2-dev@xxxxxxxxxxx
To change your delivery options, retrieve your password, or unsubscribe from this list, visit
https://dev.eclipse.org/mailman/listinfo/p2-dev



_______________________________________________
p2-dev mailing list
p2-dev@xxxxxxxxxxx
To change your delivery options, retrieve your password, or unsubscribe from this list, visit
https://dev.eclipse.org/mailman/listinfo/p2-dev



--
Best regards,
Evgeny Mandrikov aka Godin <http://godin.net.ru>
http://twitter.com/_godin_

Back to the top