Even though it has only been a few weeks since that last release, there are quite a number of new features in 0.8.7. A complete list of new features will be given below, but here is a summary of the hot items.
- The bug that prevented some users from installing rails has been squashed. A big thanks to Bill Guindon (aGorilla) for helping track that one down.
There are several new commands available on the gem command:
- gem cleanup GEMNAME – Cleanup (uninstall) all the old versions of gem. If the gem name is omitted, the entire repository is cleaned.
- gem dependency GEMNAME – Show the dependencies for the named gems. This is really helpful when trying to figure out what gem needs what other gem.
There changes to the existing commands as well.
- gem uninstall is much smarter about removing gems from the repository. Lists of gems are now uninstalled in proper dependency order (ie. if A depends on B, A is uninstalled first). Also, warnings about broken dependencies occur only when removing the last gem that supports a dependency is removed.
Both gem install and gem uninstall support some new command line options that can reduce the amount of yes/no queries given the user. For install we have:
- –ignore-dependencies – Only install requests gems, no dependendecies are automatically installed.
- –include-dependencies – Automatically install dependencies, without confirmation.
For gem uninstall, the new options are:
- –all – Uninstall all matching gems without confirmation.
- –ignore-dependencies – Uninstall, even if dependencies are broken.
- –executables – Remove executables without confirmation
Under general cleanup, gems will not, by default, run RDoc on packages that do not have the RDoc flag set.
And finally there is a new library file ‘gemconfigure’ to aid in writing version sensitive applications (without undue dependencies on RubyGems); and ‘gemwhich’, a short script to locate libraries in the file system. You can read more about them here:
- gemconfigure: http://docs.rubygems.org/read/chapter/4#page73
- gemwhich: http://docs.rubygems.org/read/chapter/17