[Rubygems-developers] Release notes

Gavin Sinclair gsinclair at soyabean.com.au
Wed Sep 8 19:40:00 EDT 2004


Just some quick thoughts on what's changed since 0.7.  Obviously the
ChangeLog will tell the whole story.

It's important to point out the new require functionality.  People
should write code like this:

  begin
    require 'rubygems'
    unless Gem::RubyGemsPackageVersion > '0.8.0'
      raise "RubyGems >= 0.8.0 needed"
    end
  rescue LoadError
    warn "RubyGems not installed; relying on site_ruby" if $VERBOSE
  end

  require 'pqa'
  require 'extensions/string', '~> 0.3'
  ...

The point is: "require 'rubygems'" should be one of the very first
things a program does, because it affects all subsequent "require"
statements.  Running "ruby -rubygems ...", or the RUBYOPT trick, are
means of achieving this, but they rely on the user.

I know that nearly all my programs will have an idiom like that above,
because I don't want to rely on the user.  We should work to instill
that approach.

The other obvious change since 0.7.0 is the 'test_files' gemspec
attribute.

I'm sure there's heaps of others... like the 'rdoc' and 'unpack'
commands.  We should add a 'test' command as well.

Gavin



More information about the Rubygems-developers mailing list