nokogiri 1.10.9-java → 1.11.0.rc4-java

Sign up to get free protection for your applications and to get access to all the features.

Potentially problematic release.


This version of nokogiri might be problematic. Click here for more details.

Files changed (158) hide show
  1. checksums.yaml +4 -4
  2. data/LICENSE-DEPENDENCIES.md +1015 -947
  3. data/README.md +24 -22
  4. data/ext/java/nokogiri/HtmlDocument.java +34 -46
  5. data/ext/java/nokogiri/HtmlSaxParserContext.java +88 -58
  6. data/ext/java/nokogiri/HtmlSaxPushParser.java +1 -1
  7. data/ext/java/nokogiri/NokogiriService.java +1 -1
  8. data/ext/java/nokogiri/XmlAttr.java +13 -20
  9. data/ext/java/nokogiri/XmlAttributeDecl.java +11 -12
  10. data/ext/java/nokogiri/XmlCdata.java +3 -4
  11. data/ext/java/nokogiri/XmlComment.java +1 -1
  12. data/ext/java/nokogiri/XmlDocument.java +148 -175
  13. data/ext/java/nokogiri/XmlDocumentFragment.java +13 -31
  14. data/ext/java/nokogiri/XmlDtd.java +5 -8
  15. data/ext/java/nokogiri/XmlElement.java +1 -20
  16. data/ext/java/nokogiri/XmlElementDecl.java +23 -28
  17. data/ext/java/nokogiri/XmlEntityDecl.java +23 -27
  18. data/ext/java/nokogiri/XmlEntityReference.java +2 -2
  19. data/ext/java/nokogiri/XmlNamespace.java +72 -89
  20. data/ext/java/nokogiri/XmlNode.java +303 -406
  21. data/ext/java/nokogiri/XmlNodeSet.java +70 -76
  22. data/ext/java/nokogiri/XmlReader.java +12 -13
  23. data/ext/java/nokogiri/XmlRelaxng.java +10 -3
  24. data/ext/java/nokogiri/XmlSaxParserContext.java +15 -10
  25. data/ext/java/nokogiri/XmlSchema.java +87 -27
  26. data/ext/java/nokogiri/XmlSyntaxError.java +2 -6
  27. data/ext/java/nokogiri/XmlText.java +12 -9
  28. data/ext/java/nokogiri/XmlXpathContext.java +55 -25
  29. data/ext/java/nokogiri/XsltStylesheet.java +7 -15
  30. data/ext/java/nokogiri/internals/HtmlDomParserContext.java +52 -46
  31. data/ext/java/nokogiri/internals/NokogiriHandler.java +1 -1
  32. data/ext/java/nokogiri/internals/NokogiriHelpers.java +71 -135
  33. data/ext/java/nokogiri/internals/NokogiriNamespaceCache.java +90 -58
  34. data/ext/java/nokogiri/internals/NokogiriNamespaceContext.java +9 -2
  35. data/ext/java/nokogiri/internals/NokogiriXPathFunction.java +67 -10
  36. data/ext/java/nokogiri/internals/NokogiriXPathFunctionResolver.java +4 -2
  37. data/ext/java/nokogiri/internals/ParserContext.java +27 -73
  38. data/ext/java/nokogiri/internals/ReaderNode.java +2 -4
  39. data/ext/java/nokogiri/internals/XmlDomParserContext.java +18 -33
  40. data/ext/nokogiri/depend +476 -357
  41. data/ext/nokogiri/extconf.rb +485 -352
  42. data/ext/nokogiri/html_document.c +79 -78
  43. data/ext/nokogiri/html_sax_parser_context.c +2 -2
  44. data/ext/nokogiri/nokogiri.c +34 -40
  45. data/ext/nokogiri/xml_document.c +18 -4
  46. data/ext/nokogiri/xml_io.c +8 -6
  47. data/ext/nokogiri/xml_node.c +21 -1
  48. data/ext/nokogiri/xml_node_set.c +1 -1
  49. data/ext/nokogiri/xml_reader.c +6 -17
  50. data/ext/nokogiri/xml_relax_ng.c +29 -11
  51. data/ext/nokogiri/xml_sax_parser.c +2 -7
  52. data/ext/nokogiri/xml_sax_parser_context.c +2 -2
  53. data/ext/nokogiri/xml_schema.c +55 -13
  54. data/ext/nokogiri/xml_xpath_context.c +80 -4
  55. data/ext/nokogiri/xslt_stylesheet.c +1 -8
  56. data/lib/nokogiri.rb +4 -21
  57. data/lib/nokogiri/css.rb +1 -0
  58. data/lib/nokogiri/css/node.rb +1 -0
  59. data/lib/nokogiri/css/parser.rb +63 -62
  60. data/lib/nokogiri/css/parser.y +2 -2
  61. data/lib/nokogiri/css/parser_extras.rb +39 -36
  62. data/lib/nokogiri/css/syntax_error.rb +1 -0
  63. data/lib/nokogiri/css/tokenizer.rb +1 -0
  64. data/lib/nokogiri/css/xpath_visitor.rb +73 -43
  65. data/lib/nokogiri/decorators/slop.rb +1 -0
  66. data/lib/nokogiri/html.rb +1 -0
  67. data/lib/nokogiri/html/builder.rb +1 -0
  68. data/lib/nokogiri/html/document.rb +13 -26
  69. data/lib/nokogiri/html/document_fragment.rb +1 -0
  70. data/lib/nokogiri/html/element_description.rb +1 -0
  71. data/lib/nokogiri/html/element_description_defaults.rb +1 -0
  72. data/lib/nokogiri/html/entity_lookup.rb +1 -0
  73. data/lib/nokogiri/html/sax/parser.rb +1 -0
  74. data/lib/nokogiri/html/sax/parser_context.rb +1 -0
  75. data/lib/nokogiri/html/sax/push_parser.rb +1 -0
  76. data/lib/nokogiri/jruby/dependencies.rb +20 -0
  77. data/lib/nokogiri/nokogiri.jar +0 -0
  78. data/lib/nokogiri/syntax_error.rb +1 -0
  79. data/lib/nokogiri/version.rb +3 -109
  80. data/lib/nokogiri/version/constant.rb +5 -0
  81. data/lib/nokogiri/version/info.rb +182 -0
  82. data/lib/nokogiri/xml.rb +1 -0
  83. data/lib/nokogiri/xml/attr.rb +1 -0
  84. data/lib/nokogiri/xml/attribute_decl.rb +1 -0
  85. data/lib/nokogiri/xml/builder.rb +3 -2
  86. data/lib/nokogiri/xml/cdata.rb +1 -0
  87. data/lib/nokogiri/xml/character_data.rb +1 -0
  88. data/lib/nokogiri/xml/document.rb +20 -15
  89. data/lib/nokogiri/xml/document_fragment.rb +5 -6
  90. data/lib/nokogiri/xml/dtd.rb +1 -0
  91. data/lib/nokogiri/xml/element_content.rb +1 -0
  92. data/lib/nokogiri/xml/element_decl.rb +1 -0
  93. data/lib/nokogiri/xml/entity_decl.rb +1 -0
  94. data/lib/nokogiri/xml/entity_reference.rb +1 -0
  95. data/lib/nokogiri/xml/namespace.rb +1 -0
  96. data/lib/nokogiri/xml/node.rb +587 -249
  97. data/lib/nokogiri/xml/node/save_options.rb +1 -0
  98. data/lib/nokogiri/xml/node_set.rb +1 -0
  99. data/lib/nokogiri/xml/notation.rb +1 -0
  100. data/lib/nokogiri/xml/parse_options.rb +10 -3
  101. data/lib/nokogiri/xml/pp.rb +1 -0
  102. data/lib/nokogiri/xml/pp/character_data.rb +1 -0
  103. data/lib/nokogiri/xml/pp/node.rb +1 -0
  104. data/lib/nokogiri/xml/processing_instruction.rb +1 -0
  105. data/lib/nokogiri/xml/reader.rb +7 -3
  106. data/lib/nokogiri/xml/relax_ng.rb +7 -2
  107. data/lib/nokogiri/xml/sax.rb +1 -0
  108. data/lib/nokogiri/xml/sax/document.rb +1 -0
  109. data/lib/nokogiri/xml/sax/parser.rb +1 -0
  110. data/lib/nokogiri/xml/sax/parser_context.rb +1 -0
  111. data/lib/nokogiri/xml/sax/push_parser.rb +1 -0
  112. data/lib/nokogiri/xml/schema.rb +13 -4
  113. data/lib/nokogiri/xml/searchable.rb +25 -16
  114. data/lib/nokogiri/xml/syntax_error.rb +1 -0
  115. data/lib/nokogiri/xml/text.rb +1 -0
  116. data/lib/nokogiri/xml/xpath.rb +1 -0
  117. data/lib/nokogiri/xml/xpath/syntax_error.rb +1 -0
  118. data/lib/nokogiri/xml/xpath_context.rb +1 -0
  119. data/lib/nokogiri/xslt.rb +1 -0
  120. data/lib/nokogiri/xslt/stylesheet.rb +1 -0
  121. data/lib/xsd/xmlparser/nokogiri.rb +1 -0
  122. metadata +89 -96
  123. data/ext/java/nokogiri/internals/NokogiriEncodingReaderWrapper.java +0 -107
  124. data/ext/java/nokogiri/internals/UncloseableInputStream.java +0 -102
  125. data/ext/nokogiri/html_document.h +0 -10
  126. data/ext/nokogiri/html_element_description.h +0 -10
  127. data/ext/nokogiri/html_entity_lookup.h +0 -8
  128. data/ext/nokogiri/html_sax_parser_context.h +0 -11
  129. data/ext/nokogiri/html_sax_push_parser.h +0 -9
  130. data/ext/nokogiri/nokogiri.h +0 -121
  131. data/ext/nokogiri/xml_attr.h +0 -9
  132. data/ext/nokogiri/xml_attribute_decl.h +0 -9
  133. data/ext/nokogiri/xml_cdata.h +0 -9
  134. data/ext/nokogiri/xml_comment.h +0 -9
  135. data/ext/nokogiri/xml_document.h +0 -23
  136. data/ext/nokogiri/xml_document_fragment.h +0 -10
  137. data/ext/nokogiri/xml_dtd.h +0 -10
  138. data/ext/nokogiri/xml_element_content.h +0 -10
  139. data/ext/nokogiri/xml_element_decl.h +0 -9
  140. data/ext/nokogiri/xml_encoding_handler.h +0 -8
  141. data/ext/nokogiri/xml_entity_decl.h +0 -10
  142. data/ext/nokogiri/xml_entity_reference.h +0 -9
  143. data/ext/nokogiri/xml_io.h +0 -11
  144. data/ext/nokogiri/xml_libxml2_hacks.h +0 -12
  145. data/ext/nokogiri/xml_namespace.h +0 -14
  146. data/ext/nokogiri/xml_node.h +0 -13
  147. data/ext/nokogiri/xml_node_set.h +0 -12
  148. data/ext/nokogiri/xml_processing_instruction.h +0 -9
  149. data/ext/nokogiri/xml_reader.h +0 -10
  150. data/ext/nokogiri/xml_relax_ng.h +0 -9
  151. data/ext/nokogiri/xml_sax_parser.h +0 -39
  152. data/ext/nokogiri/xml_sax_parser_context.h +0 -10
  153. data/ext/nokogiri/xml_sax_push_parser.h +0 -9
  154. data/ext/nokogiri/xml_schema.h +0 -9
  155. data/ext/nokogiri/xml_syntax_error.h +0 -13
  156. data/ext/nokogiri/xml_text.h +0 -9
  157. data/ext/nokogiri/xml_xpath_context.h +0 -10
  158. data/ext/nokogiri/xslt_stylesheet.h +0 -14
