Ryan Davis wrote: > Donavan Pantke wrote: > > The :install flag is required for gems that have specific loading > > requirements, and so cannot have dependencies automatically > > activated. The > > biggest use case is Passenger, which can activate multiple versions > > of Rails. > > It originally required rails in the gemspec (as it needs some > > version of > > Rails), but that meant that when the passenger gem activated, rails > > automatically activated as well. That caused passenger to blow up > > when trying > > to activate a different version of Rails. Having the :install flag > > will allow > > Passenger to be loaded but let Passenger worry about Rails. > > Biggest use-case, or only use-case? I suspect it is the latter and as > such think that adding it is more confusing than leaving it out. It is > incredibly hard to explain (this thread is evidence) and I can easily > imagine it being misused more than it helps.
I have to agree. I too believe that Phusion Passenger is the only use case, although Mongrel *could* be a use case because they too have to support multiple Rails version.
The reason why Rails was originally included in the gem spec as a dependency, is to save the user some typing. But in retrospect, it probably was unnecessary, because: 1. Everybody's running different apps, so everybody will need different versions of Rails. Installing 2.0 for them automatically will probably only benefit a small part of the user base. And the only benefit is not having to type in an extra 'gem install' command. 2. If a required Rails version is not installed, then Phusion Passenger will display a nicely formatted error page, which includes the exact gem command to run for installing that version of Rails.
I think the costs of implementing :install outweight the (tiny) benefits. Regards, Hongli Lai -- Phusion | The Computer Science Company Web: http://www.phusion.nl/ E-mail: [EMAIL PROTECTED] Chamber of commerce no: 08173483 (The Netherlands) _______________________________________________ Rubygems-developers mailing list [email protected] http://rubyforge.org/mailman/listinfo/rubygems-developers
