nokogiri 1.5.0-java → 1.5.1-java

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 (81) hide show
  1. data/CHANGELOG.ja.rdoc +56 -12
  2. data/CHANGELOG.rdoc +45 -0
  3. data/C_CODING_STYLE.rdoc +27 -0
  4. data/Manifest.txt +4 -0
  5. data/README.rdoc +11 -7
  6. data/Rakefile +44 -26
  7. data/bin/nokogiri +10 -2
  8. data/ext/java/nokogiri/HtmlDocument.java +37 -2
  9. data/ext/java/nokogiri/NokogiriService.java +10 -2
  10. data/ext/java/nokogiri/XmlAttr.java +1 -1
  11. data/ext/java/nokogiri/XmlDocument.java +68 -11
  12. data/ext/java/nokogiri/XmlDocumentFragment.java +16 -5
  13. data/ext/java/nokogiri/XmlElement.java +0 -40
  14. data/ext/java/nokogiri/XmlNamespace.java +8 -1
  15. data/ext/java/nokogiri/XmlNode.java +131 -27
  16. data/ext/java/nokogiri/XmlNodeSet.java +4 -1
  17. data/ext/java/nokogiri/XmlSaxParserContext.java +2 -13
  18. data/ext/java/nokogiri/XmlXpathContext.java +4 -1
  19. data/ext/java/nokogiri/XsltStylesheet.java +198 -37
  20. data/ext/java/nokogiri/internals/HtmlDomParserContext.java +40 -2
  21. data/ext/java/nokogiri/internals/NokogiriHelpers.java +82 -9
  22. data/ext/java/nokogiri/internals/NokogiriXsltErrorListener.java +4 -3
  23. data/ext/java/nokogiri/internals/ParserContext.java +33 -3
  24. data/ext/java/nokogiri/internals/SaveContextVisitor.java +203 -12
  25. data/ext/java/nokogiri/internals/XmlDomParser.java +33 -2
  26. data/ext/java/nokogiri/internals/XmlDomParserContext.java +32 -12
  27. data/ext/nokogiri/extconf.rb +11 -3
  28. data/ext/nokogiri/html_document.c +16 -0
  29. data/ext/nokogiri/html_sax_parser_context.c +59 -37
  30. data/ext/nokogiri/html_sax_push_parser.c +87 -0
  31. data/ext/nokogiri/html_sax_push_parser.h +9 -0
  32. data/ext/nokogiri/nokogiri.c +6 -8
  33. data/ext/nokogiri/nokogiri.h +3 -0
  34. data/ext/nokogiri/xml_document.c +101 -3
  35. data/ext/nokogiri/xml_document.h +3 -3
  36. data/ext/nokogiri/xml_node.c +150 -58
  37. data/ext/nokogiri/xml_node_set.c +169 -120
  38. data/ext/nokogiri/xml_node_set.h +5 -0
  39. data/ext/nokogiri/xml_sax_parser_context.c +64 -41
  40. data/ext/nokogiri/xml_text.c +2 -0
  41. data/ext/nokogiri/xml_xpath_context.c +30 -24
  42. data/ext/nokogiri/xslt_stylesheet.c +62 -16
  43. data/ext/nokogiri/xslt_stylesheet.h +5 -0
  44. data/lib/nokogiri/css/parser.rb +163 -157
  45. data/lib/nokogiri/css/parser.y +6 -3
  46. data/lib/nokogiri/css/tokenizer.rb +1 -1
  47. data/lib/nokogiri/css/tokenizer.rex +1 -1
  48. data/lib/nokogiri/html.rb +1 -0
  49. data/lib/nokogiri/html/document.rb +82 -42
  50. data/lib/nokogiri/html/sax/push_parser.rb +16 -0
  51. data/lib/nokogiri/nokogiri.jar +0 -0
  52. data/lib/nokogiri/version.rb +1 -1
  53. data/lib/nokogiri/xml.rb +6 -0
  54. data/lib/nokogiri/xml/builder.rb +7 -1
  55. data/lib/nokogiri/xml/document.rb +32 -17
  56. data/lib/nokogiri/xml/document_fragment.rb +6 -1
  57. data/lib/nokogiri/xml/node.rb +40 -9
  58. data/lib/nokogiri/xslt.rb +5 -1
  59. data/tasks/cross_compile.rb +1 -0
  60. data/tasks/nokogiri.org.rb +6 -0
  61. data/tasks/test.rb +1 -0
  62. data/test/css/test_xpath_visitor.rb +6 -0
  63. data/test/helper.rb +1 -0
  64. data/test/html/test_document.rb +26 -0
  65. data/test/html/test_document_fragment.rb +1 -2
  66. data/test/test_memory_leak.rb +81 -1
  67. data/test/test_xslt_transforms.rb +152 -123
  68. data/test/xml/test_builder.rb +24 -2
  69. data/test/xml/test_c14n.rb +151 -0
  70. data/test/xml/test_document.rb +48 -0
  71. data/test/xml/test_namespace.rb +5 -0
  72. data/test/xml/test_node.rb +82 -1
  73. data/test/xml/test_node_attributes.rb +19 -0
  74. data/test/xml/test_node_inheritance.rb +32 -0
  75. data/test/xml/test_node_reparenting.rb +32 -0
  76. data/test/xml/test_node_set.rb +16 -8
  77. data/test/xml/test_reader_encoding.rb +16 -0
  78. data/test/xml/test_unparented_node.rb +32 -0
  79. data/test/xml/test_xinclude.rb +83 -0
  80. data/test/xml/test_xpath.rb +22 -0
  81. metadata +147 -123
