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.

Files changed (107) hide show
  1. data/.gemtest +0 -0
  2. data/CHANGELOG.ja.rdoc +34 -0
  3. data/CHANGELOG.rdoc +40 -1
  4. data/Manifest.txt +11 -2
  5. data/README.rdoc +1 -1
  6. data/Rakefile +100 -104
  7. data/bin/nokogiri +1 -2
  8. data/ext/nokogiri/nokogiri.c +24 -1
  9. data/ext/nokogiri/xml_io.c +32 -7
  10. data/ext/nokogiri/xml_node.c +14 -13
  11. data/ext/nokogiri/xml_sax_parser.c +9 -4
  12. data/ext/nokogiri/xslt_stylesheet.c +7 -1
  13. data/lib/nokogiri.rb +3 -22
  14. data/lib/nokogiri/css.rb +4 -0
  15. data/lib/nokogiri/html/document.rb +10 -14
  16. data/lib/nokogiri/version.rb +76 -23
  17. data/lib/nokogiri/xml/builder.rb +7 -0
  18. data/lib/nokogiri/xml/document.rb +17 -1
  19. data/lib/nokogiri/xml/document_fragment.rb +14 -0
  20. data/lib/nokogiri/xml/node.rb +36 -28
  21. data/lib/nokogiri/xml/node/save_options.rb +17 -1
  22. data/lib/nokogiri/xml/node_set.rb +7 -0
  23. data/lib/nokogiri/xml/parse_options.rb +8 -0
  24. data/lib/nokogiri/xml/reader.rb +6 -6
  25. data/lib/nokogiri/xml/schema.rb +7 -1
  26. data/nokogiri_help_responses.md +40 -0
  27. data/tasks/cross_compile.rb +134 -159
  28. data/tasks/nokogiri.org.rb +18 -0
  29. data/tasks/test.rb +1 -1
  30. data/test/files/encoding.html +82 -0
  31. data/test/files/encoding.xhtml +84 -0
  32. data/test/files/metacharset.html +10 -0
  33. data/test/files/noencoding.html +47 -0
  34. data/test/helper.rb +2 -0
  35. data/test/html/test_document.rb +15 -0
  36. data/test/html/test_document_encoding.rb +13 -0
  37. data/test/test_memory_leak.rb +20 -0
  38. data/test/test_reader.rb +22 -0
  39. data/test/test_xslt_transforms.rb +6 -2
  40. data/test/xml/node/test_save_options.rb +10 -2
  41. data/test/xml/test_builder.rb +17 -0
  42. data/test/xml/test_document.rb +22 -0
  43. data/test/xml/test_node.rb +19 -1
  44. data/test/xml/test_node_reparenting.rb +16 -3
  45. data/test/xml/test_node_set.rb +34 -0
  46. data/test/xml/test_schema.rb +5 -0
  47. data/test/xslt/test_exception_handling.rb +37 -0
  48. metadata +185 -157
  49. data/deps.rip +0 -5
  50. data/ext/java/nokogiri/EncodingHandler.java +0 -124
  51. data/ext/java/nokogiri/HtmlDocument.java +0 -149
  52. data/ext/java/nokogiri/HtmlElementDescription.java +0 -145
  53. data/ext/java/nokogiri/HtmlEntityLookup.java +0 -79
  54. data/ext/java/nokogiri/HtmlSaxParserContext.java +0 -259
  55. data/ext/java/nokogiri/NokogiriService.java +0 -535
  56. data/ext/java/nokogiri/XmlAttr.java +0 -191
  57. data/ext/java/nokogiri/XmlAttributeDecl.java +0 -130
  58. data/ext/java/nokogiri/XmlCdata.java +0 -91
  59. data/ext/java/nokogiri/XmlComment.java +0 -86
  60. data/ext/java/nokogiri/XmlDocument.java +0 -529
  61. data/ext/java/nokogiri/XmlDocumentFragment.java +0 -217
  62. data/ext/java/nokogiri/XmlDtd.java +0 -467
  63. data/ext/java/nokogiri/XmlElement.java +0 -222
  64. data/ext/java/nokogiri/XmlElementContent.java +0 -382
  65. data/ext/java/nokogiri/XmlElementDecl.java +0 -148
  66. data/ext/java/nokogiri/XmlEntityDecl.java +0 -162
  67. data/ext/java/nokogiri/XmlEntityReference.java +0 -75
  68. data/ext/java/nokogiri/XmlNamespace.java +0 -128
  69. data/ext/java/nokogiri/XmlNode.java +0 -1399
  70. data/ext/java/nokogiri/XmlNodeSet.java +0 -311
  71. data/ext/java/nokogiri/XmlProcessingInstruction.java +0 -103
  72. data/ext/java/nokogiri/XmlReader.java +0 -411
  73. data/ext/java/nokogiri/XmlRelaxng.java +0 -144
  74. data/ext/java/nokogiri/XmlSaxParserContext.java +0 -367
  75. data/ext/java/nokogiri/XmlSaxPushParser.java +0 -184
  76. data/ext/java/nokogiri/XmlSchema.java +0 -319
  77. data/ext/java/nokogiri/XmlSyntaxError.java +0 -119
  78. data/ext/java/nokogiri/XmlText.java +0 -136
  79. data/ext/java/nokogiri/XmlXpathContext.java +0 -179
  80. data/ext/java/nokogiri/XsltStylesheet.java +0 -183
  81. data/ext/java/nokogiri/internals/HtmlDomParserContext.java +0 -206
  82. data/ext/java/nokogiri/internals/NokogiriDocumentCache.java +0 -73
  83. data/ext/java/nokogiri/internals/NokogiriErrorHandler.java +0 -86
  84. data/ext/java/nokogiri/internals/NokogiriHandler.java +0 -327
  85. data/ext/java/nokogiri/internals/NokogiriHelpers.java +0 -582
  86. data/ext/java/nokogiri/internals/NokogiriNamespaceCache.java +0 -171
  87. data/ext/java/nokogiri/internals/NokogiriNamespaceContext.java +0 -118
  88. data/ext/java/nokogiri/internals/NokogiriNonStrictErrorHandler.java +0 -74
  89. data/ext/java/nokogiri/internals/NokogiriNonStrictErrorHandler4NekoHtml.java +0 -121
  90. data/ext/java/nokogiri/internals/NokogiriStrictErrorHandler.java +0 -79
  91. data/ext/java/nokogiri/internals/NokogiriXPathFunction.java +0 -126
  92. data/ext/java/nokogiri/internals/NokogiriXPathFunctionResolver.java +0 -56
  93. data/ext/java/nokogiri/internals/ParserContext.java +0 -278
  94. data/ext/java/nokogiri/internals/PushInputStream.java +0 -411
  95. data/ext/java/nokogiri/internals/ReaderNode.java +0 -474
  96. data/ext/java/nokogiri/internals/SaveContext.java +0 -288
  97. data/ext/java/nokogiri/internals/SchemaErrorHandler.java +0 -76
  98. data/ext/java/nokogiri/internals/XmlDeclHandler.java +0 -42
  99. data/ext/java/nokogiri/internals/XmlDomParser.java +0 -77
  100. data/ext/java/nokogiri/internals/XmlDomParserContext.java +0 -238
  101. data/ext/java/nokogiri/internals/XmlSaxParser.java +0 -65
  102. data/ext/java/nokogiri/internals/XsltExtensionFunction.java +0 -72
  103. data/lib/isorelax.jar +0 -0
  104. data/lib/jing.jar +0 -0
  105. data/lib/nekodtd.jar +0 -0
  106. data/lib/nekohtml.jar +0 -0
  107. data/lib/xercesImpl.jar +0 -0
