From f8a5e512a1856231bf10c80e8a08714b06fb95c4 Mon Sep 17 00:00:00 2001 From: Yusuke Endoh Date: Mon, 17 May 2021 23:09:37 +0900 Subject: Make YAML.load_file use YAML.load instead of safe_load YAML.load and YAML.safe_load are different a little; the former allows Symbol by default but the latter doesn't. So YAML.load_file and YAML.safe_load_file should reflect the difference. Fixes #490 --- lib/psych.rb | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/lib/psych.rb b/lib/psych.rb index 7c6b8d0..6205061 100644 --- a/lib/psych.rb +++ b/lib/psych.rb @@ -575,7 +575,6 @@ module Psych self.unsafe_load f, filename: filename, **kwargs } end - class << self; alias :load_file :unsafe_load_file; end ### # Safely loads the document contained in +filename+. Returns the yaml contained in @@ -587,7 +586,17 @@ module Psych self.safe_load f, filename: filename, **kwargs } end - class << self; alias load_file safe_load_file end + + ### + # Loads the document contained in +filename+. Returns the yaml contained in + # +filename+ as a Ruby object, or if the file is empty, it returns + # the specified +fallback+ return value, which defaults to +false+. + # See load for options. + def self.load_file filename, **kwargs + File.open(filename, 'r:bom|utf-8') { |f| + self.load f, filename: filename, **kwargs + } + end # :stopdoc: def self.add_domain_type domain, type_tag, &block -- cgit v1.2.3