@@ -246,6 +246,22 @@ module Nokogiri
246
246
  replacee.add_previous_sibling "foo <p></p> bar"
247
247
  assert_equal "foo <p></p> bartext node", xml.root.children.to_html
248
248
  end
249
+
250
+ describe "with a text node before" do
251
+ it "should not defensively dup the 'before' text node" do
252
+ xml = Nokogiri::XML %Q(<root>before<p></p>after</root>)
253
+ pivot = xml.at_css("p")
254
+ before = xml.root.children.first
255
+ after = xml.root.children.last
256
+ pivot.add_previous_sibling("x")
257
+
258
+ assert_equal "after", after.content
259
+ assert !after.parent.nil?, "unrelated node should not be affected"
260
+
261
+ assert_equal "before", before.content
262
+ assert !before.parent.nil?, "no need to reparent"
263
+ end
264
+ end
249
265
  end
250
266
 
251
267
  describe "#add_next_sibling" do
@@ -255,6 +271,22 @@ module Nokogiri
255
271
  replacee.add_next_sibling "foo <p></p> bar"
256
272
  assert_equal "text nodefoo <p></p> bar", xml.root.children.to_html
257
273
  end
274
+
275
+ describe "with a text node after" do
276
+ it "should not defensively dup the 'after' text node" do
277
+ xml = Nokogiri::XML %Q(<root>before<p></p>after</root>)
278
+ pivot = xml.at_css("p")
279
+ before = xml.root.children.first
280
+ after = xml.root.children.last
281
+ pivot.add_next_sibling("x")
282
+
283
+ assert_equal "before", before.content
284
+ assert !before.parent.nil?, "unrelated node should not be affected"
285
+
286
+ assert_equal "after", after.content
287
+ assert !after.parent.nil?
288
+ end
289
+ end
258
290
  end
259
291
 
260
292
  describe "#replace" do
@@ -22,6 +22,12 @@ module Nokogiri
22
22
  @list.push @list.first
23
23
  @list.delete @list.first
24
24
  end
25
+
26
+ def test_reference_after_delete
27
+ first = @list.first
28
+ @list.delete(first)
29
+ assert_equal 'http://www.w3.org/XML/1998/namespace', first.href
30
+ end
25
31
  end
26
32
 
27
33
  def setup
@@ -634,14 +640,16 @@ module Nokogiri
634
640
  end
635
641
 
636
642
  def test_should_not_splode_when_accessing_namespace_declarations_in_a_node_set
637
- xml = Nokogiri::XML "<foo></foo>"
638
- node_set = xml.xpath("//namespace::*")
639
- assert_equal 1, node_set.size
640
- node = node_set.first
641
- node.to_s # segfaults in 1.4.0 and earlier
642
-
643
- # if we haven't segfaulted, let's make sure we handled it correctly
644
- assert_instance_of Nokogiri::XML::Namespace, node
643
+ 2.times do
644
+ xml = Nokogiri::XML "<foo></foo>"
645
+ node_set = xml.xpath("//namespace::*")
646
+ assert_equal 1, node_set.size
647
+ node = node_set.first
648
+ node.to_s # segfaults in 1.4.0 and earlier
649
+
650
+ # if we haven't segfaulted, let's make sure we handled it correctly
651
+ assert_instance_of Nokogiri::XML::Namespace, node
652
+ end
645
653
  end
