Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
[orbit-dev] Build I20120119143614 repository is not greedy


This build repository contains a fairly substantial change.

http://download.eclipse.org/tools/orbit/downloads/drops/I20120119143614

I have fixed our build so the repository metadata no longer assumes
optional bundles should be installed "greedily". (See bug 368999 [1] which
contains links to the original cross-project bug and wiki page describing
metadata and the new behavior). But, in brief, the metadata for a
runtime-optional bundle now might look like

<required namespace='osgi.bundle' name='org.apache.xerces'
range='[2.8.0,3.0.0)' optional='true' greedy='false'/>

Whereas previously (using Indigo based publishers) greedy would not have
been specified, and p2 assumes "true" if not specified. Long long history.

This is an important change to make for Juno, since (ultimately) it gives
users and adopters more control over what they install ... instead of it
being a side effect of the repository they use.

I propose we contribute this new repository format for Juno M5, unless
others feel it is too risky to do this late in the milestone. It would have
been better to have ready a few weeks ago ... but, not sure that many
people use Orbit I builds ... and better to have the pain now, rather than
later, if there is any, so fixes can be made by M6.  I will announce on
cross-project list, once we decide and promote it to an S-build. I would
warn people that it _might_ have an impact on their builds or distribution
packages. It would, for example, if they actually really did _require_
something but didn't say so explicitly -- that another bundle happened to
list as optional -- and they were previously, getting by "accident" via p2
instead of specifying that requirement explicitly in their feature. If they
do really require it, they might have to update their feature definitions
to include it or in some cases add features to allow proper user-choice in
what gets installed.

There is an implication for Orbit committers too. In some very rare cases,
the default of greedy='false' might not be correct, and an Orbit bundle
might need updating so it will be greedy='true'. See the wiki [2] for
details on how to do this. But, again, this should be very rarely needed,
if ever, so if you think you have such a case, please open a bug, mention
it to this orbit-dev list and allow for some public discussion. I'd like to
understand such cases (as far as my simple world model goes, if its
optional at runtime, it should be optional at install time :)

We should be promoting or renaming our S-build this Friday, 1/20, since
Juno M5 +0 day is next Friday, 1/27. I think I'll wait until Saturday,
1/21, ... maybe the one day delay will help get a few more tests in before
the final commitment.   Feel free to say if you think another day is
better, or please do speak up if you know of problems, or feel it is too
risky to make this change now, and we should wait until after M5.

Apologies for the short notice, but hope at least some of you have a chance
to take a look or try it out and voice your view.

Thanks,

[1] https://bugs.eclipse.org/bugs/show_bug.cgi?id=368999
[2] http://wiki.eclipse.org/Equinox/p2/Publisher





From:	David M Williams/Raleigh/IBM@IBMUS
To:	orbit-dev@xxxxxxxxxxx, orbit-dev@xxxxxxxxxxx,
Date:	01/19/2012 01:13 PM
Subject:	[orbit-dev] Declaring Build for orbit-I: I20120119143614
Sent by:	orbit-dev-bounces@xxxxxxxxxxx





Download Page:
http://download.eclipse.org/tools/orbit/downloads/drops/I20120119143614

_______________________________________________
orbit-dev mailing list
orbit-dev@xxxxxxxxxxx
https://dev.eclipse.org/mailman/listinfo/orbit-dev





Back to the top