nokogiri 1.15.2-x86-linux → 1.15.4-x86-linux

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.

checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 0af01c82bd87feeee8ce8f97f2b7a4205e3bff2965fecbb4d6c622fa9e7e5923
4
- data.tar.gz: 6f67fd3db6a23042f1a32120c2f2394b2467c1a88fc5ddf02a724ddd1f4d767a
3
+ metadata.gz: c31f03646b0fb5f4f002fd4ac94d5b5533cdc194060614c9ab6d68cdd9803590
4
+ data.tar.gz: e8f22102d01a26bf3594741b80015776d93655676c87715f8d1eb1909cd2aaa2
5
5
  SHA512:
6
- metadata.gz: ae125703a192088a8c04342692bfcfd04debce7eb9f45eb93a354e2f0a79c80b00a28d109489084498bdc9ad940d388926ec781e94f786a2df2ea74d84101296
7
- data.tar.gz: 94f2b562c203599574a8f39b2d4bed4f734cc96570dcc300e67483f957b77a19c472dff5014d57ae070a12a3b5f740e2c29d59c2a8d8e421d5d98abea8a45120
6
+ metadata.gz: 29e9dbda6b30f5ed4fc8be25e92be1e72073046da4fb97e2ce8d3ad26d080ea93d677e4ee808eeca8efac4655704680526439170fb0e3393eb4339ed12b254de
7
+ data.tar.gz: d216aaf13e0d85d3ee6d399dd20f3c39ca3ec532c3fdb0aa3d97a01fae77eb1f7728fcdc856086da88f382330d3c9ddbaf9990a95aab24505bed72508fd13816
data/dependencies.yml CHANGED
@@ -1,7 +1,7 @@
1
1
  libxml2:
2
- version: "2.11.4"
3
- sha256: "737e1d7f8ab3f139729ca13a2494fd17bf30ddb4b7a427cf336252cab57f57f7"
4
- # sha-256 hash provided in https://download.gnome.org/sources/libxml2/2.11/libxml2-2.11.4.sha256sum
2
+ version: "2.11.5"
3
+ sha256: "3727b078c360ec69fa869de14bd6f75d7ee8d36987b071e6928d4720a28df3a6"
4
+ # sha-256 hash provided in https://download.gnome.org/sources/libxml2/2.11/libxml2-2.11.5.sha256sum
5
5
 
6
6
  libxslt:
7
7
  version: "1.1.38"
@@ -29,21 +29,21 @@ XMLPUBFUN void xmlCheckVersion(int version);
29
29
  *
30
30
  * the version string like "1.2.3"
31
31
  */
32
- #define LIBXML_DOTTED_VERSION "2.11.4"
32
+ #define LIBXML_DOTTED_VERSION "2.11.5"
33
33
 
34
34
  /**
35
35
  * LIBXML_VERSION:
36
36
  *
37
37
  * the version number: 1.2.3 value is 10203
38
38
  */
39
- #define LIBXML_VERSION 21104
39
+ #define LIBXML_VERSION 21105
40
40
 
41
41
  /**
42
42
  * LIBXML_VERSION_STRING:
43
43
  *
44
44
  * the version number string, 1.2.3 value is "10203"
45
45
  */
46
- #define LIBXML_VERSION_STRING "21104"
46
+ #define LIBXML_VERSION_STRING "21105"
47
47
 
48
48
  /**
49
49
  * LIBXML_VERSION_EXTRA:
@@ -58,7 +58,7 @@ XMLPUBFUN void xmlCheckVersion(int version);
58
58
  * Macro to check that the libxml version in use is compatible with
59
59
  * the version the software has been compiled against
60
60
  */
61
- #define LIBXML_TEST_VERSION xmlCheckVersion(21104);
61
+ #define LIBXML_TEST_VERSION xmlCheckVersion(21105);
62
62
 
63
63
  #ifndef VMS
64
64
  #if 0
