Tom Watson created FELIX-6212:
---------------------------------
Summary: Issues with uses capability checking with split packages
and reexport
Key: FELIX-6212
URL: https://issues.apache.org/jira/browse/FELIX-6212
Project: Felix
Issue Type: Bug
Components: Resolver
Affects Versions: resolver-1.16.0
Reporter: Tom Watson
First found in Eclipse bug https://bugs.eclipse.org/bugs/show_bug.cgi?id=559118
If a bundle A reexports multiple bundles (B and C) that export the same package
Y (which is a split package) and another bundle D requires A and exports
package X and package X uses Y then issues occur resolving bundles that require
package X and only get wired to one of the parts of the split package Y.
The scenario is horrible and uses one of the most obnoxious trifecta of
"features" of OSGi which is the use of a split package, require-bundle and a
visibility of reexport. When determining the compatibility of the used
packages the resolver is supposed to detect if the used packages are subsets of
each other. The logic is getting all messed up here because each reexport is
making the used package set of sources only include a single part of the
package. This can lead to cases where the subset check fails.
I have a testcase and fix ready to go.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)