Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.
Bug 368999 - Orbit's repo should have optional dependencies as non-greedy by default.
Summary: Orbit's repo should have optional dependencies as non-greedy by default.
Status: RESOLVED FIXED
Alias: None
Product: Orbit
Classification: Tools
Component: releng (show other bugs)
Version: unspecified   Edit
Hardware: PC Linux
: P3 normal (vote)
Target Milestone: Juno M5   Edit
Assignee: David Williams CLA
QA Contact: Project Inbox CLA
URL:
Whiteboard:
Keywords:
Depends on: 361067
Blocks:
  Show dependency tree
 
Reported: 2012-01-18 14:12 EST by David Williams CLA
Modified: 2012-01-20 13:35 EST (History)
0 users

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description David Williams CLA 2012-01-18 14:12:46 EST
Once bug 361067 is fixed, we will be poised to move up to a more recent "p2 publisher" that specifies greedy=false for optional dependencies. (If not specified, p2 assumes greedy=true). 

See bug 247099 and 
http://wiki.eclipse.org/Equinox/p2/Publisher

for some background and descriptions of this issue. 

I think we will get the desired publishing behavior "for free" (once we move up) but, this might impact some Orbit bundles where greedy=true is required. I am not aware of any such cases ... but this bug will serve as a good place to document general issues on this topic, if any are found.
Comment 1 David Williams CLA 2012-01-19 14:55:04 EST
This build is the first one on 'downloads' with the non-greedy metadata

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


FWIW, the build I used for the new p2 publisher was the Eclipse SDK from Juno M4, 

S-3.8M4-201112091447
Comment 2 David Williams CLA 2012-01-19 15:11:41 EST
I have confirmed the list of plugins are the same, and have same version, qualifiers ... all 540 jars and all 517 pack.gz files. 

The artifacts.xml file contains the same sort of minor size differences as mentioned in bug 361067. A side note, we do use the p2.mirror task and comparator in our builds ... so, I guess we could confirm that anything that has not changed since previous release is not "changing size" since metadata should be reused as well as the artifact. I'll put that on my "nice to do list" :) 

The content.xml file changed substantially, as expected, with a whole lot of 
greedy='false' added. 

While more testing will occur, I'll count this as "fixed".
Comment 3 David Williams CLA 2012-01-19 15:13:18 EST
I will add, I hope if people "downstream" have issues due to this change, it would be nice to document those issues here, just to better understand the impact, and perhaps one person's experience will help other people adjusting to the change ... if any adjustment is required.
Comment 4 David Williams CLA 2012-01-20 13:35:44 EST
For what its worth, WTP has done a test build with this new Orbit repo and all went well. First, no direct effect of anything being omitted (showing WTP wasn't making any accidental hidden assumptions that depended on greedy installation) and second, the greedy='false' attribute for the Orbit bundles that are "included" in WTP maintained their greedy='false' attribute (showing that PDE build and WTP's build all work as expected to maintain the original IU's metadata).