RubyGems 0.9.5 adds several new features and fixes several bugs.
To upgrade to the latest RubyGems:
gem update --system
To upgrade to the latest RubyGems by hand:
* Download RubyGems from http://rubyforge.org/frs/?group_id=126&release_id=16500
* `gem install rubygems-update-0.9.5.gem`
* `update_rubygems`
To install RubyGems from scratch:
* Download RubyGems source .tgz or .zip file from
http://rubyforge.org/frs/?group_id=126&release_id=16500
* Unpack the source .tgz or .zip
* `ruby setup.rb`
To install RubyGems on Ruby 1.9 update your ruby trunk checkout and reinstall.
To file bugs:
http://rubyforge.org/tracker/?func=add&group_id=126&atid=575
When filing a bug, `gem env` output will be helpful in diagnosing the issue.
If you find a bug where RubyGems crashes, please provide debug output. You can do that with `gem --debug the_command`. For example:
$ gem --debug unknown_command
Exception `RuntimeError' at [...]/rubygems/command_manager.rb:114 - Unknown command unknown_command
ERROR: While executing gem ... (RuntimeError)
Unknown command unknown_command
[...]/rubygems/command_manager.rb:114:in `find_command'
[...]/rubygems/command_manager.rb:103:in `process_args'
[...]/rubygems/command_manager.rb:74:in `run'
[...]/rubygems/gem_runner.rb:39:in `run'
/usr/local/bin/gem:22
=== Changes
Select new features include:
* 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
Other changes include:
* Time::today is deprecated and will be removed at a future date
* `gem install --include-dependencies` (-y) is now deprecated since it is the
default, use --ignore-dependencies to turn off automatic dependency
installation
* `gem.bat` and bin stubs on mswin platforms are improved and compatible with
the One-Click Installer
* Multi-version diamond dependencies only are installed once
* Bulk index updates take less memory
* -V now enables verbose instead of -v to avoid collision with --version's -v
* `gem install -i` makes sure all depenencies are installed
* `gem update --system` reinstalls into the prefix it was originally installe in
* `gem update --system` respects --no-rdoc and --no-ri flags
* HTTP basic authentication support for proxies
* Gem::Specification#platforms should no longer be a String, use
Gem::Platfor::CURRENT when building binary gems instead
* `gem env` has more diagnostic information
* require 'rubygems' loads less code
* sources.gem is gone, RubyGems now uses built-in defaults
* `gem install --source` will no longer add --source by default, use
`gem souces --add` to make it a permanent extra source
* `gem query` (list) no longer prints details by default
* Exact gem names are matched in various places
* mkrf extensions are now supported
* A gem can depend on a specific RubyGems version
* `gem_server` is now `gem server`
* `gemlock` is now `gem lock`
* `gem_mirror` is now `gem mirror`
* `gemwhich` is now `gem which`
* `gemri` is no longer included with RubyGems
* `index_gem_repository.rb` is now `gem generate_index`
* `gem` performs more validation of parameters
* Removed gem* commands are now replaced with stubs that warn
* Custom rdoc styles are now supported
* Gem indexer no longer removes quick index during index creation
* Kernel#require only rescues a LoadError for the file being required now
* `gem dependencies` can now display some information for remote gems
=== Special Thanks
* Daniel Berger for win32 support and testing
* Luis Lavena for win32 support and testing
* Tom Copeland for help testing and releasing the new indexer
* Wilson Bilkovich for the new Marshal index format
* To the rest of the RubyGems bug reporters and patch contributors
The full set of changes including contributors is included in the ChangeLog.
=== Platforms
RubyGems now automatically handles platform gems. This means that `gem install` will no longer prompt for gem selection. RubyGems uses Ruby's built-in configuration to match the running ruby's platform to choose the correct gem to install. The automatically chosen platform may be overridden with the --platform option.
The dependency, fetch, install, outdated, specification, uninstall and update commands all respond to --platform.
For more information, see `gem help platforms`
=== Thanks
Keep those gems coming!
-- Jim & Chad & Eric (for the RubyGems team)
···
--
Poor workers blame their tools. Good workers build better tools. The
best workers get their tools to do the work for them. -- Syndicate Wars