RubyGems 1.0.0

Release 1.0.0 fixes several bugs.

Major New Features Include:

  • RubyGems warns about various problems with gemspecs during gem
    building
  • More-consistent versioning for the RubyGems software

Other Changes Include:

  • Fixed various bugs and problems with installing gems on Windows
  • Fixed using gem server for installing gems
  • Various operations are even more verbose with --verbose
  • Built gems are now backwards compatible with 0.9.4
  • Improved detection of RUBYOPT loading rubygems
  • ruby setup.rb now has a --help option
  • Gem::Specification#bindir is now respected on installation
  • Executable stubs can now be installed to match ruby’s name, so if
    ruby is
    installed as ‘ruby18’, foo_exec will be installed as ‘foo_exec18’
  • gem unpack can now unpack into a specific directory with --target
  • OpenSSL is no longer required by default

Deprecations and Deletions:

  • Kernel#require_gem has been removed
  • Executables without a shebang will not be wrapped in a future
    version, this
    may cause such executables to fail to operate on installation
  • Gem::Platform constants other than RUBY and CURRENT have been removed
  • Gem::RemoteInstaller was removed
  • Gem::Specification#test_suite_file and #test_suite_file= are
    deprecated in
    favor of #test_file and #test_file=
  • Gem::Specification#autorequire= has been deprecated
  • Time::today will be removed in a future version

== How can I get RubyGems?

NOTE: If you have installed RubyGems using a package you may want to
install a
new RubyGems through the same packaging system.

If you have a recent version of RubyGems (0.8.5 or later), then all
you need to do is:

$ gem update --system (you might need to be admin/root)

(Note: You may have to run the command twice if you have any previosly
installed rubygems-update gems).

If you have an older version of RubyGems installed, then you can still
do it in two steps:

$ gem install rubygems-update (again, might need to be admin/root)
$ update_rubygems (… here too)

If you don’t have any gems install, there is still the pre-gem
approach to getting software … doing it manually:

  1. DOWNLOAD FROM: http://rubyforge.org/frs/?group_id=126
  2. UNPACK INTO A DIRECTORY AND CD THERE
  3. INSTALL WITH: ruby setup.rb (you may need admin/root privilege)

== Thanks

Keep those gems coming!

– Jim & Chad & Eric (for the RubyGems team)

On Dec 20, 2007, at 24:33 AM, Eric H. wrote:

Release 1.0.0 fixes several bugs.

There’s an issue with installing on Ruby versions 1.8.5 and earlier.
I’ll fix this tomorrow and re-release.

– Jim & Chad & Eric (for the RubyGems team)

Many thanks for fixing the memory usage of the bulk update. Works
perfectly on my 256Mb VPS now.

thanks,
Dan

When I install my own gem on one of my systems rubygems adds a dash to
the filename, or gem name?

example:
~/box$ gem install ruby/email_agent-0.5.1.gem
Successfully installed email_agent, version 0.5.1
Installing ri documentation for email_agent-0.5.1-…
Installing RDoc documentation for email_agent-0.5.1-…

Why is that - after the version number there?

Anyone know. Thanks

After trying to install both from the source and from gem update
–system
I get

/usr/bin/gem:23: uninitialized constant Gem::GemRunner (NameError)

when I try to run it.

I am using ruby 1.8.6 on a Ubuntu system.

Thanks

Seems to have somethign to do with having to sudo gem update, now if I
runit with

sudo gem list

it works which I didn’t have to do before.

I’ll investigate further.

On Dec 20, 2007, at 13:20 PM, Joe Van D. wrote:

   from /opt/local/lib/ruby/site_ruby/1.8/rubygems/requirement.rb:

