This project is closed and read-only.
Actions
Bug #2439
closedgem_prelude.rbとlib/rubygems.rbでKernel#gemの可視性が異なる
Bug #2439:
gem_prelude.rbとlib/rubygems.rbでKernel#gemの可視性が異なる
Status:
Closed
Assignee:
-
Description
=begin
lib/rubygems.rbではKernel#gemがprivateになっていますが、gem_prelude.rbではそうではないため、以下のような事ができてしまいます。
$ irb
irb(main):001:0> 1.gem "minitest", "1.4.2"
=> true
irb(main):002:0> 1.gem "rake", "0.8.7"
NoMethodError: private method gem' called for 1:Fixnum from (irb):2 from /usr/local/bin/irb1.9.2-trunk:12:in
irb(main):003:0> gem "rake", "0.8.7"
=> true
rubygemsに詳しくないので嬉しくない修正かもしれませんが、以下のようにすると1度目の1.gemから「NoMethodError: private method `gem' called ...」となりました。
--- gem_prelude.rb (revision 25993)
+++ gem_prelude.rb (working copy)
@@ -16,6 +16,8 @@
Gem.push_gem_version_on_load_path(gem_name, *version_requirements)
end
-
private :gem
-
end
module Gem
=end
Actions