diff options
author | Hiroshi SHIBATA <[email protected]> | 2023-04-17 20:24:13 +0900 |
---|---|---|
committer | git <[email protected]> | 2023-04-19 06:56:20 +0000 |
commit | cdc2e3de108d448026bf793d2b482d6abf7ae236 () | |
tree | bcc05775ca2c1fe61ad734f154ad1c7dcac6ff10 /lib/rubygems/config_file.rb | |
parent | 7b959f628801d9f411a2dcc231c25a06e9d6234f (diff) |
[rubygems/rubygems] Wrap self.convert_rubygems_config_hash from Bundler::YAMLSerializer.load
https://.com/rubygems/rubygems/commit/080880ac23
-rw-r--r-- | lib/rubygems/config_file.rb | 72 |
1 files changed, 39 insertions, 33 deletions
@@ -357,39 +357,7 @@ if you believe they were disclosed to a third party. begin content = Bundler::YAMLSerializer.load(File.read(filename)) if content.is_a? Hash - content.transform_keys! do |k| - if k.match?(/\A:(.*)\Z/) - k[1..-1].to_sym - elsif k.match?(/__/) - if k.is_a?(Symbol) - k.to_s.gsub(/__/,".").to_sym - else - k.dup.gsub(/__/,".") - end - else - k - end - end - - content.transform_values! do |v| - if v.is_a?(String) - if v.match?(/\A:(.*)\Z/) - v[1..-1].to_sym - elsif v.match?(/\A[+-]?\d+\Z/) - v.to_i - elsif v.match?(/\Atrue|false\Z/) - v == "true" - elsif v.empty? - nil - else - v - end - elsif v.is_a?(Hash) && v.empty? - nil - else - v - end - end else warn "Failed to load #{filename} because it doesn't contain valid YAML hash" return {} @@ -564,6 +532,44 @@ if you believe they were disclosed to a third party. attr_reader :hash protected :hash private def set_config_file_name(args) |