@@ -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
@@ -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 '&amp;', foo
719
733
  end
720
734
 
721
- def test_content
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> &amp;'
729
743
  assert_equal('& <foo> &amp;', node.content)
730
744
  assert_equal('<form>&amp; &lt;foo&gt; &amp;amp;</form>', node.to_xml)
745
+
746
+ node.content = "1234 <-> 1234"
747
+ assert_equal "1234 <-> 1234", node.content
748
+ assert_equal "<form>1234 &lt;-&gt; 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 => false, :children_tags => %w[text b1 b2]},
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>
@@ -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
@@ -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: 62196443
5
- prerelease: true
4
+ hash: 3
5
+ prerelease:
6
6
  segments:
7
7
  - 1
8
8
  - 5
9
9
  - 0
10
- - beta
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-27 00:00:00 -08:00
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: 3
31
+ hash: 11
33
32
  segments:
34
- - 0
35
- version: "0"
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: 3
47
+ hash: 29
47
48
  segments:
49
+ - 1
48
50
  - 0
49
- version: "0"
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: 3
63
+ hash: 17
61
64
  segments:
62
65
  - 0
63
- version: "0"
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: 15
79
+ hash: 3
75
80
  segments:
76
- - 1
77
- - 6
78
- - 0
79
- version: 1.6.0
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: hoe
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: 47
95
+ hash: 19
91
96
  segments:
92
- - 2
93
- - 8
94
97
  - 0
95
- version: 2.8.0
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/html_document.c
116
- - ext/nokogiri/html_element_description.c
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/xml_entity_decl.c
131
- - ext/nokogiri/xml_entity_reference.c
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/xml_libxml2_hacks.c
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/xml_relax_ng.c
140
- - ext/nokogiri/xml_sax_parser.c
141
- - ext/nokogiri/xml_sax_parser_context.c
142
- - ext/nokogiri/xml_sax_push_parser.c
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/xml_syntax_error.c
145
- - ext/nokogiri/xml_text.c
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: 3
465
+ hash: 57
439
466
  segments:
440
- - 0
441
- version: "0"
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: 25
476
+ hash: 3
448
477
  segments:
449
- - 1
450
- - 3
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.3.7
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/test_convert_xpath.rb
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/test_soap4r_sax.rb
483
- - test/test_xslt_transforms.rb
484
- - test/xml/node/test_save_options.rb
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/test_node_attributes.rb
506
- - test/xml/test_node_encoding.rb
507
- - test/xml/test_node_reparenting.rb
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/test_parse_options.rb
532
+ - test/xml/test_attr.rb
510
533
  - test/xml/test_processing_instruction.rb
511
- - test/xml/test_reader_encoding.rb
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/test_text.rb
516
- - test/xml/test_unparented_node.rb
517
- - test/xml/test_xpath.rb
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