On 06/24/2013 11:59 AM, Aleksandar Kurtakov wrote:

I believe Debian relaxes the OSGi-generated dependencies on system
libraries.  Fedora should do the same thing in its Eclipse packaging.

Just to clarify a bit - this is not a limitation of OSGi. It's the Eclipse 
implementation being faulty of this. And when I say Eclipse implementation I 
mean Eclipse platform because the actual OSGi runtime in Eclipse (called 
Equinox) works perfectly with version ranges and doesn't suffer from this 
problem at all. It's the Eclipse IDE that suffers from this due to legacy 
reasons.

Yes, thanks for the clarification. As I said, I believe that Debian patches the generated dependencies to be more lenient. At least they did some time ago—this particular feature might have been lost along with Eclipse build system changes.

This shows another problem though: expressing version range in a spec file e.g 
there is no easy way to say I want a package that provides osgi(smth) [1.0.0, 
1.5.0). If you try to express it with RPM requires as two statements:
Requires: osgi(smth) >= 1.0.0
Requires: osgi(smth) < 1.5.0
it's not exactly the same  as having packages providing osgi(0.9) and 
osgi(1.6.0) will satisfy this requirements too. I know this is hypothetical but 
it shows the inability to require version range in RPM terms reliably. And the 
way to get that but not fail-proof is too verbose now.

Conflicts with future versions which do not exist yet are a bit questionable, IMHO. In most cases, you don't know that 1.6.0 will actually be incompatible with your code because it hasn't been released yet.

--
Florian Weimer / Red Hat Product Security Team
--
devel mailing list
devel@lists.fedoraproject.org
https://admin.fedoraproject.org/mailman/listinfo/devel

Reply via email to