* lib/yaml.rb: nodoc EngineManager, add History doc #8344

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40547 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
zzak 2013-05-02 02:24:33 +00:00
parent a4460ddb48
commit 0b9b99c12c
2 changed files with 24 additions and 5 deletions

View File

@ -1,3 +1,7 @@
Thu May 2 11:24:00 2013 Zachary Scott <zachary@zacharyscott.net>
* lib/yaml.rb: nodoc EngineManager, add History doc #8344
Wed May 1 21:11:17 2013 Tanaka Akira <akr@fsij.org> Wed May 1 21:11:17 2013 Tanaka Akira <akr@fsij.org>
* time.c (localtime_with_gmtoff_zone): musl libc may return NULL for * time.c (localtime_with_gmtoff_zone): musl libc may return NULL for

View File

@ -14,7 +14,7 @@ YAML = Psych
module Psych # :nodoc: module Psych # :nodoc:
# For compatibility, deprecated # For compatibility, deprecated
class EngineManager class EngineManager # :nodoc:
attr_reader :yamler # :nodoc: attr_reader :yamler # :nodoc:
def initialize # :nodoc: def initialize # :nodoc:
@ -25,13 +25,13 @@ module Psych # :nodoc:
false false
end end
# Psych is now always used and this method has no effect. # Psych is always used and this method has no effect.
# #
# This method is still present for compatibility. # This method is still present for compatibility.
# #
# You may still use the Syck engine by installing # You may still use the Syck engine by installing
# the 'syck' gem and using the Syck constant. # the 'syck' gem and using the Syck constant.
def yamler= engine def yamler= engine # :nodoc:
case engine case engine
when 'syck' then warn "syck has been removed, psych is used instead" when 'syck' then warn "syck has been removed, psych is used instead"
when 'psych' then @yamler = 'psych' when 'psych' then @yamler = 'psych'
@ -50,9 +50,9 @@ end
# #
# This module provides a Ruby interface for data serialization in YAML format. # This module provides a Ruby interface for data serialization in YAML format.
# #
# The underlying implementation is now always the libyaml wrapper Psych. # The underlying implementation is the libyaml wrapper Psych.
# #
# See Psych::EngineManager#yamler= for details on using Syck. # == Usage
# #
# Working with YAML can be very simple, for example: # Working with YAML can be very simple, for example:
# #
@ -64,10 +64,25 @@ end
# YAML.dump("foo") # => "--- foo\n...\n" # YAML.dump("foo") # => "--- foo\n...\n"
# { :a => 'b'}.to_yaml # => "---\n:a: b\n" # { :a => 'b'}.to_yaml # => "---\n:a: b\n"
# #
# == Security
#
# Do not use YAML to load untrusted data. Doing so is unsafe and could allow # Do not use YAML to load untrusted data. Doing so is unsafe and could allow
# malicious input to execute arbitrary code inside your application. Please see # malicious input to execute arbitrary code inside your application. Please see
# doc/security.rdoc for more information. # doc/security.rdoc for more information.
# #
# == History
#
# Syck was the original for YAML implementation in Ruby's standard library
# developed by why the lucky stiff.
#
# You can still use Syck, if you prefer, for parsing and emitting YAML, but you
# must install the 'syck' gem now in order to use it.
#
# In older Ruby versions, ie. <= 1.9, Syck is still provided, however it was
# completely removed with the release of Ruby 2.0.0.
#
# == More info
#
# For more advanced details on the implementation see Psych, and also check out # For more advanced details on the implementation see Psych, and also check out
# http://yaml.org for spec details and other helpful information. # http://yaml.org for spec details and other helpful information.
module YAML module YAML