psych 2.0.17-java → 2.1.0-java

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (95) hide show
  1. checksums.yaml +4 -4
  2. data/.travis.yml +4 -11
  3. data/Rakefile +27 -119
  4. data/ext/psych/extconf.rb +1 -0
  5. data/ext/psych/yaml/loader.c +2 -2
  6. data/ext/psych/yaml/scanner.c +17 -17
  7. data/lib/psych.rb +14 -8
  8. data/lib/psych/class_loader.rb +1 -0
  9. data/lib/psych/coder.rb +1 -0
  10. data/lib/psych/core_ext.rb +1 -0
  11. data/lib/psych/deprecated.rb +1 -0
  12. data/lib/psych/exception.rb +1 -0
  13. data/lib/psych/handler.rb +1 -0
  14. data/lib/psych/handlers/document_stream.rb +1 -0
  15. data/lib/psych/handlers/recorder.rb +1 -0
  16. data/lib/psych/json/ruby_events.rb +1 -0
  17. data/lib/psych/json/stream.rb +1 -0
  18. data/lib/psych/json/tree_builder.rb +1 -0
  19. data/lib/psych/json/yaml_events.rb +1 -0
  20. data/lib/psych/nodes.rb +1 -0
  21. data/lib/psych/nodes/alias.rb +1 -0
  22. data/lib/psych/nodes/document.rb +1 -0
  23. data/lib/psych/nodes/mapping.rb +1 -0
  24. data/lib/psych/nodes/node.rb +1 -0
  25. data/lib/psych/nodes/scalar.rb +1 -0
  26. data/lib/psych/nodes/sequence.rb +1 -0
  27. data/lib/psych/nodes/stream.rb +1 -0
  28. data/lib/psych/omap.rb +1 -0
  29. data/lib/psych/parser.rb +1 -0
  30. data/lib/psych/scalar_scanner.rb +2 -1
  31. data/lib/psych/set.rb +1 -0
  32. data/lib/psych/stream.rb +1 -0
  33. data/lib/psych/streaming.rb +1 -0
  34. data/lib/psych/syntax_error.rb +1 -0
  35. data/lib/psych/tree_builder.rb +1 -0
  36. data/lib/psych/versions.rb +1 -0
  37. data/lib/psych/visitors.rb +1 -0
  38. data/lib/psych/visitors/depth_first.rb +1 -0
  39. data/lib/psych/visitors/emitter.rb +1 -0
  40. data/lib/psych/visitors/json_tree.rb +1 -0
  41. data/lib/psych/visitors/to_ruby.rb +1 -0
  42. data/lib/psych/visitors/visitor.rb +1 -0
  43. data/lib/psych/visitors/yaml_tree.rb +3 -2
  44. data/lib/psych/y.rb +1 -0
  45. data/lib/psych_jars.rb +1 -0
  46. data/test/psych/handlers/test_recorder.rb +1 -0
  47. data/test/psych/helper.rb +1 -0
  48. data/test/psych/json/test_stream.rb +1 -0
  49. data/test/psych/nodes/test_enumerable.rb +1 -0
  50. data/test/psych/test_alias_and_anchor.rb +1 -0
  51. data/test/psych/test_array.rb +1 -0
  52. data/test/psych/test_boolean.rb +1 -0
  53. data/test/psych/test_class.rb +1 -0
  54. data/test/psych/test_coder.rb +1 -0
  55. data/test/psych/test_date_time.rb +1 -0
  56. data/test/psych/test_deprecated.rb +1 -0
  57. data/test/psych/test_document.rb +1 -0
  58. data/test/psych/test_emitter.rb +19 -0
  59. data/test/psych/test_encoding.rb +1 -0
  60. data/test/psych/test_exception.rb +1 -0
  61. data/test/psych/test_hash.rb +1 -0
  62. data/test/psych/test_json_tree.rb +1 -0
  63. data/test/psych/test_merge_keys.rb +1 -0
  64. data/test/psych/test_nil.rb +1 -0
  65. data/test/psych/test_null.rb +1 -0
  66. data/test/psych/test_numeric.rb +1 -0
  67. data/test/psych/test_object.rb +1 -0
  68. data/test/psych/test_object_references.rb +1 -0
  69. data/test/psych/test_omap.rb +1 -0
  70. data/test/psych/test_parser.rb +1 -0
  71. data/test/psych/test_psych.rb +6 -0
  72. data/test/psych/test_safe_load.rb +1 -0
  73. data/test/psych/test_scalar.rb +1 -0
  74. data/test/psych/test_scalar_scanner.rb +5 -0
  75. data/test/psych/test_serialize_subclasses.rb +1 -0
  76. data/test/psych/test_set.rb +1 -0
  77. data/test/psych/test_stream.rb +1 -0
  78. data/test/psych/test_string.rb +5 -0
  79. data/test/psych/test_struct.rb +1 -0
  80. data/test/psych/test_symbol.rb +1 -0
  81. data/test/psych/test_tainted.rb +1 -0
  82. data/test/psych/test_to_yaml_properties.rb +1 -0
  83. data/test/psych/test_tree_builder.rb +1 -0
  84. data/test/psych/test_yaml.rb +1 -0
  85. data/test/psych/test_yamldbm.rb +1 -0
  86. data/test/psych/test_yamlstore.rb +1 -0
  87. data/test/psych/visitors/test_depth_first.rb +1 -0
  88. data/test/psych/visitors/test_emitter.rb +1 -0
  89. data/test/psych/visitors/test_to_ruby.rb +1 -0
  90. data/test/psych/visitors/test_yaml_tree.rb +7 -0
  91. metadata +27 -44
  92. data/.autotest +0 -18
  93. data/.gemtest +0 -0
  94. data/Manifest.txt +0 -114
  95. data/lib/psych.jar +0 -0