@@ -1,3 +1,4 @@
1
+ # frozen_string_literal: true
1
2
  module Nokogiri
2
3
  module XML
3
4
  class Node
@@ -1,3 +1,4 @@
1
+ # frozen_string_literal: true
1
2
  module Nokogiri
2
3
  module XML
3
4
  ####
@@ -1,3 +1,4 @@
1
+ # frozen_string_literal: true
1
2
  module Nokogiri
2
3
  module XML
3
4
  class Notation < Struct.new(:name, :public_id, :system_id)
@@ -1,3 +1,4 @@
1
+ # frozen_string_literal: true
1
2
  module Nokogiri
2
3
  module XML
3
4
  ###
@@ -5,11 +6,11 @@ module Nokogiri
5
6
  #
6
7
  # == Building combinations of parse options
7
8
  # You can build your own combinations of these parse options by using any of the following methods:
8
- # *Note*: All examples attempt to set the +RECOVER+ & +NOENT+ options. All examples use Ruby 2 optional parameter syntax.
9
+ # *Note*: All examples attempt to set the +RECOVER+ & +NOENT+ options.
9
10
  # [Ruby's bitwise operators] You can use the Ruby bitwise operators to set various combinations.
10
- # Nokogiri.XML('<content>Chapter 1</content', options: Nokogiri::XML::ParseOptions.new((1 << 0) | (1 << 1)))
11
+ # Nokogiri.XML('<content>Chapter 1</content', nil, nil, Nokogiri::XML::ParseOptions.new((1 << 0) | (1 << 1)))
11
12
  # [Method chaining] Every option has an equivalent method in lowercase. You can chain these methods together to set various combinations.