646
654
 
647
655
  def test_should_not_splode_when_arrayifying_node_set_containing_namespace_declarations
@@ -120,6 +120,22 @@ module Nokogiri
120
120
  assert_equal @reader.encoding, name.encoding.name
121
121
  end
122
122
  end
123
+
124
+ def test_value_lookup_segfault
125
+ skip("JRuby doesn't do GC.") if Nokogiri.jruby?
126
+ old_stress = GC.stress
127
+
128
+ begin
129
+ GC.stress = true
130
+
131
+ while node = @reader.read
132
+ nodes = node.send(:attr_nodes)
133
+ nodes.first.name if nodes.first
134
+ end
135
+ ensure
136
+ GC.stress = old_stress
137
+ end
138
+ end
123
139
  end
124
140
  end
125
141
  end
@@ -223,6 +223,38 @@ module Nokogiri
223
223
  right_space.add_next_sibling(left_space)
224
224
  assert_equal left_space, right_space
225
225
  end
226
+
227
+ def test_add_next_sibling_to_root_raises_exception
228
+ xml = Nokogiri::XML(<<-eoxml)
229
+ <root />
230
+ eoxml
231
+
232
+ node = Nokogiri::XML::Node.new 'child', xml
233
+
234
+ assert_raise(ArgumentError) do
235
+ xml.root.add_next_sibling(node)
236
+ end
237
+ end
238
+
239
+ def test_add_previous_sibling_to_root_raises_exception
240
+ xml = Nokogiri::XML(<<-eoxml)
241
+ <root />
242
+ eoxml
243
+
244
+ node = Nokogiri::XML::Node.new 'child', xml
245
+
246
+ assert_raise(ArgumentError) do
247
+ xml.root.add_previous_sibling(node)
248
+ end
249
+ end
250
+
251
+ def test_add_pi_as_previous_sibling_to_root_is_ok
252
+ doc = Nokogiri::XML "<root>foo</root>"
253
+ pi = Nokogiri::XML::ProcessingInstruction.new(doc, "xml-stylesheet", %q{type="text/xsl" href="foo.xsl"})
254
+ doc.root.add_previous_sibling pi
255
+ expected_doc = %Q{<?xml version="1.0"?>\n<?xml-stylesheet type="text/xsl" href="foo.xsl"?>\n<root>foo</root>\n}
256
+ assert_equal expected_doc, doc.to_xml
257
+ end
226
258
 
227
259
  def test_find_by_css_with_tilde_eql
228
260
  xml = Nokogiri::XML.parse(<<-eoxml)
@@ -0,0 +1,83 @@
1
+ require "helper"
2
+
3
+ module Nokogiri
4
+ module XML
5
+ class TestXInclude < Nokogiri::TestCase
6
+ def setup
7
+ super
8
+ @xml = Nokogiri::XML.parse(File.read(XML_XINCLUDE_FILE), XML_XINCLUDE_FILE)
9
+ @included = "this snippet is to be included from xinclude.xml"
10
+ end
11
+
12
+ def test_xinclude_on_document_parse
13
+ skip("Pure Java version XInlcude has a conflict with NekoDTD setting. This will be fixed later.") if Nokogiri.jruby?
14
+ # first test that xinclude works when requested
15
+ xml_doc = nil
16
+
17
+ File.open(XML_XINCLUDE_FILE) do |fp|
18
+ xml_doc = Nokogiri::XML(fp) do |conf|
19
+ conf.strict.dtdload.noent.nocdata.xinclude
20
+ end
21
+ end
22
+
23
+ assert_not_nil xml_doc
24
+ assert_not_nil included = xml_doc.at_xpath('//included')
25
+ assert_equal @included, included.content
26
+
27
+ # no xinclude should happen when not requested
28
+ xml_doc = nil
29
+
30
+ File.open(XML_XINCLUDE_FILE) do |fp|
31
+ xml_doc = Nokogiri::XML(fp) do |conf|
32
+ conf.strict.dtdload.noent.nocdata
33
+ end
34
+ end
35
+
36
+ assert_not_nil xml_doc
37
+ assert_nil xml_doc.at_xpath('//included')
38
+ end
39
+
40
+ def test_xinclude_on_document_node
41
+ skip("Pure Java version turns XInlcude on against a parser.") if Nokogiri.jruby?
42
+ assert_nil @xml.at_xpath('//included')
43
+ @xml.do_xinclude
44
+ assert_not_nil included = @xml.at_xpath('//included')
45
+ assert_equal @included, included.content
46
+ end
47
+
48
+ def test_xinclude_on_element_subtree
49
+ skip("Pure Java version turns XInlcude on against a parser.") if Nokogiri.jruby?
50
+ assert_nil @xml.at_xpath('//included')
51
+ @xml.root.do_xinclude
52
+ assert_not_nil included = @xml.at_xpath('//included')
53
+ assert_equal @included, included.content
54
+ end
55
+
56
+ def test_do_xinclude_accepts_block
57
+ non_default_options = Nokogiri::XML::ParseOptions::NOBLANKS | \
58
+ Nokogiri::XML::ParseOptions::XINCLUDE
59
+
60
+ @xml.do_xinclude(non_default_options) do |options|
61
+ assert_equal non_default_options, options.to_i
62
+ end
63
+ end
64
+
65
+ def test_include_nonexistent_throws_exception
66
+ skip("Pure Java version behaves differently") if Nokogiri.jruby?
67
+ # break inclusion deliberately
68
+ @xml.at_xpath('//xi:include')['href'] = "nonexistent.xml"
69
+
70
+ exception_raised = false
71
+ begin
72
+ @xml.do_xinclude { |opts| opts.nowarning }
73
+ rescue Exception => e
74
+ assert_equal Nokogiri::XML::SyntaxError, e.class
75
+ exception_raised = true
76
+ end
77
+
78
+ assert exception_raised
79
+ end
80
+
81
+ end
82
+ end
83
+ end
@@ -58,6 +58,10 @@ module Nokogiri
58
58
  def saves_node_set node_set
59
59
  @things = node_set
60
60
  end
61
+
62
+ def value
63
+ 123.456
64
+ end
61
65
  }.new
62
66
  end
63
67
 
@@ -130,6 +134,15 @@ module Nokogiri
130
134
  assert_equal(['asdf'] * set.length, @handler.things)
131
135
  end
132
136
 
137
+ def test_custom_xpath_function_returns_string
138
+ if Nokogiri.uses_libxml?
139
+ result = @xml.xpath('thing("asdf")', @handler)
140
+ else
141
+ result = @xml.xpath('nokogiri:thing("asdf")', @ns, @handler)
142
+ end
143
+ assert_equal 'asdf', result
144
+ end
145
+
133
146
  def test_custom_xpath_gets_true_booleans
134
147
  set = @xml.xpath('//employee')
135
148
  if Nokogiri.uses_libxml?
@@ -232,6 +245,15 @@ module Nokogiri
232
245
 
233
246
  assert_equal doc.xpath("//tool[@name='hammer']"), doc.xpath(xpath, tool_inspector)
234
247
  end
248
+
249
+ def test_custom_xpath_without_arguments
250
+ if Nokogiri.uses_libxml?
251
+ value = @xml.xpath('value()', @handler)
252
+ else
253
+ value = @xml.xpath('nokogiri:value()', @ns, @handler)
254
+ end
255
+ assert_equal 123.456, value
256
+ end
235
257
  end
236
258
  end
237
259
  end
metadata CHANGED
@@ -2,7 +2,7 @@
2
2
  name: nokogiri
3
3
  version: !ruby/object:Gem::Version
4
4
  prerelease:
5
- version: 1.5.0
5
+ version: 1.5.1
6
6
  platform: java
7
7
  authors:
8
8
  - Aaron Patterson
@@ -12,119 +12,129 @@ autorequire:
12
12
  bindir: bin
13
13
  cert_chain: []
14
14
 
15
- date: 2011-07-01 00:00:00 -04:00
16
- default_executable:
15
+ date: 2012-03-09 00:00:00 Z
17
16
  dependencies:
18
17
  - !ruby/object:Gem::Dependency
19
- name: racc
20
- prerelease: false
21
- requirement: &id001 !ruby/object:Gem::Requirement
18
+ name: hoe-bundler
19
+ version_requirements: &id001 !ruby/object:Gem::Requirement
22
20
  none: false
23
21
  requirements:
24
22
  - - ">="
25
23
  - !ruby/object:Gem::Version
26
- version: 1.4.6
24
+ version: "1.1"
25
+ requirement: *id001
26
+ prerelease: false
27
27
  type: :development
28
- version_requirements: *id001
29
28
  - !ruby/object:Gem::Dependency