@@ -1,3 +1,4 @@
1
+ # frozen_string_literal: false
1
2
  module Psych
2
3
  module JSON
3
4
  module YAMLEvents # :nodoc:
@@ -1,3 +1,4 @@
1
+ # frozen_string_literal: false
1
2
  require 'psych/nodes/node'
2
3
  require 'psych/nodes/stream'
3
4
  require 'psych/nodes/document'
@@ -1,3 +1,4 @@
1
+ # frozen_string_literal: false
1
2
  module Psych
2
3
  module Nodes
3
4
  ###
@@ -1,3 +1,4 @@
1
+ # frozen_string_literal: false
1
2
  module Psych
2
3
  module Nodes
3
4
  ###
@@ -1,3 +1,4 @@
1
+ # frozen_string_literal: false
1
2
  module Psych
2
3
  module Nodes
3
4
  ###
@@ -1,3 +1,4 @@
1
+ # frozen_string_literal: false
1
2
  require 'stringio'
2
3
  require 'psych/class_loader'
3
4
  require 'psych/scalar_scanner'
@@ -1,3 +1,4 @@
1
+ # frozen_string_literal: false
1
2
  module Psych
2
3
  module Nodes
3
4
  ###
@@ -1,3 +1,4 @@
1
+ # frozen_string_literal: false
1
2
  module Psych
2
3
  module Nodes
3
4
  ###
@@ -1,3 +1,4 @@
1
+ # frozen_string_literal: false
1
2
  module Psych
2
3
  module Nodes
3
4
  ###
@@ -1,3 +1,4 @@
1
+ # frozen_string_literal: false
1
2
  module Psych
2
3
  class Omap < ::Hash
3
4
  end
@@ -1,3 +1,4 @@
1
+ # frozen_string_literal: false
1
2
  module Psych
2
3
  ###
3
4
  # YAML event parser class. This class parses a YAML document and calls
@@ -1,3 +1,4 @@
1
+ # frozen_string_literal: false
1
2
  require 'strscan'
2
3
 
3
4
  module Psych
@@ -99,7 +100,7 @@ module Psych
99
100
  @string_cache[string] = true
100
101
  string
101
102
  else