12
- # Nokogiri.XML('<content>Chapter 1</content', options: Nokogiri::XML::ParseOptions.new.recover.noent)
13
+ # Nokogiri.XML('<content>Chapter 1</content', nil, nil, Nokogiri::XML::ParseOptions.new.recover.noent)
13
14
  # [Using Ruby Blocks] You can also setup parse combinations in the block passed to Nokogiri.XML or Nokogiri.HTML
14
15
  # Nokogiri.XML('<content>Chapter 1</content') {|config| config.recover.noent}
15
16
  #
@@ -72,6 +73,8 @@ module Nokogiri
72
73
  DEFAULT_XML = RECOVER | NONET
73
74
  # the default options used for parsing HTML documents
74
75
  DEFAULT_HTML = RECOVER | NOERROR | NOWARNING | NONET
76
+ # the default options used for parsing XML schemas
77
+ DEFAULT_SCHEMA = NONET
75
78
 
76
79
  attr_accessor :options
77
80
  def initialize options = STRICT
@@ -106,6 +109,10 @@ module Nokogiri
106
109
  @options & RECOVER == STRICT
107
110
  end
108
111
 
112
+ def ==(other)
113
+ other.to_i == to_i
114
+ end
115
+
109
116
  alias :to_i :options
110
117
 
111
118
  def inspect
@@ -1,2 +1,3 @@
1
+ # frozen_string_literal: true
1
2
  require 'nokogiri/xml/pp/node'
2
3
  require 'nokogiri/xml/pp/character_data'
@@ -1,3 +1,4 @@
1
+ # frozen_string_literal: true
1
2
  module Nokogiri
2
3
  module XML
3
4
  module PP
@@ -1,3 +1,4 @@
1
+ # frozen_string_literal: true
1
2
  module Nokogiri
2
3
  module XML
3
4
  module PP
@@ -1,3 +1,4 @@
1
+ # frozen_string_literal: true
1
2
  module Nokogiri
2
3
  module XML
3
4
  class ProcessingInstruction < Node
@@ -1,3 +1,4 @@
1
+ # frozen_string_literal: true
1
2
  module Nokogiri
2
3
  module XML
3
4
  ###
@@ -87,9 +88,12 @@ module Nokogiri
87
88
  ###
88
89
  # Get a list of attributes for the current node.
89
90
  def attributes
90
- Hash[attribute_nodes.map { |node|
91
- [node.name, node.to_s]
92
- }].merge(namespaces || {})
91
+ attrs_hash = attribute_nodes.each_with_object({}) do |node, hash|
92
+ hash[node.name] = node.to_s
93
+ end
94
+ ns = namespaces
95
+ attrs_hash.merge!(ns) if ns
96
+ attrs_hash
93
97
  end
94
98
 
95
99
  ###
@@ -1,11 +1,12 @@
1
+ # frozen_string_literal: true
1
2
  module Nokogiri
2
3
  module XML
3
4
  class << self
4
5
  ###
5
6
  # Create a new Nokogiri::XML::RelaxNG document from +string_or_io+.
6
7
  # See Nokogiri::XML::RelaxNG for an example.
7
- def RelaxNG string_or_io
8
- RelaxNG.new(string_or_io)
8
+ def RelaxNG(string_or_io, options = ParseOptions::DEFAULT_SCHEMA)
9
+ RelaxNG.new(string_or_io, options)
9
10
  end
10
11
  end
11
12
 
@@ -26,6 +27,10 @@ module Nokogiri
26
27
  # end