specification.rb:540:in initialize' ... 25 levels... from ./spec/models/../spec_helper.rb:4:inrequire’
from ./spec/models/…/spec_helper.rb:4
from spec/models/puzzle_spec.rb:1:in `require’
from spec/models/puzzle_spec.rb:1

Any ideas? You need more data? Is it possible to downgrade to
rubygems 0.9.5?

I’ll need a full backtrace.

You can download RubyGems 0.9.5 and install it from the tarball to
revert.

On Dec 20, 12:33 am, Eric H. [email protected] wrote:

  • Fixed various bugs and problems with installing gems on Windows
  • OpenSSL is no longer required by default
    deprecated in
    If you have a recent version ofRubyGems(0.8.5 or later), then all
    $ gem installrubygems-update (again, might need to be admin/root)

Keep those gems coming!

– Jim & Chad & Eric (for theRubyGemsteam)

I upgraded to RubyGems 1.0.0. Running ruby 1.8.6 on OS X.

When I try to run a spec file in my Rails project, I get:

/opt/local/lib/ruby/site_ruby/1.8/rubygems/requirement.rb:144:in
parse': Illformed requirement [""] (ArgumentError) from /opt/local/lib/ruby/site_ruby/1.8/rubygems/requirement.rb: 70:in initialize’
from /opt/local/lib/ruby/site_ruby/1.8/rubygems/requirement.rb:
69:in map' from /opt/local/lib/ruby/site_ruby/1.8/rubygems/requirement.rb: 69:in initialize’
from /opt/local/lib/ruby/site_ruby/1.8/rubygems/requirement.rb:
45:in new' from /opt/local/lib/ruby/site_ruby/1.8/rubygems/requirement.rb: 45:in create’
from /opt/local/lib/ruby/site_ruby/1.8/rubygems/
specification.rb:413:in required_rubygems_version=' from /opt/local/lib/ruby/gems/1.8/specifications/ builder-2.1.2.gemspec:7:in load_specification’
from /opt/local/lib/ruby/site_ruby/1.8/rubygems/
specification.rb:540:in initialize' ... 25 levels... from ./spec/models/../spec_helper.rb:4:in require’
from ./spec/models/…/spec_helper.rb:4
from spec/models/puzzle_spec.rb:1:in `require’
from spec/models/puzzle_spec.rb:1

Any ideas? You need more data? Is it possible to downgrade to
rubygems 0.9.5?

On Dec 20, 2007, at 12:57 PM, Jim M. wrote:

when I try to run it.

I am using ruby 1.8.6 on a Ubuntu system.

Did you see the NOTE? I think this is your problem.

On Dec 20, 2007, at 12:00 PM, John P. wrote:

When I install my own gem on one of my systems rubygems adds a dash
to the filename, or gem name?

example:
~/box$ gem install ruby/email_agent-0.5.1.gem
Successfully installed email_agent, version 0.5.1
Installing ri documentation for email_agent-0.5.1-…
Installing RDoc documentation for email_agent-0.5.1-…

Why is that - after the version number there?

Can I see gem env output?

Also, what version of RubyGems was used to build the gem?

Jim M. wrote:

After trying to install both from the source and from gem update --system
I get

/usr/bin/gem:23: uninitialized constant Gem::GemRunner (NameError)

when I try to run it.

I am using ruby 1.8.6 on a Ubuntu system.

Thanks

Ok this has something to do with the way Ubuntu installs ruby (surprise
surprise!)

The work around for me was to nuke the /usr/lib/ruby directory by
renaming it ruby.old

Install ruby from the source into /usr/local/ruby

copy all my gems from /usr/lib/ruby.old/gems to /usr/local/lib/ruby/gems

also nuke /usr/bin/gem* and install gem into /usr/local/bin

Seems to have fixed it, what a mess!!

Eric H. wrote:

Yes I did see the note, however I did not install rubygems via the apt
system I originally installed
it manually.

However There were a number of other issues as Ruby was installed via
the apt system, and the
solution I found I posted here.

On Dec 20, 2007 2:57 PM, Jim M. [email protected] wrote:

After trying to install both from the source and from gem update --system
I get

/usr/bin/gem:23: uninitialized constant Gem::GemRunner (NameError)

when I try to run it.

I am using ruby 1.8.6 on a Ubuntu system.

Thanks


Jim M., http://blog.wolfman.com

The most common cause of upgrade issues on Ubuntu is if you installed
rubygems via apt-get, you can’t upgrade via its normal sudo gem
upgrade --system, you have to replace it with another .deb. It has
been recommended that the Ubuntu package remove the command upgrade
–system.

Daniel Brumbaugh K.

On Dec 21, 2007, at 13:16 PM, Jim M. wrote:

Yes I did see the note, however I did not install rubygems via the
apt system I originally installed it manually.

However There were a number of other issues as Ruby was installed
via the apt system, and the solution I found I posted here.

Ok, thanks. I’ve not heard of this problem before. Perhaps something
is odd with apt packaged ruby’s rbconfig.rb, so gem was placed in a
different path.

Jim M. wrote:

Eric H. wrote:

Yes I did see the note, however I did not install rubygems via the apt
system I originally installed
it manually.

However There were a number of other issues as Ruby was installed via
the apt system, and the
solution I found I posted here.
I’m in the same situation.

Regards
Jan

On Dec 21, 2007, at 14:08 PM, Jan F. wrote:

solution I found I posted here.
I’m in the same situation.

Do you have a /usr/local/bin/gem ?

Can you give me gem env output from it?

Eric H. wrote:

On Dec 21, 2007, at 14:08 PM, Jan F. wrote:

solution I found I posted here.
I’m in the same situation.

Do you have a /usr/local/bin/gem ?

Can you give me gem env output from it?

I’m also in the same situation (ruby from Apt and RubyGems manually
installed). If i do:

gem env

/usr/local/bin/gem:23: uninitialized constant Gem::GemRunner (NameError)

diff /usr/local/bin/gem /usr/bin/gem

(no differences)

I’ve upgraded from rubygems 0.9.2. If i return back:

~/rubygems-0.9.2# ruby setup.rb
(…)
~/rubygems-0.9.2# gem env
RubyGems Environment:

  • VERSION: 0.9.2 (0.9.2)
  • INSTALLATION DIRECTORY: /usr/lib/ruby/gems/1.8
  • GEM PATH:
    • /usr/lib/ruby/gems/1.8
  • REMOTE SOURCES:
    • http://gems.rubyforge.org
      ~/rubygems-0.9.2# gem update --system
      (…)
      ~/rubygems-0.9.2# gem -v
      /usr/local/bin/gem:23: uninitialized constant Gem::GemRunner (NameError)

I know from other installs that rubygems 0.9.5 works perfectly with ruby
1.8.6 (ubuntu’s apt).

Regards,

Ok, i solved the problem (i had it in many computers, all of them
Ubuntu). The problem was /usr/bin/gem is not updated. Seems all the
files but /usr/bin/gem are updated to 1.0.1

First of all:

gem update --system

I renamed all de /usr/local/bin/gem* to /usr/local/bin/gem*.bak (if
any). All the good bins are in my /usr/bin/gem* (only one place)

Then i overwrite that /usr/bin/gem with an updated copy. I put here the
contents of an 1.0.1 /usr/bin/gem script if anyone wants to manually
copy-paste it:

#-------------------------------------------------------------------------
#!/usr/bin/ruby1.8
#–

Copyright 2006 by Chad F., Rich Kilmer, Jim W. and others.

All rights reserved.

See LICENSE.txt for permissions.

#++

require ‘rubygems’
require ‘rubygems/gem_runner’

required_version = Gem::Requirement.new “>= 1.8.2”

unless required_version.satisfied_by? Gem::Version.new(RUBY_VERSION)
then
abort “Expected Ruby Version #{required_version}, was #{RUBY_VERSION}”
end

We need to preserve the original ARGV to use for passing gem options

to source gems. If there is a – in the line, strip all options after

it…its for the source building process.

args = !ARGV.include?("–") ? ARGV.clone : ARGV[0…ARGV.index("–")]

Gem::GemRunner.new.run args
#-------------------------------------------------------------------------

After that, all the problems are gone:

gem -v

1.0.1

Regards,

On Dec 22, 2007, at 10:38 AM, Jonathan Hernandez wrote:

installed). If i do:

~/rubygems-0.9.2# gem update --system
(…)
~/rubygems-0.9.2# gem -v
/usr/local/bin/gem:23: uninitialized constant Gem::GemRunner
(NameError)

I know from other installs that rubygems 0.9.5 works perfectly with
ruby
1.8.6 (ubuntu’s apt).

Can you get a complete install log?

I was on Fiesty which still had 1.8.4 I think, and I presumed my problem
was due to the initial gem
release didn’t work with 1.8.4

So I upgraded to a source install of 1.8.6 to /usr/local/lib and thats
when I ran into more (non gem
related) problems.

I finally solved them all, but from now on I’m sticking with source
installs and staying away from
apt installs for any ruby related thing.

One gotcha is when you move from /usr/lib to /usr/local/lib you need to
pretty much reboot to flush
the library caches etc. Also for safe measure I renamed all the /usr/bin
and /usr/lib/ruby stuff to
.old so I don’t pick them up. Especially note that apt seems to have a
/usr/lib/siteruby whereas
source installs have a /usr/local/lib/ruby/siteruby which does seem to
confuse a lot of things.

Lastly I think mixing and matching apt installs with source installs
seems very problematical, so
avoid it :slight_smile: Unfortunately the apt system never has the latest gem or
ruby so if you need them go for
source installs.

One thing I didn’t try which may have worked better was to build a ruby
apt package and install
that, ditto for gem.

Best of luck!