nokogiri 1.13.8 → 1.14.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 (108) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile +39 -0
  3. data/LICENSE-DEPENDENCIES.md +830 -509
  4. data/LICENSE.md +1 -1
  5. data/README.md +18 -11
  6. data/dependencies.yml +33 -15
  7. data/ext/nokogiri/extconf.rb +98 -24
  8. data/ext/nokogiri/gumbo.c +20 -10
  9. data/ext/nokogiri/html4_document.c +2 -2
  10. data/ext/nokogiri/html4_element_description.c +1 -1
  11. data/ext/nokogiri/html4_entity_lookup.c +2 -2
  12. data/ext/nokogiri/html4_sax_parser_context.c +1 -6
  13. data/ext/nokogiri/html4_sax_push_parser.c +1 -1
  14. data/ext/nokogiri/nokogiri.c +38 -51
  15. data/ext/nokogiri/nokogiri.h +18 -14
  16. data/ext/nokogiri/test_global_handlers.c +1 -1
  17. data/ext/nokogiri/xml_attr.c +1 -1
  18. data/ext/nokogiri/xml_attribute_decl.c +2 -2
  19. data/ext/nokogiri/xml_cdata.c +2 -2
  20. data/ext/nokogiri/xml_comment.c +1 -1
  21. data/ext/nokogiri/xml_document.c +22 -13
  22. data/ext/nokogiri/xml_document_fragment.c +1 -1
  23. data/ext/nokogiri/xml_dtd.c +1 -1
  24. data/ext/nokogiri/xml_element_content.c +3 -3
  25. data/ext/nokogiri/xml_element_decl.c +2 -2
  26. data/ext/nokogiri/xml_encoding_handler.c +3 -3
  27. data/ext/nokogiri/xml_entity_decl.c +1 -1
  28. data/ext/nokogiri/xml_entity_reference.c +1 -1
  29. data/ext/nokogiri/xml_namespace.c +80 -14
  30. data/ext/nokogiri/xml_node.c +288 -28
  31. data/ext/nokogiri/xml_node_set.c +0 -2
  32. data/ext/nokogiri/xml_processing_instruction.c +1 -1
  33. data/ext/nokogiri/xml_reader.c +45 -21
  34. data/ext/nokogiri/xml_relax_ng.c +1 -3
  35. data/ext/nokogiri/xml_sax_parser.c +23 -17
  36. data/ext/nokogiri/xml_sax_parser_context.c +1 -6
  37. data/ext/nokogiri/xml_sax_push_parser.c +1 -3
  38. data/ext/nokogiri/xml_schema.c +1 -3
  39. data/ext/nokogiri/xml_syntax_error.c +1 -1
  40. data/ext/nokogiri/xml_text.c +1 -1
  41. data/ext/nokogiri/xml_xpath_context.c +90 -83
  42. data/ext/nokogiri/xslt_stylesheet.c +15 -14
  43. data/gumbo-parser/Makefile +10 -0
  44. data/gumbo-parser/src/attribute.h +1 -1
  45. data/gumbo-parser/src/error.c +2 -2
  46. data/gumbo-parser/src/error.h +1 -1
  47. data/gumbo-parser/src/foreign_attrs.c +2 -2
  48. data/gumbo-parser/src/{gumbo.h → nokogiri_gumbo.h} +1 -0
  49. data/gumbo-parser/src/parser.c +8 -5
  50. data/gumbo-parser/src/replacement.h +1 -1
  51. data/gumbo-parser/src/string_buffer.h +1 -1
  52. data/gumbo-parser/src/string_piece.c +1 -1
  53. data/gumbo-parser/src/svg_attrs.c +2 -2
  54. data/gumbo-parser/src/svg_tags.c +2 -2
  55. data/gumbo-parser/src/tag.c +2 -1
  56. data/gumbo-parser/src/tag_lookup.c +7 -7
  57. data/gumbo-parser/src/tag_lookup.gperf +1 -0
  58. data/gumbo-parser/src/tag_lookup.h +1 -1
  59. data/gumbo-parser/src/token_buffer.h +1 -1
  60. data/gumbo-parser/src/tokenizer.c +1 -1
  61. data/gumbo-parser/src/tokenizer.h +1 -1
  62. data/gumbo-parser/src/utf8.c +1 -1
  63. data/gumbo-parser/src/utf8.h +1 -1
  64. data/gumbo-parser/src/util.c +1 -3
  65. data/gumbo-parser/src/util.h +4 -0
  66. data/gumbo-parser/src/vector.h +1 -1
  67. data/lib/nokogiri/css/node.rb +2 -2
  68. data/lib/nokogiri/css/xpath_visitor.rb +5 -3
  69. data/lib/nokogiri/css.rb +6 -0
  70. data/lib/nokogiri/decorators/slop.rb +1 -1
  71. data/lib/nokogiri/encoding_handler.rb +57 -0
  72. data/lib/nokogiri/extension.rb +3 -2
  73. data/lib/nokogiri/html4/document.rb +2 -121
  74. data/lib/nokogiri/html4/element_description_defaults.rb +6 -12
  75. data/lib/nokogiri/html4/encoding_reader.rb +121 -0
  76. data/lib/nokogiri/html4.rb +1 -0
  77. data/lib/nokogiri/html5/document.rb +113 -36
  78. data/lib/nokogiri/html5/document_fragment.rb +9 -2
  79. data/lib/nokogiri/html5/node.rb +3 -5
  80. data/lib/nokogiri/html5.rb +127 -216
  81. data/lib/nokogiri/jruby/dependencies.rb +1 -19
  82. data/lib/nokogiri/jruby/nokogiri_jars.rb +43 -0
  83. data/lib/nokogiri/version/constant.rb +1 -1
  84. data/lib/nokogiri/version/info.rb +11 -10
  85. data/lib/nokogiri/xml/attr.rb +49 -0
  86. data/lib/nokogiri/xml/builder.rb +1 -1
  87. data/lib/nokogiri/xml/document.rb +103 -55
  88. data/lib/nokogiri/xml/document_fragment.rb +49 -6
  89. data/lib/nokogiri/xml/namespace.rb +42 -0
  90. data/lib/nokogiri/xml/node/save_options.rb +6 -4
  91. data/lib/nokogiri/xml/node.rb +190 -35
  92. data/lib/nokogiri/xml/node_set.rb +88 -9
  93. data/lib/nokogiri/xml/parse_options.rb +129 -50
  94. data/lib/nokogiri/xml/pp/node.rb +6 -4
  95. data/lib/nokogiri/xml/processing_instruction.rb +2 -1
  96. data/lib/nokogiri/xml/sax/parser.rb +2 -3
  97. data/lib/nokogiri/xslt.rb +1 -1
  98. data/lib/nokogiri.rb +3 -11
  99. data/lib/xsd/xmlparser/nokogiri.rb +3 -1
  100. data/ports/archives/libxml2-2.10.4.tar.xz +0 -0
  101. data/ports/archives/libxslt-1.1.37.tar.xz +0 -0
  102. metadata +13 -236
  103. data/patches/libxml2/0004-use-glibc-strlen.patch +0 -53
  104. data/patches/libxml2/0005-avoid-isnan-isinf.patch +0 -81
  105. data/patches/libxml2/0006-update-automake-files-for-arm64.patch +0 -3040
  106. data/patches/libxml2/0008-htmlParseComment-handle-abruptly-closed-comments.patch +0 -61
  107. data/ports/archives/libxml2-2.9.14.tar.xz +0 -0
  108. data/ports/archives/libxslt-1.1.35.tar.xz +0 -0