27
28
  #
28
29
  # The list of errors are Nokogiri::XML::SyntaxError objects.
30
+ #
31
+ # NOTE: RelaxNG input is always treated as TRUSTED documents, meaning that they will cause the
32
+ # underlying parsing libraries to access network resources. This is counter to Nokogiri's
33
+ # "untrusted by default" security policy, but is a limitation of the underlying libraries.
29
34
  class RelaxNG < Nokogiri::XML::Schema
30
35
  end
31
36
  end
@@ -1,3 +1,4 @@
1
+ # frozen_string_literal: true
1
2
  require 'nokogiri/xml/sax/document'
2
3
  require 'nokogiri/xml/sax/parser_context'
3
4
  require 'nokogiri/xml/sax/parser'
@@ -1,3 +1,4 @@
1
+ # frozen_string_literal: true
1
2
  module Nokogiri
2
3
  module XML
3
4
  ###
@@ -1,3 +1,4 @@
1
+ # frozen_string_literal: true
1
2
  module Nokogiri
2
3
  module XML
3
4
  module SAX
@@ -1,3 +1,4 @@
1
+ # frozen_string_literal: true
1
2
  module Nokogiri
2
3
  module XML
3
4
  module SAX
@@ -1,3 +1,4 @@
1
+ # frozen_string_literal: true
1
2
  module Nokogiri
2
3
  module XML
3
4
  module SAX
@@ -1,11 +1,12 @@
1
+ # frozen_string_literal: true
1
2
  module Nokogiri
2
3
  module XML
3
4
  class << self
4
5
  ###
5
6
  # Create a new Nokogiri::XML::Schema object using a +string_or_io+
6
7
  # object.
7
- def Schema string_or_io
8
- Schema.new(string_or_io)
8
+ def Schema(string_or_io, options = ParseOptions::DEFAULT_SCHEMA)
9
+ Schema.new(string_or_io, options)
9
10
  end
10
11
  end
11
12
 
@@ -26,15 +27,23 @@ module Nokogiri
26
27
  # end
27
28
  #
28
29
  # The list of errors are Nokogiri::XML::SyntaxError objects.
30
+ #
31
+ # NOTE: As of v1.11.0, Schema treats inputs as UNTRUSTED by default, and so external entities
32
+ # are not resolved from the network (`http://` or `ftp://`). Previously, parsing treated
33
+ # documents as "trusted" by default which was counter to Nokogiri's "untrusted by default"
34
+ # security policy. If a document is trusted, then the caller may turn off the NONET option via
35
+ # the ParseOptions to re-enable external entity resolution over a network connection.
29
36
  class Schema
30
37
  # Errors while parsing the schema file
31
38
  attr_accessor :errors
39
+ # The Nokogiri::XML::ParseOptions used to parse the schema
40
+ attr_accessor :parse_options
32
41
 
33
42
  ###
34
43
  # Create a new Nokogiri::XML::Schema object using a +string_or_io+
35
44
  # object.
36
- def self.new string_or_io
37
- from_document Nokogiri::XML(string_or_io)
45
+ def self.new string_or_io, options = ParseOptions::DEFAULT_SCHEMA
46
+ from_document(Nokogiri::XML(string_or_io), options)
38
47
  end
39
48
 
40
49
  ###
@@ -1,3 +1,4 @@
1
+ # frozen_string_literal: true
1
2
  module Nokogiri
2
3
  module XML
3
4
  #
@@ -11,7 +12,9 @@ module Nokogiri
11
12
  # Regular expression used by Searchable#search to determine if a query
12
13
  # string is CSS or XPath
13
14
  LOOKS_LIKE_XPATH = /^(\.\/|\/|\.\.|\.$)/
14
-
15
+
16
+ # @!group Searching via XPath or CSS Queries
17
+
15
18
  ###
16
19
  # call-seq: search *paths, [namespace-bindings, xpath-variable-bindings, custom-handler-class]
17
20
  #
@@ -45,7 +48,7 @@ module Nokogiri
45
48
  # )
46
49
  #
47
50
  # See Searchable#xpath and Searchable#css for further usage help.
48
- def search *args
51
+ def search(*args)
49
52
  paths, handler, ns, binds = extract_params(args)
50
53
 
51
54
  xpaths = paths.map(&:to_s).map do |path|
@@ -54,6 +57,7 @@ module Nokogiri
54
57
 
55
58
  xpath(*(xpaths + [ns, handler, binds].compact))
56
59
  end
60
+
57
61
  alias :/ :search
58
62
 
59
63
  ###
@@ -63,9 +67,10 @@ module Nokogiri
63
67
  # result. +paths+ must be one or more XPath or CSS queries.
64
68
  #
65
69
  # See Searchable#search for more information.
66
- def at *args
70
+ def at(*args)
67
71
  search(*args).first
68
72
  end
73
+
69
74
  alias :% :at
70
75
 
71
76
  ###
@@ -101,7 +106,7 @@ module Nokogiri
101
106
  # found in an XML document, where tags names are case-sensitive
102
107
  # (e.g., "H1" is distinct from "h1").
103
108
  #
104
- def css *args
109
+ def css(*args)
105
110
  rules, handler, ns, _ = extract_params(args)
106
111
 
107
112
  css_internal self, rules, handler, ns
@@ -114,7 +119,7 @@ module Nokogiri
114
119
  # match. +rules+ must be one or more CSS selectors.
115
120
  #
116
121
  # See Searchable#css for more information.
117
- def at_css *args
122
+ def at_css(*args)
118
123
  css(*args).first
119
124
  end
120
125
 
@@ -148,7 +153,7 @@ module Nokogiri
148
153
  # end