30
- name: rexical
31
- prerelease: false
32
- requirement: &id002 !ruby/object:Gem::Requirement
29
+ name: hoe-debugging
30
+ version_requirements: &id002 !ruby/object:Gem::Requirement
33
31
  none: false
34
32
  requirements:
35
33
  - - ">="
36
34
  - !ruby/object:Gem::Version
37
- version: 1.0.5
35
+ version: 1.0.3
36
+ requirement: *id002
37
+ prerelease: false
38
38
  type: :development
39
- version_requirements: *id002
40
39
  - !ruby/object:Gem::Dependency
41
- name: rake-compiler
42
- prerelease: false
43
- requirement: &id003 !ruby/object:Gem::Requirement
40
+ name: hoe-gemspec
41
+ version_requirements: &id003 !ruby/object:Gem::Requirement
44
42
  none: false
45
43
  requirements:
46
44
  - - ">="
47
45
  - !ruby/object:Gem::Version
48
- version: 0.7.9
46
+ version: "1.0"
47
+ requirement: *id003
48
+ prerelease: false
49
49
  type: :development
50
- version_requirements: *id003
51
50
  - !ruby/object:Gem::Dependency
52
- name: minitest
53
- prerelease: false
54
- requirement: &id004 !ruby/object:Gem::Requirement
51
+ name: hoe-git
52
+ version_requirements: &id004 !ruby/object:Gem::Requirement
55
53
  none: false
56
54
  requirements:
57
- - - ~>
55
+ - - ">="
58
56
  - !ruby/object:Gem::Version
59
- version: 2.2.2
57
+ version: "1.4"
58
+ requirement: *id004
59
+ prerelease: false
60
60
  type: :development
61
- version_requirements: *id004
62
61
  - !ruby/object:Gem::Dependency
63
62
  name: mini_portile
64
- prerelease: false
65
- requirement: &id005 !ruby/object:Gem::Requirement
63
+ version_requirements: &id005 !ruby/object:Gem::Requirement
66
64
  none: false
67
65
  requirements:
68
66
  - - ">="
69
67
  - !ruby/object:Gem::Version
70
68
  version: 0.2.2
69
+ requirement: *id005
70
+ prerelease: false
71
71
  type: :development
72
- version_requirements: *id005
73
72
  - !ruby/object:Gem::Dependency
74
- name: hoe-debugging
75
- prerelease: false
76
- requirement: &id006 !ruby/object:Gem::Requirement
73
+ name: minitest
74
+ version_requirements: &id006 !ruby/object:Gem::Requirement
77
75
  none: false
78
76
  requirements:
79
- - - ">="
77
+ - - ~>
80
78
  - !ruby/object:Gem::Version
81
- version: "0"
79
+ version: 2.2.2
80
+ requirement: *id006
81
+ prerelease: false
82
82
  type: :development
83
- version_requirements: *id006
84
83
  - !ruby/object:Gem::Dependency
85
- name: hoe-git
86
- prerelease: false
87
- requirement: &id007 !ruby/object:Gem::Requirement
84
+ name: racc
85
+ version_requirements: &id007 !ruby/object:Gem::Requirement
88
86
  none: false
89
87
  requirements:
90
88
  - - ">="
91
89
  - !ruby/object:Gem::Version
92
- version: "0"
90
+ version: 1.4.6
91
+ requirement: *id007
92
+ prerelease: false
93
93
  type: :development
94
- version_requirements: *id007
95
94
  - !ruby/object:Gem::Dependency
96
- name: hoe-gemspec
95
+ name: rake-compiler
96
+ version_requirements: &id008 !ruby/object:Gem::Requirement
97
+ none: false
98
+ requirements:
99
+ - - "="
100
+ - !ruby/object:Gem::Version
101
+ version: 0.8.0
102
+ requirement: *id008
97
103
  prerelease: false
98
- requirement: &id008 !ruby/object:Gem::Requirement
104
+ type: :development
105
+ - !ruby/object:Gem::Dependency
106
+ name: rexical
107
+ version_requirements: &id009 !ruby/object:Gem::Requirement
99
108
  none: false
100
109
  requirements:
101
110
  - - ">="
102
111
  - !ruby/object:Gem::Version
103
- version: "0"
112
+ version: 1.0.5
113
+ requirement: *id009
114
+ prerelease: false
104
115
  type: :development
105
- version_requirements: *id008
106
116
  - !ruby/object:Gem::Dependency
