[前][次][番号順一覧][スレッド一覧]

ruby-changes:52978

From: hsbt <ko1@a...>
Date: Sat, 20 Oct 2018 11:51:13 +0900 (JST)
Subject: [ruby-changes:52978] hsbt:r65192 (trunk): Support keyword arguments with Pysch.safe_load provided by after Psych 3.1.0.pre1.

hsbt	2018-10-20 11:51:09 +0900 (Sat, 20 Oct 2018)

  New Revision: 65192

  https://svn.ruby-lang.org/cgi-bin/viewvc.cgi?view=revision&revision=65192

  Log:
    Support keyword arguments with Pysch.safe_load provided by after Psych 3.1.0.pre1.

  Modified files:
    trunk/lib/rubygems/safe_yaml.rb
Index: lib/rubygems/safe_yaml.rb
===================================================================
--- lib/rubygems/safe_yaml.rb	(revision 65191)
+++ lib/rubygems/safe_yaml.rb	(revision 65192)
@@ -28,11 +28,19 @@ module Gem https://github.com/ruby/ruby/blob/trunk/lib/rubygems/safe_yaml.rb#L28
 
     if ::YAML.respond_to? :safe_load
       def self.safe_load input
-        ::YAML.safe_load(input, WHITELISTED_CLASSES, WHITELISTED_SYMBOLS, true)
+        if Gem::Version.new(Psych::VERSION) >= Gem::Version.new('3.1.0.pre1')
+          ::YAML.safe_load(input, whitelist_classes: WHITELISTED_CLASSES, whitelist_symbols: WHITELISTED_SYMBOLS, aliases: true)
+        else
+          ::YAML.safe_load(input, WHITELISTED_CLASSES, WHITELISTED_SYMBOLS, true)
+        end
       end
 
       def self.load input
-        ::YAML.safe_load(input, [::Symbol])
+        if Gem::Version.new(Psych::VERSION) >= Gem::Version.new('3.1.0.pre1')
+          ::YAML.safe_load(input, whitelist_classes: [::Symbol])
+        else
+          ::YAML.safe_load(input, [::Symbol])
+        end
       end
     else
       unless Gem::Deprecate.skip

--
ML: ruby-changes@q...
Info: http://www.atdot.net/~ko1/quickml/

[前][次][番号順一覧][スレッド一覧]