102
- Float(string.gsub(/[,_]|\.$/, ''))
103
+ Float(string.gsub(/[,_]|\.([Ee]|$)/, '\1'))
103
104
  end
104
105
  else
105
106
  int = parse_int string.gsub(/[,_]/, '')
@@ -1,3 +1,4 @@
1
+ # frozen_string_literal: false
1
2
  module Psych
2
3
  class Set < ::Hash
3
4
  end
@@ -1,3 +1,4 @@
1
+ # frozen_string_literal: false
1
2
  module Psych
2
3
  ###
3
4
  # Psych::Stream is a streaming YAML emitter. It will not buffer your YAML,
@@ -1,3 +1,4 @@
1
+ # frozen_string_literal: false
1
2
  module Psych
2
3
  module Streaming
3
4
  module ClassMethods
@@ -1,3 +1,4 @@
1
+ # frozen_string_literal: false
1
2
  require 'psych/exception'
2
3
 
3
4
  module Psych
@@ -1,3 +1,4 @@
1
+ # frozen_string_literal: false
1
2
  require 'psych/handler'
2
3
 
3
4
  module Psych
@@ -1,3 +1,4 @@
1
+ # frozen_string_literal: false
1
2
  module Psych
2
3
  DEFAULT_SNAKEYAML_VERSION = '1.14'.freeze
3
4
  end
@@ -1,3 +1,4 @@
1
+ # frozen_string_literal: false
1
2
  require 'psych/visitors/visitor'
2
3
  require 'psych/visitors/to_ruby'
3
4
  require 'psych/visitors/emitter'
@@ -1,3 +1,4 @@
1
+ # frozen_string_literal: false
1
2
  module Psych
2
3
  module Visitors
3
4
  class DepthFirst < Psych::Visitors::Visitor
@@ -1,3 +1,4 @@
1
+ # frozen_string_literal: false
1
2
  module Psych
2
3
  module Visitors
3
4
  class Emitter < Psych::Visitors::Visitor
@@ -1,3 +1,4 @@
1
+ # frozen_string_literal: false
1
2
  require 'psych/json/ruby_events'
2
3
 
3
4
  module Psych
@@ -1,3 +1,4 @@
1
+ # frozen_string_literal: false
1
2
  require 'psych/scalar_scanner'
2
3
  require 'psych/class_loader'
3
4
  require 'psych/exception'
@@ -1,3 +1,4 @@
1
+ # frozen_string_literal: false
1
2
  module Psych
2
3
  module Visitors
3
4
  class Visitor
@@ -1,3 +1,4 @@
1
+ # frozen_string_literal: false
1
2
  require 'psych/tree_builder'
2
3
  require 'psych/scalar_scanner'
3
4
  require 'psych/class_loader'
@@ -313,7 +314,7 @@ module Psych
313
314
  tag = nil
314
315
 
315
316
  if binary?(o)
316
- o = [o].pack('m').chomp
317
+ o = [o].pack('m0')
317
318
  tag = '!binary' # FIXME: change to below when syck is removed
318
319
  #tag = 'tag:yaml.org,2002:binary'
319
320
  style = Nodes::Scalar::LITERAL
@@ -330,7 +331,7 @@ module Psych
330
331
  style = Nodes::Scalar::FOLDED