107
- name: hoe-bundler
108
- prerelease: false
109
- requirement: &id009 !ruby/object:Gem::Requirement
117
+ name: rdoc
118
+ version_requirements: &id010 !ruby/object:Gem::Requirement
110
119
  none: false
111
120
  requirements:
112
- - - ">="
121
+ - - ~>
113
122
  - !ruby/object:Gem::Version
114
- version: "0"
123
+ version: "3.10"
124
+ requirement: *id010
125
+ prerelease: false
115
126
  type: :development
116
- version_requirements: *id009
117
127
  - !ruby/object:Gem::Dependency
118
128
  name: hoe
119
- prerelease: false
120
- requirement: &id010 !ruby/object:Gem::Requirement
129
+ version_requirements: &id011 !ruby/object:Gem::Requirement
121
130
  none: false
122
131
  requirements:
123
- - - ">="
132
+ - - ~>
124
133
  - !ruby/object:Gem::Version
125
- version: 2.9.4
134
+ version: "2.13"
135
+ requirement: *id011
136
+ prerelease: false
126
137
  type: :development
127
- version_requirements: *id010
128
138
  description: "Nokogiri (\xE9\x8B\xB8) is an HTML, XML, SAX, and Reader parser. Among Nokogiri's\n\
129
139
  many features is the ability to search documents via XPath or CSS3 selectors.\n\n\
130
140
  XML is like violence - if it doesn\xE2\x80\x99t solve your problems, you are not using\n\
@@ -139,43 +149,45 @@ extensions: []
139
149
 
140
150
  extra_rdoc_files:
141
151
  - Manifest.txt
142
- - README.ja.rdoc
143
- - CHANGELOG.rdoc
144
152
  - CHANGELOG.ja.rdoc
153
+ - README.ja.rdoc
145
154
  - README.rdoc
146
- - ext/nokogiri/xml_sax_push_parser.c
147
- - ext/nokogiri/xml_relax_ng.c
148
- - ext/nokogiri/html_sax_parser_context.c
149
- - ext/nokogiri/html_entity_lookup.c
155
+ - C_CODING_STYLE.rdoc
156
+ - CHANGELOG.rdoc
157
+ - ext/nokogiri/xml_encoding_handler.c
158
+ - ext/nokogiri/html_sax_push_parser.c
159
+ - ext/nokogiri/xml_processing_instruction.c
150
160
  - ext/nokogiri/xml_text.c
161
+ - ext/nokogiri/xml_entity_reference.c
162
+ - ext/nokogiri/xml_relax_ng.c
151
163
  - ext/nokogiri/nokogiri.c
164
+ - ext/nokogiri/xml_node.c
165
+ - ext/nokogiri/xml_attr.c
166
+ - ext/nokogiri/xml_reader.c
167
+ - ext/nokogiri/xml_entity_decl.c
152
168
  - ext/nokogiri/xml_element_decl.c
153
- - ext/nokogiri/xml_encoding_handler.c
154
- - ext/nokogiri/html_document.c
155
- - ext/nokogiri/xslt_stylesheet.c
156
- - ext/nokogiri/xml_attribute_decl.c
157
- - ext/nokogiri/xml_io.c
158
- - ext/nokogiri/xml_document_fragment.c
159
- - ext/nokogiri/xml_namespace.c
160
- - ext/nokogiri/xml_libxml2_hacks.c
161
- - ext/nokogiri/xml_sax_parser_context.c
162
- - ext/nokogiri/xml_comment.c
163
- - ext/nokogiri/xml_sax_parser.c
164
169
  - ext/nokogiri/html_element_description.c
165
- - ext/nokogiri/xml_xpath_context.c
170
+ - ext/nokogiri/xslt_stylesheet.c
166
171
  - ext/nokogiri/xml_syntax_error.c
167
172
  - ext/nokogiri/xml_document.c
168
- - ext/nokogiri/xml_entity_decl.c
169
- - ext/nokogiri/xml_node.c
170
- - ext/nokogiri/xml_node_set.c
171
- - ext/nokogiri/xml_reader.c
172
- - ext/nokogiri/xml_processing_instruction.c
173
- - ext/nokogiri/xml_element_content.c
174
173
  - ext/nokogiri/xml_dtd.c
175
- - ext/nokogiri/xml_attr.c
176
- - ext/nokogiri/xml_schema.c
177
174
  - ext/nokogiri/xml_cdata.c