@@ -1,61 +0,0 @@
1
- From 3ea8d08da310b645e37940eaae5cc28e251b155b Mon Sep 17 00:00:00 2001
2
- From: Mike Dalessio <mike.dalessio@gmail.com>
3
- Date: Sat, 17 Jul 2021 14:36:53 -0400
4
- Subject: [PATCH] htmlParseComment: handle abruptly-closed comments
5
-
6
- See guidance provided on abrutply-closed comments here:
7
-
8
- https://html.spec.whatwg.org/multipage/parsing.html#parse-error-abrupt-closing-of-empty-comment
9
- ---
10
- HTMLparser.c | 11 +++++++++++
11
- include/libxml/xmlerror.h | 1 +
12
- 2 files changed, 12 insertions(+)
13
-
14
- diff --git a/HTMLparser.c b/HTMLparser.c
15
- index b56363a..f0bf294 100644
16
- --- a/HTMLparser.c
17
- +++ b/HTMLparser.c
18
- @@ -3485,10 +3485,20 @@ htmlParseComment(htmlParserCtxtPtr ctxt) {
19
- q = CUR_CHAR(ql);
20
- if (q == 0)
21
- goto unfinished;
22
- + if (q == '>') {
23
- + htmlParseErr(ctxt, XML_ERR_COMMENT_ABRUPTLY_ENDED, "Comment abruptly ended", NULL, NULL);
24
- + cur = '>';
25
- + goto finished;
26
- + }
27
- NEXTL(ql);
28
- r = CUR_CHAR(rl);
29
- if (r == 0)
30
- goto unfinished;
31
- + if (q == '-' && r == '>') {
32
- + htmlParseErr(ctxt, XML_ERR_COMMENT_ABRUPTLY_ENDED, "Comment abruptly ended", NULL, NULL);
33
- + cur = '>';
34
- + goto finished;
35
- + }
36
- NEXTL(rl);
37
- cur = CUR_CHAR(l);
38
- while ((cur != 0) &&
39
- @@ -3536,6 +3546,7 @@ htmlParseComment(htmlParserCtxtPtr ctxt) {
40
- cur = next;
41
- l = nl;
42
- }
43
- +finished:
44
- buf[len] = 0;
45
- if (cur == '>') {
46
- NEXT;
47
- diff --git a/include/libxml/xmlerror.h b/include/libxml/xmlerror.h
48
- index c101997..7b68e40 100644
49
- --- a/include/libxml/xmlerror.h
50
- +++ b/include/libxml/xmlerror.h
51
- @@ -209,6 +209,7 @@ typedef enum {
52
- XML_ERR_VERSION_MISMATCH, /* 109 */
53
- XML_ERR_NAME_TOO_LONG, /* 110 */
54
- XML_ERR_USER_STOP, /* 111 */
55
- + XML_ERR_COMMENT_ABRUPTLY_ENDED, /* 112 */
56
- XML_NS_ERR_XML_NAMESPACE = 200,
57
- XML_NS_ERR_UNDEFINED_NAMESPACE, /* 201 */
58
- XML_NS_ERR_QNAME, /* 202 */
59
- --
60
- 2.31.0
61
-
Binary file
Binary file