nokogiri 1.11.4 → 1.12.5

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 (111) hide show
  1. checksums.yaml +4 -4
  2. data/LICENSE-DEPENDENCIES.md +243 -22
  3. data/LICENSE.md +1 -1
  4. data/README.md +6 -5
  5. data/ext/nokogiri/depend +35 -34
  6. data/ext/nokogiri/extconf.rb +185 -103
  7. data/ext/nokogiri/gumbo.c +584 -0
  8. data/ext/nokogiri/{html_document.c → html4_document.c} +8 -8
  9. data/ext/nokogiri/{html_element_description.c → html4_element_description.c} +21 -19
  10. data/ext/nokogiri/{html_entity_lookup.c → html4_entity_lookup.c} +7 -7
  11. data/ext/nokogiri/{html_sax_parser_context.c → html4_sax_parser_context.c} +6 -5
  12. data/ext/nokogiri/{html_sax_push_parser.c → html4_sax_push_parser.c} +4 -4
  13. data/ext/nokogiri/libxml2_backwards_compat.c +30 -30
  14. data/ext/nokogiri/nokogiri.c +70 -38
  15. data/ext/nokogiri/nokogiri.h +19 -9
  16. data/ext/nokogiri/xml_document.c +14 -14
  17. data/ext/nokogiri/xml_element_content.c +2 -0
  18. data/ext/nokogiri/xml_encoding_handler.c +11 -6
  19. data/ext/nokogiri/xml_namespace.c +4 -2
  20. data/ext/nokogiri/xml_node.c +123 -108
  21. data/ext/nokogiri/xml_node_set.c +20 -20
  22. data/ext/nokogiri/xml_reader.c +2 -0
  23. data/ext/nokogiri/xml_sax_parser.c +6 -6
  24. data/ext/nokogiri/xml_sax_parser_context.c +2 -0
  25. data/ext/nokogiri/xml_schema.c +2 -0
  26. data/ext/nokogiri/xml_xpath_context.c +67 -65
  27. data/ext/nokogiri/xslt_stylesheet.c +2 -1
  28. data/gumbo-parser/CHANGES.md +63 -0
  29. data/gumbo-parser/Makefile +101 -0
  30. data/gumbo-parser/THANKS +27 -0
  31. data/gumbo-parser/src/Makefile +34 -0
  32. data/gumbo-parser/src/README.md +41 -0
  33. data/gumbo-parser/src/ascii.c +75 -0
  34. data/gumbo-parser/src/ascii.h +115 -0
  35. data/gumbo-parser/src/attribute.c +42 -0
  36. data/gumbo-parser/src/attribute.h +17 -0
  37. data/gumbo-parser/src/char_ref.c +22225 -0
  38. data/gumbo-parser/src/char_ref.h +29 -0
  39. data/gumbo-parser/src/char_ref.rl +2154 -0
  40. data/gumbo-parser/src/error.c +626 -0
  41. data/gumbo-parser/src/error.h +148 -0
  42. data/gumbo-parser/src/foreign_attrs.c +104 -0
  43. data/gumbo-parser/src/foreign_attrs.gperf +27 -0
  44. data/gumbo-parser/src/gumbo.h +943 -0
  45. data/gumbo-parser/src/insertion_mode.h +33 -0
  46. data/gumbo-parser/src/macros.h +91 -0
  47. data/gumbo-parser/src/parser.c +4886 -0
  48. data/gumbo-parser/src/parser.h +41 -0
  49. data/gumbo-parser/src/replacement.h +33 -0
  50. data/gumbo-parser/src/string_buffer.c +103 -0
  51. data/gumbo-parser/src/string_buffer.h +68 -0
  52. data/gumbo-parser/src/string_piece.c +48 -0
  53. data/gumbo-parser/src/svg_attrs.c +174 -0
  54. data/gumbo-parser/src/svg_attrs.gperf +77 -0
  55. data/gumbo-parser/src/svg_tags.c +137 -0
  56. data/gumbo-parser/src/svg_tags.gperf +55 -0
  57. data/gumbo-parser/src/tag.c +222 -0
  58. data/gumbo-parser/src/tag_lookup.c +382 -0
  59. data/gumbo-parser/src/tag_lookup.gperf +169 -0
  60. data/gumbo-parser/src/tag_lookup.h +13 -0
  61. data/gumbo-parser/src/token_buffer.c +79 -0
  62. data/gumbo-parser/src/token_buffer.h +71 -0
  63. data/gumbo-parser/src/token_type.h +17 -0
  64. data/gumbo-parser/src/tokenizer.c +3463 -0
  65. data/gumbo-parser/src/tokenizer.h +112 -0
  66. data/gumbo-parser/src/tokenizer_states.h +339 -0
  67. data/gumbo-parser/src/utf8.c +245 -0
  68. data/gumbo-parser/src/utf8.h +164 -0
  69. data/gumbo-parser/src/util.c +68 -0
  70. data/gumbo-parser/src/util.h +30 -0
  71. data/gumbo-parser/src/vector.c +111 -0
  72. data/gumbo-parser/src/vector.h +45 -0
  73. data/lib/nokogiri/css/parser.rb +1 -1
  74. data/lib/nokogiri/css/parser.y +1 -1
  75. data/lib/nokogiri/css/syntax_error.rb +1 -1
  76. data/lib/nokogiri/css.rb +14 -14
  77. data/lib/nokogiri/extension.rb +7 -2
  78. data/lib/nokogiri/gumbo.rb +14 -0
  79. data/lib/nokogiri/html.rb +31 -27
  80. data/lib/nokogiri/{html → html4}/builder.rb +2 -2
  81. data/lib/nokogiri/{html → html4}/document.rb +4 -4
  82. data/lib/nokogiri/{html → html4}/document_fragment.rb +3 -3
  83. data/lib/nokogiri/{html → html4}/element_description.rb +1 -1
  84. data/lib/nokogiri/{html → html4}/element_description_defaults.rb +1 -1
  85. data/lib/nokogiri/{html → html4}/entity_lookup.rb +1 -1
  86. data/lib/nokogiri/{html → html4}/sax/parser.rb +11 -14
  87. data/lib/nokogiri/html4/sax/parser_context.rb +19 -0
  88. data/lib/nokogiri/{html → html4}/sax/push_parser.rb +5 -5
  89. data/lib/nokogiri/html4.rb +40 -0
  90. data/lib/nokogiri/html5/document.rb +74 -0
  91. data/lib/nokogiri/html5/document_fragment.rb +80 -0
  92. data/lib/nokogiri/html5/node.rb +93 -0
  93. data/lib/nokogiri/html5.rb +473 -0
  94. data/lib/nokogiri/version/constant.rb +1 -1
  95. data/lib/nokogiri/version/info.rb +12 -2
  96. data/lib/nokogiri/xml/builder.rb +38 -0
  97. data/lib/nokogiri/xml/document.rb +46 -0
  98. data/lib/nokogiri/xml/node/save_options.rb +1 -1
  99. data/lib/nokogiri/xml/node.rb +6 -5
  100. data/lib/nokogiri/xml/parse_options.rb +2 -0
  101. data/lib/nokogiri/xml/pp.rb +2 -2
  102. data/lib/nokogiri/xml/sax/document.rb +24 -30
  103. data/lib/nokogiri/xml/sax.rb +4 -4
  104. data/lib/nokogiri/xml/xpath.rb +2 -2
  105. data/lib/nokogiri/xml.rb +35 -36
  106. data/lib/nokogiri/xslt/stylesheet.rb +1 -1
  107. data/lib/nokogiri/xslt.rb +16 -16
  108. data/lib/nokogiri.rb +31 -29
  109. data/patches/libxml2/0007-Fix-XPath-recursion-limit.patch +31 -0
  110. metadata +101 -58
  111. data/lib/nokogiri/html/sax/parser_context.rb +0 -17
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: nokogiri
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.11.4
4
+ version: 1.12.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - Mike Dalessio
@@ -10,6 +10,9 @@ authors:
10
10
  - Akinori MUSHA
11
11
  - John Shahid
12
12
  - Karol Bucek
13
+ - Sam Ruby
14
+ - Craig Barnes
15
+ - Stephen Checkoway
13
16
  - Lars Kanis
14
17
  - Sergio Arbeo
15
18
  - Timothy Elliott
@@ -17,7 +20,7 @@ authors:
17
20
  autorequire:
18
21
  bindir: bin
19
22
  cert_chain: []
20
- date: 2021-05-14 00:00:00.000000000 Z
23
+ date: 2021-09-27 00:00:00.000000000 Z
21
24
  dependencies:
22
25
  - !ruby/object:Gem::Dependency
23
26
  name: racc
@@ -39,14 +42,14 @@ dependencies:
39
42
  requirements:
40
43
  - - "~>"
41
44
  - !ruby/object:Gem::Version
42
- version: 2.5.0
45
+ version: 2.6.1
43
46
  type: :runtime
44
47
  prerelease: false
45
48
  version_requirements: !ruby/object:Gem::Requirement
46
49
  requirements:
47
50
  - - "~>"
48
51
  - !ruby/object:Gem::Version
49
- version: 2.5.0
52
+ version: 2.6.1
50
53
  - !ruby/object:Gem::Dependency
51
54
  name: bundler
52
55
  requirement: !ruby/object:Gem::Requirement
@@ -61,20 +64,6 @@ dependencies:
61
64
  - - "~>"
62
65
  - !ruby/object:Gem::Version
63
66
  version: '2.2'
64
- - !ruby/object:Gem::Dependency
65
- name: concourse
66
- requirement: !ruby/object:Gem::Requirement
67
- requirements:
68
- - - "~>"
69
- - !ruby/object:Gem::Version
70
- version: '0.41'
71
- type: :development
72
- prerelease: false
73
- version_requirements: !ruby/object:Gem::Requirement
74
- requirements:
75
- - - "~>"
76
- - !ruby/object:Gem::Version
77
- version: '0.41'
78
67
  - !ruby/object:Gem::Dependency
79
68
  name: hoe-markdown
80
69
  requirement: !ruby/object:Gem::Requirement
@@ -225,40 +214,41 @@ executables:
225
214
  extensions:
226
215
  - ext/nokogiri/extconf.rb
227
216
  extra_rdoc_files:
228
- - ext/nokogiri/xml_dtd.c
229
- - ext/nokogiri/xml_xpath_context.c
230
- - ext/nokogiri/xml_attr.c
217
+ - ext/nokogiri/gumbo.c
218
+ - ext/nokogiri/html4_document.c
219
+ - ext/nokogiri/html4_element_description.c
220
+ - ext/nokogiri/html4_entity_lookup.c
221
+ - ext/nokogiri/html4_sax_parser_context.c
222
+ - ext/nokogiri/html4_sax_push_parser.c
231
223
  - ext/nokogiri/libxml2_backwards_compat.c
232
- - ext/nokogiri/xml_comment.c
233
224
  - ext/nokogiri/nokogiri.c
234
- - ext/nokogiri/xml_sax_parser_context.c
235
- - ext/nokogiri/xml_node_set.c
236
- - ext/nokogiri/xml_reader.c
225
+ - ext/nokogiri/test_global_handlers.c
226
+ - ext/nokogiri/xml_attr.c
227
+ - ext/nokogiri/xml_attribute_decl.c
237
228
  - ext/nokogiri/xml_cdata.c
238
- - ext/nokogiri/xml_element_content.c
239
- - ext/nokogiri/html_entity_lookup.c
240
- - ext/nokogiri/xml_namespace.c
229
+ - ext/nokogiri/xml_comment.c
241
230
  - ext/nokogiri/xml_document.c
242
- - ext/nokogiri/xml_element_decl.c
243
- - ext/nokogiri/xml_schema.c
244
- - ext/nokogiri/html_document.c
245
- - ext/nokogiri/xml_processing_instruction.c
246
- - ext/nokogiri/xml_text.c
247
- - ext/nokogiri/xml_syntax_error.c
248
231
  - ext/nokogiri/xml_document_fragment.c
249
- - ext/nokogiri/xml_sax_push_parser.c
232
+ - ext/nokogiri/xml_dtd.c
233
+ - ext/nokogiri/xml_element_content.c
234
+ - ext/nokogiri/xml_element_decl.c
250
235
  - ext/nokogiri/xml_encoding_handler.c
251
- - ext/nokogiri/html_sax_push_parser.c
252
- - ext/nokogiri/xml_relax_ng.c
253
236
  - ext/nokogiri/xml_entity_decl.c
254
- - ext/nokogiri/test_global_handlers.c
255
- - ext/nokogiri/xml_node.c
256
237
  - ext/nokogiri/xml_entity_reference.c
