nokogiri 1.12.0 → 1.13.3
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 +4 -4
- data/Gemfile +2 -0
- data/README.md +9 -7
- data/bin/nokogiri +63 -50
- data/dependencies.yml +11 -62
- data/ext/nokogiri/extconf.rb +68 -37
- data/ext/nokogiri/gumbo.c +11 -11
- data/ext/nokogiri/html4_element_description.c +1 -1
- data/ext/nokogiri/html4_sax_parser_context.c +2 -1
- data/ext/nokogiri/nokogiri.c +1 -1
- data/ext/nokogiri/nokogiri.h +3 -0
- data/ext/nokogiri/xml_document.c +36 -36
- data/ext/nokogiri/xml_document_fragment.c +0 -2
- data/ext/nokogiri/xml_dtd.c +2 -2
- data/ext/nokogiri/xml_encoding_handler.c +25 -11
- data/ext/nokogiri/xml_namespace.c +2 -2
- data/ext/nokogiri/xml_node.c +647 -335
- data/ext/nokogiri/xml_reader.c +37 -11
- data/ext/nokogiri/xml_xpath_context.c +72 -49
- data/ext/nokogiri/xslt_stylesheet.c +107 -9
- data/gumbo-parser/src/Makefile +20 -3
- data/gumbo-parser/src/parser.c +0 -11
- data/lib/nokogiri/class_resolver.rb +67 -0
- data/lib/nokogiri/css/node.rb +9 -8
- data/lib/nokogiri/css/parser.rb +360 -341
- data/lib/nokogiri/css/parser.y +249 -244
- data/lib/nokogiri/css/parser_extras.rb +20 -20
- data/lib/nokogiri/css/syntax_error.rb +1 -0
- data/lib/nokogiri/css/tokenizer.rb +4 -3
- data/lib/nokogiri/css/tokenizer.rex +3 -2
- data/lib/nokogiri/css/xpath_visitor.rb +179 -82
- data/lib/nokogiri/css.rb +38 -6
- data/lib/nokogiri/decorators/slop.rb +8 -7
- data/lib/nokogiri/extension.rb +7 -2
- data/lib/nokogiri/gumbo.rb +1 -0
- data/lib/nokogiri/html.rb +16 -10
- data/lib/nokogiri/html4/builder.rb +1 -0
- data/lib/nokogiri/html4/document.rb +84 -75
- data/lib/nokogiri/html4/document_fragment.rb +11 -7
- data/lib/nokogiri/html4/element_description.rb +1 -0
- data/lib/nokogiri/html4/element_description_defaults.rb +426 -520
- data/lib/nokogiri/html4/entity_lookup.rb +2 -1
- data/lib/nokogiri/html4/sax/parser.rb +2 -1
- data/lib/nokogiri/html4/sax/parser_context.rb +1 -0
- data/lib/nokogiri/html4/sax/push_parser.rb +7 -7
- data/lib/nokogiri/html4.rb +11 -5
- data/lib/nokogiri/html5/document.rb +24 -10
- data/lib/nokogiri/html5/document_fragment.rb +5 -2
- data/lib/nokogiri/html5/node.rb +6 -3
- data/lib/nokogiri/html5.rb +68 -64
- data/lib/nokogiri/jruby/dependencies.rb +10 -9
- data/lib/nokogiri/syntax_error.rb +1 -0
- data/lib/nokogiri/version/constant.rb +2 -1
- data/lib/nokogiri/version/info.rb +19 -13
- data/lib/nokogiri/version.rb +1 -0
- data/lib/nokogiri/xml/attr.rb +5 -3
- data/lib/nokogiri/xml/attribute_decl.rb +2 -1
- data/lib/nokogiri/xml/builder.rb +69 -31
- data/lib/nokogiri/xml/cdata.rb +2 -1
- data/lib/nokogiri/xml/character_data.rb +1 -0
- data/lib/nokogiri/xml/document.rb +178 -96
- data/lib/nokogiri/xml/document_fragment.rb +41 -38
- data/lib/nokogiri/xml/dtd.rb +3 -2
- data/lib/nokogiri/xml/element_content.rb +1 -0
- data/lib/nokogiri/xml/element_decl.rb +2 -1
- data/lib/nokogiri/xml/entity_decl.rb +3 -2
- data/lib/nokogiri/xml/entity_reference.rb +1 -0
- data/lib/nokogiri/xml/namespace.rb +2 -0
- data/lib/nokogiri/xml/node/save_options.rb +7 -4
- data/lib/nokogiri/xml/node.rb +512 -348
- data/lib/nokogiri/xml/node_set.rb +46 -54
- data/lib/nokogiri/xml/notation.rb +12 -0
- data/lib/nokogiri/xml/parse_options.rb +11 -7
- data/lib/nokogiri/xml/pp/character_data.rb +8 -6
- data/lib/nokogiri/xml/pp/node.rb +24 -26
- data/lib/nokogiri/xml/pp.rb +1 -0
- data/lib/nokogiri/xml/processing_instruction.rb +2 -1
- data/lib/nokogiri/xml/reader.rb +17 -19
- data/lib/nokogiri/xml/relax_ng.rb +1 -0
- data/lib/nokogiri/xml/sax/document.rb +20 -19
- data/lib/nokogiri/xml/sax/parser.rb +36 -34
- data/lib/nokogiri/xml/sax/parser_context.rb +7 -3
- data/lib/nokogiri/xml/sax/push_parser.rb +5 -5
- data/lib/nokogiri/xml/sax.rb +1 -0
- data/lib/nokogiri/xml/schema.rb +7 -6
- data/lib/nokogiri/xml/searchable.rb +93 -62
- data/lib/nokogiri/xml/syntax_error.rb +4 -4
- data/lib/nokogiri/xml/text.rb +1 -0
- data/lib/nokogiri/xml/xpath/syntax_error.rb +2 -1
- data/lib/nokogiri/xml/xpath.rb +12 -0
- data/lib/nokogiri/xml/xpath_context.rb +2 -3
- data/lib/nokogiri/xml.rb +3 -3
- data/lib/nokogiri/xslt/stylesheet.rb +1 -0
- data/lib/nokogiri/xslt.rb +21 -13
- data/lib/nokogiri.rb +19 -16
- data/lib/xsd/xmlparser/nokogiri.rb +25 -24
- data/patches/libxml2/0004-use-glibc-strlen.patch +3 -3
- data/patches/libxml2/0006-update-automake-files-for-arm64.patch +2443 -1914
- data/patches/libxml2/0008-htmlParseComment-handle-abruptly-closed-comments.patch +61 -0
- data/patches/libxml2/0009-allow-wildcard-namespaces.patch +77 -0
- data/patches/libxml2/0010-Revert-Different-approach-to-fix-quadratic-behavior.patch +45 -0
- data/patches/libxslt/0001-update-automake-files-for-arm64.patch +2445 -1919
- data/ports/archives/libxml2-2.9.13.tar.xz +0 -0
- data/ports/archives/libxslt-1.1.35.tar.xz +0 -0
- metadata +104 -31
- data/patches/libxml2/0007-Fix-XPath-recursion-limit.patch +0 -31
- data/patches/libxslt/0002-Fix-xml2-config-check-in-configure-script.patch +0 -19
- data/ports/archives/libxml2-2.9.12.tar.gz +0 -0
- data/ports/archives/libxslt-1.1.34.tar.gz +0 -0
Binary file
|
Binary file
|
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.
|
4
|
+
version: 1.13.3
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Mike Dalessio
|
@@ -20,36 +20,36 @@ authors:
|
|
20
20
|
autorequire:
|
21
21
|
bindir: bin
|
22
22
|
cert_chain: []
|
23
|
-
date:
|
23
|
+
date: 2022-02-22 00:00:00.000000000 Z
|
24
24
|
dependencies:
|
25
25
|
- !ruby/object:Gem::Dependency
|
26
|
-
name:
|
26
|
+
name: mini_portile2
|
27
27
|
requirement: !ruby/object:Gem::Requirement
|
28
28
|
requirements:
|
29
29
|
- - "~>"
|
30
30
|
- !ruby/object:Gem::Version
|
31
|
-
version:
|
31
|
+
version: 2.8.0
|
32
32
|
type: :runtime
|
33
33
|
prerelease: false
|
34
34
|
version_requirements: !ruby/object:Gem::Requirement
|
35
35
|
requirements:
|
36
36
|
- - "~>"
|
37
37
|
- !ruby/object:Gem::Version
|
38
|
-
version:
|
38
|
+
version: 2.8.0
|
39
39
|
- !ruby/object:Gem::Dependency
|
40
|
-
name:
|
40
|
+
name: racc
|
41
41
|
requirement: !ruby/object:Gem::Requirement
|
42
42
|
requirements:
|
43
43
|
- - "~>"
|
44
44
|
- !ruby/object:Gem::Version
|
45
|
-
version:
|
45
|
+
version: '1.4'
|
46
46
|
type: :runtime
|
47
47
|
prerelease: false
|
48
48
|
version_requirements: !ruby/object:Gem::Requirement
|
49
49
|
requirements:
|
50
50
|
- - "~>"
|
51
51
|
- !ruby/object:Gem::Version
|
52
|
-
version:
|
52
|
+
version: '1.4'
|
53
53
|
- !ruby/object:Gem::Dependency
|
54
54
|
name: bundler
|
55
55
|
requirement: !ruby/object:Gem::Requirement
|
@@ -84,14 +84,14 @@ dependencies:
|
|
84
84
|
requirements:
|
85
85
|
- - "~>"
|
86
86
|
- !ruby/object:Gem::Version
|
87
|
-
version: '5.
|
87
|
+
version: '5.15'
|
88
88
|
type: :development
|
89
89
|
prerelease: false
|
90
90
|
version_requirements: !ruby/object:Gem::Requirement
|
91
91
|
requirements:
|
92
92
|
- - "~>"
|
93
93
|
- !ruby/object:Gem::Version
|
94
|
-
version: '5.
|
94
|
+
version: '5.15'
|
95
95
|
- !ruby/object:Gem::Dependency
|
96
96
|
name: minitest-reporters
|
97
97
|
requirement: !ruby/object:Gem::Requirement
|
@@ -122,88 +122,158 @@ dependencies:
|
|
122
122
|
version: '13.0'
|
123
123
|
- !ruby/object:Gem::Dependency
|
124
124
|
name: rake-compiler
|
125
|
+
requirement: !ruby/object:Gem::Requirement
|
126
|
+
requirements:
|
127
|
+
- - '='
|
128
|
+
- !ruby/object:Gem::Version
|
129
|
+
version: 1.1.7
|
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.7
|
137
|
+
- !ruby/object:Gem::Dependency
|
138
|
+
name: rake-compiler-dock
|
125
139
|
requirement: !ruby/object:Gem::Requirement
|
126
140
|
requirements:
|
127
141
|
- - "~>"
|
128
142
|
- !ruby/object:Gem::Version
|
129
|
-
version: '1.
|
143
|
+
version: '1.2'
|
130
144
|
type: :development
|
131
145
|
prerelease: false
|
132
146
|
version_requirements: !ruby/object:Gem::Requirement
|
133
147
|
requirements:
|
134
148
|
- - "~>"
|
135
149
|
- !ruby/object:Gem::Version
|
136
|
-
version: '1.
|
150
|
+
version: '1.2'
|
137
151
|
- !ruby/object:Gem::Dependency
|
138
|
-
name:
|
152
|
+
name: rdoc
|
139
153
|
requirement: !ruby/object:Gem::Requirement
|
140
154
|
requirements:
|
141
155
|
- - "~>"
|
142
156
|
- !ruby/object:Gem::Version
|
143
|
-
version: '
|
157
|
+
version: '6.3'
|
144
158
|
type: :development
|
145
159
|
prerelease: false
|
146
160
|
version_requirements: !ruby/object:Gem::Requirement
|
147
161
|
requirements:
|
148
162
|
- - "~>"
|
149
163
|
- !ruby/object:Gem::Version
|
150
|
-
version: '
|
164
|
+
version: '6.3'
|
151
165
|
- !ruby/object:Gem::Dependency
|
152
166
|
name: rexical
|
153
167
|
requirement: !ruby/object:Gem::Requirement
|
154
168
|
requirements:
|
155
169
|
- - "~>"
|
156
170
|
- !ruby/object:Gem::Version
|
157
|
-
version: 1.0.
|
171
|
+
version: 1.0.7
|
158
172
|
type: :development
|
159
173
|
prerelease: false
|
160
174
|
version_requirements: !ruby/object:Gem::Requirement
|
161
175
|
requirements:
|
162
176
|
- - "~>"
|
163
177
|
- !ruby/object:Gem::Version
|
164
|
-
version: 1.0.
|
178
|
+
version: 1.0.7
|
165
179
|
- !ruby/object:Gem::Dependency
|
166
180
|
name: rubocop
|
167
181
|
requirement: !ruby/object:Gem::Requirement
|
168
182
|
requirements:
|
169
183
|
- - "~>"
|
170
184
|
- !ruby/object:Gem::Version
|
171
|
-
version: '1.
|
185
|
+
version: '1.23'
|
172
186
|
type: :development
|
173
187
|
prerelease: false
|
174
188
|
version_requirements: !ruby/object:Gem::Requirement
|
175
189
|
requirements:
|
176
190
|
- - "~>"
|
177
191
|
- !ruby/object:Gem::Version
|
178
|
-
version: '1.
|
192
|
+
version: '1.23'
|
179
193
|
- !ruby/object:Gem::Dependency
|
180
|
-
name:
|
194
|
+
name: rubocop-minitest
|
195
|
+
requirement: !ruby/object:Gem::Requirement
|
196
|
+
requirements:
|
197
|
+
- - "~>"
|
198
|
+
- !ruby/object:Gem::Version
|
199
|
+
version: '0.17'
|
200
|
+
type: :development
|
201
|
+
prerelease: false
|
202
|
+
version_requirements: !ruby/object:Gem::Requirement
|
203
|
+
requirements:
|
204
|
+
- - "~>"
|
205
|
+
- !ruby/object:Gem::Version
|
206
|
+
version: '0.17'
|
207
|
+
- !ruby/object:Gem::Dependency
|
208
|
+
name: rubocop-performance
|
181
209
|
requirement: !ruby/object:Gem::Requirement
|
182
210
|
requirements:
|
183
211
|
- - "~>"
|
184
212
|
- !ruby/object:Gem::Version
|
185
|
-
version: '
|
213
|
+
version: '1.12'
|
186
214
|
type: :development
|
187
215
|
prerelease: false
|
188
216
|
version_requirements: !ruby/object:Gem::Requirement
|
189
217
|
requirements:
|
190
218
|
- - "~>"
|
191
219
|
- !ruby/object:Gem::Version
|
192
|
-
version: '
|
220
|
+
version: '1.12'
|
193
221
|
- !ruby/object:Gem::Dependency
|
194
|
-
name:
|
222
|
+
name: rubocop-rake
|
223
|
+
requirement: !ruby/object:Gem::Requirement
|
224
|
+
requirements:
|
225
|
+
- - "~>"
|
226
|
+
- !ruby/object:Gem::Version
|
227
|
+
version: '0.6'
|
228
|
+
type: :development
|
229
|
+
prerelease: false
|
230
|
+
version_requirements: !ruby/object:Gem::Requirement
|
231
|
+
requirements:
|
232
|
+
- - "~>"
|
233
|
+
- !ruby/object:Gem::Version
|
234
|
+
version: '0.6'
|
235
|
+
- !ruby/object:Gem::Dependency
|
236
|
+
name: rubocop-shopify
|
237
|
+
requirement: !ruby/object:Gem::Requirement
|
238
|
+
requirements:
|
239
|
+
- - "~>"
|
240
|
+
- !ruby/object:Gem::Version
|
241
|
+
version: '2.3'
|
242
|
+
type: :development
|
243
|
+
prerelease: false
|
244
|
+
version_requirements: !ruby/object:Gem::Requirement
|
245
|
+
requirements:
|
246
|
+
- - "~>"
|
247
|
+
- !ruby/object:Gem::Version
|
248
|
+
version: '2.3'
|
249
|
+
- !ruby/object:Gem::Dependency
|
250
|
+
name: ruby_memcheck
|
251
|
+
requirement: !ruby/object:Gem::Requirement
|
252
|
+
requirements:
|
253
|
+
- - "~>"
|
254
|
+
- !ruby/object:Gem::Version
|
255
|
+
version: '1.0'
|
256
|
+
type: :development
|
257
|
+
prerelease: false
|
258
|
+
version_requirements: !ruby/object:Gem::Requirement
|
259
|
+
requirements:
|
260
|
+
- - "~>"
|
261
|
+
- !ruby/object:Gem::Version
|
262
|
+
version: '1.0'
|
263
|
+
- !ruby/object:Gem::Dependency
|
264
|
+
name: simplecov
|
195
265
|
requirement: !ruby/object:Gem::Requirement
|
196
266
|
requirements:
|
197
267
|
- - "~>"
|
198
268
|
- !ruby/object:Gem::Version
|
199
|
-
version: '0.
|
269
|
+
version: '0.21'
|
200
270
|
type: :development
|
201
271
|
prerelease: false
|
202
272
|
version_requirements: !ruby/object:Gem::Requirement
|
203
273
|
requirements:
|
204
274
|
- - "~>"
|
205
275
|
- !ruby/object:Gem::Version
|
206
|
-
version: '0.
|
276
|
+
version: '0.21'
|
207
277
|
description: |
|
208
278
|
Nokogiri (鋸) makes it easy and painless to work with XML and HTML from Ruby. It provides a
|
209
279
|
sensible, easy-to-understand API for reading, writing, modifying, and querying documents. It is
|
@@ -341,6 +411,7 @@ files:
|
|
341
411
|
- gumbo-parser/src/vector.c
|
342
412
|
- gumbo-parser/src/vector.h
|
343
413
|
- lib/nokogiri.rb
|
414
|
+
- lib/nokogiri/class_resolver.rb
|
344
415
|
- lib/nokogiri/css.rb
|
345
416
|
- lib/nokogiri/css/node.rb
|
346
417
|
- lib/nokogiri/css/parser.rb
|
@@ -419,11 +490,12 @@ files:
|
|
419
490
|
- patches/libxml2/0004-use-glibc-strlen.patch
|
420
491
|
- patches/libxml2/0005-avoid-isnan-isinf.patch
|
421
492
|
- patches/libxml2/0006-update-automake-files-for-arm64.patch
|
422
|
-
- patches/libxml2/
|
493
|
+
- patches/libxml2/0008-htmlParseComment-handle-abruptly-closed-comments.patch
|
494
|
+
- patches/libxml2/0009-allow-wildcard-namespaces.patch
|
495
|
+
- patches/libxml2/0010-Revert-Different-approach-to-fix-quadratic-behavior.patch
|
423
496
|
- patches/libxslt/0001-update-automake-files-for-arm64.patch
|
424
|
-
-
|
425
|
-
- ports/archives/
|
426
|
-
- ports/archives/libxslt-1.1.34.tar.gz
|
497
|
+
- ports/archives/libxml2-2.9.13.tar.xz
|
498
|
+
- ports/archives/libxslt-1.1.35.tar.xz
|
427
499
|
homepage: https://nokogiri.org
|
428
500
|
licenses:
|
429
501
|
- MIT
|
@@ -433,6 +505,7 @@ metadata:
|
|
433
505
|
documentation_uri: https://nokogiri.org/rdoc/index.html
|
434
506
|
changelog_uri: https://nokogiri.org/CHANGELOG.html
|
435
507
|
source_code_uri: https://github.com/sparklemotion/nokogiri
|
508
|
+
rubygems_mfa_required: 'true'
|
436
509
|
post_install_message:
|
437
510
|
rdoc_options:
|
438
511
|
- "--main"
|
@@ -443,14 +516,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
443
516
|
requirements:
|
444
517
|
- - ">="
|
445
518
|
- !ruby/object:Gem::Version
|
446
|
-
version: 2.
|
519
|
+
version: 2.6.0
|
447
520
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
448
521
|
requirements:
|
449
522
|
- - ">="
|
450
523
|
- !ruby/object:Gem::Version
|
451
524
|
version: '0'
|
452
525
|
requirements: []
|
453
|
-
rubygems_version: 3.
|
526
|
+
rubygems_version: 3.3.5
|
454
527
|
signing_key:
|
455
528
|
specification_version: 4
|
456
529
|
summary: Nokogiri (鋸) makes it easy and painless to work with XML and HTML from Ruby.
|
@@ -1,31 +0,0 @@
|
|
1
|
-
From 3e1aad4fe584747fd7d17cc7b2863a78e2d21a77 Mon Sep 17 00:00:00 2001
|
2
|
-
From: Nick Wellnhofer <wellnhofer@aevum.de>
|
3
|
-
Date: Wed, 2 Jun 2021 17:31:49 +0200
|
4
|
-
Subject: [PATCH] Fix XPath recursion limit
|
5
|
-
|
6
|
-
Fix accounting of recursion depth when parsing XPath expressions.
|
7
|
-
|
8
|
-
This silly bug introduced in commit 804c5297 could lead to spurious
|
9
|
-
errors when parsing larger expressions or XSLT documents.
|
10
|
-
|
11
|
-
Should fix #264.
|
12
|
-
---
|
13
|
-
xpath.c | 2 +-
|
14
|
-
1 file changed, 1 insertion(+), 1 deletion(-)
|
15
|
-
|
16
|
-
diff --git a/xpath.c b/xpath.c
|
17
|
-
index 7497ba0..1aa2f1a 100644
|
18
|
-
--- a/xpath.c
|
19
|
-
+++ b/xpath.c
|
20
|
-
@@ -10983,7 +10983,7 @@ xmlXPathCompileExpr(xmlXPathParserContextPtr ctxt, int sort) {
|
21
|
-
}
|
22
|
-
|
23
|
-
if (xpctxt != NULL)
|
24
|
-
- xpctxt->depth -= 1;
|
25
|
-
+ xpctxt->depth -= 10;
|
26
|
-
}
|
27
|
-
|
28
|
-
/**
|
29
|
-
--
|
30
|
-
2.31.0
|
31
|
-
|
@@ -1,19 +0,0 @@
|
|
1
|
-
From: Nick Wellnhofer <wellnhofer@aevum.de>
|
2
|
-
Date: Fri, 15 Nov 2019 11:53:11 +0100
|
3
|
-
Subject: [PATCH] Fix xml2-config check in configure script
|
4
|
-
|
5
|
-
A 'print' option has never been supported. After a recent change to
|
6
|
-
libxml2, invalid options cause xml2-config to fail.
|
7
|
-
diff --git a/configure b/configure
|
8
|
-
index c63adc5..6061227 100755
|
9
|
-
--- a/configure
|
10
|
-
+++ b/configure
|
11
|
-
@@ -14860,7 +14860,7 @@ PKG_CONFIG=$_save_PKG_CONFIG
|
12
|
-
fi
|
13
|
-
|
14
|
-
|
15
|
-
-if test "x$LIBXML_LIBS" = "x" && ${XML_CONFIG} --libs print > /dev/null 2>&1
|
16
|
-
+if test "x$LIBXML_LIBS" = "x" && ${XML_CONFIG} --libs > /dev/null 2>&1
|
17
|
-
then
|
18
|
-
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for libxml libraries >= $LIBXML_REQUIRED_VERSION" >&5
|
19
|
-
$as_echo_n "checking for libxml libraries >= $LIBXML_REQUIRED_VERSION... " >&6; }
|
Binary file
|
Binary file
|