nokogiri 1.5.0.beta.4 → 1.5.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.
- data/.gemtest +0 -0
- data/CHANGELOG.ja.rdoc +34 -0
- data/CHANGELOG.rdoc +40 -1
- data/Manifest.txt +11 -2
- data/README.rdoc +1 -1
- data/Rakefile +100 -104
- data/bin/nokogiri +1 -2
- data/ext/nokogiri/nokogiri.c +24 -1
- data/ext/nokogiri/xml_io.c +32 -7
- data/ext/nokogiri/xml_node.c +14 -13
- data/ext/nokogiri/xml_sax_parser.c +9 -4
- data/ext/nokogiri/xslt_stylesheet.c +7 -1
- data/lib/nokogiri.rb +3 -22
- data/lib/nokogiri/css.rb +4 -0
- data/lib/nokogiri/html/document.rb +10 -14
- data/lib/nokogiri/version.rb +76 -23
- data/lib/nokogiri/xml/builder.rb +7 -0
- data/lib/nokogiri/xml/document.rb +17 -1
- data/lib/nokogiri/xml/document_fragment.rb +14 -0
- data/lib/nokogiri/xml/node.rb +36 -28
- data/lib/nokogiri/xml/node/save_options.rb +17 -1
- data/lib/nokogiri/xml/node_set.rb +7 -0
- data/lib/nokogiri/xml/parse_options.rb +8 -0
- data/lib/nokogiri/xml/reader.rb +6 -6
- data/lib/nokogiri/xml/schema.rb +7 -1
- data/nokogiri_help_responses.md +40 -0
- data/tasks/cross_compile.rb +134 -159
- data/tasks/nokogiri.org.rb +18 -0
- data/tasks/test.rb +1 -1
- data/test/files/encoding.html +82 -0
- data/test/files/encoding.xhtml +84 -0
- data/test/files/metacharset.html +10 -0
- data/test/files/noencoding.html +47 -0
- data/test/helper.rb +2 -0
- data/test/html/test_document.rb +15 -0
- data/test/html/test_document_encoding.rb +13 -0
- data/test/test_memory_leak.rb +20 -0
- data/test/test_reader.rb +22 -0
- data/test/test_xslt_transforms.rb +6 -2
- data/test/xml/node/test_save_options.rb +10 -2
- data/test/xml/test_builder.rb +17 -0
- data/test/xml/test_document.rb +22 -0
- data/test/xml/test_node.rb +19 -1
- data/test/xml/test_node_reparenting.rb +16 -3
- data/test/xml/test_node_set.rb +34 -0
- data/test/xml/test_schema.rb +5 -0
- data/test/xslt/test_exception_handling.rb +37 -0
- metadata +185 -157
- data/deps.rip +0 -5
- data/ext/java/nokogiri/EncodingHandler.java +0 -124
- data/ext/java/nokogiri/HtmlDocument.java +0 -149
- data/ext/java/nokogiri/HtmlElementDescription.java +0 -145
- data/ext/java/nokogiri/HtmlEntityLookup.java +0 -79
- data/ext/java/nokogiri/HtmlSaxParserContext.java +0 -259
- data/ext/java/nokogiri/NokogiriService.java +0 -535
- data/ext/java/nokogiri/XmlAttr.java +0 -191
- data/ext/java/nokogiri/XmlAttributeDecl.java +0 -130
- data/ext/java/nokogiri/XmlCdata.java +0 -91
- data/ext/java/nokogiri/XmlComment.java +0 -86
- data/ext/java/nokogiri/XmlDocument.java +0 -529
- data/ext/java/nokogiri/XmlDocumentFragment.java +0 -217
- data/ext/java/nokogiri/XmlDtd.java +0 -467
- data/ext/java/nokogiri/XmlElement.java +0 -222
- data/ext/java/nokogiri/XmlElementContent.java +0 -382
- data/ext/java/nokogiri/XmlElementDecl.java +0 -148
- data/ext/java/nokogiri/XmlEntityDecl.java +0 -162
- data/ext/java/nokogiri/XmlEntityReference.java +0 -75
- data/ext/java/nokogiri/XmlNamespace.java +0 -128
- data/ext/java/nokogiri/XmlNode.java +0 -1399
- data/ext/java/nokogiri/XmlNodeSet.java +0 -311
- data/ext/java/nokogiri/XmlProcessingInstruction.java +0 -103
- data/ext/java/nokogiri/XmlReader.java +0 -411
- data/ext/java/nokogiri/XmlRelaxng.java +0 -144
- data/ext/java/nokogiri/XmlSaxParserContext.java +0 -367
- data/ext/java/nokogiri/XmlSaxPushParser.java +0 -184
- data/ext/java/nokogiri/XmlSchema.java +0 -319
- data/ext/java/nokogiri/XmlSyntaxError.java +0 -119
- data/ext/java/nokogiri/XmlText.java +0 -136
- data/ext/java/nokogiri/XmlXpathContext.java +0 -179
- data/ext/java/nokogiri/XsltStylesheet.java +0 -183
- data/ext/java/nokogiri/internals/HtmlDomParserContext.java +0 -206
- data/ext/java/nokogiri/internals/NokogiriDocumentCache.java +0 -73
- data/ext/java/nokogiri/internals/NokogiriErrorHandler.java +0 -86
- data/ext/java/nokogiri/internals/NokogiriHandler.java +0 -327
- data/ext/java/nokogiri/internals/NokogiriHelpers.java +0 -582
- data/ext/java/nokogiri/internals/NokogiriNamespaceCache.java +0 -171
- data/ext/java/nokogiri/internals/NokogiriNamespaceContext.java +0 -118
- data/ext/java/nokogiri/internals/NokogiriNonStrictErrorHandler.java +0 -74
- data/ext/java/nokogiri/internals/NokogiriNonStrictErrorHandler4NekoHtml.java +0 -121
- data/ext/java/nokogiri/internals/NokogiriStrictErrorHandler.java +0 -79
- data/ext/java/nokogiri/internals/NokogiriXPathFunction.java +0 -126
- data/ext/java/nokogiri/internals/NokogiriXPathFunctionResolver.java +0 -56
- data/ext/java/nokogiri/internals/ParserContext.java +0 -278
- data/ext/java/nokogiri/internals/PushInputStream.java +0 -411
- data/ext/java/nokogiri/internals/ReaderNode.java +0 -474
- data/ext/java/nokogiri/internals/SaveContext.java +0 -288
- data/ext/java/nokogiri/internals/SchemaErrorHandler.java +0 -76
- data/ext/java/nokogiri/internals/XmlDeclHandler.java +0 -42
- data/ext/java/nokogiri/internals/XmlDomParser.java +0 -77
- data/ext/java/nokogiri/internals/XmlDomParserContext.java +0 -238
- data/ext/java/nokogiri/internals/XmlSaxParser.java +0 -65
- data/ext/java/nokogiri/internals/XsltExtensionFunction.java +0 -72
- data/lib/isorelax.jar +0 -0
- data/lib/jing.jar +0 -0
- data/lib/nekodtd.jar +0 -0
- data/lib/nekohtml.jar +0 -0
- data/lib/xercesImpl.jar +0 -0
data/test/xml/test_document.rb
CHANGED
@@ -670,6 +670,28 @@ module Nokogiri
|
|
670
670
|
assert @xml.root.respond_to?(:awesome!)
|
671
671
|
assert @xml.children.respond_to?(:awesome!)
|
672
672
|
end
|
673
|
+
|
674
|
+
def test_java_integration
|
675
|
+
if Nokogiri.jruby?
|
676
|
+
require 'java'
|
677
|
+
factory = javax.xml.parsers.DocumentBuilderFactory.newInstance
|
678
|
+
builder = factory.newDocumentBuilder
|
679
|
+
document = builder.newDocument
|
680
|
+
root = document.createElement("foo")
|
681
|
+
document.appendChild(root)
|
682
|
+
noko_doc = Nokogiri::XML::Document.wrap(document)
|
683
|
+
assert_equal 'foo', noko_doc.root.name
|
684
|
+
|
685
|
+
noko_doc = Nokogiri::XML(<<eoxml)
|
686
|
+
<foo xmlns='hello'>
|
687
|
+
<bar xmlns:foo='world' />
|
688
|
+
</foo>
|
689
|
+
eoxml
|
690
|
+
dom = noko_doc.to_java
|
691
|
+
assert dom.kind_of? org.w3c.dom.Document
|
692
|
+
assert_equal 'foo', dom.getDocumentElement().getTagName()
|
693
|
+
end
|
694
|
+
end
|
673
695
|
end
|
674
696
|
end
|
675
697
|
end
|
data/test/xml/test_node.rb
CHANGED
@@ -486,6 +486,11 @@ module Nokogiri
|
|
486
486
|
assert_equal 'Yes', @xml.css('address').first[:domestic]
|
487
487
|
end
|
488
488
|
|
489
|
+
def test_non_existent_attribute_should_return_nil
|
490
|
+
node = @xml.root.first_element_child
|
491
|
+
assert_nil node.attribute('type')
|
492
|
+
end
|
493
|
+
|
489
494
|
def test_write_to_with_block
|
490
495
|
called = false
|
491
496
|
io = StringIO.new
|
@@ -699,6 +704,15 @@ module Nokogiri
|
|
699
704
|
assert_equal('/staff/employee[1]', node.path)
|
700
705
|
end
|
701
706
|
|
707
|
+
def test_parent_xpath
|
708
|
+
assert set = @xml.search('//employee')
|
709
|
+
assert node = set.first
|
710
|
+
assert parent_set = node.search('..')
|
711
|
+
assert parent_node = parent_set.first
|
712
|
+
assert_equal '/staff', parent_node.path
|
713
|
+
assert_equal node.parent, parent_node
|
714
|
+
end
|
715
|
+
|
702
716
|
def test_search_by_symbol
|
703
717
|
assert set = @xml.search(:employee)
|
704
718
|
assert 5, set.length
|
@@ -718,7 +732,7 @@ module Nokogiri
|
|
718
732
|
assert_equal '&', foo
|
719
733
|
end
|
720
734
|
|
721
|
-
def
|
735
|
+
def test_content_equals
|
722
736
|
node = Nokogiri::XML::Node.new('form', @xml)
|
723
737
|
assert_equal('', node.content)
|
724
738
|
|
@@ -728,6 +742,10 @@ module Nokogiri
|
|
728
742
|
node.content = '& <foo> &'
|
729
743
|
assert_equal('& <foo> &', node.content)
|
730
744
|
assert_equal('<form>& <foo> &amp;</form>', node.to_xml)
|
745
|
+
|
746
|
+
node.content = "1234 <-> 1234"
|
747
|
+
assert_equal "1234 <-> 1234", node.content
|
748
|
+
assert_equal "<form>1234 <-> 1234</form>", node.to_xml
|
731
749
|
end
|
732
750
|
|
733
751
|
def test_set_content_should_unlink_existing_content
|
@@ -51,7 +51,7 @@ module Nokogiri
|
|
51
51
|
|
52
52
|
{
|
53
53
|
:add_child => {:target => "/root/a1", :returns_self => false, :children_tags => %w[text b1 b2]},
|
54
|
-
:<< => {:target => "/root/a1", :returns_self =>
|
54
|
+
:<< => {:target => "/root/a1", :returns_self => true, :children_tags => %w[text b1 b2]},
|
55
55
|
|
56
56
|
:replace => {:target => "/root/a1/node()", :returns_self => false, :children_tags => %w[b1 b2]},
|
57
57
|
:swap => {:target => "/root/a1/node()", :returns_self => true, :children_tags => %w[b1 b2]},
|
@@ -166,6 +166,21 @@ module Nokogiri
|
|
166
166
|
end
|
167
167
|
|
168
168
|
describe "ad hoc node reparenting behavior" do
|
169
|
+
describe "#<<" do
|
170
|
+
it "allows chaining" do
|
171
|
+
doc = Nokogiri::XML::Document.new
|
172
|
+
root = Nokogiri::XML::Element.new('root', doc)
|
173
|
+
doc.root = root
|
174
|
+
|
175
|
+
child1 = Nokogiri::XML::Element.new('child1', doc)
|
176
|
+
child2 = Nokogiri::XML::Element.new('child2', doc)
|
177
|
+
|
178
|
+
doc.root << child1 << child2
|
179
|
+
|
180
|
+
assert_equal [child1, child2], doc.root.children.to_a
|
181
|
+
end
|
182
|
+
end
|
183
|
+
|
169
184
|
describe "#add_child" do
|
170
185
|
describe "given a new node with a namespace" do
|
171
186
|
it "keeps the namespace" do
|
@@ -276,8 +291,6 @@ module Nokogiri
|
|
276
291
|
it "not blow up" do
|
277
292
|
# see http://github.com/tenderlove/nokogiri/issues#issue/22
|
278
293
|
10.times do
|
279
|
-
STDOUT.putc "."
|
280
|
-
STDOUT.flush
|
281
294
|
begin
|
282
295
|
doc = Nokogiri::XML <<-EOHTML
|
283
296
|
<root>
|
data/test/xml/test_node_set.rb
CHANGED
@@ -30,6 +30,10 @@ module Nokogiri
|
|
30
30
|
@list = @xml.css('employee')
|
31
31
|
end
|
32
32
|
|
33
|
+
def test_break_works
|
34
|
+
assert_equal 7, @xml.root.elements.each { |x| break 7 }
|
35
|
+
end
|
36
|
+
|
33
37
|
def test_filter
|
34
38
|
list = @xml.css('address').filter('*[domestic="Yes"]')
|
35
39
|
assert_equal(%w{ Yes } * 4, list.map { |n| n['domestic'] })
|
@@ -234,6 +238,11 @@ module Nokogiri
|
|
234
238
|
end
|
235
239
|
end
|
236
240
|
|
241
|
+
def test_dup_on_empty_set
|
242
|
+
empty_set = Nokogiri::XML::NodeSet.new @xml, []
|
243
|
+
assert_equal 0, empty_set.dup.length # this shouldn't raise null pointer exception
|
244
|
+
end
|
245
|
+
|
237
246
|
def test_xmlns_is_automatically_registered
|
238
247
|
doc = Nokogiri::XML(<<-eoxml)
|
239
248
|
<root xmlns="http://tenderlovemaking.com/">
|
@@ -358,6 +367,12 @@ module Nokogiri
|
|
358
367
|
assert length, employees.length
|
359
368
|
end
|
360
369
|
|
370
|
+
def test_delete_on_empty_set
|
371
|
+
empty_set = Nokogiri::XML::NodeSet.new @xml, []
|
372
|
+
employee = @xml.at_xpath("//employee")
|
373
|
+
assert_equal nil, empty_set.delete(employee)
|
374
|
+
end
|
375
|
+
|
361
376
|
def test_unlink
|
362
377
|
xml = Nokogiri::XML.parse(<<-eoxml)
|
363
378
|
<root>
|
@@ -518,6 +533,13 @@ module Nokogiri
|
|
518
533
|
assert_equal employees.length, employees[0, employees.length].length
|
519
534
|
end
|
520
535
|
|
536
|
+
def test_slice_on_empty_node_set
|
537
|
+
empty_set = Nokogiri::XML::NodeSet.new @xml, []
|
538
|
+
assert_equal nil, empty_set[99]
|
539
|
+
assert_equal nil, empty_set[99..101]
|
540
|
+
assert_equal nil, empty_set[99,2]
|
541
|
+
end
|
542
|
+
|
521
543
|
def test_slice_waaaaaay_off_the_end
|
522
544
|
xml = Nokogiri::XML::Builder.new {
|
523
545
|
root { 100.times { div } }
|
@@ -572,6 +594,12 @@ module Nokogiri
|
|
572
594
|
assert_equal [employees[2]], (first_set & second_set).to_a
|
573
595
|
end
|
574
596
|
|
597
|
+
def test_intersection_on_empty_set
|
598
|
+
empty_set = Nokogiri::XML::NodeSet.new @xml
|
599
|
+
employees = @xml.search("//employee")
|
600
|
+
assert_equal 0, (empty_set & employees).length
|
601
|
+
end
|
602
|
+
|
575
603
|
def test_include?
|
576
604
|
employees = @xml.search("//employee")
|
577
605
|
yes = employees.first
|
@@ -581,6 +609,12 @@ module Nokogiri
|
|
581
609
|
assert ! employees.include?(no)
|
582
610
|
end
|
583
611
|
|
612
|
+
def test_include_on_empty_node_set
|
613
|
+
empty_set = Nokogiri::XML::NodeSet.new @xml, []
|
614
|
+
employee = @xml.at_xpath("//employee")
|
615
|
+
assert ! empty_set.include?(employee)
|
616
|
+
end
|
617
|
+
|
584
618
|
def test_children
|
585
619
|
employees = @xml.search("//employee")
|
586
620
|
count = 0
|
data/test/xml/test_schema.rb
CHANGED
@@ -74,6 +74,11 @@ module Nokogiri
|
|
74
74
|
assert_equal 2, errors.length
|
75
75
|
end
|
76
76
|
|
77
|
+
def test_validate_non_document
|
78
|
+
string = File.read(PO_XML_FILE)
|
79
|
+
assert_raise(ArgumentError) {@xsd.validate(string)}
|
80
|
+
end
|
81
|
+
|
77
82
|
def test_valid?
|
78
83
|
valid_doc = Nokogiri::XML(File.read(PO_XML_FILE))
|
79
84
|
|
@@ -0,0 +1,37 @@
|
|
1
|
+
require "helper"
|
2
|
+
|
3
|
+
module Nokogiri
|
4
|
+
module XSLT
|
5
|
+
class TestExceptionHandling < Nokogiri::TestCase
|
6
|
+
def test_java_exception_handling
|
7
|
+
skip('This test is for Java only') if Nokogiri.uses_libxml?
|
8
|
+
|
9
|
+
xml = Nokogiri.XML(<<-EOXML)
|
10
|
+
<foo>
|
11
|
+
<bar/>
|
12
|
+
</foo>
|
13
|
+
EOXML
|
14
|
+
|
15
|
+
xsl = Nokogiri.XSLT(<<-EOXSL)
|
16
|
+
<?xml version="1.0"?>
|
17
|
+
<xsl:stylesheet version="1.0"
|
18
|
+
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
|
19
|
+
|
20
|
+
<xsl:template match="/">
|
21
|
+
<a/>
|
22
|
+
<b/>
|
23
|
+
</xsl:template>
|
24
|
+
</xsl:stylesheet>
|
25
|
+
EOXSL
|
26
|
+
|
27
|
+
begin
|
28
|
+
xsl.transform xml
|
29
|
+
fail('It should not get here')
|
30
|
+
rescue RuntimeError => e
|
31
|
+
assert_match(/HIERARCHY_REQUEST_ERR/, e.to_s, 'The exception message does not contain the expected information')
|
32
|
+
end
|
33
|
+
end
|
34
|
+
|
35
|
+
end
|
36
|
+
end
|
37
|
+
end
|
metadata
CHANGED
@@ -1,24 +1,23 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: nokogiri
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
hash:
|
5
|
-
prerelease:
|
4
|
+
hash: 3
|
5
|
+
prerelease:
|
6
6
|
segments:
|
7
7
|
- 1
|
8
8
|
- 5
|
9
9
|
- 0
|
10
|
-
|
11
|
-
- 4
|
12
|
-
version: 1.5.0.beta.4
|
10
|
+
version: 1.5.0
|
13
11
|
platform: ruby
|
14
12
|
authors:
|
15
13
|
- Aaron Patterson
|
16
14
|
- Mike Dalessio
|
15
|
+
- Yoko Harada
|
17
16
|
autorequire:
|
18
17
|
bindir: bin
|
19
18
|
cert_chain: []
|
20
19
|
|
21
|
-
date: 2011-01
|
20
|
+
date: 2011-07-01 00:00:00 -04:00
|
22
21
|
default_executable:
|
23
22
|
dependencies:
|
24
23
|
- !ruby/object:Gem::Dependency
|
@@ -29,10 +28,12 @@ dependencies:
|
|
29
28
|
requirements:
|
30
29
|
- - ">="
|
31
30
|
- !ruby/object:Gem::Version
|
32
|
-
hash:
|
31
|
+
hash: 11
|
33
32
|
segments:
|
34
|
-
-
|
35
|
-
|
33
|
+
- 1
|
34
|
+
- 4
|
35
|
+
- 6
|
36
|
+
version: 1.4.6
|
36
37
|
type: :development
|
37
38
|
version_requirements: *id001
|
38
39
|
- !ruby/object:Gem::Dependency
|
@@ -43,10 +44,12 @@ dependencies:
|
|
43
44
|
requirements:
|
44
45
|
- - ">="
|
45
46
|
- !ruby/object:Gem::Version
|
46
|
-
hash:
|
47
|
+
hash: 29
|
47
48
|
segments:
|
49
|
+
- 1
|
48
50
|
- 0
|
49
|
-
|
51
|
+
- 5
|
52
|
+
version: 1.0.5
|
50
53
|
type: :development
|
51
54
|
version_requirements: *id002
|
52
55
|
- !ruby/object:Gem::Dependency
|
@@ -57,10 +60,12 @@ dependencies:
|
|
57
60
|
requirements:
|
58
61
|
- - ">="
|
59
62
|
- !ruby/object:Gem::Version
|
60
|
-
hash:
|
63
|
+
hash: 17
|
61
64
|
segments:
|
62
65
|
- 0
|
63
|
-
|
66
|
+
- 7
|
67
|
+
- 9
|
68
|
+
version: 0.7.9
|
64
69
|
type: :development
|
65
70
|
version_requirements: *id003
|
66
71
|
- !ruby/object:Gem::Dependency
|
@@ -69,32 +74,104 @@ dependencies:
|
|
69
74
|
requirement: &id004 !ruby/object:Gem::Requirement
|
70
75
|
none: false
|
71
76
|
requirements:
|
72
|
-
- -
|
77
|
+
- - ~>
|
73
78
|
- !ruby/object:Gem::Version
|
74
|
-
hash:
|
79
|
+
hash: 3
|
75
80
|
segments:
|
76
|
-
-
|
77
|
-
-
|
78
|
-
-
|
79
|
-
version:
|
81
|
+
- 2
|
82
|
+
- 2
|
83
|
+
- 2
|
84
|
+
version: 2.2.2
|
80
85
|
type: :development
|
81
86
|
version_requirements: *id004
|
82
87
|
- !ruby/object:Gem::Dependency
|
83
|
-
name:
|
88
|
+
name: mini_portile
|
84
89
|
prerelease: false
|
85
90
|
requirement: &id005 !ruby/object:Gem::Requirement
|
86
91
|
none: false
|
87
92
|
requirements:
|
88
93
|
- - ">="
|
89
94
|
- !ruby/object:Gem::Version
|
90
|
-
hash:
|
95
|
+
hash: 19
|
91
96
|
segments:
|
92
|
-
- 2
|
93
|
-
- 8
|
94
97
|
- 0
|
95
|
-
|
98
|
+
- 2
|
99
|
+
- 2
|
100
|
+
version: 0.2.2
|
96
101
|
type: :development
|
97
102
|
version_requirements: *id005
|
103
|
+
- !ruby/object:Gem::Dependency
|
104
|
+
name: hoe-debugging
|
105
|
+
prerelease: false
|
106
|
+
requirement: &id006 !ruby/object:Gem::Requirement
|
107
|
+
none: false
|
108
|
+
requirements:
|
109
|
+
- - ">="
|
110
|
+
- !ruby/object:Gem::Version
|
111
|
+
hash: 3
|
112
|
+
segments:
|
113
|
+
- 0
|
114
|
+
version: "0"
|
115
|
+
type: :development
|
116
|
+
version_requirements: *id006
|
117
|
+
- !ruby/object:Gem::Dependency
|
118
|
+
name: hoe-git
|
119
|
+
prerelease: false
|
120
|
+
requirement: &id007 !ruby/object:Gem::Requirement
|
121
|
+
none: false
|
122
|
+
requirements:
|
123
|
+
- - ">="
|
124
|
+
- !ruby/object:Gem::Version
|
125
|
+
hash: 3
|
126
|
+
segments:
|
127
|
+
- 0
|
128
|
+
version: "0"
|
129
|
+
type: :development
|
130
|
+
version_requirements: *id007
|
131
|
+
- !ruby/object:Gem::Dependency
|
132
|
+
name: hoe-gemspec
|
133
|
+
prerelease: false
|
134
|
+
requirement: &id008 !ruby/object:Gem::Requirement
|
135
|
+
none: false
|
136
|
+
requirements:
|
137
|
+
- - ">="
|
138
|
+
- !ruby/object:Gem::Version
|
139
|
+
hash: 3
|
140
|
+
segments:
|
141
|
+
- 0
|
142
|
+
version: "0"
|
143
|
+
type: :development
|
144
|
+
version_requirements: *id008
|
145
|
+
- !ruby/object:Gem::Dependency
|
146
|
+
name: hoe-bundler
|
147
|
+
prerelease: false
|
148
|
+
requirement: &id009 !ruby/object:Gem::Requirement
|
149
|
+
none: false
|
150
|
+
requirements:
|
151
|
+
- - ">="
|
152
|
+
- !ruby/object:Gem::Version
|
153
|
+
hash: 3
|
154
|
+
segments:
|
155
|
+
- 0
|
156
|
+
version: "0"
|
157
|
+
type: :development
|
158
|
+
version_requirements: *id009
|
159
|
+
- !ruby/object:Gem::Dependency
|
160
|
+
name: hoe
|
161
|
+
prerelease: false
|
162
|
+
requirement: &id010 !ruby/object:Gem::Requirement
|
163
|
+
none: false
|
164
|
+
requirements:
|
165
|
+
- - ">="
|
166
|
+
- !ruby/object:Gem::Version
|
167
|
+
hash: 35
|
168
|
+
segments:
|
169
|
+
- 2
|
170
|
+
- 9
|
171
|
+
- 4
|
172
|
+
version: 2.9.4
|
173
|
+
type: :development
|
174
|
+
version_requirements: *id010
|
98
175
|
description: "Nokogiri (\xE9\x8B\xB8) is an HTML, XML, SAX, and Reader parser. Among Nokogiri's\n\
|
99
176
|
many features is the ability to search documents via XPath or CSS3 selectors.\n\n\
|
100
177
|
XML is like violence - if it doesn\xE2\x80\x99t solve your problems, you are not using\n\
|
@@ -102,51 +179,53 @@ description: "Nokogiri (\xE9\x8B\xB8) is an HTML, XML, SAX, and Reader parser.
|
|
102
179
|
email:
|
103
180
|
- aaronp@rubyforge.org
|
104
181
|
- mike.dalessio@gmail.com
|
182
|
+
- yokolet@gmail.com
|
105
183
|
executables:
|
106
184
|
- nokogiri
|
107
185
|
extensions:
|
108
186
|
- ext/nokogiri/extconf.rb
|
109
187
|
extra_rdoc_files:
|
110
188
|
- Manifest.txt
|
111
|
-
- CHANGELOG.ja.rdoc
|
112
|
-
- CHANGELOG.rdoc
|
113
189
|
- README.ja.rdoc
|
190
|
+
- CHANGELOG.rdoc
|
191
|
+
- CHANGELOG.ja.rdoc
|
114
192
|
- README.rdoc
|
115
|
-
- ext/nokogiri/
|
116
|
-
- ext/nokogiri/
|
117
|
-
- ext/nokogiri/html_entity_lookup.c
|
193
|
+
- ext/nokogiri/xml_sax_push_parser.c
|
194
|
+
- ext/nokogiri/xml_relax_ng.c
|
118
195
|
- ext/nokogiri/html_sax_parser_context.c
|
196
|
+
- ext/nokogiri/html_entity_lookup.c
|
197
|
+
- ext/nokogiri/xml_text.c
|
119
198
|
- ext/nokogiri/nokogiri.c
|
120
|
-
- ext/nokogiri/xml_attr.c
|
121
|
-
- ext/nokogiri/xml_attribute_decl.c
|
122
|
-
- ext/nokogiri/xml_cdata.c
|
123
|
-
- ext/nokogiri/xml_comment.c
|
124
|
-
- ext/nokogiri/xml_document.c
|
125
|
-
- ext/nokogiri/xml_document_fragment.c
|
126
|
-
- ext/nokogiri/xml_dtd.c
|
127
|
-
- ext/nokogiri/xml_element_content.c
|
128
199
|
- ext/nokogiri/xml_element_decl.c
|
129
200
|
- ext/nokogiri/xml_encoding_handler.c
|
130
|
-
- ext/nokogiri/
|
131
|
-
- ext/nokogiri/
|
201
|
+
- ext/nokogiri/html_document.c
|
202
|
+
- ext/nokogiri/xslt_stylesheet.c
|
203
|
+
- ext/nokogiri/xml_attribute_decl.c
|
132
204
|
- ext/nokogiri/xml_io.c
|
133
|
-
- ext/nokogiri/
|
205
|
+
- ext/nokogiri/xml_document_fragment.c
|
134
206
|
- ext/nokogiri/xml_namespace.c
|
207
|
+
- ext/nokogiri/xml_libxml2_hacks.c
|
208
|
+
- ext/nokogiri/xml_sax_parser_context.c
|
209
|
+
- ext/nokogiri/xml_comment.c
|
210
|
+
- ext/nokogiri/xml_sax_parser.c
|
211
|
+
- ext/nokogiri/html_element_description.c
|
212
|
+
- ext/nokogiri/xml_xpath_context.c
|
213
|
+
- ext/nokogiri/xml_syntax_error.c
|
214
|
+
- ext/nokogiri/xml_document.c
|
215
|
+
- ext/nokogiri/xml_entity_decl.c
|
135
216
|
- ext/nokogiri/xml_node.c
|
136
217
|
- ext/nokogiri/xml_node_set.c
|
137
|
-
- ext/nokogiri/xml_processing_instruction.c
|
138
218
|
- ext/nokogiri/xml_reader.c
|
139
|
-
- ext/nokogiri/
|
140
|
-
- ext/nokogiri/
|
141
|
-
- ext/nokogiri/
|
142
|
-
- ext/nokogiri/
|
219
|
+
- ext/nokogiri/xml_processing_instruction.c
|
220
|
+
- ext/nokogiri/xml_element_content.c
|
221
|
+
- ext/nokogiri/xml_dtd.c
|
222
|
+
- ext/nokogiri/xml_attr.c
|
143
223
|
- ext/nokogiri/xml_schema.c
|
144
|
-
- ext/nokogiri/
|
145
|
-
- ext/nokogiri/
|
146
|
-
- ext/nokogiri/xml_xpath_context.c
|
147
|
-
- ext/nokogiri/xslt_stylesheet.c
|
224
|
+
- ext/nokogiri/xml_cdata.c
|
225
|
+
- ext/nokogiri/xml_entity_reference.c
|
148
226
|
files:
|
149
227
|
- .autotest
|
228
|
+
- .gemtest
|
150
229
|
- CHANGELOG.ja.rdoc
|
151
230
|
- CHANGELOG.rdoc
|
152
231
|
- Manifest.txt
|
@@ -154,60 +233,6 @@ files:
|
|
154
233
|
- README.rdoc
|
155
234
|
- Rakefile
|
156
235
|
- bin/nokogiri
|
157
|
-
- deps.rip
|
158
|
-
- ext/java/nokogiri/EncodingHandler.java
|
159
|
-
- ext/java/nokogiri/HtmlDocument.java
|
160
|
-
- ext/java/nokogiri/HtmlElementDescription.java
|
161
|
-
- ext/java/nokogiri/HtmlEntityLookup.java
|
162
|
-
- ext/java/nokogiri/HtmlSaxParserContext.java
|
163
|
-
- ext/java/nokogiri/NokogiriService.java
|
164
|
-
- ext/java/nokogiri/XmlAttr.java
|
165
|
-
- ext/java/nokogiri/XmlAttributeDecl.java
|
166
|
-
- ext/java/nokogiri/XmlCdata.java
|
167
|
-
- ext/java/nokogiri/XmlComment.java
|
168
|
-
- ext/java/nokogiri/XmlDocument.java
|
169
|
-
- ext/java/nokogiri/XmlDocumentFragment.java
|
170
|
-
- ext/java/nokogiri/XmlDtd.java
|
171
|
-
- ext/java/nokogiri/XmlElement.java
|
172
|
-
- ext/java/nokogiri/XmlElementContent.java
|
173
|
-
- ext/java/nokogiri/XmlElementDecl.java
|
174
|
-
- ext/java/nokogiri/XmlEntityDecl.java
|
175
|
-
- ext/java/nokogiri/XmlEntityReference.java
|
176
|
-
- ext/java/nokogiri/XmlNamespace.java
|
177
|
-
- ext/java/nokogiri/XmlNode.java
|
178
|
-
- ext/java/nokogiri/XmlNodeSet.java
|
179
|
-
- ext/java/nokogiri/XmlProcessingInstruction.java
|
180
|
-
- ext/java/nokogiri/XmlReader.java
|
181
|
-
- ext/java/nokogiri/XmlRelaxng.java
|
182
|
-
- ext/java/nokogiri/XmlSaxParserContext.java
|
183
|
-
- ext/java/nokogiri/XmlSaxPushParser.java
|
184
|
-
- ext/java/nokogiri/XmlSchema.java
|
185
|
-
- ext/java/nokogiri/XmlSyntaxError.java
|
186
|
-
- ext/java/nokogiri/XmlText.java
|
187
|
-
- ext/java/nokogiri/XmlXpathContext.java
|
188
|
-
- ext/java/nokogiri/XsltStylesheet.java
|
189
|
-
- ext/java/nokogiri/internals/HtmlDomParserContext.java
|
190
|
-
- ext/java/nokogiri/internals/NokogiriDocumentCache.java
|
191
|
-
- ext/java/nokogiri/internals/NokogiriErrorHandler.java
|
192
|
-
- ext/java/nokogiri/internals/NokogiriHandler.java
|
193
|
-
- ext/java/nokogiri/internals/NokogiriHelpers.java
|
194
|
-
- ext/java/nokogiri/internals/NokogiriNamespaceCache.java
|
195
|
-
- ext/java/nokogiri/internals/NokogiriNamespaceContext.java
|
196
|
-
- ext/java/nokogiri/internals/NokogiriNonStrictErrorHandler.java
|
197
|
-
- ext/java/nokogiri/internals/NokogiriNonStrictErrorHandler4NekoHtml.java
|
198
|
-
- ext/java/nokogiri/internals/NokogiriStrictErrorHandler.java
|
199
|
-
- ext/java/nokogiri/internals/NokogiriXPathFunction.java
|
200
|
-
- ext/java/nokogiri/internals/NokogiriXPathFunctionResolver.java
|
201
|
-
- ext/java/nokogiri/internals/ParserContext.java
|
202
|
-
- ext/java/nokogiri/internals/PushInputStream.java
|
203
|
-
- ext/java/nokogiri/internals/ReaderNode.java
|
204
|
-
- ext/java/nokogiri/internals/SaveContext.java
|
205
|
-
- ext/java/nokogiri/internals/SchemaErrorHandler.java
|
206
|
-
- ext/java/nokogiri/internals/XmlDeclHandler.java
|
207
|
-
- ext/java/nokogiri/internals/XmlDomParser.java
|
208
|
-
- ext/java/nokogiri/internals/XmlDomParserContext.java
|
209
|
-
- ext/java/nokogiri/internals/XmlSaxParser.java
|
210
|
-
- ext/java/nokogiri/internals/XsltExtensionFunction.java
|
211
236
|
- ext/nokogiri/depend
|
212
237
|
- ext/nokogiri/extconf.rb
|
213
238
|
- ext/nokogiri/html_document.c
|
@@ -276,10 +301,6 @@ files:
|
|
276
301
|
- ext/nokogiri/xml_xpath_context.h
|
277
302
|
- ext/nokogiri/xslt_stylesheet.c
|
278
303
|
- ext/nokogiri/xslt_stylesheet.h
|
279
|
-
- lib/isorelax.jar
|
280
|
-
- lib/jing.jar
|
281
|
-
- lib/nekodtd.jar
|
282
|
-
- lib/nekohtml.jar
|
283
304
|
- lib/nokogiri.rb
|
284
305
|
- lib/nokogiri/css.rb
|
285
306
|
- lib/nokogiri/css/node.rb
|
@@ -339,9 +360,10 @@ files:
|
|
339
360
|
- lib/nokogiri/xml/xpath_context.rb
|
340
361
|
- lib/nokogiri/xslt.rb
|
341
362
|
- lib/nokogiri/xslt/stylesheet.rb
|
342
|
-
- lib/xercesImpl.jar
|
343
363
|
- lib/xsd/xmlparser/nokogiri.rb
|
364
|
+
- nokogiri_help_responses.md
|
344
365
|
- tasks/cross_compile.rb
|
366
|
+
- tasks/nokogiri.org.rb
|
345
367
|
- tasks/test.rb
|
346
368
|
- test/css/test_nthiness.rb
|
347
369
|
- test/css/test_parser.rb
|
@@ -353,9 +375,13 @@ files:
|
|
353
375
|
- test/files/address_book.xml
|
354
376
|
- test/files/bar/bar.xsd
|
355
377
|
- test/files/dont_hurt_em_why.xml
|
378
|
+
- test/files/encoding.html
|
379
|
+
- test/files/encoding.xhtml
|
356
380
|
- test/files/exslt.xml
|
357
381
|
- test/files/exslt.xslt
|
358
382
|
- test/files/foo/foo.xsd
|
383
|
+
- test/files/metacharset.html
|
384
|
+
- test/files/noencoding.html
|
359
385
|
- test/files/po.xml
|
360
386
|
- test/files/po.xsd
|
361
387
|
- test/files/shift_jis.html
|
@@ -420,6 +446,7 @@ files:
|
|
420
446
|
- test/xml/test_unparented_node.rb
|
421
447
|
- test/xml/test_xpath.rb
|
422
448
|
- test/xslt/test_custom_functions.rb
|
449
|
+
- test/xslt/test_exception_handling.rb
|
423
450
|
has_rdoc: true
|
424
451
|
homepage: http://nokogiri.org
|
425
452
|
licenses: []
|
@@ -435,84 +462,85 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
435
462
|
requirements:
|
436
463
|
- - ">="
|
437
464
|
- !ruby/object:Gem::Version
|
438
|
-
hash:
|
465
|
+
hash: 57
|
439
466
|
segments:
|
440
|
-
-
|
441
|
-
|
467
|
+
- 1
|
468
|
+
- 8
|
469
|
+
- 7
|
470
|
+
version: 1.8.7
|
442
471
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
443
472
|
none: false
|
444
473
|
requirements:
|
445
|
-
- - "
|
474
|
+
- - ">="
|
446
475
|
- !ruby/object:Gem::Version
|
447
|
-
hash:
|
476
|
+
hash: 3
|
448
477
|
segments:
|
449
|
-
-
|
450
|
-
|
451
|
-
- 1
|
452
|
-
version: 1.3.1
|
478
|
+
- 0
|
479
|
+
version: "0"
|
453
480
|
requirements: []
|
454
481
|
|
455
482
|
rubyforge_project: nokogiri
|
456
|
-
rubygems_version: 1.
|
483
|
+
rubygems_version: 1.6.0
|
457
484
|
signing_key:
|
458
485
|
specification_version: 3
|
459
486
|
summary: "Nokogiri (\xE9\x8B\xB8) is an HTML, XML, SAX, and Reader parser"
|
460
487
|
test_files:
|
488
|
+
- test/test_convert_xpath.rb
|
489
|
+
- test/test_soap4r_sax.rb
|
490
|
+
- test/test_memory_leak.rb
|
491
|
+
- test/test_nokogiri.rb
|
492
|
+
- test/test_css_cache.rb
|
461
493
|
- test/css/test_nthiness.rb
|
494
|
+
- test/css/test_xpath_visitor.rb
|
462
495
|
- test/css/test_parser.rb
|
463
496
|
- test/css/test_tokenizer.rb
|
464
|
-
- test/css/test_xpath_visitor.rb
|
465
497
|
- test/decorators/test_slop.rb
|
466
|
-
- test/html/sax/test_parser.rb
|
467
|
-
- test/html/sax/test_parser_context.rb
|
468
|
-
- test/html/test_builder.rb
|
469
498
|
- test/html/test_document.rb
|
470
499
|
- test/html/test_document_encoding.rb
|
471
|
-
- test/html/test_document_fragment.rb
|
472
|
-
- test/html/test_element_description.rb
|
473
500
|
- test/html/test_named_characters.rb
|
501
|
+
- test/html/test_document_fragment.rb
|
474
502
|
- test/html/test_node.rb
|
503
|
+
- test/html/test_builder.rb
|
504
|
+
- test/html/sax/test_parser_context.rb
|
505
|
+
- test/html/sax/test_parser.rb
|
475
506
|
- test/html/test_node_encoding.rb
|
476
|
-
- test/
|
477
|
-
- test/test_css_cache.rb
|
478
|
-
- test/test_encoding_handler.rb
|
479
|
-
- test/test_memory_leak.rb
|
480
|
-
- test/test_nokogiri.rb
|
507
|
+
- test/html/test_element_description.rb
|
481
508
|
- test/test_reader.rb
|
482
|
-
- test/
|
483
|
-
- test/
|
484
|
-
- test/xml/
|
485
|
-
- test/xml/node/test_subclass.rb
|
486
|
-
- test/xml/sax/test_parser.rb
|
487
|
-
- test/xml/sax/test_parser_context.rb
|
488
|
-
- test/xml/sax/test_push_parser.rb
|
489
|
-
- test/xml/test_attr.rb
|
490
|
-
- test/xml/test_attribute_decl.rb
|
491
|
-
- test/xml/test_builder.rb
|
492
|
-
- test/xml/test_cdata.rb
|
493
|
-
- test/xml/test_comment.rb
|
509
|
+
- test/xml/test_parse_options.rb
|
510
|
+
- test/xml/test_unparented_node.rb
|
511
|
+
- test/xml/test_element_decl.rb
|
494
512
|
- test/xml/test_document.rb
|
495
|
-
- test/xml/test_document_encoding.rb
|
496
|
-
- test/xml/test_document_fragment.rb
|
497
513
|
- test/xml/test_dtd.rb
|
514
|
+
- test/xml/test_document_encoding.rb
|
515
|
+
- test/xml/test_entity_decl.rb
|
498
516
|
- test/xml/test_dtd_encoding.rb
|
517
|
+
- test/xml/node/test_save_options.rb
|
518
|
+
- test/xml/node/test_subclass.rb
|
519
|
+
- test/xml/test_document_fragment.rb
|
520
|
+
- test/xml/test_cdata.rb
|
521
|
+
- test/xml/test_text.rb
|
522
|
+
- test/xml/test_reader_encoding.rb
|
523
|
+
- test/xml/test_xpath.rb
|
499
524
|
- test/xml/test_element_content.rb
|
500
|
-
- test/xml/test_element_decl.rb
|
501
|
-
- test/xml/test_entity_decl.rb
|
502
|
-
- test/xml/test_entity_reference.rb
|
503
|
-
- test/xml/test_namespace.rb
|
504
525
|
- test/xml/test_node.rb
|
505
|
-
- test/xml/
|
506
|
-
- test/xml/
|
507
|
-
- test/xml/
|
526
|
+
- test/xml/test_builder.rb
|
527
|
+
- test/xml/sax/test_push_parser.rb
|
528
|
+
- test/xml/sax/test_parser_context.rb
|
529
|
+
- test/xml/sax/test_parser.rb
|
530
|
+
- test/xml/test_schema.rb
|
508
531
|
- test/xml/test_node_set.rb
|
509
|
-
- test/xml/
|
532
|
+
- test/xml/test_attr.rb
|
510
533
|
- test/xml/test_processing_instruction.rb
|
511
|
-
- test/xml/
|
512
|
-
- test/xml/test_relax_ng.rb
|
513
|
-
- test/xml/test_schema.rb
|
534
|
+
- test/xml/test_node_encoding.rb
|
514
535
|
- test/xml/test_syntax_error.rb
|
515
|
-
- test/xml/
|
516
|
-
- test/xml/
|
517
|
-
- test/xml/
|
536
|
+
- test/xml/test_comment.rb
|
537
|
+
- test/xml/test_entity_reference.rb
|
538
|
+
- test/xml/test_node_reparenting.rb
|
539
|
+
- test/xml/test_attribute_decl.rb
|
540
|
+
- test/xml/test_relax_ng.rb
|
541
|
+
- test/xml/test_namespace.rb
|
542
|
+
- test/xml/test_node_attributes.rb
|
543
|
+
- test/test_xslt_transforms.rb
|
518
544
|
- test/xslt/test_custom_functions.rb
|
545
|
+
- test/xslt/test_exception_handling.rb
|
546
|
+
- test/test_encoding_handler.rb
|