149
154
  # }.new)
150
155
  #
151
- def xpath *args
156
+ def xpath(*args)
152
157
  paths, handler, ns, binds = extract_params(args)
153
158
 
154
159
  xpath_internal self, paths, handler, ns, binds
@@ -161,17 +166,19 @@ module Nokogiri
161
166
  # match. +paths+ must be one or more XPath queries.
162
167
  #
163
168
  # See Searchable#xpath for more information.
164
- def at_xpath *args
169
+ def at_xpath(*args)
165
170
  xpath(*args).first
166
171
  end
167
172
 
173
+ # @!endgroup
174
+
168
175
  private
169
176
 
170
- def css_internal node, rules, handler, ns
177
+ def css_internal(node, rules, handler, ns)
171
178
  xpath_internal node, css_rules_to_xpath(rules, ns), handler, ns, nil
172
179
  end
173
180
 
174
- def xpath_internal node, paths, handler, ns, binds
181
+ def xpath_internal(node, paths, handler, ns, binds)
175
182
  document = node.document
176
183
  return NodeSet.new(document) unless document
177
184
 
@@ -186,12 +193,12 @@ module Nokogiri
186
193
  end
187
194
  end
188
195
 
189
- def xpath_impl node, path, handler, ns, binds
196
+ def xpath_impl(node, path, handler, ns, binds)
190
197
  ctx = XPathContext.new(node)
191
198
  ctx.register_namespaces(ns)
192
- path = path.gsub(/xmlns:/, ' :') unless Nokogiri.uses_libxml?
199
+ path = path.gsub(/xmlns:/, " :") unless Nokogiri.uses_libxml?
193
200
 
194
- binds.each do |key,value|
201
+ binds.each do |key, value|
195
202
  ctx.register_variable key.to_s, value
196
203
  end if binds
197
204
 
@@ -202,13 +209,15 @@ module Nokogiri
202
209
  rules.map { |rule| xpath_query_from_css_rule(rule, ns) }
203
210
  end
204
211
 
205
- def xpath_query_from_css_rule rule, ns
212
+ def xpath_query_from_css_rule(rule, ns)
213
+ visitor = Nokogiri::CSS::XPathVisitorOptimallyUseBuiltins.new
206
214
  self.class::IMPLIED_XPATH_CONTEXTS.map do |implied_xpath_context|
207
- CSS.xpath_for(rule.to_s, :prefix => implied_xpath_context, :ns => ns)
208
- end.join(' | ')
215
+ CSS.xpath_for(rule.to_s, {:prefix => implied_xpath_context, :ns => ns,
216
+ :visitor => visitor})
217
+ end.join(" | ")
209
218
  end
210
219
 
211
- def extract_params params # :nodoc:
220
+ def extract_params(params) # :nodoc:
212
221
  handler = params.find do |param|
213
222
  ![Hash, String, Symbol].include?(param.class)
214
223
  end
@@ -1,3 +1,4 @@
1
+ # frozen_string_literal: true
1
2
  module Nokogiri
2
3
  module XML
3
4
  ###
@@ -1,3 +1,4 @@
1
+ # frozen_string_literal: true
1
2
  module Nokogiri
2
3
  module XML
3
4
  class Text < Nokogiri::XML::CharacterData
@@ -1,3 +1,4 @@
1
+ # frozen_string_literal: true
1
2
  require 'nokogiri/xml/xpath/syntax_error'
2
3
 
3
4
  module Nokogiri
@@ -1,3 +1,4 @@
1
+ # frozen_string_literal: true
1
2
  module Nokogiri
2
3
  module XML
3
4
  class XPath
@@ -1,3 +1,4 @@
1
+ # frozen_string_literal: true
1
2
  module Nokogiri
2
3
  module XML
3
4
  class XPathContext
@@ -1,3 +1,4 @@
1
+ # frozen_string_literal: true
1
2
  require 'nokogiri/xslt/stylesheet'
2
3
 
3
4
  module Nokogiri
@@ -1,3 +1,4 @@
1
+ # frozen_string_literal: true
1
2
  module Nokogiri
2
3
  module XSLT
3
4
  ###
@@ -1,3 +1,4 @@
1
+ # frozen_string_literal: true
1
2
  require 'nokogiri'
2
3
 
3
4
  module XSD # :nodoc:
metadata CHANGED
@@ -1,35 +1,69 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: nokogiri
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.10.9
4
+ version: 1.11.0.rc4
5
5
  platform: java
6
6
  authors:
7
- - Aaron Patterson
8
7
  - Mike Dalessio
8
+ - Aaron Patterson
9
+ - John Shahid
9
10
  - Yoko Harada
10
- - Tim Elliott
11
11
  - Akinori MUSHA
12
- - John Shahid
13
12
  - Lars Kanis
13
+ - Tim Elliott
14
14
  autorequire:
15
15
  bindir: bin
16
16
  cert_chain: []
17
- date: 2020-03-01 00:00:00.000000000 Z
17
+ date: 2020-12-29 00:00:00.000000000 Z
18
18
  dependencies:
19
19
  - !ruby/object:Gem::Dependency
20
20
  requirement: !ruby/object:Gem::Requirement
21
21
  requirements:
22
22
  - - "~>"
23
23
  - !ruby/object:Gem::Version
24
- version: '0.24'
24
+ version: '1.4'
25
+ name: racc
26
+ type: :runtime
27
+ prerelease: false
28
+ version_requirements: !ruby/object:Gem::Requirement
29
+ requirements:
30
+ - - "~>"
31
+ - !ruby/object:Gem::Version
32
+ version: '1.4'
33
+ - !ruby/object:Gem::Dependency
34
+ requirement: !ruby/object:Gem::Requirement
35
+ requirements:
36
+ - - "~>"
37
+ - !ruby/object:Gem::Version
38
+ version: '0.41'
25
39
  name: concourse