@@ -132,7 +132,7 @@ extern "C" {
132
132
  #ifndef WITH_MODULES
133
133
  #define WITH_MODULES
134
134
  #endif
135
- #define LIBXSLT_DEFAULT_PLUGINS_PATH() "/home/flavorjones/code/oss/nokogiri/ports/aarch64-linux/libxslt/1.1.38/lib/libxslt-plugins"
135
+ #define LIBXSLT_DEFAULT_PLUGINS_PATH() "/home/flavorjones/code/oss/nokogiri/ports/x86-linux/libxslt/1.1.38/lib/libxslt-plugins"
136
136
  #endif
137
137
 
138
138
  /**
@@ -12,39 +12,45 @@ VALUE cNokogiriXmlCData;
12
12
  * raise a TypeError exception.
13
13
  */
14
14
  static VALUE
15
- new (int argc, VALUE *argv, VALUE klass)
15
+ rb_xml_cdata_s_new(int argc, VALUE *argv, VALUE klass)
16
16
  {
17
- xmlDocPtr xml_doc;
18
- xmlNodePtr node;
19
- VALUE doc;
20
- VALUE content;
21
- VALUE rest;
17
+ xmlDocPtr c_document;
18
+ xmlNodePtr c_node;
19
+ VALUE rb_document;
20
+ VALUE rb_content;
21
+ VALUE rb_rest;
22
22
  VALUE rb_node;
23
- xmlChar *content_str = NULL;
24
- int content_str_len = 0;
23
+ xmlChar *c_content = NULL;
24
+ int c_content_len = 0;
25
25
 
26
- rb_scan_args(argc, argv, "2*", &doc, &content, &rest);
26
+ rb_scan_args(argc, argv, "2*", &rb_document, &rb_content, &rb_rest);
27
27
 
28
- if (rb_obj_is_kind_of(doc, cNokogiriXmlDocument)) {
29
- xml_doc = noko_xml_document_unwrap(doc);
30
- } else {
28
+ if (!rb_obj_is_kind_of(rb_document, cNokogiriXmlNode)) {
29
+ rb_raise(rb_eTypeError,
30
+ "expected first parameter to be a Nokogiri::XML::Document, received %"PRIsVALUE,
31
+ rb_obj_class(rb_document));
32
+ }
33
+
34
+ if (!rb_obj_is_kind_of(rb_document, cNokogiriXmlDocument)) {
31
35
  xmlNodePtr deprecated_node_type_arg;
32
36
  // TODO: deprecate allowing Node
33
37
  NOKO_WARN_DEPRECATION("Passing a Node as the first parameter to CDATA.new is deprecated. Please pass a Document instead. This will become an error in a future release of Nokogiri.");
34
- Noko_Node_Get_Struct(doc, xmlNode, deprecated_node_type_arg);
35
- xml_doc = deprecated_node_type_arg->doc;
38
+ Noko_Node_Get_Struct(rb_document, xmlNode, deprecated_node_type_arg);
39
+ c_document = deprecated_node_type_arg->doc;
40
+ } else {
41
+ c_document = noko_xml_document_unwrap(rb_document);
36
42
  }
37
43
 
38
- if (!NIL_P(content)) {
39
- content_str = (xmlChar *)StringValuePtr(content);
40
- content_str_len = RSTRING_LENINT(content);
44
+ if (!NIL_P(rb_content)) {
45
+ c_content = (xmlChar *)StringValuePtr(rb_content);
46
+ c_content_len = RSTRING_LENINT(rb_content);
41
47
  }
42
48
 
43
- node = xmlNewCDataBlock(xml_doc, content_str, content_str_len);
49
+ c_node = xmlNewCDataBlock(c_document, c_content, c_content_len);
44
50
 
45
- noko_xml_document_pin_node(node);
51
+ noko_xml_document_pin_node(c_node);
46
52
 
47
- rb_node = noko_xml_node_wrap(klass, node);
53
+ rb_node = noko_xml_node_wrap(klass, c_node);
48
54
  rb_obj_call_init(rb_node, argc, argv);
49
55
 
50
56
  if (rb_block_given_p()) { rb_yield(rb_node); }
@@ -61,5 +67,5 @@ noko_init_xml_cdata(void)
61
67
  */
62
68
  cNokogiriXmlCData = rb_define_class_under(mNokogiriXml, "CDATA", cNokogiriXmlText);
63
69
 
64
- rb_define_singleton_method(cNokogiriXmlCData, "new", new, -1);
70
+ rb_define_singleton_method(cNokogiriXmlCData, "new", rb_xml_cdata_s_new, -1);
65
71
  }
@@ -100,11 +100,15 @@ memsize_node(const xmlNodePtr node)
100
100
  {
101
101
  /* note we don't count namespace definitions, just going for a good-enough number here */
102
102
  xmlNodePtr child;
103
+ xmlAttrPtr property;
103
104
  size_t memsize = 0;
104
105
 
105
106
  memsize += xmlStrlen(node->name);
106
- for (child = (xmlNodePtr)node->properties; child; child = child->next) {
107
- memsize += sizeof(xmlAttr) + memsize_node(child);
107
+
108
+ if (node->type == XML_ELEMENT_NODE) {
109
+ for (property = node->properties; property; property = property->next) {
110
+ memsize += sizeof(xmlAttr) + memsize_node((xmlNodePtr)property);
111
+ }
108
112
  }
109
113
  if (node->type == XML_TEXT_NODE) {
110
114
  memsize += xmlStrlen(node->content);
@@ -350,7 +350,7 @@ ok:
350
350
 
351
351
  xmlUnlinkNode(original_reparentee);
352
352
 
353
- if (prf != xmlAddPrevSibling && prf != xmlAddNextSibling
353
+ if (prf != xmlAddPrevSibling && prf != xmlAddNextSibling && prf != xmlAddChild
354
354
  && reparentee->type == XML_TEXT_NODE && pivot->next && pivot->next->type == XML_TEXT_NODE) {
355
355
  /*
356
356
  * libxml merges text nodes in a right-to-left fashion, meaning that if
@@ -203,7 +203,7 @@ read_memory(int argc, VALUE *argv, VALUE klass)
203
203
  * [Returns] Nokogiri::XML::Schema
204
204
  */
205
205
  static VALUE
206
- from_document(int argc, VALUE *argv, VALUE klass)
206
+ rb_xml_schema_s_from_document(int argc, VALUE *argv, VALUE klass)
207
207
  {
208
208
  VALUE rb_document;
209
209
  VALUE rb_parse_options;
@@ -214,14 +214,20 @@ from_document(int argc, VALUE *argv, VALUE klass)
214
214
 
215
215
  rb_scan_args(argc, argv, "11", &rb_document, &rb_parse_options);
216
216
 
217
- if (rb_obj_is_kind_of(rb_document, cNokogiriXmlDocument)) {
218
- c_document = noko_xml_document_unwrap(rb_document);
219
- } else {
217
+ if (!rb_obj_is_kind_of(rb_document, cNokogiriXmlNode)) {
218
+ rb_raise(rb_eTypeError,
219
+ "expected parameter to be a Nokogiri::XML::Document, received %"PRIsVALUE,
220
+ rb_obj_class(rb_document));
221
+ }
222
+
223
+ if (!rb_obj_is_kind_of(rb_document, cNokogiriXmlDocument)) {
220
224
  xmlNodePtr deprecated_node_type_arg;
221
225
  // TODO: deprecate allowing Node
222
226
  NOKO_WARN_DEPRECATION("Passing a Node as the first parameter to Schema.from_document is deprecated. Please pass a Document instead. This will become an error in a future release of Nokogiri.");
223
227
  Noko_Node_Get_Struct(rb_document, xmlNode, deprecated_node_type_arg);
224
228
  c_document = deprecated_node_type_arg->doc;
229
+ } else {
230
+ c_document = noko_xml_document_unwrap(rb_document);
225
231
  }
226
232
 
227
233
  if (noko_xml_document_has_wrapped_blank_nodes_p(c_document)) {
@@ -249,7 +255,7 @@ noko_init_xml_schema(void)
249
255
  rb_undef_alloc_func(cNokogiriXmlSchema);
250
256
 
251
257
  rb_define_singleton_method(cNokogiriXmlSchema, "read_memory", read_memory, -1);
252
- rb_define_singleton_method(cNokogiriXmlSchema, "from_document", from_document, -1);
258
+ rb_define_singleton_method(cNokogiriXmlSchema, "from_document", rb_xml_schema_s_from_document, -1);
253
259
 
254
260
  rb_define_private_method(cNokogiriXmlSchema, "validate_document", validate_document, 1);
255
261
  rb_define_private_method(cNokogiriXmlSchema, "validate_file", validate_file, 1);
@@ -9,33 +9,39 @@ VALUE cNokogiriXmlText ;
9
9
  * Create a new Text element on the +document+ with +content+
10
10
  */
11
11
  static VALUE
12
- new (int argc, VALUE *argv, VALUE klass)
12
+ rb_xml_text_s_new(int argc, VALUE *argv, VALUE klass)
13
13
  {
14
- xmlDocPtr doc;
15
- xmlNodePtr node;
16
- VALUE string;
17
- VALUE document;
18
- VALUE rest;
14
+ xmlDocPtr c_document;
15
+ xmlNodePtr c_node;
16
+ VALUE rb_string;
17
+ VALUE rb_document;
18
+ VALUE rb_rest;
19
19
  VALUE rb_node;
20
20
 
21
- rb_scan_args(argc, argv, "2*", &string, &document, &rest);
21
+ rb_scan_args(argc, argv, "2*", &rb_string, &rb_document, &rb_rest);
22
22
 
23
- if (rb_obj_is_kind_of(document, cNokogiriXmlDocument)) {
24
- doc = noko_xml_document_unwrap(document);
25
- } else {
23
+ if (!rb_obj_is_kind_of(rb_document, cNokogiriXmlNode)) {
24
+ rb_raise(rb_eTypeError,
25
+ "expected second parameter to be a Nokogiri::XML::Document, received %"PRIsVALUE,
26
+ rb_obj_class(rb_document));
27
+ }
28
+
29
+ if (!rb_obj_is_kind_of(rb_document, cNokogiriXmlDocument)) {
26
30
  xmlNodePtr deprecated_node_type_arg;
27
31
  // TODO: deprecate allowing Node
28
32
  NOKO_WARN_DEPRECATION("Passing a Node as the second parameter to Text.new is deprecated. Please pass a Document instead. This will become an error in a future release of Nokogiri.");
29
- Noko_Node_Get_Struct(document, xmlNode, deprecated_node_type_arg);
30
- doc = deprecated_node_type_arg->doc;
33
+ Noko_Node_Get_Struct(rb_document, xmlNode, deprecated_node_type_arg);
34
+ c_document = deprecated_node_type_arg->doc;
35
+ } else {
36
+ c_document = noko_xml_document_unwrap(rb_document);
31
37
  }
32
38
 
33
- node = xmlNewText((xmlChar *)StringValueCStr(string));
34
- node->doc = doc;
39
+ c_node = xmlNewText((xmlChar *)StringValueCStr(rb_string));
40
+ c_node->doc = c_document;
35
41
 
36
- noko_xml_document_pin_node(node);
42
+ noko_xml_document_pin_node(c_node);
37
43
 
38
- rb_node = noko_xml_node_wrap(klass, node) ;
44
+ rb_node = noko_xml_node_wrap(klass, c_node) ;
39
45
  rb_obj_call_init(rb_node, argc, argv);
40
46
 
41
47
  if (rb_block_given_p()) { rb_yield(rb_node); }
@@ -52,5 +58,5 @@ noko_init_xml_text(void)
52
58
  */
53
59
  cNokogiriXmlText = rb_define_class_under(mNokogiriXml, "Text", cNokogiriXmlCharacterData);
54
60
 
55
- rb_define_singleton_method(cNokogiriXmlText, "new", new, -1);
61
+ rb_define_singleton_method(cNokogiriXmlText, "new", rb_xml_text_s_new, -1);
56
62
  }
Binary file
Binary file
Binary file
Binary file
@@ -2,5 +2,5 @@
2
2
 
3
3
  module Nokogiri
4
4
  # The version of Nokogiri you are using
5
- VERSION = "1.15.2"
5
+ VERSION = "1.15.4"
6
6
  end
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.15.2
4
+ version: 1.15.4
5
5
  platform: x86-linux
6
6
  authors:
7
7
  - Mike Dalessio
@@ -20,7 +20,7 @@ authors:
20
20
  autorequire:
21
21
  bindir: bin
22
22
  cert_chain: []
23
- date: 2023-05-24 00:00:00.000000000 Z
23
+ date: 2023-08-11 00:00:00.000000000 Z
24
24
  dependencies:
25
25
  - !ruby/object:Gem::Dependency
26
26
  name: racc