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:infind_command' [...]/rubygems/command_manager.rb:103:in
process_args’
[…]/rubygems/command_manager.rb:74:inrun' [...]/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 nowgem server
-
gemlock
is nowgem lock
-
gem_mirror
is nowgem mirror
-
gemwhich
is nowgem which
-
gemri
is no longer included with RubyGems -
index_gem_repository.rb
is nowgem 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 B. for win32 support and testing
- Luis L. for win32 support and testing
- Tom C. for help testing and releasing the new indexer
- Wilson B. 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)