[fedora-java] Duplicate OSGi provides

Severin Gehwolf sgehwolf at redhat.com
Wed Jan 29 17:13:56 UTC 2014


On Wed, 2014-01-29 at 18:00 +0100, Mikolaj Izdebski wrote:
> On 01/29/2014 05:43 PM, Aleksandar Kurtakov wrote:
> > For cases like objectweb-asm and netty I don't see a problem as the provides are properly versioned.
> 
> Let's say I have a package which requires ASM3:
> 
>   Require-Bundle: org.objectweb.asm;bundle-version="[3.0.0,4.0.0)"
> 
> That package will have Requires: osgi(org.objectweb.asm).  YUM will
> install objectweb-asm package (version 5.x) because it has shorter name.
>  I think there is a problem, but I'm not sure what's the right solution.

IMHO this example isn't a good one as a "case" for duplicate OSGi
provides.

What your example shows is that RPM does not allow one to express
version ranges like OSGi can. I'd say the spec should rather have:

Requires: osgi(org.objectweb-asm) = <BUNDLE_VERSION>

It's not great, but probably more accurately what you'd want. Anyhow,
there's likely a problem with both approaches depending on your
use-case.

Cheers,
Severin



More information about the java-devel mailing list