40
+ type: :development
26
41
  prerelease: false
42
+ version_requirements: !ruby/object:Gem::Requirement
43
+ requirements:
44
+ - - "~>"
45
+ - !ruby/object:Gem::Version
46
+ version: '0.41'
47
+ - !ruby/object:Gem::Dependency
48
+ requirement: !ruby/object:Gem::Requirement
49
+ requirements:
50
+ - - "~>"
51
+ - !ruby/object:Gem::Version
52
+ version: '3.22'
53
+ - - ">="
54
+ - !ruby/object:Gem::Version
55
+ version: 3.22.1
56
+ name: hoe
27
57
  type: :development
58
+ prerelease: false
28
59
  version_requirements: !ruby/object:Gem::Requirement
29
60
  requirements:
30
61
  - - "~>"
31
62
  - !ruby/object:Gem::Version
32
- version: '0.24'
63
+ version: '3.22'
64
+ - - ">="
65
+ - !ruby/object:Gem::Version
66
+ version: 3.22.1
33
67
  - !ruby/object:Gem::Dependency
34
68
  requirement: !ruby/object:Gem::Requirement
35
69
  requirements:
@@ -37,8 +71,8 @@ dependencies:
37
71
  - !ruby/object:Gem::Version
38
72
  version: '1.2'
39
73
  name: hoe-bundler
40
- prerelease: false
41
74
  type: :development
75
+ prerelease: false
42
76
  version_requirements: !ruby/object:Gem::Requirement
43
77
  requirements:
44
78
  - - "~>"
@@ -51,8 +85,8 @@ dependencies:
51
85
  - !ruby/object:Gem::Version
52
86
  version: '2.0'
53
87
  name: hoe-debugging
54
- prerelease: false
55
88
  type: :development
89
+ prerelease: false
56
90
  version_requirements: !ruby/object:Gem::Requirement
57
91
  requirements:
58
92
  - - "~>"
@@ -65,8 +99,8 @@ dependencies:
65
99
  - !ruby/object:Gem::Version
66
100
  version: '1.0'
67
101
  name: hoe-gemspec
68
- prerelease: false
69
102
  type: :development
103
+ prerelease: false
70
104
  version_requirements: !ruby/object:Gem::Requirement
71
105
  requirements:
72
106
  - - "~>"
@@ -79,13 +113,27 @@ dependencies:
79
113
  - !ruby/object:Gem::Version
80
114
  version: '1.6'
81
115
  name: hoe-git
82
- prerelease: false
83
116
  type: :development
117
+ prerelease: false
84
118
  version_requirements: !ruby/object:Gem::Requirement
85
119
  requirements:
86
120
  - - "~>"
87
121
  - !ruby/object:Gem::Version
88
122
  version: '1.6'
123
+ - !ruby/object:Gem::Dependency
124
+ requirement: !ruby/object:Gem::Requirement
125
+ requirements:
126
+ - - "~>"
127
+ - !ruby/object:Gem::Version
128
+ version: '1.1'
129
+ name: hoe-markdown
130
+ type: :development
131
+ prerelease: false
132
+ version_requirements: !ruby/object:Gem::Requirement
133
+ requirements:
134
+ - - "~>"
135
+ - !ruby/object:Gem::Version
136
+ version: '1.1'
89
137
  - !ruby/object:Gem::Dependency
90
138
  requirement: !ruby/object:Gem::Requirement
91
139
  requirements:
@@ -93,8 +141,8 @@ dependencies:
93
141
  - !ruby/object:Gem::Version
94
142
  version: '5.8'
95
143
  name: minitest
96
- prerelease: false
97
144
  type: :development
145
+ prerelease: false
98
146
  version_requirements: !ruby/object:Gem::Requirement
99
147
  requirements:
100
148
  - - "~>"
@@ -105,57 +153,57 @@ dependencies:
105
153
  requirements:
106
154
  - - "~>"
107
155
  - !ruby/object:Gem::Version
108
- version: 1.4.14
109
- name: racc
110
- prerelease: false
156
+ version: '1.4'
157
+ name: minitest-reporters
111
158
  type: :development
159
+ prerelease: false
112
160
  version_requirements: !ruby/object:Gem::Requirement
113
161
  requirements:
114
162
  - - "~>"
115
163
  - !ruby/object:Gem::Version
116
- version: 1.4.14
164
+ version: '1.4'
117
165
  - !ruby/object:Gem::Dependency
118
166
  requirement: !ruby/object:Gem::Requirement
119
167
  requirements:
120
168
  - - "~>"
121
169
  - !ruby/object:Gem::Version
122
- version: '12.0'
170
+ version: '13.0'
123
171
  name: rake
124
- prerelease: false
125
172
  type: :development
173
+ prerelease: false
126
174
  version_requirements: !ruby/object:Gem::Requirement
127
175
  requirements:
128
176
  - - "~>"
129
177
  - !ruby/object:Gem::Version
130
- version: '12.0'
178
+ version: '13.0'
131
179
  - !ruby/object:Gem::Dependency
132
180
  requirement: !ruby/object:Gem::Requirement
133
181
  requirements:
134
182
  - - "~>"
135
183
  - !ruby/object:Gem::Version
136
- version: 1.1.0
184
+ version: '1.1'
137
185
  name: rake-compiler
138
- prerelease: false
139
186
  type: :development
187
+ prerelease: false
140
188
  version_requirements: !ruby/object:Gem::Requirement
141
189
  requirements:
142
190
  - - "~>"
143
191
  - !ruby/object:Gem::Version