257
- - ext/nokogiri/xslt_stylesheet.c
258
- - ext/nokogiri/html_sax_parser_context.c
238
+ - ext/nokogiri/xml_namespace.c
239
+ - ext/nokogiri/xml_node.c
240
+ - ext/nokogiri/xml_node_set.c
241
+ - ext/nokogiri/xml_processing_instruction.c
242
+ - ext/nokogiri/xml_reader.c
243
+ - ext/nokogiri/xml_relax_ng.c
259
244
  - ext/nokogiri/xml_sax_parser.c
260
- - ext/nokogiri/xml_attribute_decl.c
261
- - ext/nokogiri/html_element_description.c
245
+ - ext/nokogiri/xml_sax_parser_context.c
246
+ - ext/nokogiri/xml_sax_push_parser.c
247
+ - ext/nokogiri/xml_schema.c
248
+ - ext/nokogiri/xml_syntax_error.c
249
+ - ext/nokogiri/xml_text.c
250
+ - ext/nokogiri/xml_xpath_context.c
251
+ - ext/nokogiri/xslt_stylesheet.c
262
252
  - README.md
263
253
  files:
264
254
  - Gemfile
@@ -269,11 +259,12 @@ files:
269
259
  - dependencies.yml
270
260
  - ext/nokogiri/depend
271
261
  - ext/nokogiri/extconf.rb
272
- - ext/nokogiri/html_document.c
273
- - ext/nokogiri/html_element_description.c
274
- - ext/nokogiri/html_entity_lookup.c
275
- - ext/nokogiri/html_sax_parser_context.c
276
- - ext/nokogiri/html_sax_push_parser.c
262
+ - ext/nokogiri/gumbo.c
263
+ - ext/nokogiri/html4_document.c
264
+ - ext/nokogiri/html4_element_description.c
265
+ - ext/nokogiri/html4_entity_lookup.c
266
+ - ext/nokogiri/html4_sax_parser_context.c
267
+ - ext/nokogiri/html4_sax_push_parser.c
277
268
  - ext/nokogiri/libxml2_backwards_compat.c
278
269
  - ext/nokogiri/nokogiri.c
279
270
  - ext/nokogiri/nokogiri.h
@@ -304,6 +295,51 @@ files:
304
295
  - ext/nokogiri/xml_text.c
305
296
  - ext/nokogiri/xml_xpath_context.c
306
297
  - ext/nokogiri/xslt_stylesheet.c
298
+ - gumbo-parser/CHANGES.md
299
+ - gumbo-parser/Makefile
300
+ - gumbo-parser/THANKS
301
+ - gumbo-parser/src/Makefile
302
+ - gumbo-parser/src/README.md
303
+ - gumbo-parser/src/ascii.c
304
+ - gumbo-parser/src/ascii.h
305
+ - gumbo-parser/src/attribute.c
306
+ - gumbo-parser/src/attribute.h
307
+ - gumbo-parser/src/char_ref.c
308
+ - gumbo-parser/src/char_ref.h
309
+ - gumbo-parser/src/char_ref.rl
310
+ - gumbo-parser/src/error.c
311
+ - gumbo-parser/src/error.h
312
+ - gumbo-parser/src/foreign_attrs.c
313
+ - gumbo-parser/src/foreign_attrs.gperf
314
+ - gumbo-parser/src/gumbo.h
315
+ - gumbo-parser/src/insertion_mode.h
316
+ - gumbo-parser/src/macros.h
317
+ - gumbo-parser/src/parser.c
318
+ - gumbo-parser/src/parser.h
319
+ - gumbo-parser/src/replacement.h
320
+ - gumbo-parser/src/string_buffer.c
321
+ - gumbo-parser/src/string_buffer.h
322
+ - gumbo-parser/src/string_piece.c
323
+ - gumbo-parser/src/svg_attrs.c
324
+ - gumbo-parser/src/svg_attrs.gperf
325
+ - gumbo-parser/src/svg_tags.c
326
+ - gumbo-parser/src/svg_tags.gperf
327
+ - gumbo-parser/src/tag.c
328
+ - gumbo-parser/src/tag_lookup.c
329
+ - gumbo-parser/src/tag_lookup.gperf
330
+ - gumbo-parser/src/tag_lookup.h
331
+ - gumbo-parser/src/token_buffer.c
332
+ - gumbo-parser/src/token_buffer.h
333
+ - gumbo-parser/src/token_type.h
334
+ - gumbo-parser/src/tokenizer.c
335
+ - gumbo-parser/src/tokenizer.h
336
+ - gumbo-parser/src/tokenizer_states.h
337
+ - gumbo-parser/src/utf8.c
338
+ - gumbo-parser/src/utf8.h
339
+ - gumbo-parser/src/util.c
340
+ - gumbo-parser/src/util.h
341
+ - gumbo-parser/src/vector.c
342
+ - gumbo-parser/src/vector.h
307
343
  - lib/nokogiri.rb