331
332
  elsif o =~ /^[^[:word:]][^"]*$/
332
333
  style = Nodes::Scalar::DOUBLE_QUOTED
333
- elsif not String === @ss.tokenize(o)
334
+ elsif not String === @ss.tokenize(o) or /\A0[0-7]*[89]/ =~ o
334
335
  style = Nodes::Scalar::SINGLE_QUOTED
335
336
  end
336
337
 
@@ -1,3 +1,4 @@
1
+ # frozen_string_literal: false
1
2
  module Kernel
2
3
  ###
3
4
  # An alias for Psych.dump_stream meant to be used with IRB.
@@ -1,3 +1,4 @@
1
+ # frozen_string_literal: false
1
2
  require 'psych/versions'
2
3
  require 'psych.jar'
3
4
 
@@ -1,3 +1,4 @@
1
+ # frozen_string_literal: false
1
2
  require 'psych/helper'
2
3
  require 'psych/handlers/recorder'
3
4
 
@@ -1,3 +1,4 @@
1
+ # frozen_string_literal: false
1
2
  require 'minitest/autorun'
2
3
  require 'stringio'
3
4
  require 'tempfile'
@@ -1,3 +1,4 @@
1
+ # frozen_string_literal: false
1
2
  require 'psych/helper'
2
3
 
3
4
  module Psych
@@ -1,3 +1,4 @@
1
+ # frozen_string_literal: false
1
2
  require 'psych/helper'
2
3
 
3
4
  module Psych
@@ -1,3 +1,4 @@
1
+ # frozen_string_literal: false
1
2
  require_relative 'helper'
2
3
 
3
4
  class ObjectWithInstanceVariables
@@ -1,3 +1,4 @@
1
+ # frozen_string_literal: false
1
2
  require_relative 'helper'
2
3
 
3
4
  module Psych
@@ -1,3 +1,4 @@
1
+ # frozen_string_literal: false
1
2
  require_relative 'helper'
2
3
 
3
4
  module Psych
@@ -1,3 +1,4 @@
1
+ # frozen_string_literal: false
1
2
  require_relative 'helper'
2
3
 
3
4
  module Psych
@@ -1,3 +1,4 @@
1
+ # frozen_string_literal: false
1
2
  require_relative 'helper'
2
3
 
3
4
  module Psych
@@ -1,3 +1,4 @@
1
+ # frozen_string_literal: false
1
2
  require_relative 'helper'
2
3
  require 'date'
3
4
 
@@ -1,3 +1,4 @@
1
+ # frozen_string_literal: false
1
2
  require_relative 'helper'
2
3
 
3
4
  module Psych
@@ -1,3 +1,4 @@
1
+ # frozen_string_literal: false
1
2
  require_relative 'helper'
2
3
 
3
4
  module Psych
@@ -1,4 +1,5 @@
1
1
  # -*- coding: utf-8 -*-
2
+ # frozen_string_literal: false
2
3
 
3
4
  require_relative 'helper'
4
5
 
@@ -53,6 +54,7 @@ module Psych
53
54
  [[], 'foo', false],
54
55
  [[], ['foo'], false],
55
56
  [[], [nil,nil], false],
57
+ [[1,1], [[nil, "tag:TALOS"]], 0],
56
58
  ].each do |args|
57
59
  assert_raises(TypeError) do
58
60
  @emitter.start_document(*args)
@@ -89,5 +91,22 @@ module Psych
89
91
  @emitter.start_sequence(nil, nil, true, :foo)
90
92
  end
91
93
  end
94
+
95
+ def test_resizing_tags
96
+ @emitter.start_stream Psych::Nodes::Stream::UTF8
97
+
98
+ tags = []
99
+ version = [1,1]
100
+ obj = Object.new
101
+ obj.instance_variable_set(:@tags, tags)
102
+ def obj.to_str
103
+ (1..10).map{|x| @tags.push(["AAAA","BBBB"])}
104
+ return "x"
105
+ end
106
+
107
+ tags.push([obj, "tag:TALOS"])
108
+ @emitter.start_document(version, tags, 0)
109
+ assert(true)
110
+ end
92
111
  end
93
112
  end
@@ -1,4 +1,5 @@
1
1
  # -*- coding: utf-8 -*-
2
+ # frozen_string_literal: false
2
3
 
3
4
  require_relative 'helper'
4
5
 
@@ -1,3 +1,4 @@
1
+ # frozen_string_literal: false
1
2
  require_relative 'helper'
2
3
 
3
4
  module Psych
@@ -1,3 +1,4 @@
1
+ # frozen_string_literal: false
1
2
  require_relative 'helper'
2
3
 
3
4
  module Psych
@@ -1,3 +1,4 @@
1
+ # frozen_string_literal: false
1
2
  require_relative 'helper'
2
3
 
