Dne 22.12.2011 17:45, Mo Morsi napsal(a):
On 12/22/2011 11:19 AM, Scott Seago wrote:
> On 12/22/2011 09:09 AM, Vít Ondruch wrote:
>>> - In the Rubygems section:
>>>
>>> "For every dependency on a Gem named|gemdep|, the package must contain
a|Requires| on|rubygem(%{gemdep})| with the same version constraints as the Gem"
>>>
>>> Can this be a "should" or can we append a "where
possible" onto the end of this. I've run into situations in the past where the
constraints on the upstream gem are too restrictive, and infact the gem will work with a
more lax gem set which we ship in Fedora
>>
>> You are right. We should not be as strict. Actually, I believe that
>> we should not use version unless necessary. We will try to polish
>> this formulation according to your suggestion.
> Actually, we need to be very careful here. We've been bitten in the
> past by creating RPMs with deps that don't strictly follow the gem
> deps, since you then have a gem installed that, strictly speaking,
> doesn't meet its gem dep requirements. If you end up using bundler
> for something, it's going to complain. We had a big problem with this
> when we had an RPM for which the underlying gem required rspec
> (2.0+), but we required the rspec sub-packages instead.
>
> Scott
Ah good point. Actually now that I think about it the guidelines could
use something to the effect of how to integrate bundler and other
alternative gem-dependency management into all of this (its been a
royal pain up to this point).
If nothing else, perhaps a guideline stating that if you modify the
gem dependency list in the rpm spec, you must ensure that it is
modified in bundler's Gemfile as well.
Something more important should be there. If RPM modifies some gems
dependencies, then the .gemspec should be updated accordingly. I know
that I forget to do it several times and there were probably also others.
Gemfile is next level and I still find use of Bundler dangerous and
useless for two reasons:
1) It installs non RPM dependencies, where the dependencies should be
solved always by packager
2) Bundler should solve the version conflicts in case you have more
versions of gem on your system, but in Fedora, you doesn't have.
However, I might be oversimplifying the situation, because users may
install their own gem with different versions :/
Actually expanding upon this, I'd love to see the work that Jay did
with making bundler usage toggleable in conductor, a more generic
plugin, able to be pulled into any project. Jay any thoughts on the
feasibility of this?
-Mo
_______________________________________________
ruby-sig mailing list
ruby-sig(a)lists.fedoraproject.org
https://admin.fedoraproject.org/mailman/listinfo/ruby-sig