Hi John,
Thanks for pointing me in the right direction on this.
I've added the request for micro release binding and I've added the
'gem' command to the list of changed interfaces. Using the Ruby 'ri'
command in place of gemri has been possible since before the original
Arc case and before the integration into Nevada so 'ri' hasn't changed
in this update. I've mentioned this in section 2.4.
Jyri is on vacation but has updated the Arc case on the sac system. I've
include it here.
Thanks
Amanda
Ruby Gem Update
Amanda Waite <amanda.waite at sun.com>
07 January 2008
1. Summary and motivation
1.1. Introduction
This project will deprecate certain interfaces that were
provided as discrete executables by Ruby Gems 0.9.4 and which
were included in PSARC/2007/600. In RubyGems 1.3.1, the
functionality provided by many of these executables is now
implemented in the core RubyGems executable 'gem', other
functionality now uses standard Ruby tools such as 'ri'.
An update from RubyGems 0.9.4 to RubyGems 1.3.1 is an absolute
requirement as Ruby on Rails versions > 2.1.0 require RubyGems
1.1.1 or greater while Ruby on Rails 2.2.2 specifically
requires RubyGems 1.3.1
This case seeks micro release binding.
2. Technical Description
2.1. Details
This project will mark the deprecated interfaces as obsolete
and will update all relevant documentation to reflect this
change. The interfaces themselves will be updated to emit a
warning to indicate that it's usage has been deprecated and
detail how similar functionality can be achieved through the
use of other commands. The changes will also be documented on
publicly accessible web sites including blogs and project
pages.
These changes will follow the guidelines for obsoleting
interfaces here:
http://opensolaris.org/os/community/arc/policies/obsolete-eof/
2.2. Ongoing updates
Although RubyGems no longer includes these executables (the
interfaces to be obsoleted) there is still a requirement to
continue to provide updates to RubyGems in the affected
packages. As such, these updates will include scripts of the
same name as the deprecated executables that wrap the same
functionality as provided by the gem command and standard Ruby
tools. These scripts will be removed with the expiry of the
one year timer that starts after acceptance of this ARC
case. Additional details of how the functionality of the
deprecated executable is accessed in the update are available
in Appendix 1.
2.3 Updated Interfaces
The 'gem' command has been updated to add support for some of the
functionality that was provided by the deprecated executables.
The Ruby 'ri' command has not changed in this update, the
functionality originally provided by 'gemri' comes from command
line options that are already available in Ruby 'ri'.
2.4 Changes to Exported Interfaces
NAME STABILITY NOTES
/usr/ruby/[version]/bin
gem Uncommitted Executable
gem_mirror Obsolete Uncommitted Executable
gem_server Obsolete Uncommitted Executable
gemlock Obsolete Uncommitted Executable
gemri Obsolete Uncommitted Executable
gemwhich Obsolete Uncommitted Executable
index_gem_repository.rb Obsolete Uncommitted Executable
update_rubygems Obsolete Uncommitted Executable
/usr/bin/
gem_mirror Obsolete Volatile Symbolic
link
gem_server Obsolete Volatile Symbolic
link
gemlock Obsolete Volatile Symbolic
link
gemri Obsolete Volatile Symbolic
link
gemwhich Obsolete Volatile Symbolic
link
index_gem_repository.rb Obsolete Volatile Symbolic
link
update_rubygems Obsolete Volatile Symbolic
link
gem_mirror18 Obsolete Volatile Symbolic
link
gem_server18 Obsolete Volatile Symbolic
link
gemlock18 Obsolete Volatile Symbolic
link
gemri18 Obsolete Volatile Symbolic
link
gemwhich18 Obsolete Volatile Symbolic
link
index_gem_repository.rb18 Obsolete Volatile Symbolic
link
update_rubygems18 Obsolete Volatile Symbolic
link
2.5 Changes to documentation
The gem[1] man page will be updated to include information on
how to access the new functionality provided by the 'gem'
command that replaces that provided by the deprecated
executables.
2.6 Packaging and Delivery
The changes described will be implemented in the update of the
SUNWruby18[r|u] packages to include RubyGems 1.3.1. There
should otherwise be no obvious changes to the packaging.
-------------------------------------------------------------------------------
Appendix 1
RubyGems 1.3.1 commands used to provide similar functionality as that
provided by the deprecated executables:
gem_mirror gem mirror -v
gemwhich gem which -v
gemri ri --gems --doc-dir
index_gem_repository.rb gem generate_index
gem_server gem server
gem_lock gem lock
update_rubygems gem update --system