178
- - ext/nokogiri/xml_entity_reference.c
175
+ - ext/nokogiri/xml_sax_parser.c
176
+ - ext/nokogiri/xml_comment.c
177
+ - ext/nokogiri/xml_node_set.c
178
+ - ext/nokogiri/xml_xpath_context.c
179
+ - ext/nokogiri/html_entity_lookup.c
180
+ - ext/nokogiri/xml_sax_push_parser.c
181
+ - ext/nokogiri/xml_sax_parser_context.c
182
+ - ext/nokogiri/xml_io.c
183
+ - ext/nokogiri/xml_libxml2_hacks.c
184
+ - ext/nokogiri/html_document.c
185
+ - ext/nokogiri/xml_attribute_decl.c
186
+ - ext/nokogiri/xml_document_fragment.c
187
+ - ext/nokogiri/xml_schema.c
188
+ - ext/nokogiri/xml_element_content.c
189
+ - ext/nokogiri/html_sax_parser_context.c
190
+ - ext/nokogiri/xml_namespace.c
179
191
  files:
180
192
  - .autotest
181
193
  - .gemtest
@@ -251,6 +263,8 @@ files:
251
263
  - ext/nokogiri/html_entity_lookup.h
252
264
  - ext/nokogiri/html_sax_parser_context.c
253
265
  - ext/nokogiri/html_sax_parser_context.h
266
+ - ext/nokogiri/html_sax_push_parser.c
267
+ - ext/nokogiri/html_sax_push_parser.h
254
268
  - ext/nokogiri/nokogiri.c
255
269
  - ext/nokogiri/nokogiri.h
256
270
  - ext/nokogiri/xml_attr.c
@@ -333,6 +347,7 @@ files:
333
347
  - lib/nokogiri/html/entity_lookup.rb
334
348
  - lib/nokogiri/html/sax/parser.rb
335
349
  - lib/nokogiri/html/sax/parser_context.rb
350
+ - lib/nokogiri/html/sax/push_parser.rb
336
351
  - lib/nokogiri/syntax_error.rb
337
352
  - lib/nokogiri/version.rb
338
353
  - lib/nokogiri/xml.rb
@@ -449,6 +464,7 @@ files:
449
464
  - test/xml/test_node_encoding.rb
450
465
  - test/xml/test_node_reparenting.rb
451
466
  - test/xml/test_node_set.rb
467
+ - test/xml/test_node_inheritance.rb
452
468
  - test/xml/test_parse_options.rb
453
469
  - test/xml/test_processing_instruction.rb
454
470
  - test/xml/test_reader_encoding.rb
@@ -460,8 +476,10 @@ files:
460
476
  - test/xml/test_xpath.rb
461
477
  - test/xslt/test_custom_functions.rb
462
478
  - test/xslt/test_exception_handling.rb
479
+ - test/xml/test_c14n.rb
480
+ - test/xml/test_xinclude.rb
481
+ - C_CODING_STYLE.rdoc
463
482
  - lib/nokogiri/nokogiri.jar
464
- has_rdoc: true
465
483
  homepage: http://nokogiri.org
466
484
  licenses: []
467
485
 
@@ -476,6 +494,9 @@ required_ruby_version: !ruby/object:Gem::Requirement
476
494
  requirements:
477
495
  - - ">="
478
496
  - !ruby/object:Gem::Version
497
+ hash: 2
498
+ segments:
499
+ - 0
479
500
  version: "0"
480
501
  required_rubygems_version: !ruby/object:Gem::Requirement
481
502
  none: false
@@ -486,67 +507,70 @@ required_rubygems_version: !ruby/object:Gem::Requirement
486
507
  requirements: []
487
508
 
488
509
  rubyforge_project: nokogiri
489
- rubygems_version: 1.5.1
510
+ rubygems_version: 1.8.9
490
511
  signing_key:
491
512
  specification_version: 3
492
513
  summary: "Nokogiri (\xE9\x8B\xB8) is an HTML, XML, SAX, and Reader parser"
493
514
  test_files:
494
- - test/test_convert_xpath.rb
495
- - test/test_soap4r_sax.rb
496
- - test/test_memory_leak.rb
497
515
  - test/test_nokogiri.rb
498
- - test/test_css_cache.rb
499
- - test/test_reader.rb
500
516
  - test/test_xslt_transforms.rb
517
+ - test/test_memory_leak.rb
518
+ - test/test_css_cache.rb
519
+ - test/test_soap4r_sax.rb
501
520
  - test/test_encoding_handler.rb
