Bug #8313
closedrubygem 2.0 can't communicate with remote sources http://rubygems.org/
Description
I try to use Ruby 2.0 on my MAC OSX Mountain Lion with macports. The "sudo port install ruby2.0" and "sudo port select --set ruby ruby2.0" was success. But when I try to install gem package I have these errors:
$ sudo gem list -r --debug
*** REMOTE GEMS ***
Exception Errno::ENOENT' at /opt/local/lib/ruby2.0/2.0.0/rubygems/remote_fetcher.rb:298 - No such file or directory - /Users/fred/.gem/specs/rubygems.org%80/latest_specs.4.8 Exception
Errno::EAGAIN' at /opt/local/lib/ruby2.0/2.0.0/net/protocol.rb:153 - Resource temporarily unavailable - read would block
Exception `Errno::EAGAIN' at /opt/local/lib/ruby2.0/2.0.0/net/protocol.rb:153 - Resource temporarily unavailable - read would block
...
Some others informations:
$ sudo gem environment
RubyGems Environment:
- RUBYGEMS VERSION: 2.0.0
- RUBY VERSION: 2.0.0 (2013-02-24 patchlevel 0) [x86_64-darwin12]
- INSTALLATION DIRECTORY: /opt/local/lib/ruby2.0/gems/2.0.0
- RUBY EXECUTABLE: /opt/local/bin/ruby2.0
- EXECUTABLE DIRECTORY: /opt/local/bin
- RUBYGEMS PLATFORMS:
- ruby
- x86_64-darwin-12
- GEM PATHS:
- /opt/local/lib/ruby2.0/gems/2.0.0
- /Users/fred/.gem/ruby/2.0.0
- GEM CONFIGURATION:
- :update_sources => true
- :verbose => true
- :backtrace => false
- :bulk_threshold => 1000
- REMOTE SOURCES:
$ sudo gem list -d
*** LOCAL GEMS ***
bigdecimal (1.2.0)
Authors: Kenta Murata, Shigeo Kobayashi
Homepage: http://www.ruby-lang.org
Installed at (default): /opt/local/lib/ruby2.0/gems/2.0.0
Arbitrary-precision decimal floating-point number library.
io-console (0.4.2)
Author: Nobu Nakada
Homepage: http://www.ruby-lang.org
License: ruby
Installed at (default): /opt/local/lib/ruby2.0/gems/2.0.0
Console interface
json (1.7.7)
Author:
Installed at (default): /opt/local/lib/ruby2.0/gems/2.0.0
This json is bundled with Ruby
minitest (4.3.2)
Author:
Installed at (default): /opt/local/lib/ruby2.0/gems/2.0.0
This minitest is bundled with Ruby
psych (2.0.0)
Author: Aaron Patterson
Homepage: http://github.com/tenderlove/psych
Installed at (default): /opt/local/lib/ruby2.0/gems/2.0.0
Psych is a YAML parser and emitter
rake (0.9.6)
Author:
Installed at (default): /opt/local/lib/ruby2.0/gems/2.0.0
This rake is bundled with Ruby
rdoc (4.0.0)
Author:
Installed at (default): /opt/local/lib/ruby2.0/gems/2.0.0
This rdoc is bundled with Ruby
test-unit (2.0.0.0)
Author: Shota Fukumori
Homepage: http://www.ruby-lang.org
Installed at (default): /opt/local/lib/ruby2.0/gems/2.0.0
test/unit compatible API testing framework
A part of /opt/local/lib/ruby2.0/2.0.0/rubygems/remote_fetcher.rb:
...
Downloads +uri+ to +path+ if necessary. If no path is given, it just¶
passes the data.¶
def cache_update_path uri, path = nil, update = true
mtime = path && File.stat(path).mtime rescue nil <--- line 298
if mtime && Net::HTTPNotModified === fetch_path(uri, mtime, true)
Gem.read_binary(path)
else
data = fetch_path(uri)
if update and path then
open(path, 'wb') do |io|
io.write data
end
end
data
end
end
...