144
- version: 1.1.0
192
+ version: '1.1'
145
193
  - !ruby/object:Gem::Dependency
146
194
  requirement: !ruby/object:Gem::Requirement
147
195
  requirements:
148
196
  - - "~>"
149
197
  - !ruby/object:Gem::Version
150
- version: 0.7.0
198
+ version: '1.1'
151
199
  name: rake-compiler-dock
152
- prerelease: false
153
200
  type: :development
201
+ prerelease: false
154
202
  version_requirements: !ruby/object:Gem::Requirement
155
203
  requirements:
156
204
  - - "~>"
157
205
  - !ruby/object:Gem::Version
158
- version: 0.7.0
206
+ version: '1.1'
159
207
  - !ruby/object:Gem::Dependency
160
208
  requirement: !ruby/object:Gem::Requirement
161
209
  requirements:
@@ -163,8 +211,8 @@ dependencies:
163
211
  - !ruby/object:Gem::Version
164
212
  version: 1.0.5
165
213
  name: rexical
166
- prerelease: false
167
214
  type: :development
215
+ prerelease: false
168
216
  version_requirements: !ruby/object:Gem::Requirement
169
217
  requirements:
170
218
  - - "~>"
@@ -175,29 +223,29 @@ dependencies:
175
223
  requirements:
176
224
  - - "~>"
177
225
  - !ruby/object:Gem::Version
178
- version: '0.73'
226
+ version: '0.88'
179
227
  name: rubocop
180
- prerelease: false
181
228
  type: :development
229
+ prerelease: false
182
230
  version_requirements: !ruby/object:Gem::Requirement
183
231
  requirements:
184
232
  - - "~>"
185
233
  - !ruby/object:Gem::Version
186
- version: '0.73'
234
+ version: '0.88'
187
235
  - !ruby/object:Gem::Dependency
188
236
  requirement: !ruby/object:Gem::Requirement
189
237
  requirements:
190
238
  - - "~>"
191
239
  - !ruby/object:Gem::Version
192
- version: '0.16'
240
+ version: 0.17.0
193
241
  name: simplecov
194
- prerelease: false
195
242
  type: :development
243
+ prerelease: false
196
244
  version_requirements: !ruby/object:Gem::Requirement
197
245
  requirements:
198
246
  - - "~>"
199
247
  - !ruby/object:Gem::Version
200
- version: '0.16'
248
+ version: 0.17.0
201
249
  - !ruby/object:Gem::Dependency
202
250
  requirement: !ruby/object:Gem::Requirement
203
251
  requirements:
@@ -208,8 +256,8 @@ dependencies:
208
256
  - !ruby/object:Gem::Version
209
257
  version: '7'
210
258
  name: rdoc
211
- prerelease: false
212
259
  type: :development
260
+ prerelease: false
213
261
  version_requirements: !ruby/object:Gem::Requirement
214
262
  requirements:
215
263
  - - ">="
@@ -218,32 +266,11 @@ dependencies:
218
266
  - - "<"
219
267
  - !ruby/object:Gem::Version
220
268
  version: '7'
221
- - !ruby/object:Gem::Dependency
222
- requirement: !ruby/object:Gem::Requirement
223
- requirements:
224
- - - "~>"
225
- - !ruby/object:Gem::Version
226
- version: '3.22'
227
- name: hoe
228
- prerelease: false
229
- type: :development
230
- version_requirements: !ruby/object:Gem::Requirement
231
- requirements:
232
- - - "~>"
233
- - !ruby/object:Gem::Version
234
- version: '3.22'
235
269
  description: |-
236
270
  Nokogiri (鋸) is an HTML, XML, SAX, and Reader parser. Among
237
271
  Nokogiri's many features is the ability to search documents via XPath
238
272
  or CSS3 selectors.
239
- email:
240
- - aaronp@rubyforge.org
241
- - mike.dalessio@gmail.com
242
- - yokolet@gmail.com
243
- - tle@holymonkey.com
244
- - knu@idaemons.org
245
- - jvshahid@gmail.com
246
- - lars@greiz-reinsdorf.de
273
+ email: nokogiri-talk@googlegroups.com
247
274
  executables:
248
275
  - nokogiri
249
276
  extensions: []
@@ -328,7 +355,6 @@ files:
328
355
  - ext/java/nokogiri/internals/IgnoreSchemaErrorsErrorHandler.java
329
356
  - ext/java/nokogiri/internals/NokogiriBlockingQueueInputStream.java
330
357
  - ext/java/nokogiri/internals/NokogiriDomParser.java
331
- - ext/java/nokogiri/internals/NokogiriEncodingReaderWrapper.java
332
358
  - ext/java/nokogiri/internals/NokogiriEntityResolver.java
333
359
  - ext/java/nokogiri/internals/NokogiriErrorHandler.java
334
360
  - ext/java/nokogiri/internals/NokogiriHandler.java
@@ -346,7 +372,6 @@ files:
346
372
  - ext/java/nokogiri/internals/ReaderNode.java
347
373
  - ext/java/nokogiri/internals/SaveContextVisitor.java
348
374
  - ext/java/nokogiri/internals/SchemaErrorHandler.java
349
- - ext/java/nokogiri/internals/UncloseableInputStream.java
350
375
  - ext/java/nokogiri/internals/XalanDTMManagerPatch.java
351
376
  - ext/java/nokogiri/internals/XmlDeclHandler.java
352
377
  - ext/java/nokogiri/internals/XmlDomParserContext.java
@@ -383,73 +408,39 @@ files:
383
408
  - ext/nokogiri/depend
384
409
  - ext/nokogiri/extconf.rb
385
410
  - ext/nokogiri/html_document.c