502
- - test/css/test_nthiness.rb
521
+ - test/test_reader.rb
522
+ - test/test_convert_xpath.rb
523
+ - test/css/test_tokenizer.rb
503
524
  - test/css/test_xpath_visitor.rb
525
+ - test/css/test_nthiness.rb
504
526
  - test/css/test_parser.rb
505
- - test/css/test_tokenizer.rb
506
- - test/decorators/test_slop.rb
507
- - test/html/test_document.rb
508
- - test/html/test_document_encoding.rb
509
- - test/html/test_named_characters.rb
510
- - test/html/test_document_fragment.rb
511
- - test/html/test_node.rb
512
- - test/html/test_builder.rb
513
- - test/html/test_node_encoding.rb
514
- - test/html/test_element_description.rb
515
- - test/html/sax/test_parser_context.rb
516
- - test/html/sax/test_parser.rb
517
- - test/xml/test_parse_options.rb
518
- - test/xml/test_unparented_node.rb
519
- - test/xml/test_element_decl.rb
520
- - test/xml/test_document.rb
521
- - test/xml/test_dtd.rb
527
+ - test/xml/test_dtd_encoding.rb
522
528
  - test/xml/test_document_encoding.rb
529
+ - test/xml/test_node_inheritance.rb
523
530
  - test/xml/test_entity_decl.rb
524
- - test/xml/test_dtd_encoding.rb
525
- - test/xml/test_document_fragment.rb
531
+ - test/xml/test_node_reparenting.rb
532
+ - test/xml/test_attr.rb
526
533
  - test/xml/test_cdata.rb
534
+ - test/xml/test_document.rb
535
+ - test/xml/test_node_encoding.rb
536
+ - test/xml/test_document_fragment.rb
537
+ - test/xml/test_c14n.rb
538
+ - test/xml/test_dtd.rb
539
+ - test/xml/test_node.rb
540
+ - test/xml/test_comment.rb
527
541
  - test/xml/test_text.rb
528
- - test/xml/test_reader_encoding.rb
542
+ - test/xml/test_schema.rb
543
+ - test/xml/test_node_attributes.rb
544
+ - test/xml/test_namespace.rb
545
+ - test/xml/test_attribute_decl.rb
529
546
  - test/xml/test_xpath.rb
530
- - test/xml/test_element_content.rb
531
- - test/xml/test_node.rb
547
+ - test/xml/test_processing_instruction.rb
548
+ - test/xml/test_reader_encoding.rb
549
+ - test/xml/test_element_decl.rb
532
550
  - test/xml/test_builder.rb
533
- - test/xml/test_schema.rb
534
551
  - test/xml/test_node_set.rb
535
- - test/xml/test_attr.rb
536
- - test/xml/test_processing_instruction.rb
537
- - test/xml/test_node_encoding.rb
538
552
  - test/xml/test_syntax_error.rb
539
- - test/xml/test_comment.rb
553
+ - test/xml/test_parse_options.rb
554
+ - test/xml/test_xinclude.rb
555
+ - test/xml/test_element_content.rb
556
+ - test/xml/test_unparented_node.rb
540
557
  - test/xml/test_entity_reference.rb
541
- - test/xml/test_node_reparenting.rb
542
- - test/xml/test_attribute_decl.rb
543
558
  - test/xml/test_relax_ng.rb
544
- - test/xml/test_namespace.rb
545
- - test/xml/test_node_attributes.rb
546
- - test/xml/node/test_save_options.rb
547
- - test/xml/node/test_subclass.rb
548
- - test/xml/sax/test_push_parser.rb
549
559
  - test/xml/sax/test_parser_context.rb
560
+ - test/xml/sax/test_push_parser.rb
550
561
  - test/xml/sax/test_parser.rb
551
- - test/xslt/test_custom_functions.rb
562
+ - test/xml/node/test_save_options.rb
563
+ - test/xml/node/test_subclass.rb
564
+ - test/decorators/test_slop.rb
565
+ - test/html/test_document_encoding.rb
566
+ - test/html/test_named_characters.rb
567
+ - test/html/test_document.rb
568
+ - test/html/test_node_encoding.rb
569
+ - test/html/test_document_fragment.rb
570
+ - test/html/test_node.rb
571
+ - test/html/test_element_description.rb
572
+ - test/html/test_builder.rb
573
+ - test/html/sax/test_parser_context.rb
574
+ - test/html/sax/test_parser.rb
552
575
  - test/xslt/test_exception_handling.rb
576
+ - test/xslt/test_custom_functions.rb