3
4
  module Psych
@@ -1,3 +1,4 @@
1
+ # frozen_string_literal: false
1
2
  require_relative 'helper'
2
3
 
3
4
  module Psych
@@ -1,3 +1,4 @@
1
+ # frozen_string_literal: false
1
2
  require_relative 'helper'
2
3
 
3
4
  module Psych
@@ -1,3 +1,4 @@
1
+ # frozen_string_literal: false
1
2
  require_relative 'helper'
2
3
 
3
4
  module Psych
@@ -1,3 +1,4 @@
1
+ # frozen_string_literal: false
1
2
  require_relative 'helper'
2
3
  require 'bigdecimal'
3
4
 
@@ -1,3 +1,4 @@
1
+ # frozen_string_literal: false
1
2
  require_relative 'helper'
2
3
 
3
4
  module Psych
@@ -1,3 +1,4 @@
1
+ # frozen_string_literal: false
1
2
  require_relative 'helper'
2
3
 
3
4
  module Psych
@@ -1,3 +1,4 @@
1
+ # frozen_string_literal: false
1
2
  require_relative 'helper'
2
3
 
3
4
  module Psych
@@ -1,4 +1,5 @@
1
1
  # coding: utf-8
2
+ # frozen_string_literal: false
2
3
 
3
4
  require_relative 'helper'
4
5
 
@@ -1,3 +1,4 @@
1
+ # frozen_string_literal: false
1
2
  require_relative 'helper'
2
3
 
3
4
  require 'stringio'
@@ -143,6 +144,11 @@ class TestPsych < Psych::TestCase
143
144
  }
144
145
  end
145
146
 
147
+ def test_load_file_with_fallback
148
+ t = Tempfile.create(['empty', 'yml'])
149
+ assert_equal Hash.new, Psych.load_file(t.path, Hash.new)
150
+ end
151
+
146
152
  def test_parse_file
147
153
  Tempfile.create(['yikes', 'yml']) {|t|
148
154
  t.binmode
@@ -1,3 +1,4 @@
1
+ # frozen_string_literal: false
1
2
  require 'psych/helper'
2
3
 
3
4
  module Psych
@@ -1,4 +1,5 @@
1
1
  # -*- coding: utf-8 -*-
2
+ # frozen_string_literal: false
2
3
 
3
4
  require_relative 'helper'
4
5
 
@@ -1,3 +1,4 @@
1
+ # frozen_string_literal: false
1
2
  require_relative 'helper'
2
3
  require 'date'
3
4
 
@@ -73,6 +74,10 @@ module Psych
73
74
  assert ss.tokenize('.nan').nan?
74
75
  end
75
76
 
77
+ def test_scan_float_with_exponent_but_no_fraction
78
+ assert_equal(0.0, ss.tokenize('0.E+0'))
79
+ end
80
+
76
81
  def test_scan_null
77
82
  assert_equal nil, ss.tokenize('null')
78
83
  assert_equal nil, ss.tokenize('~')
@@ -1,3 +1,4 @@
1
+ # frozen_string_literal: false
1
2
  require_relative 'helper'
2
3
 
3
4
  module Psych
@@ -1,3 +1,4 @@
1
+ # frozen_string_literal: false
1
2
  require_relative 'helper'
2
3
 
3
4
  module Psych
@@ -1,3 +1,4 @@
1
+ # frozen_string_literal: false
1
2
  require_relative 'helper'
2
3
 
3
4
  module Psych
@@ -1,4 +1,5 @@
1
1
  # encoding: UTF-8
2
+ # frozen_string_literal: false
2
3
  require_relative 'helper'
3
4
 
4
5
  module Psych
@@ -98,6 +99,10 @@ module Psych
98
99
  assert_cycle '+.'
99
100
  end
100
101
 
102
+ def test_float_with_no_fractional_before_exponent
103
+ assert_cycle '0.E+0'
104
+ end
105
+
101
106
  def test_string_subclass_with_anchor
102
107
  y = Psych.load <<-eoyml
103
108
  ---