[Rubygems-developers] Gem Names not correlated to require name

Jim Freeze rubygems at freeze.org
Wed Oct 1 00:29:35 EDT 2008

On Tue, Sep 30, 2008 at 11:06 PM, Jim Weirich <jim.weirich at gmail.com> wrote:
> On Sep 30, 2008, at 11:50 PM, Jim Freeze wrote:
> Interesting.  I would suggest that the bootstrap file NOT be located in the
> lib directory (nor the bin directory), but be located somewhere that will
> not be put on the load path.  This will prevent accidental loading of the
> file.

That's a good idea.

> I'm still not sure what advantage this has over a simple convention of
> providing a base require file using the same name as the gem.

I'm not convinced yet either.

It has been said several times that it is not the responsibility of
rubygems to ensure that the gem name and the require name correspond
to each other or may be derived. But what if a notice/warning was
generated by rubygems during building of a gem if it did not find a
filename that is not the same as the gem name.

So, developers can do things like:

sudo gem install active_record
gem 'active_record'
require 'active_record'


sudo gem install CommandLine
gem 'CommandLine'
require 'CommandLine'

instead of

sudo gem install CommandLine
gem 'CommandLine'
require 'commandline'

Jim Freeze

More information about the Rubygems-developers mailing list