aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorhsbt <hsbt@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2016-09-07 03:16:15 +0000
committerhsbt <hsbt@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2016-09-07 03:16:15 +0000
commit6b80aa0fa039db7c95f930d311bb39c14c4a6531 (patch)
treeff8be4e00bba47e42a7b2978e274bf3ca29fe7ff
parentdd35c8fa6f85f49e0aab5e14dc7786a26ea88d6b (diff)
downloadruby-6b80aa0fa039db7c95f930d311bb39c14c4a6531.tar.gz
* ext/psych/*, test/psych/*: Update psych-2.1.1
This version fixed following pull requests. https://github.com/tenderlove/psych/pull/284 https://github.com/tenderlove/psych/pull/276 git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56081 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-rw-r--r--ChangeLog7
-rw-r--r--ext/psych/lib/psych.rb2
-rw-r--r--ext/psych/lib/psych/scalar_scanner.rb2
-rw-r--r--ext/psych/lib/psych/visitors/to_ruby.rb4
-rw-r--r--ext/psych/psych.gemspec56
-rw-r--r--test/psych/test_scalar_scanner.rb4
-rw-r--r--test/psych/test_string.rb4
7 files changed, 44 insertions, 35 deletions
diff --git a/ChangeLog b/ChangeLog
index 81f0157e5e..2bf83a34e0 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,10 @@
+Wed Sep 7 12:16:09 2016 SHIBATA Hiroshi <hsbt@ruby-lang.org>
+
+ * ext/psych/*, test/psych/*: Update psych-2.1.1
+ This version fixed following pull requests.
+ https://github.com/tenderlove/psych/pull/284
+ https://github.com/tenderlove/psych/pull/276
+
Wed Sep 7 11:51:06 2016 SHIBATA Hiroshi <hsbt@ruby-lang.org>
* lib/rdoc/*, test/rdoc/*: Update rdoc-5.0.0.beta1
diff --git a/ext/psych/lib/psych.rb b/ext/psych/lib/psych.rb
index 4e678deedc..ecef46c024 100644
--- a/ext/psych/lib/psych.rb
+++ b/ext/psych/lib/psych.rb
@@ -224,7 +224,7 @@ require 'psych/class_loader'
module Psych
# The version is Psych you're using
- VERSION = '2.1.0'
+ VERSION = '2.1.1'
# The version of libyaml Psych is using
LIBYAML_VERSION = Psych.libyaml_version.join '.'
diff --git a/ext/psych/lib/psych/scalar_scanner.rb b/ext/psych/lib/psych/scalar_scanner.rb
index f519da1465..a849359d18 100644
--- a/ext/psych/lib/psych/scalar_scanner.rb
+++ b/ext/psych/lib/psych/scalar_scanner.rb
@@ -100,7 +100,7 @@ module Psych
@string_cache[string] = true
string
else
- Float(string.gsub(/[,_]|\.$/, ''))
+ Float(string.gsub(/[,_]|\.([Ee]|$)/, '\1'))
end
else
int = parse_int string.gsub(/[,_]/, '')
diff --git a/ext/psych/lib/psych/visitors/to_ruby.rb b/ext/psych/lib/psych/visitors/to_ruby.rb
index c061da25f1..fd1c8e6caf 100644
--- a/ext/psych/lib/psych/visitors/to_ruby.rb
+++ b/ext/psych/lib/psych/visitors/to_ruby.rb
@@ -70,11 +70,11 @@ module Psych
o.value
end
when '!ruby/object:BigDecimal'
- require 'bigdecimal'
+ require 'bigdecimal' unless defined? BigDecimal
class_loader.big_decimal._load o.value
when "!ruby/object:DateTime"
class_loader.date_time
- require 'date'
+ require 'date' unless defined? DateTime
@ss.parse_time(o.value).to_datetime
when '!ruby/encoding'
::Encoding.find o.value
diff --git a/ext/psych/psych.gemspec b/ext/psych/psych.gemspec
index 11e22d7a18..fcefe80b5b 100644
--- a/ext/psych/psych.gemspec
+++ b/ext/psych/psych.gemspec
@@ -1,45 +1,39 @@
# -*- encoding: utf-8 -*-
-# stub: psych 2.1.0 ruby lib
-# stub: ext/psych/extconf.rb
Gem::Specification.new do |s|
s.name = "psych"
- s.version = "2.1.0"
-
- s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
- s.require_paths = ["lib"]
- s.authors = ["Aaron Patterson"]
- s.date = "2016-06-24"
- s.description = "Psych is a YAML parser and emitter. Psych leverages libyaml[http://pyyaml.org/wiki/LibYAML]\nfor its YAML parsing and emitting capabilities. In addition to wrapping\nlibyaml, Psych also knows how to serialize and de-serialize most Ruby objects\nto and from the YAML format."
- s.email = ["aaron@tenderlovemaking.com"]
- s.extensions = ["ext/psych/extconf.rb"]
- s.extra_rdoc_files = ["CHANGELOG.rdoc", "Manifest.txt", "README.rdoc", "CHANGELOG.rdoc", "README.rdoc"]
- s.files = [".autotest", ".travis.yml", "CHANGELOG.rdoc", "Manifest.txt", "README.rdoc", "Rakefile", "ext/psych/depend", "ext/psych/extconf.rb", "ext/psych/psych.c", "ext/psych/psych.h", "ext/psych/psych_emitter.c", "ext/psych/psych_emitter.h", "ext/psych/psych_parser.c", "ext/psych/psych_parser.h", "ext/psych/psych_to_ruby.c", "ext/psych/psych_to_ruby.h", "ext/psych/psych_yaml_tree.c", "ext/psych/psych_yaml_tree.h", "ext/psych/yaml/LICENSE", "ext/psych/yaml/api.c", "ext/psych/yaml/config.h", "ext/psych/yaml/dumper.c", "ext/psych/yaml/emitter.c", "ext/psych/yaml/loader.c", "ext/psych/yaml/parser.c", "ext/psych/yaml/reader.c", "ext/psych/yaml/scanner.c", "ext/psych/yaml/writer.c", "ext/psych/yaml/yaml.h", "ext/psych/yaml/yaml_private.h", "lib/psych.rb", "lib/psych/class_loader.rb", "lib/psych/coder.rb", "lib/psych/core_ext.rb", "lib/psych/deprecated.rb", "lib/psych/exception.rb", "lib/psych/handler.rb", "lib/psych/handlers/document_stream.rb", "lib/psych/handlers/recorder.rb", "lib/psych/json/ruby_events.rb", "lib/psych/json/stream.rb", "lib/psych/json/tree_builder.rb", "lib/psych/json/yaml_events.rb", "lib/psych/nodes.rb", "lib/psych/nodes/alias.rb", "lib/psych/nodes/document.rb", "lib/psych/nodes/mapping.rb", "lib/psych/nodes/node.rb", "lib/psych/nodes/scalar.rb", "lib/psych/nodes/sequence.rb", "lib/psych/nodes/stream.rb", "lib/psych/omap.rb", "lib/psych/parser.rb", "lib/psych/scalar_scanner.rb", "lib/psych/set.rb", "lib/psych/stream.rb", "lib/psych/streaming.rb", "lib/psych/syntax_error.rb", "lib/psych/tree_builder.rb", "lib/psych/versions.rb", "lib/psych/visitors.rb", "lib/psych/visitors/depth_first.rb", "lib/psych/visitors/emitter.rb", "lib/psych/visitors/json_tree.rb", "lib/psych/visitors/to_ruby.rb", "lib/psych/visitors/visitor.rb", "lib/psych/visitors/yaml_tree.rb", "lib/psych/y.rb", "lib/psych_jars.rb", "test/psych/handlers/test_recorder.rb", "test/psych/helper.rb", "test/psych/json/test_stream.rb", "test/psych/nodes/test_enumerable.rb", "test/psych/test_alias_and_anchor.rb", "test/psych/test_array.rb", "test/psych/test_boolean.rb", "test/psych/test_class.rb", "test/psych/test_coder.rb", "test/psych/test_date_time.rb", "test/psych/test_deprecated.rb", "test/psych/test_document.rb", "test/psych/test_emitter.rb", "test/psych/test_encoding.rb", "test/psych/test_exception.rb", "test/psych/test_hash.rb", "test/psych/test_json_tree.rb", "test/psych/test_merge_keys.rb", "test/psych/test_nil.rb", "test/psych/test_null.rb", "test/psych/test_numeric.rb", "test/psych/test_object.rb", "test/psych/test_object_references.rb", "test/psych/test_omap.rb", "test/psych/test_parser.rb", "test/psych/test_psych.rb", "test/psych/test_safe_load.rb", "test/psych/test_scalar.rb", "test/psych/test_scalar_scanner.rb", "test/psych/test_serialize_subclasses.rb", "test/psych/test_set.rb", "test/psych/test_stream.rb", "test/psych/test_string.rb", "test/psych/test_struct.rb", "test/psych/test_symbol.rb", "test/psych/test_tainted.rb", "test/psych/test_to_yaml_properties.rb", "test/psych/test_tree_builder.rb", "test/psych/test_yaml.rb", "test/psych/test_yamldbm.rb", "test/psych/test_yamlstore.rb", "test/psych/visitors/test_depth_first.rb", "test/psych/visitors/test_emitter.rb", "test/psych/visitors/test_to_ruby.rb", "test/psych/visitors/test_yaml_tree.rb"]
+ s.version = "2.1.1"
+ s.authors = ["Aaron Patterson", "SHIBATA Hiroshi"]
+ s.email = ["aaron@tenderlovemaking.com", "hsbt@ruby-lang.org"]
+ s.date = "2016-09-07"
+ s.summary = "Psych is a YAML parser and emitter"
+ s.description = <<-DESCRIPTION
+Psych is a YAML parser and emitter. Psych leverages libyaml[http://pyyaml.org/wiki/LibYAML]
+for its YAML parsing and emitting capabilities. In addition to wrapping libyaml,
+Psych also knows how to serialize and de-serialize most Ruby objects to and from the YAML format.
+DESCRIPTION
s.homepage = "http://github.com/tenderlove/psych"
s.licenses = ["MIT"]
+ s.require_paths = ["lib"]
+ s.files = `git ls-files -z`.split("\x0").reject { |f| f.match(%r{^(test|spec|features)/}) }
+
s.rdoc_options = ["--main", "README.rdoc"]
+ s.extra_rdoc_files = ["CHANGELOG.rdoc", "README.rdoc", "CHANGELOG.rdoc", "README.rdoc"]
+
s.required_ruby_version = Gem::Requirement.new(">= 1.9.2")
s.rubygems_version = "2.5.1"
- s.summary = "Psych is a YAML parser and emitter"
+ s.required_rubygems_version = Gem::Requirement.new(">= 0")
- if s.respond_to? :specification_version then
- s.specification_version = 4
+ s.add_development_dependency(%q<rake-compiler>, [">= 0.4.1"])
+ s.add_development_dependency(%q<minitest>, ["~> 5.0"])
- if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
- s.add_development_dependency(%q<rdoc>, ["~> 4.0"])
- s.add_development_dependency(%q<rake-compiler>, [">= 0.4.1"])
- s.add_development_dependency(%q<minitest>, ["~> 5.0"])
- s.add_development_dependency(%q<hoe>, ["~> 3.15"])
- else
- s.add_dependency(%q<rdoc>, ["~> 4.0"])
- s.add_dependency(%q<rake-compiler>, [">= 0.4.1"])
- s.add_dependency(%q<minitest>, ["~> 5.0"])
- s.add_dependency(%q<hoe>, ["~> 3.15"])
- end
+ if RUBY_PLATFORM =~ /java/
+ require 'psych/versions'
+ s.platform = 'java'
+ s.requirements = "jar org.yaml:snakeyaml, #{Psych::DEFAULT_SNAKEYAML_VERSION}"
+ s.add_dependency 'jar-dependencies', '>= 0.1.7'
+ s.add_development_dependency 'ruby-maven'
else
- s.add_dependency(%q<rdoc>, ["~> 4.0"])
- s.add_dependency(%q<rake-compiler>, [">= 0.4.1"])
- s.add_dependency(%q<minitest>, ["~> 5.0"])
- s.add_dependency(%q<hoe>, ["~> 3.15"])
+ s.extensions = ["ext/psych/extconf.rb"]
end
end
diff --git a/test/psych/test_scalar_scanner.rb b/test/psych/test_scalar_scanner.rb
index 7ad18c557b..25999892bc 100644
--- a/test/psych/test_scalar_scanner.rb
+++ b/test/psych/test_scalar_scanner.rb
@@ -74,6 +74,10 @@ module Psych
assert ss.tokenize('.nan').nan?
end
+ def test_scan_float_with_exponent_but_no_fraction
+ assert_equal(0.0, ss.tokenize('0.E+0'))
+ end
+
def test_scan_null
assert_equal nil, ss.tokenize('null')
assert_equal nil, ss.tokenize('~')
diff --git a/test/psych/test_string.rb b/test/psych/test_string.rb
index 51aef40858..25c6353cee 100644
--- a/test/psych/test_string.rb
+++ b/test/psych/test_string.rb
@@ -99,6 +99,10 @@ module Psych
assert_cycle '+.'
end
+ def test_float_with_no_fractional_before_exponent
+ assert_cycle '0.E+0'
+ end
+
def test_string_subclass_with_anchor
y = Psych.load <<-eoyml
---