308
344
  - lib/nokogiri/css.rb
309
345
  - lib/nokogiri/css/node.rb
@@ -316,16 +352,22 @@ files:
316
352
  - lib/nokogiri/css/xpath_visitor.rb
317
353
  - lib/nokogiri/decorators/slop.rb
318
354
  - lib/nokogiri/extension.rb
355
+ - lib/nokogiri/gumbo.rb
319
356
  - lib/nokogiri/html.rb
320
- - lib/nokogiri/html/builder.rb
321
- - lib/nokogiri/html/document.rb
322
- - lib/nokogiri/html/document_fragment.rb
323
- - lib/nokogiri/html/element_description.rb
324
- - lib/nokogiri/html/element_description_defaults.rb
325
- - lib/nokogiri/html/entity_lookup.rb
326
- - lib/nokogiri/html/sax/parser.rb
327
- - lib/nokogiri/html/sax/parser_context.rb
328
- - lib/nokogiri/html/sax/push_parser.rb
357
+ - lib/nokogiri/html4.rb
358
+ - lib/nokogiri/html4/builder.rb
359
+ - lib/nokogiri/html4/document.rb
360
+ - lib/nokogiri/html4/document_fragment.rb
361
+ - lib/nokogiri/html4/element_description.rb
362
+ - lib/nokogiri/html4/element_description_defaults.rb
363
+ - lib/nokogiri/html4/entity_lookup.rb
364
+ - lib/nokogiri/html4/sax/parser.rb
365
+ - lib/nokogiri/html4/sax/parser_context.rb
366
+ - lib/nokogiri/html4/sax/push_parser.rb
367
+ - lib/nokogiri/html5.rb
368
+ - lib/nokogiri/html5/document.rb
369
+ - lib/nokogiri/html5/document_fragment.rb
370
+ - lib/nokogiri/html5/node.rb
329
371
  - lib/nokogiri/jruby/dependencies.rb
330
372
  - lib/nokogiri/syntax_error.rb
331
373
  - lib/nokogiri/version.rb
@@ -377,6 +419,7 @@ files:
377
419
  - patches/libxml2/0004-use-glibc-strlen.patch
378
420
  - patches/libxml2/0005-avoid-isnan-isinf.patch
379
421
  - patches/libxml2/0006-update-automake-files-for-arm64.patch
422
+ - patches/libxml2/0007-Fix-XPath-recursion-limit.patch
380
423
  - patches/libxslt/0001-update-automake-files-for-arm64.patch
381
424
  - patches/libxslt/0002-Fix-xml2-config-check-in-configure-script.patch
382
425
  - ports/archives/libxml2-2.9.12.tar.gz
@@ -407,7 +450,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
407
450
  - !ruby/object:Gem::Version
408
451
  version: '0'
409
452
  requirements: []
410
- rubygems_version: 3.1.4
453
+ rubygems_version: 3.2.22
411
454
  signing_key:
412
455
  specification_version: 4
413
456
  summary: Nokogiri (鋸) makes it easy and painless to work with XML and HTML from Ruby.
@@ -1,17 +0,0 @@
1
- # frozen_string_literal: true
2
- module Nokogiri
3
- module HTML
4
- module SAX
5
- ###
6
- # Context for HTML SAX parsers. This class is usually not instantiated
7
- # by the user. Instead, you should be looking at
8
- # Nokogiri::HTML::SAX::Parser
9
- class ParserContext < Nokogiri::XML::SAX::ParserContext
10
- def self.new thing, encoding = 'UTF-8'
11
- [:read, :close].all? { |x| thing.respond_to?(x) } ? super :
12
- memory(thing, encoding)
13
- end
14
- end
15
- end
16
- end
17
- end