nokogiri 1.12.0.rc1 → 1.12.0

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: f4718cb6ee4c25a1e22c5ca11e6382decf22afde18093a37c19592604c62ffa1
4
- data.tar.gz: f4200b6beee4a6c7553c2fd1fa50d63c65fbcaeefff6f2f592b1cad7a766ca86
3
+ metadata.gz: 17bab3034390c1ad985dc83bf28815a626570ba5ccc32ff1867cef4e622aa81d
4
+ data.tar.gz: 7ca9165fda9e22bd0d7e5338216e4bad38f0989736f1cc369817554d7d1f128f
5
5
  SHA512:
6
- metadata.gz: 1bbcc0febf8aed6e2733dbbe9377f27d58846e32fad1ce39a26e4f9a0a3c2a342e51d7d1f26720e4f6bd5147938e02d0657095f962afd3e9d8a19a852f92ab33
7
- data.tar.gz: 62735ca568f331c019431506adedc1774c010b24c5effebc8f288a71fa83a096dff0f5060785ec428c4ebf413dae2f22e1104dad4a5bcceace301b6c9fbb00e0
6
+ metadata.gz: 8b74271769a605d2d91abaf4818846dd8e95ca8efbd1eddab7505a3bc0ed7b1f87042c702a26d9f4b7eebf5a9e4922207b64dd003f5cc2a9c045d3b7ecf7615e
7
+ data.tar.gz: 9b2c4c957b9c5fde4a31910952149db8a96d0dd370e3a8966606b5c3db4c3e27e6320a2653af7c346cdd19136a2d1ff180c61394d0a86beba84362d3846c55a7
data/ext/nokogiri/gumbo.c CHANGED
@@ -300,35 +300,10 @@ typedef struct {
300
300
  xmlDocPtr doc;
301
301
  } ParseArgs;
302
302
 
303
- static void
304
- parse_args_mark(void *parse_args)
305
- {
306
- ParseArgs *args = parse_args;
307
- rb_gc_mark_maybe(args->input);
308
- rb_gc_mark_maybe(args->url_or_frag);
309
- }
310
-
311
- // Wrap a ParseArgs pointer. The underlying ParseArgs must outlive the
312
- // wrapper.
313
- static VALUE
314
- wrap_parse_args(ParseArgs *args)
315
- {
316
- return Data_Wrap_Struct(rb_cObject, parse_args_mark, RUBY_NEVER_FREE, args);
317
- }
318
-
319
- // Returnsd the underlying ParseArgs wrapped by wrap_parse_args.
320
- static ParseArgs *
321
- unwrap_parse_args(VALUE obj)
322
- {
323
- ParseArgs *args;
324
- Data_Get_Struct(obj, ParseArgs, args);
325
- return args;
326
- }
327
-
328
303
  static VALUE
329
304
  parse_cleanup(VALUE parse_args)
330
305
  {
331
- ParseArgs *args = unwrap_parse_args(parse_args);
306
+ ParseArgs *args = (ParseArgs*)parse_args;
332
307
  gumbo_destroy_output(args->output);
333
308
  // Make sure garbage collection doesn't mark the objects as being live based
334
309
  // on references from the ParseArgs. This may be unnecessary.
@@ -360,15 +335,14 @@ parse(VALUE self, VALUE input, VALUE url, VALUE max_attributes, VALUE max_errors
360
335
  .url_or_frag = url,
361
336
  .doc = NULL,
362
337
  };
363
- VALUE parse_args = wrap_parse_args(&args);
364
338
 
365
- return rb_ensure(parse_continue, parse_args, parse_cleanup, parse_args);
339
+ return rb_ensure(parse_continue, (VALUE)(&args), parse_cleanup, (VALUE)(&args));
366
340
  }
367
341
 
368
342
  static VALUE
369
343
  parse_continue(VALUE parse_args)
370
344
  {
371
- ParseArgs *args = unwrap_parse_args(parse_args);
345
+ ParseArgs *args = (ParseArgs*)parse_args;
372
346
  GumboOutput *output = args->output;
373
347
  xmlDocPtr doc;
374
348
  if (output->document->v.document.has_doctype) {
@@ -571,15 +545,14 @@ error:
571
545
  .url_or_frag = doc_fragment,
572
546
  .doc = (xmlDocPtr)extract_xml_node(doc),
573
547
  };
574
- VALUE parse_args = wrap_parse_args(&args);
575
- rb_ensure(fragment_continue, parse_args, parse_cleanup, parse_args);
548
+ rb_ensure(fragment_continue, (VALUE)(&args), parse_cleanup, (VALUE)(&args));
576
549
  return Qnil;
577
550
  }
578
551
 
579
552
  static VALUE
580
553
  fragment_continue(VALUE parse_args)
