BT

Facilitating the Spread of Knowledge and Innovation in Professional Software Development

Write for InfoQ

Topics

Choose your language

InfoQ Homepage News Ruby Gems: new release and plans for inclusion in Ruby 1.9

Ruby Gems: new release and plans for inclusion in Ruby 1.9

This item in japanese

Eric Hodel announced release 0.9.4.5 of Ruby Gems, the popular package management system for Ruby. This is a beta release for 0.9.5, adding a couple of new features:
  • Automatic installation of platform gems
  • New bandwidth and memory friendlier index file format
  • “Offline” mode (—no-update-sources)
  • Bulk update threshold can be specified (-B,—bulk-threshold)
  • New gem fetch command
  • gem now has “really verbose” output when you specify -v
  • Ruby 1.9 compatible
Tom Copeland, who maintains RubyForge, explains the changes to the way the package index , which improve reliability of Ruby Gems:
You may have seen this message from "gem install" before:

$ gem install rails 
ERROR: While executing gem ... (Gem::GemNotFoundException)
Could not find rails (> 0) in any repository
Then when you run "gem install rails" five minutes later, it installs just fine. This was due to the way we were rebuilding the gem index on RubyForge - we were doing it "in place", so that the current index would be overwritten and then populated over the course of the build. These take a fair while - 10 minutes or so - and during that time the index was essentially empty. Booooo.

[...]Eric Hodel has twiddled the gem index builder to build it in a temporary directory and then move it in place. So those gem index outages should be a thing of the past. Thanks Eric!
Another change improves memory usage:
Also, Wilson Bilkovich added a new Marshal formatted index that will reduce both bandwidth usage and memory consumption. Instead of 120M or so it takes to do a bulk yaml index update, it takes about 30M with a Marshal index update.
To update to Ruby Gems 0.9.4.5 simply do this:
gem update --system --source http://segment7.net/ 

The feature list item about Ruby 1.9 compatibility hints at Ruby Gems' future: inclusion in the standard Ruby 1.9. This started with a post by Sasada Koichi back in July:
Matz plans to import gem into Ruby 1.9. Does anyone has any comment to this?
- possibility/difficulty to import (who is the maintainer of gem?)
- compatibility
- and other problems
The ensuing discussion picked up again in October and is now focussed on details about the nature of Ruby Gems in Ruby 1.9. Specifics about matters such as the name and behavior of the package management are being discussed now.

Rate this Article

Adoption
Style

BT