On Oct 29, 2008, at 07:39 AM, Yukihiro Matsumoto wrote: > By recent change, gem_prelude always requires rubygems/defaults.rb and > other rubygems related files. It's not my intention. I don't want > the bare interpreter to rely on other libraries, until it's really > needed. Plain execution should be done without loading any other > libraries. That's the very reason behind pre-loaded prelude.rb and > gem_prelude.rb. It already made my testing difficult. These files: require 'rubygems/defaults/operating_system' require "rubygems/defaults/#{RUBY_ENGINE}" do not exist by default, but are used by packagers to customize RubyGems behavior. For example, debian-packaged ruby installs ruby into /usr/lib, but wants to install gems into /var/lib. If a packager creates rubygems/defaults/operating_system.rb, it should not require any other files except lazily. I would like to make it easier for users to upgrade RubyGems and have it work the same as their default install. > So, Eric, could you avoid mandatory requiring rubygems from > gem_prelude, please? It should be done lazily. I can duplicate the code from: require 'rubygems/defaults' into gem_prelude, but it would be a direct cut and paste. rubygems/ defaults.rb does not require any other files.