581
554
  {
582
- ParseArgs *args = unwrap_parse_args(parse_args);
555
+ ParseArgs *args = (ParseArgs*)parse_args;
583
556
  GumboOutput *output = args->output;
584
557
  VALUE doc_fragment = args->url_or_frag;
585
558
  xmlDocPtr xml_doc = args->doc;
@@ -53,9 +53,9 @@ module Nokogiri
53
53
  #
54
54
  # === Error reporting
55
55
  #
56
- # Nokogumbo contains an experimental parse error reporting facility. By default, no parse errors
57
- # are reported but this can be configured by passing the +:max_errors+ option to {HTML5.parse} or
58
- # {HTML5.fragment}.
56
+ # Nokogiri contains an experimental HTML5 parse error reporting facility. By default, no parse
57
+ # errors are reported but this can be configured by passing the +:max_errors+ option to
58
+ # {HTML5.parse} or {HTML5.fragment}.
59
59
  #
60
60
  # For example, this script:
61
61
  #
@@ -88,7 +88,7 @@ module Nokogiri
88
88
  # parsing HTML. The parse errors in the "tree construction" stage do not have standardized error
89
89
  # codes (yet).
90
90
  #
91
- # As a convenience to Nokogumbo users, the defined error codes are available via
91
+ # As a convenience to Nokogiri users, the defined error codes are available via
92
92
  # {Nokogiri::XML::SyntaxError#str1} method.
93
93
  #
94
94
  # doc = Nokogiri::HTML5.parse('<span/>Hi there!</span foo=bar />', max_errors: 10)
@@ -104,7 +104,7 @@ module Nokogiri
104
104
  # stage and doesn't have a standardized error code.
105
105
  #
106
106
  # For the purposes of semantic versioning, the error messages, error locations, and error codes
107
- # are not part of Nokogumbo's public API. That is, these are subject to change without Nokogumbo's
107
+ # are not part of Nokogiri's public API. That is, these are subject to change without Nokogiri's
108
108
  # major version number changing. These may be stabilized in the future.
109
109
  #
110
110
  # === Maximum tree depth
@@ -113,8 +113,8 @@ module Nokogiri
113
113
  # +:max_tree_depth+ option. If the depth of the tree would exceed this limit, then an
114
114
  # {::ArgumentError} is thrown.
115
115
  #
116
- # This limit (which defaults to <tt>Nokogumbo::DEFAULT_MAX_TREE_DEPTH = 400</tt>) can be removed
117
- # by giving the option <tt>max_tree_depth: -1</tt>.
116
+ # This limit (which defaults to <tt>Nokogiri::Gumbo::DEFAULT_MAX_TREE_DEPTH = 400</tt>) can be
117
+ # removed by giving the option <tt>max_tree_depth: -1</tt>.
118
118
  #
119
119
  # html = '<!DOCTYPE html>' + '<div>' * 1000
120
120
  # doc = Nokogiri.HTML5(html)
@@ -126,8 +126,8 @@ module Nokogiri
126
126
  # The maximum number of attributes per DOM element is configurable by the +:max_attributes+
127
127
  # option. If a given element would exceed this limit, then an {::ArgumentError} is thrown.
128
128
  #
129
- # This limit (which defaults to <tt>Nokogumbo::DEFAULT_MAX_ATTRIBUTES = 400</tt>) can be removed
130
- # by giving the option <tt>max_attributes: -1</tt>.
129
+ # This limit (which defaults to <tt>Nokogiri::Gumbo::DEFAULT_MAX_ATTRIBUTES = 400</tt>) can be
130
+ # removed by giving the option <tt>max_attributes: -1</tt>.
131
131
  #
132
132
  # html = '<!DOCTYPE html><div ' + (1..1000).map { |x| "attr-#{x}" }.join(' ') + '>'
133
133
  # # "<!DOCTYPE html><div attr-1 attr-2 attr-3 ... attr-1000>"
@@ -182,7 +182,7 @@ module Nokogiri
182
182
  #
183
183
  # == Encodings
184
184
  #
185
- # Nokogumbo always parses HTML using {https://en.wikipedia.org/wiki/UTF-8 UTF-8}; however, the
185
+ # Nokogiri always parses HTML5 using {https://en.wikipedia.org/wiki/UTF-8 UTF-8}; however, the
186
186
  # encoding of the input can be explicitly selected via the optional +encoding+ parameter. This is
187
187
  # most useful when the input comes not from a string but from an IO object.
188
188
  #
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
  module Nokogiri
3
3
  # The version of Nokogiri you are using
4
- VERSION = "1.12.0.rc1"
4
+ VERSION = "1.12.0"
5
5
  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.12.0.rc1
4
+ version: 1.12.0
5
5
  platform: ruby
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: 2021-07-09 00:00:00.000000000 Z
23
+ date: 2021-08-02 00:00:00.000000000 Z
24
24
  dependencies:
25
25
  - !ruby/object:Gem::Dependency
26
26
  name: racc
@@ -446,9 +446,9 @@ required_ruby_version: !ruby/object:Gem::Requirement
446
446
  version: 2.5.0
447
447
  required_rubygems_version: !ruby/object:Gem::Requirement
448
448
  requirements:
449
- - - ">"
449
+ - - ">="
450
450
  - !ruby/object:Gem::Version
451
- version: 1.3.1
451
+ version: '0'
452
452
  requirements: []
453
453
  rubygems_version: 3.2.15
454
454
  signing_key: