[Fedora-packaging] Requires for "lower" version of packages

Mamoru Tasaka mtasaka at ioa.s.u-tokyo.ac.jp
Thu Nov 18 17:43:46 UTC 2010


Hello.

Now I am trying to see one of the review requests based on rubygems:
https://bugzilla.redhat.com/show_bug.cgi?id=652400
(This review request of just one example for rubygem related packages)

Rebuilding the srpm in this review ticket produces boxgrinder-build-0.6.4.gemspec
under /usr/lib/ruby/gems/1.8/specifications (this directory is normal
for .gemspec file) which contains:
---------------------------------------------------------
      s.add_runtime_dependency(%q<commander>, ["~> 4.0.3"])
      s.add_runtime_dependency(%q<boxgrinder-core>, ["~> 0.1.3"])
---------------------------------------------------------
Here "~> 4.0.3" means ">= 4.0.3 but < 4.1" ("~>" often appears in
rubygems). So in rpm spec world, this is interpreted as:
---------------------------------------------------------
Requires: rubygem(commander) >= 4.0.3
Requires: rubygem(commander) < 4.1
Requires: rubygem(boxgrinder-core) >= 0.1.3
Requires; rubygem(boxgrinder-core) < 0.2
---------------------------------------------------------
This is technically correct, however it seems that currently Fedora packaging
guideline mentions about higher version dependency (e.g.
https://fedoraproject.org/wiki/Packaging/Guidelines#Explicit_Requires )
and I am not sure that it is allowed on Fedora to write dependency for
lower version. Any comments are appreciated.

By the way, currently the highest version of the upstream one is:
   commander: 4.0.3
   boxgrinder-core: 0.1.3

Regards,
Mamoru


More information about the packaging mailing list