386
- - ext/nokogiri/html_document.h
387
411
  - ext/nokogiri/html_element_description.c
388
- - ext/nokogiri/html_element_description.h
389
412
  - ext/nokogiri/html_entity_lookup.c
390
- - ext/nokogiri/html_entity_lookup.h
391
413
  - ext/nokogiri/html_sax_parser_context.c
392
- - ext/nokogiri/html_sax_parser_context.h
393
414
  - ext/nokogiri/html_sax_push_parser.c
394
- - ext/nokogiri/html_sax_push_parser.h
395
415
  - ext/nokogiri/nokogiri.c
396
- - ext/nokogiri/nokogiri.h
397
416
  - ext/nokogiri/xml_attr.c
398
- - ext/nokogiri/xml_attr.h
399
417
  - ext/nokogiri/xml_attribute_decl.c
400
- - ext/nokogiri/xml_attribute_decl.h
401
418
  - ext/nokogiri/xml_cdata.c
402
- - ext/nokogiri/xml_cdata.h
403
419
  - ext/nokogiri/xml_comment.c
404
- - ext/nokogiri/xml_comment.h
405
420
  - ext/nokogiri/xml_document.c
406
- - ext/nokogiri/xml_document.h
407
421
  - ext/nokogiri/xml_document_fragment.c
408
- - ext/nokogiri/xml_document_fragment.h
409
422
  - ext/nokogiri/xml_dtd.c
410
- - ext/nokogiri/xml_dtd.h
411
423
  - ext/nokogiri/xml_element_content.c
412
- - ext/nokogiri/xml_element_content.h
413
424
  - ext/nokogiri/xml_element_decl.c
414
- - ext/nokogiri/xml_element_decl.h
415
425
  - ext/nokogiri/xml_encoding_handler.c
416
- - ext/nokogiri/xml_encoding_handler.h
417
426
  - ext/nokogiri/xml_entity_decl.c
418
- - ext/nokogiri/xml_entity_decl.h
419
427
  - ext/nokogiri/xml_entity_reference.c
420
- - ext/nokogiri/xml_entity_reference.h
421
428
  - ext/nokogiri/xml_io.c
422
- - ext/nokogiri/xml_io.h
423
429
  - ext/nokogiri/xml_libxml2_hacks.c
424
- - ext/nokogiri/xml_libxml2_hacks.h
425
430
  - ext/nokogiri/xml_namespace.c
426
- - ext/nokogiri/xml_namespace.h
427
431
  - ext/nokogiri/xml_node.c
428
- - ext/nokogiri/xml_node.h
429
432
  - ext/nokogiri/xml_node_set.c
430
- - ext/nokogiri/xml_node_set.h
431
433
  - ext/nokogiri/xml_processing_instruction.c
432
- - ext/nokogiri/xml_processing_instruction.h
433
434
  - ext/nokogiri/xml_reader.c
434
- - ext/nokogiri/xml_reader.h
435
435
  - ext/nokogiri/xml_relax_ng.c
436
- - ext/nokogiri/xml_relax_ng.h
437
436
  - ext/nokogiri/xml_sax_parser.c
438
- - ext/nokogiri/xml_sax_parser.h
439
437
  - ext/nokogiri/xml_sax_parser_context.c
440
- - ext/nokogiri/xml_sax_parser_context.h
441
438
  - ext/nokogiri/xml_sax_push_parser.c
442
- - ext/nokogiri/xml_sax_push_parser.h
443
439
  - ext/nokogiri/xml_schema.c
444
- - ext/nokogiri/xml_schema.h
445
440
  - ext/nokogiri/xml_syntax_error.c
446
- - ext/nokogiri/xml_syntax_error.h
447
441
  - ext/nokogiri/xml_text.c
448
- - ext/nokogiri/xml_text.h
449
442
  - ext/nokogiri/xml_xpath_context.c
450
- - ext/nokogiri/xml_xpath_context.h
451
443
  - ext/nokogiri/xslt_stylesheet.c
452
- - ext/nokogiri/xslt_stylesheet.h
453
444
  - lib/isorelax.jar
454
445
  - lib/jing.jar
455
446
  - lib/nekodtd.jar
@@ -475,9 +466,12 @@ files:
475
466
  - lib/nokogiri/html/sax/parser.rb
476
467
  - lib/nokogiri/html/sax/parser_context.rb
477
468
  - lib/nokogiri/html/sax/push_parser.rb
469
+ - lib/nokogiri/jruby/dependencies.rb
478
470
  - lib/nokogiri/nokogiri.jar
479
471
  - lib/nokogiri/syntax_error.rb
480
472
  - lib/nokogiri/version.rb
473
+ - lib/nokogiri/version/constant.rb
474
+ - lib/nokogiri/version/info.rb
481
475
  - lib/nokogiri/xml.rb
482
476
  - lib/nokogiri/xml/attr.rb
483
477
  - lib/nokogiri/xml/attribute_decl.rb
@@ -541,15 +535,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
541
535
  requirements:
542
536
  - - ">="
543
537
  - !ruby/object:Gem::Version
544
- version: 2.3.0
538
+ version: 2.5.0
545
539
  required_rubygems_version: !ruby/object:Gem::Requirement
546
540
  requirements:
547
- - - ">="
541
+ - - ">"
548
542
  - !ruby/object:Gem::Version
549
- version: '0'
543
+ version: 1.3.1
550
544
  requirements: []
551
- rubyforge_project:
552
- rubygems_version: 2.7.6
545
+ rubygems_version: 3.0.6
553
546
  signing_key:
554
547
  specification_version: 4
555
548
  summary: Nokogiri (鋸) is an HTML, XML, SAX, and Reader parser