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

Reply via email to