Server : Apache System : Linux server1.cgrithy.com 3.10.0-1160.95.1.el7.x86_64 #1 SMP Mon Jul 24 13:59:37 UTC 2023 x86_64 User : nobody ( 99) PHP Version : 8.1.23 Disable Function : NONE Directory : /usr/share/rubygems/rubygems/ |
# :stopdoc: #-- # This file contains all sorts of little compatibility hacks that we've # had to introduce over the years. Quarantining them into one file helps # us know when we can get rid of them. # # Ruby 1.9.x has introduced some things that are awkward, and we need to # support them, so we define some constants to use later. #++ module Gem # Only MRI 1.9.2 has the custom prelude. GEM_PRELUDE_SUCKAGE = RUBY_VERSION =~ /^1\.9\.2/ and RUBY_ENGINE == "ruby" end # Gem::QuickLoader exists in the gem prelude code in ruby 1.9.2 itself. # We gotta get rid of it if it's there, before we do anything else. if Gem::GEM_PRELUDE_SUCKAGE and defined?(Gem::QuickLoader) then Gem::QuickLoader.remove $LOADED_FEATURES.delete Gem::QuickLoader.path_to_full_rubygems_library if $LOADED_FEATURES.any? do |path| path.end_with? '/rubygems.rb' end then # TODO path does not exist here raise LoadError, "another rubygems is already loaded from #{path}" end class << Gem remove_method :try_activate if Gem.respond_to?(:try_activate, true) end end module Gem RubyGemsVersion = VERSION RbConfigPriorities = %w[ EXEEXT RUBY_SO_NAME arch bindir datadir libdir ruby_install_name ruby_version rubylibprefix sitedir sitelibdir vendordir vendorlibdir rubylibdir ] unless defined?(ConfigMap) ## # Configuration settings from ::RbConfig ConfigMap = Hash.new do |cm, key| cm[key] = RbConfig::CONFIG[key.to_s] end else RbConfigPriorities.each do |key| ConfigMap[key.to_sym] = RbConfig::CONFIG[key] end end RubyGemsPackageVersion = VERSION end