I've provided a workaround for RubyGems on 1.9 and committed it.

It cost us the following features:

* Legacy remote repository support (fetching /yaml.Z and friends)

* Setting GEM_PATH and GEM_HOME via ~/.gemrc

The first feature didn't strictly need to be removed.  I just got annoyed that 
Gem::SourceIndex loaded Gem::UserInteraction.

I don't see a way around the restoring the second feature without more hacks.

In gem_prelude-land rubygems/custom_require is already kinda-sorta loaded.  
When loading rubygems.rb we depend on rescuing several LoadErrors, but 
gem_prelude is interfering when rubygems.rb is partially loaded.

The interference causes ruby to try to try load files like 
rubygems/defaults/operating_system.rb in rubygems.rb and Win32API in 
rubygems/config_file.rb when RubyGems isn't ready to load them from a gem.

RubyGems::ConfigFile is required to figure out what gem path and gem home to 
use.  This involves loading YAML as well.

On the upside, RubyGems should start a little faster now that it no longer 
loads rubygems/specification, rubygems/config_file or yaml.
_______________________________________________
Rubygems-developers mailing list
http://rubyforge.org/projects/rubygems
Rubygems-developers@rubyforge.org
http://rubyforge.org/mailman/listinfo/rubygems-developers

Reply via email to