From: Robert Klemme Date: 2009-05-13T20:19:58+09:00 Subject: Ruby 1.9.1-p129: gem installation error? Hi, after building 1.9.1-p129 on cygwin I got 13:12:42 ~$ gem19 install RedCloth WARNING: RubyGems 1.2+ index not found for: RubyGems will revert to legacy indexes degrading performance. ERROR: While executing gem ... (ArgumentError) string contains null byte (The full story with debug is below.) This could be an issue with our company's HTTP proxy because we had issues with MD5 mismatches in the past and the debug seems to indicate issues with chunk sizes. Can anybody confirm that he / she can actually install that gem properly with this version of Ruby? 13:13:10 ~$ ruby --version ruby 1.8.7 (2008-08-11 patchlevel 72) [i386-cygwin] Thanks! Kind regards robert 13:12:56 ~$ gem19 install --debug RedCloth Exception `NameError' at /opt/lib/ruby19/1.9.1/rubygems/command_manager.rb:134 - uninitialized constant Gem::Commands::InstallCommand Exception `Gem::LoadError' at /opt/lib/ruby19/1.9.1/rubygems.rb:636 - Could not find RubyGem sources (> 0.0.1) Exception `Net::HTTPBadResponse' at /opt/lib/ruby19/1.9.1/net/http.rb:2350 - wrong chunk size line: Exception `Net::HTTPBadResponse' at /opt/lib/ruby19/1.9.1/net/http.rb:2350 - wrong chunk size line: Exception `Gem::RemoteFetcher::FetchError' at /opt/lib/ruby19/1.9.1/rubygems/remote_fetcher.rb:296 - too many bad responses (http://gems.rubyforge.org/latest_specs.4.8.gz) Exception `Gem::RemoteFetcher::FetchError' at /opt/lib/ruby19/1.9.1/rubygems/remote_fetcher.rb:146 - too many bad responses (http://gems.rubyforge.org/latest_specs.4.8.gz) WARNING: RubyGems 1.2+ index not found for: RubyGems will revert to legacy indexes degrading performance. Exception `ArgumentError' at /opt/lib/ruby19/1.9.1/rubygems/package/tar_reader/entry.rb:44 - string contains null byte ERROR: While executing gem ... (ArgumentError) string contains null byte /opt/lib/ruby19/1.9.1/rubygems/package/tar_reader/entry.rb:44:in `join' /opt/lib/ruby19/1.9.1/rubygems/package/tar_reader/entry.rb:44:in `full_name' /opt/lib/ruby19/1.9.1/rubygems/package/tar_input.rb:34:in `block in initialize' /opt/lib/ruby19/1.9.1/rubygems/package/tar_reader.rb:46:in `block in each' /opt/lib/ruby19/1.9.1/rubygems/package/tar_reader.rb:37:in `loop' /opt/lib/ruby19/1.9.1/rubygems/package/tar_reader.rb:37:in `each' /opt/lib/ruby19/1.9.1/rubygems/package/tar_input.rb:33:in `initialize' /opt/lib/ruby19/1.9.1/rubygems/package/tar_input.rb:18:in `new' /opt/lib/ruby19/1.9.1/rubygems/package/tar_input.rb:18:in `open' /opt/lib/ruby19/1.9.1/rubygems/package.rb:56:in `open' /opt/lib/ruby19/1.9.1/rubygems/format.rb:67:in `from_io' /opt/lib/ruby19/1.9.1/rubygems/format.rb:51:in `block in from_file_by_path' /opt/lib/ruby19/1.9.1/rubygems/format.rb:50:in `open' /opt/lib/ruby19/1.9.1/rubygems/format.rb:50:in `from_file_by_path' /opt/lib/ruby19/1.9.1/rubygems/installer.rb:114:in `initialize' /opt/lib/ruby19/1.9.1/rubygems/dependency_installer.rb:236:in `new' /opt/lib/ruby19/1.9.1/rubygems/dependency_installer.rb:236:in `block in install' /opt/lib/ruby19/1.9.1/rubygems/dependency_installer.rb:219:in `each' /opt/lib/ruby19/1.9.1/rubygems/dependency_installer.rb:219:in `install' /opt/lib/ruby19/1.9.1/rubygems/commands/install_command.rb:86:in `block in execute' /opt/lib/ruby19/1.9.1/rubygems/commands/install_command.rb:83:in `each' /opt/lib/ruby19/1.9.1/rubygems/commands/install_command.rb:83:in `execute' /opt/lib/ruby19/1.9.1/rubygems/command.rb:136:in `invoke' /opt/lib/ruby19/1.9.1/rubygems/command_manager.rb:105:in `process_args' /opt/lib/ruby19/1.9.1/rubygems/command_manager.rb:75:in `run' /opt/lib/ruby19/1.9.1/rubygems/gem_runner.rb:39:in `run' /opt/bin/gem19:24:in `
' 13:13:10 ~$ I get the same error when trying to read the file in IRB from the cache directory: irb(main):006:0> x = Gem::Format.from_file_by_path "RedCloth-4.1.9.gem" ArgumentError: string contains null byte from /opt/lib/ruby19/1.9.1/rubygems/package/tar_reader/entry.rb:44:in `join' from /opt/lib/ruby19/1.9.1/rubygems/package/tar_reader/entry.rb:44:in `full_name' from /opt/lib/ruby19/1.9.1/rubygems/package/tar_input.rb:34:in `block in initialize' from /opt/lib/ruby19/1.9.1/rubygems/package/tar_reader.rb:46:in `block in each' from /opt/lib/ruby19/1.9.1/rubygems/package/tar_reader.rb:37:in `loop' from /opt/lib/ruby19/1.9.1/rubygems/package/tar_reader.rb:37:in `each' from /opt/lib/ruby19/1.9.1/rubygems/package/tar_input.rb:33:in `initialize' from /opt/lib/ruby19/1.9.1/rubygems/package/tar_input.rb:18:in `new' from /opt/lib/ruby19/1.9.1/rubygems/package/tar_input.rb:18:in `open' from /opt/lib/ruby19/1.9.1/rubygems/package.rb:56:in `open' from /opt/lib/ruby19/1.9.1/rubygems/format.rb:67:in `from_io' from /opt/lib/ruby19/1.9.1/rubygems/format.rb:51:in `block in from_file_by_path' from /opt/lib/ruby19/1.9.1/rubygems/format.rb:50:in `open' from /opt/lib/ruby19/1.9.1/rubygems/format.rb:50:in `from_file_by_path' from (irb):6 from /opt/bin/irb19:12:in `
' -- remember.guy do |as, often| as.you_can - without end http://blog.rubybestpractices.com/