There are two ways of adding a feature reference in a feature. It can be either 'included' or 'required'. My interpretation has always been:
'included' features will be installed when the parent feature is installed.
'required' features serves as a prerequisite. They will not get installed. Instead, an error will be generated if they are not present.
Is that a correct interpretation?
If it is, then shouldn't this be reflected by the 'greedy' status of the IRequirement? From the wiki:
"When a requirement is marked greedy (greediness flag on a requirement), installable units satisfying the requirements are added to the solution, whereas IU satisfying non greedy requirements should be added to the solution by another requirement. By default all requirements are greedy."
To me, that sounds like a 1-1 correspondance to the 'includes' versus 'requires'.
The reason I ask is that I cannot find any indication that this is considered in the publisher FeaturesAction. I'm not sure that my interpretation is correct so I thought I'd ask here before I file a bug.
p2-dev mailing list