nokogiri 1.5.6.rc3-java → 1.5.7-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 (50) hide show
  1. data/CHANGELOG.ja.rdoc +87 -26
  2. data/CHANGELOG.rdoc +94 -32
  3. data/Manifest.txt +1 -0
  4. data/Rakefile +28 -15
  5. data/build_all +13 -5
  6. data/ext/java/nokogiri/NokogiriService.java +8 -1
  7. data/ext/java/nokogiri/XmlDocument.java +4 -4
  8. data/ext/java/nokogiri/XmlDtd.java +13 -2
  9. data/ext/java/nokogiri/XmlElement.java +3 -12
  10. data/ext/java/nokogiri/XmlEntityReference.java +11 -31
  11. data/ext/java/nokogiri/XmlNode.java +76 -32
  12. data/ext/java/nokogiri/XmlReader.java +257 -181
  13. data/ext/java/nokogiri/XmlSaxPushParser.java +17 -2
  14. data/ext/java/nokogiri/internals/NokogiriHelpers.java +23 -16
  15. data/ext/java/nokogiri/internals/NokogiriNamespaceCache.java +18 -1
  16. data/ext/java/nokogiri/internals/NokogiriNonStrictErrorHandler.java +9 -0
  17. data/ext/java/nokogiri/internals/ReaderNode.java +37 -37
  18. data/ext/java/nokogiri/internals/SaveContextVisitor.java +23 -16
  19. data/ext/java/nokogiri/internals/UncloseableInputStream.java +102 -0
  20. data/ext/java/nokogiri/internals/XmlDomParserContext.java +7 -4
  21. data/ext/nokogiri/extconf.rb +1 -0
  22. data/ext/nokogiri/nokogiri.h +4 -0
  23. data/ext/nokogiri/xml_node.c +33 -1
  24. data/ext/nokogiri/xml_reader.c +0 -3
  25. data/ext/nokogiri/xml_sax_parser.c +4 -1
  26. data/lib/nekodtd.jar +0 -0
  27. data/lib/nokogiri.rb +1 -0
  28. data/lib/nokogiri/css/xpath_visitor.rb +1 -1
  29. data/lib/nokogiri/nokogiri.jar +0 -0
  30. data/lib/nokogiri/version.rb +4 -1
  31. data/lib/nokogiri/xml/builder.rb +12 -2
  32. data/lib/nokogiri/xml/document.rb +3 -1
  33. data/lib/nokogiri/xml/sax/parser.rb +1 -0
  34. data/tasks/cross_compile.rb +15 -15
  35. data/test/css/test_parser.rb +9 -9
  36. data/test/css/test_xpath_visitor.rb +1 -1
  37. data/test/helper.rb +1 -0
  38. data/test/html/sax/test_parser.rb +5 -2
  39. data/test/html/test_document_fragment.rb +4 -2
  40. data/test/namespaces/test_namespaces_in_builder_doc.rb +60 -0
  41. data/test/namespaces/test_namespaces_in_created_doc.rb +62 -0
  42. data/test/namespaces/test_namespaces_in_parsed_doc.rb +60 -0
  43. data/test/test_reader.rb +38 -4
  44. data/test/xml/sax/test_parser.rb +10 -1
  45. data/test/xml/test_builder.rb +40 -1
  46. data/test/xml/test_document.rb +50 -2
  47. data/test/xml/test_entity_reference.rb +2 -4
  48. data/test/xml/test_node.rb +30 -1
  49. data/test_all +2 -2
  50. metadata +142 -232
data/CHANGELOG.ja.rdoc CHANGED
@@ -1,4 +1,28 @@
1
- == 1.5.6 / unreleased
1
+
2
+ === 1.5.7 / 2013年03月18日
3
+
4
+ * Features
5
+
6
+ * Windows support for Ruby 2.0.
7
+
8
+
9
+ * Bugfixes
10
+
11
+ * SAX::Parser.parse_io throw an error when used with lower case encoding. #828
12
+ * (JRuby) Java Nokogiri is finally green (passes all tests) under 1.8 and 1.9 mode. High five everyone. #798, #705
13
+ * (JRuby) Nokogiri::XML::Reader broken (as a pull parser) on jruby - reads the whole XML document. #831
14
+ * (JRuby) JRuby hangs parsing "&". #837
15
+ * (JRuby) JRuby NPE parsing an invalid XML instruction. #838
16
+ * (JRuby) Node#content= incompatibility. #839
17
+ * (JRuby) to_xhtml doesn't print the last slash for self-closing tags in JRuby. #834
18
+ * (JRuby) Adding an EntityReference after a Text node mangles the entity in JRuby. #835
19
+ * (JRuby) JRuby version inconsistency: nil for empty attributes. #818
20
+ * CSS queries for classes (e.g., ".foo") now treat all whitespace identically. #854
21
+ * Namespace behavior cleaned up and made consistent between JRuby and MRI. #846, #801 (Thanks, Michael Klein!)
22
+ * (MRI) SAX parser handles empty processing instructions. #845
23
+
24
+
25
+ === 1.5.6 / 2012年12月19日
2
26
 
3
27
  * Features
4
28
 
@@ -9,26 +33,35 @@
9
33
  * XML::Node#[]= メソッド内で受け取った引数を文字列に変換するようにした。#729 (ありがとう、Ben Langfeld.)
10
34
  * bin/nokogiri コマンドが $stdin からドキュメントを読んで処理できるようにした。
11
35
  * bin/nokogiri -e を指定することでコマンドラインプログラムを実行できるようにした。
36
+ * bin/nokogiri --version will print the Xerces and NekoHTML versions when ran with JRuby.
12
37
 
13
38
 
14
39
  * Bugfixes
15
- * [JRuby] XML宣言の前にスペースがあると、ドキュメントのパーズに失敗する。(#748の修正でこれもなおっている) #790
16
- * [JRuby] Nokogiri::XML::Node#content のJRubyの振る舞いがCRubyと同じではない。#794, #797
17
- * [JRuby] で '#' で始まる文字列を名前とする EntityReference を作ろうとすると INVALID_CHARACTER_ERR という例外がはっせいする。 #719
18
- * [JRuby] では Nodeのサブクラスのnamespaceを正しく文字列に変換しない。 #715
40
+
19
41
  * Nokogiri はこのバージョンからXSLT変換のエラーを検出するようになった。#731 (ありがとう、Justin Fitzsimmons!)
42
+ * Don't throw an Error when trying to replace top-level text node in DocumentFragment. #775
20
43
  * SAXパーザに不正なエンコーディングに渡された場合はArgumentErrorを投げるようにした。#756 (ありがとう、Bradley Schaefer!)
21
- * [JRuby] Node#contentがこのバージョンから改行コードを正しく表示するようになった。#737 (ありがとう、Piotr Szmielew!)
22
- * [JRuby] recover optionが指定されている場合は宣言の無いネームスペースを無視するようにした。#748
23
- * [JRuby] ネームスペースを検出するXPathが続けて実行されても例外を投げてはいけない。#764
24
- * [JRuby] XMLを表示(出力)する際のホワイトスペースの扱いをlibxml2バージョンとさらに同様になるようにした。#771
25
- * [JRuby] ネームスペース付きの属性を含むXMLドキュメントを文字列でbuilderに追加しようとすると失敗する。#770
26
- * [JRuby] Nokogiri::XML::Document#wrapを使って生成したドキュメントに << でノードを追加しようとすると
44
+ * (JRuby) XML宣言の前にスペースがあると、ドキュメントのパーズに失敗する。(#748の修正でこれもなおっている) #790
45
+ * (JRuby) Nokogiri::XML::Node#content のJRubyの振る舞いがCRubyと同じではない。#794, #797
46
+ * (JRuby) で '#' で始まる文字列を名前とする EntityReference を作ろうとすると INVALID_CHARACTER_ERR という例外がはっせいする。 #719
47
+ * (JRuby) では Nodeのサブクラスのnamespaceを正しく文字列に変換しない。 #715
48
+ * (JRuby) Node#contentがこのバージョンから改行コードを正しく表示するようになった。#737 (ありがとう、Piotr Szmielew!)
49
+ * (JRuby) recover optionが指定されている場合は宣言の無いネームスペースを無視するようにした。#748
50
+ * (JRuby) ネームスペースを検出するXPathが続けて実行されても例外を投げてはいけない。#764
51
+ * (JRuby) XMLを表示(出力)する際のホワイトスペースの扱いをlibxml2バージョンとさらに同様になるようにした。#771
52
+ * (JRuby) ネームスペース付きの属性を含むXMLドキュメントを文字列でbuilderに追加しようとすると失敗する。#770
53
+ * (JRuby) Nokogiri::XML::Document#wrapを使って生成したドキュメントに << でノードを追加しようとすると
27
54
  undefined method `length' for nil:NilClassのエラーが発生する #781
28
- * [JRuby] 開いているファイルのデスクリプタを閉じようとすると、"bad file descriptor" が発生する。#495
55
+ * (JRuby) 開いているファイルのデスクリプタを閉じようとすると、"bad file descriptor" が発生する。#495
56
+ * (JRuby) JRuby/CRuby incompatibility for attribute decorators. #785
57
+ * (JRuby) Issues parsing valid XML with no internal subset in the DTD. #547, #811
58
+ * (JRuby) Issues parsing valid node content when it contains colons. #728
59
+ * (JRuby) Correctly parse the doc type of html documents. #733
60
+ * (JRuby) Include dtd in the xml output when a builder is used with create_internal_subset. #751
61
+ * (JRuby) builder requires textwrappers for valid utf8 in jruby, not in mri. #784
29
62
 
30
63
 
31
- == 1.5.5 / 2012年6月24日
64
+ === 1.5.5 / 2012年6月24日
32
65
 
33
66
  * Features
34
67
 
@@ -50,7 +83,7 @@
50
83
  * JRuby の Entity 解決は C version の Nokogiri と同じ結果にならないといけない。#704, #647, #703
51
84
 
52
85
 
53
- == 1.5.4 / 2012年6月12日
86
+ === 1.5.4 / 2012年6月12日
54
87
 
55
88
  * Features
56
89
 
@@ -64,7 +97,7 @@
64
97
  * DocumentFragment をベースにしてコメントノードを作ったときに Segmentation fault する。 #677, #678.
65
98
  * at() と search() メソッドで '.' をxpathとして扱う。 #690
66
99
 
67
- * [MRI, Security] XML パース時のディフォルトのオプションを nonet に変更。これにより、ディフォルトでは
100
+ * (MRI, Security) XML パース時のディフォルトのオプションを nonet に変更。これにより、ディフォルトでは
68
101
  ドキュメントパース時にネットワーク接続を行わないようにし、XXE 脆弱性に対応した。#693
69
102
 
70
103
  パース時にネットワークに接続して外部のドキュメントを見にいかせたい場合には、以下のように `nonoet` オプションを設定する:
@@ -74,7 +107,7 @@
74
107
  ここに、自分ならではの二重否定のジョークをうめこむとなおよし。
75
108
 
76
109
 
77
- == 1.5.3 / 2012年6月1日
110
+ === 1.5.3 / 2012年6月1日
78
111
 
79
112
  * Features
80
113
 
@@ -94,20 +127,20 @@
94
127
  * Nokogiri::XML::Attribute が JRuby 上で nil namespace を返す #647
95
128
  * Nokogiri::XML::Node#namespace= メソッドが JRuby 上で prefix
96
129
   が無い namespace を設定できない #648
97
- * [JRuby] 1.9 モードで rake を実行するとデッドロックを引き起こす #571
130
+ * (JRuby) 1.9 モードで rake を実行するとデッドロックを引き起こす #571
98
131
  * HTML::Document#meta_encoding does not raise exception on docs with
99
132
  malformed content-type. #655
100
133
  * Fixing segfault related to unsupported encodings in in-context
101
134
  parsing on 1.8.7. #643
102
- * [JRuby] Concurrency issue in XPath parsing. #682
135
+ * (JRuby) Concurrency issue in XPath parsing. #682
103
136
 
104
137
 
105
- == 1.5.2 / 2012-03-09
138
+ === 1.5.2 / 2012-03-09
106
139
 
107
140
  Repackaging of 1.5.1 with a gemspec that is compatible with older Rubies. #631, #632.
108
141
 
109
142
 
110
- == 1.5.1 / 2012年3月9日
143
+ === 1.5.1 / 2012年3月9日
111
144
 
112
145
  * 新機能
113
146
 
@@ -149,10 +182,11 @@ Repackaging of 1.5.1 with a gemspec that is compatible with older Rubies. #631,
149
182
  * Do not allow multiple root nodes. #550
150
183
  * Fixes for custom XPath functions. #605, #606 (thanks, Juan Wajnerman!)
151
184
  * Node#to_xml does not override :save_with if it is provided. #505
152
- * Node#set is a private method [JRuby]. #564 (thanks, Nick Sieger!)
185
+ * Node#set is a private method (JRuby). #564 (thanks, Nick Sieger!)
153
186
  * C14n cleanup and Node#canonicalize (thanks, Ivan Pirlik!) #563
154
187
 
155
- == 1.5.0 / 2011年7月1日
188
+
189
+ === 1.5.0 / 2011年7月1日
156
190
 
157
191
  * 註
158
192
 
@@ -172,7 +206,7 @@ Repackaging of 1.5.1 with a gemspec that is compatible with older Rubies. #631,
172
206
  * <meta charset="..."> を認識するようになった.
173
207
 
174
208
 
175
- == 1.5.0 beta3 2010年12月2日
209
+ === 1.5.0 beta3 2010年12月2日
176
210
 
177
211
  * 註
178
212
 
@@ -183,13 +217,15 @@ Repackaging of 1.5.1 with a gemspec that is compatible with older Rubies. #631,
183
217
 
184
218
  * Node#inner_textはnilを返さなくなった. (JRuby) #264
185
219
 
186
- == 1.5.0 beta2 2010年7月30日
220
+
221
+ === 1.5.0 beta2 2010年7月30日
187
222
 
188
223
  * 註
189
224
 
190
225
  * 1.4.3からの変更点を参照
191
226
 
192
- == 1.5.0 beta1 2010年5月22日
227
+
228
+ === 1.5.0 beta1 2010年5月22日
193
229
 
194
230
  * 註
195
231
 
@@ -201,12 +237,14 @@ Repackaging of 1.5.1 with a gemspec that is compatible with older Rubies. #631,
201
237
  * LibXML 2.6.16および古いバージョンは非推奨. インストールできない.
202
238
  * FFIサポートは削除された.
203
239
 
240
+
204
241
  === 1.4.7 / 2011年7月1日
205
242
 
206
243
  * バグの修正
207
244
 
208
245
  * エンコーディング宣言のないHTMLファイルで部分的に重複したドキュメントが生成される問題を修正した. #478
209
246
 
247
+
210
248
  === 1.4.6 / 2011年6月19日
211
249
 
212
250
  * ノート
@@ -214,6 +252,7 @@ Repackaging of 1.5.1 with a gemspec that is compatible with older Rubies. #631,
214
252
  * このバージョンは、1.4.5と機能的に同じです
215
253
  * Rubyの1.8.6のサポートが復元されている
216
254
 
255
+
217
256
  === 1.4.5 / 未リリース
218
257
 
219
258
  * 新機能
@@ -224,12 +263,13 @@ Repackaging of 1.5.1 with a gemspec that is compatible with older Rubies. #631,
224
263
 
225
264
  * Node#serialize とその仲間達はSaveOptionオブジェクトを受け入れる
226
265
  * Nokogiri::CSS::Parser has-a Nokogiri::CSS::Tokenizer
227
- * [JRUBY+FFIのみ] 「弱い参照」はスレッドセーフになった. #355
266
+ * (JRUBY+FFIのみ) 「弱い参照」はスレッドセーフになった. #355
228
267
  * HTML::SAX::Parserから呼ばれるstart_element()コールバックのattributes引数はHTML::XML::Parserによるエミュレートコールバックと同じく連想配列になった. rel. #356
229
268
  * HTML::SAX::Parserのparse*()メソッドはXML::SAX::Parser同様に渡されたブロックをコールバックするようになった.
230
269
  * HTMLパーサーのエンコーディング判定をlibxml2の仕様を超えて拡張・改善した. (XML宣言のencodingを認識、非ASCII文字出現後のmetaタグも文字化けを生じずに反映)
231
270
  * Document#remove_namespaces! は名前空間付きの属性に対応した. #396
232
271
 
272
+
233
273
  === 1.4.4 2010年11月15日
234
274
 
235
275
  * 新機能
@@ -256,6 +296,7 @@ Repackaging of 1.5.1 with a gemspec that is compatible with older Rubies. #631,
256
296
  * libxml2 in-contextの解析バグの処置  #362
257
297
  * フレグメント内のノードの中にあるNodeSet#wrapの修正 #331
258
298
 
299
+
259
300
  === 1.4.3 2010年7月28日
260
301
 
261
302
  * 新しい機能
@@ -279,6 +320,7 @@ Repackaging of 1.5.1 with a gemspec that is compatible with older Rubies. #631,
279
320
  * CSS3の間接セレクタ"E ~ F G"がXPathの"//F//G[preceding-sibling::E]"へと
280
321
  誤変換されてしまうのを修正
281
322
 
323
+
282
324
  === 1.4.2 2010年5月22日
283
325
 
284
326
  * 新機能
@@ -329,6 +371,7 @@ Repackaging of 1.5.1 with a gemspec that is compatible with older Rubies. #631,
329
371
  1.1.26にDLLsを標準装備しています。このリリース以前にも既にDLLsはlibxml
330
372
  2.7.3 と libxslt 1.1.24に標準装備済み。
331
373
 
374
+
332
375
  === 1.4.1 2009年12月10日
333
376
 
334
377
  * 新しい機能
@@ -365,6 +408,7 @@ Repackaging of 1.5.1 with a gemspec that is compatible with older Rubies. #631,
365
408
  * 新しい文字列の先頭にくるテキストノードを含んだフレグメントが 正確に
366
409
  解析出来るようになった GH #178
367
410
 
411
+
368
412
  === 1.4.0 2009年10月30日
369
413
 
370
414
  * 今日はノコギリの満一歳のお誕生日です
@@ -410,6 +454,7 @@ Repackaging of 1.5.1 with a gemspec that is compatible with older Rubies. #631,
410
454
 
411
455
  * Hpricot用の互換性レイヤーを削除
412
456
 
457
+
413
458
  === 1.3.3 / 2009年7月26日
414
459
 
415
460
  * 新しい機能
@@ -431,6 +476,7 @@ Repackaging of 1.5.1 with a gemspec that is compatible with older Rubies. #631,
431
476
 
432
477
  * Hpricotの互換性レイヤーがNokogiriの1.4.0で除去される予定
433
478
 
479
+
434
480
  === 1.3.2 / 2009年6月22日
435
481
 
436
482
  * 新しい機能
@@ -456,6 +502,7 @@ Repackaging of 1.5.1 with a gemspec that is compatible with older Rubies. #631,
456
502
  * Nokogiri::XML::SAX::Document#end_element_nsは廃棄予定なので
457
503
  Nokogiri::XML::SAX::Document#end_element_namespaceを代わりに使用して下さい
458
504
 
505
+
459
506
  === 1.3.1 / 2009年6月7日
460
507
 
461
508
  * バグの修正
@@ -463,6 +510,7 @@ Repackaging of 1.5.1 with a gemspec that is compatible with older Rubies. #631,
463
510
  * extconf.rb は任意のRelaxNGとSchemaの機能を探すようになった
464
511
  * ドキュメントのノードキャッシュに名前空間のノードが入るようになった
465
512
 
513
+
466
514
  === 1.3.0 / 2009年5月30日
467
515
 
468
516
  * 新しい機能
@@ -516,6 +564,7 @@ Repackaging of 1.5.1 with a gemspec that is compatible with older Rubies. #631,
516
564
  * Node#before/after/inner_html=で値なしのHTML属性が受け入れられなかった問題を
517
565
  修正 (GH#35)
518
566
 
567
+
519
568
  === 1.2.3 / 2009年3月22日
520
569
 
521
570
  * バグの修正
@@ -527,6 +576,7 @@ Repackaging of 1.5.1 with a gemspec that is compatible with older Rubies. #631,
527
576
  * 子ノードを付加する事で、重複した名前空間の宣言を取り除く LH#67
528
577
  * ビルダ方法はハッシュを第二引数とする
529
578
 
579
+
530
580
  === 1.2.2 / 2009年3月14日
531
581
 
532
582
  * 新しい機能
@@ -562,6 +612,7 @@ Repackaging of 1.5.1 with a gemspec that is compatible with older Rubies. #631,
562
612
  * CSS のセレクターのスペースを修正
563
613
  * Ruby 1.9 のStringのエンコードを修正 (角谷さんに感謝!)
564
614
 
615
+
565
616
  === 1.2.0 / 2009年2月22日
566
617
 
567
618
  * 新しい機能
@@ -596,6 +647,7 @@ Repackaging of 1.5.1 with a gemspec that is compatible with older Rubies. #631,
596
647
 
597
648
  * Nokogiri::HTML.fragment は XML::DocumentFragment (LH #32)で返す
598
649
 
650
+
599
651
  === 1.1.1
600
652
 
601
653
  * 新しい機能
@@ -612,6 +664,7 @@ Repackaging of 1.5.1 with a gemspec that is compatible with older Rubies. #631,
612
664
  * XML::Node#attributes が Attr node を value値に返す
613
665
  * XML::NodeSet が to_xml へ実行
614
666
 
667
+
615
668
  === 1.1.0
616
669
 
617
670
  * 新しい機能
@@ -628,6 +681,7 @@ Repackaging of 1.5.1 with a gemspec that is compatible with older Rubies. #631,
628
681
  * XML::Node#dup が引数任意のdepthを取る
629
682
  * XML::Node#add_previous_sibling が新しい兄弟ノードで返す
630
683
 
684
+
631
685
  === 1.0.7
632
686
 
633
687
  * バグの修正
@@ -639,6 +693,7 @@ Repackaging of 1.5.1 with a gemspec that is compatible with older Rubies. #631,
639
693
  * ENV['PATH'] に付加せれる代わりに先頭へデータ挿入される
640
694
  * 複雑な CSS 内のバグを修正完了 :not selector ではありません
641
695
 
696
+
642
697
  === 1.0.6
643
698
 
644
699
  * 5つの修正
@@ -649,6 +704,7 @@ Repackaging of 1.5.1 with a gemspec that is compatible with older Rubies. #631,
649
704
  * CSS が Node#search 経由で検索し、常時対応する事が出来るようになった
650
705
  * CSS より XPath 変換がキャッシュに入れられるようになった
651
706
 
707
+
652
708
  === 1.0.5
653
709
 
654
710
  * バグフィックス
@@ -658,6 +714,7 @@ Repackaging of 1.5.1 with a gemspec that is compatible with older Rubies. #631,
658
714
  * Windows 内で ENV['PATH'] が存在しない場合でも、存在出来るように設定完了
659
715
  * Document 内の NodeSet#[] の結果をキャッシュする
660
716
 
717
+
661
718
  === 1.0.4
662
719
 
663
720
  * バグフィックス
@@ -667,6 +724,7 @@ Repackaging of 1.5.1 with a gemspec that is compatible with older Rubies. #631,
667
724
  * Builderブロックが取り囲んでいるコンテキストから
668
725
  メソッドの呼び出しをする事が出来る
669
726
 
727
+
670
728
  === 1.0.3
671
729
 
672
730
  * 5つのバグ修正
@@ -677,12 +735,14 @@ Repackaging of 1.5.1 with a gemspec that is compatible with older Rubies. #631,
677
735
  * 1.8.5互換性の為の RARRAY_LEN 除去
678
736
  * inner_html 修正済み (Yahuda に感謝)
679
737
 
738
+
680
739
  === 1.0.2
681
740
 
682
741
  * 1つのバグ修正
683
742
 
684
743
  * extconf.rb は frex や racc を調べないはず
685
744
 
745
+
686
746
  === 1.0.1
687
747
 
688
748
  * 1つのバグ修正
@@ -690,6 +750,7 @@ Repackaging of 1.5.1 with a gemspec that is compatible with older Rubies. #631,
690
750
  * extconf.rb が libdir や prefix を検索しない事を確認済み
691
751
  それによって、ports libxml/ruby が正しくリンクする (lucsky に感謝!)
692
752
 
753
+
693
754
  === 1.0.0 / 2008-07-13
694
755
 
695
756
  * 1つの偉大な増進
data/CHANGELOG.rdoc CHANGED
@@ -1,4 +1,28 @@
1
- == 1.5.6 / unreleased
1
+
2
+ === 1.5.7 / 2013-03-18
3
+
4
+ * Features
5
+
6
+ * Windows support for Ruby 2.0.
7
+
8
+
9
+ * Bugfixes
10
+
11
+ * SAX::Parser.parse_io throw an error when used with lower case encoding. #828
12
+ * (JRuby) Java Nokogiri is finally green (passes all tests) under 1.8 and 1.9 mode. High five everyone. #798, #705
13
+ * (JRuby) Nokogiri::XML::Reader broken (as a pull parser) on jruby - reads the whole XML document. #831
14
+ * (JRuby) JRuby hangs parsing "&amp;". #837
15
+ * (JRuby) JRuby NPE parsing an invalid XML instruction. #838
16
+ * (JRuby) Node#content= incompatibility. #839
17
+ * (JRuby) to_xhtml doesn't print the last slash for self-closing tags in JRuby. #834
18
+ * (JRuby) Adding an EntityReference after a Text node mangles the entity in JRuby. #835
19
+ * (JRuby) JRuby version inconsistency: nil for empty attributes. #818
20
+ * CSS queries for classes (e.g., ".foo") now treat all whitespace identically. #854
21
+ * Namespace behavior cleaned up and made consistent between JRuby and MRI. #846, #801 (Thanks, Michael Klein!)
22
+ * (MRI) SAX parser handles empty processing instructions. #845
23
+
24
+
25
+ === 1.5.6 / 2012-12-19
2
26
 
3
27
  * Features
4
28
 
@@ -9,25 +33,35 @@
9
33
  * XML::Node#[]= stringifies values. #729 (Thanks, Ben Langfeld.)
10
34
  * bin/nokogiri will process a document from $stdin
11
35
  * bin/nokogiri -e will execute a program from the command line
36
+ * bin/nokogiri --version will print the Xerces and NekoHTML versions when ran with JRuby.
12
37
 
13
38
 
14
39
  * Bugfixes
15
- * [JRuby] space prior to xml preamble causes nokogiri to fail parsing. (fixed along with #748) #790
16
- * [JRuby] Fixed the bug Nokogiri::XML::Node#content inconsistency between Java and C. #794, #797
17
- * [JRuby] raises INVALID_CHARACTER_ERR exception when EntityReference name starts with '#'. #719
18
- * [JRuby] doesn't coerce namespaces out of strings on a direct subclass of Node. #715
40
+
19
41
  * Nokogiri now detects XSLT transform errors. #731 (Thanks, Justin Fitzsimmons!)
42
+ * Don't throw an Error when trying to replace top-level text node in DocumentFragment. #775
20
43
  * Raise an ArgumentError if an invalid encoding is passed to the SAX parser. #756 (Thanks, Bradley Schaefer!)
21
- * [JRuby] Node#content now renders newlines properly. #737 (Thanks, Piotr Szmielew!)
22
- * [JRuby] Unknown namespace are ignore when the recover option is used. #748
23
- * [JRuby] XPath queries for namespaces should not throw exceptions when called twice in a row. #764
24
- * [JRuby] More consistent (with libxml2) whitespace formatting when emitting XML. #771
25
- * [JRuby] namespaced attributes broken when appending raw xml to builder. #770
26
- * [JRuby] Nokogiri::XML::Document#wrap raises undefined method `length' for nil:NilClass when trying to << to a node. #781
27
- * [JRuby] Fixed "bad file descriptor" bug when closing open file descriptors. #495
28
-
29
-
30
- == 1.5.5 / 2012-06-24
44
+ * Prefixed element inconsistency between CRuby and JRuby. #712
45
+ * (JRuby) space prior to xml preamble causes nokogiri to fail parsing. (fixed along with #748) #790
46
+ * (JRuby) Fixed the bug Nokogiri::XML::Node#content inconsistency between Java and C. #794, #797
47
+ * (JRuby) raises INVALID_CHARACTER_ERR exception when EntityReference name starts with '#'. #719
48
+ * (JRuby) doesn't coerce namespaces out of strings on a direct subclass of Node. #715
49
+ * (JRuby) Node#content now renders newlines properly. #737 (Thanks, Piotr Szmielew!)
50
+ * (JRuby) Unknown namespace are ignore when the recover option is used. #748
51
+ * (JRuby) XPath queries for namespaces should not throw exceptions when called twice in a row. #764
52
+ * (JRuby) More consistent (with libxml2) whitespace formatting when emitting XML. #771
53
+ * (JRuby) namespaced attributes broken when appending raw xml to builder. #770
54
+ * (JRuby) Nokogiri::XML::Document#wrap raises undefined method `length' for nil:NilClass when trying to << to a node. #781
55
+ * (JRuby) Fixed "bad file descriptor" bug when closing open file descriptors. #495
56
+ * (JRuby) JRuby/CRuby incompatibility for attribute decorators. #785
57
+ * (JRuby) Issues parsing valid XML with no internal subset in the DTD. #547, #811
58
+ * (JRuby) Issues parsing valid node content when it contains colons. #728
59
+ * (JRuby) Correctly parse the doc type of html documents. #733
60
+ * (JRuby) Include dtd in the xml output when a builder is used with create_internal_subset. #751
61
+ * (JRuby) builder requires textwrappers for valid utf8 in jruby, not in mri. #784
62
+
63
+
64
+ === 1.5.5 / 2012-06-24
31
65
 
32
66
  * Features
33
67
 
@@ -49,7 +83,7 @@
49
83
  * JRuby's Entity resolving should be consistent with C-Nokogiri #704, #647, #703
50
84
 
51
85
 
52
- == 1.5.4 / 2012-06-12
86
+ === 1.5.4 / 2012-06-12
53
87
 
54
88
  * Features
55
89
 
@@ -63,7 +97,7 @@
63
97
  * Segmentation fault when creating a comment node for a DocumentFragment. #677, #678.
64
98
  * Treat '.' as xpath in at() and search(). #690
65
99
 
66
- * [MRI, Security] Default parse options for XML documents were
100
+ * (MRI, Security) Default parse options for XML documents were
67
101
  changed to not make network connections during document parsing,
68
102
  to avoid XXE vulnerability. #693
69
103
 
@@ -71,11 +105,11 @@
71
105
  be called, like this:
72
106
 
73
107
  Nokogiri::XML::Document.parse(xml) { |config| config.nononet }
74
-
108
+
75
109
  Insert your own joke about double-negatives here.
76
110
 
77
111
 
78
- == 1.5.3 / 2012-06-01
112
+ === 1.5.3 / 2012-06-01
79
113
 
80
114
  * Features
81
115
 
@@ -97,20 +131,20 @@
97
131
  * Nokogiri::XML::Attribute on JRuby returns a nil namespace #647
98
132
  * Nokogiri::XML::Node#namespace= cannot set a namespace without a
99
133
  prefix on JRuby #648
100
- * [JRuby] 1.9 mode causes dead lock while running rake #571
134
+ * (JRuby) 1.9 mode causes dead lock while running rake #571
101
135
  * HTML::Document#meta_encoding does not raise exception on docs with
102
136
  malformed content-type. #655
103
137
  * Fixing segfault related to unsupported encodings in in-context
104
138
  parsing on 1.8.7. #643
105
- * [JRuby] Concurrency issue in XPath parsing. #682
139
+ * (JRuby) Concurrency issue in XPath parsing. #682
106
140
 
107
141
 
108
- == 1.5.2 / 2012-03-09
142
+ === 1.5.2 / 2012-03-09
109
143
 
110
144
  Repackaging of 1.5.1 with a gemspec that is compatible with older Rubies. #631, #632.
111
145
 
112
146
 
113
- == 1.5.1 / 2012-03-09
147
+ === 1.5.1 / 2012-03-09
114
148
 
115
149
  * Features
116
150
 
@@ -147,15 +181,15 @@ Repackaging of 1.5.1 with a gemspec that is compatible with older Rubies. #631,
147
181
  object. #489
148
182
  * 1.5.0 Not using correct character encoding #488
149
183
  * Raw XML string in XML Builder broken on JRuby #486
150
- * Nokogiri 1.5.0 XML generation broken on JRuby #484
184
+ * Nokogiri 1.5.0 XML generation broken on JRuby #484
151
185
  * Do not allow multiple root nodes. #550
152
186
  * Fixes for custom XPath functions. #605, #606 (thanks, Juan Wajnerman!)
153
187
  * Node#to_xml does not override :save_with if it is provided. #505
154
- * Node#set is a private method [JRuby]. #564 (thanks, Nick Sieger!)
188
+ * Node#set is a private method (JRuby). #564 (thanks, Nick Sieger!)
155
189
  * C14n cleanup and Node#canonicalize (thanks, Ivan Pirlik!) #563
156
190
 
157
191
 
158
- == 1.5.0 / 2011-07-01
192
+ === 1.5.0 / 2011-07-01
159
193
 
160
194
  * Notes
161
195
 
@@ -175,7 +209,8 @@ Repackaging of 1.5.1 with a gemspec that is compatible with older Rubies. #631,
175
209
  encoding.
176
210
  * Add support for <meta charset="...">.
177
211
 
178
- == 1.5.0 beta3 / 2010/12/02
212
+
213
+ === 1.5.0 beta3 / 2010/12/02
179
214
 
180
215
  * Notes
181
216
 
@@ -186,13 +221,15 @@ Repackaging of 1.5.1 with a gemspec that is compatible with older Rubies. #631,
186
221
 
187
222
  * Node#inner_text no longer returns nil. (JRuby) #264
188
223
 
189
- == 1.5.0 beta2 / 2010/07/30
224
+
225
+ === 1.5.0 beta2 / 2010/07/30
190
226
 
191
227
  * Notes
192
228
 
193
229
  * See changelog from 1.4.3
194
230
 
195
- == 1.5.0 beta1 / 2010/05/22
231
+
232
+ === 1.5.0 beta1 / 2010/05/22
196
233
 
197
234
  * Notes
198
235
 
@@ -204,6 +241,7 @@ Repackaging of 1.5.1 with a gemspec that is compatible with older Rubies. #631,
204
241
  * LibXML 2.6.16 and earlier are deprecated. Nokogiri will refuse to install.
205
242
  * FFI support is removed.
206
243
 
244
+
207
245
  === 1.4.7 / 2011-07-01
208
246
 
209
247
  * Bugfixes
@@ -212,6 +250,7 @@ Repackaging of 1.5.1 with a gemspec that is compatible with older Rubies. #631,
212
250
  duplicated document when parsing an HTML file with unknown
213
251
  encoding. Thanks, Timothy Elliott (@ender672)! #478
214
252
 
253
+
215
254
  === 1.4.6 / 2011-06-19
216
255
 
217
256
  * Notes
@@ -219,6 +258,7 @@ Repackaging of 1.5.1 with a gemspec that is compatible with older Rubies. #631,
219
258
  * This version is functionally identical to 1.4.5.
220
259
  * Ruby 1.8.6 support has been restored.
221
260
 
261
+
222
262
  === 1.4.5 / 2011-05-19
223
263
 
224
264
  * New Features
@@ -231,7 +271,7 @@ Repackaging of 1.5.1 with a gemspec that is compatible with older Rubies. #631,
231
271
 
232
272
  * Node#serialize-and-friends now accepts a SaveOption object as the, erm, save object.
233
273
  * Nokogiri::CSS::Parser has-a Nokogiri::CSS::Tokenizer
234
- * [JRUBY+FFI only] Weak references are now threadsafe. #355
274
+ * (JRUBY+FFI only) Weak references are now threadsafe. #355
235
275
  * Make direct start_element() callback (currently used for
236
276
  HTML::SAX::Parser) pass attributes in assoc array, just as
237
277
  emulated start_element() callback does. rel. #356
@@ -241,6 +281,7 @@ Repackaging of 1.5.1 with a gemspec that is compatible with older Rubies. #631,
241
281
  * XSLT::Stylesheet#transform no longer segfaults when handed a non-XML::Document. #452
242
282
  * XML::Reader no longer segfaults when under GC pressure. #439
243
283
 
284
+
244
285
  === 1.4.4 / 2010-11-15
245
286
 
246
287
  * New Features
@@ -264,9 +305,10 @@ Repackaging of 1.5.1 with a gemspec that is compatible with older Rubies. #631,
264
305
  * Fix a memory leak when duplicating child nodes. #353
265
306
  * Fixed off-by-one bug with nth-last-{child,of-type} CSS selectors when NOT using an+b notation. #354
266
307
  * Fixed passing of non-namespace attributes to SAX::Document#start_element. #356
267
- * Workaround for libxml2 in-context parsing bug. #362
308
+ * Workaround for libxml2 in-context parsing bug. #362
268
309
  * Fixed NodeSet#wrap on nodes within a fragment. #331
269
310
 
311
+
270
312
  === 1.4.3 / 2010/07/28
271
313
 
272
314
  * New Features
@@ -290,6 +332,7 @@ Repackaging of 1.5.1 with a gemspec that is compatible with older Rubies. #631,
290
332
  (a.k.a. preceding selector) that incorrectly converted "E ~ F G" to
291
333
  "//F//G[preceding-sibling::E]".
292
334
 
335
+
293
336
  === 1.4.2 / 2010/05/22
294
337
 
295
338
  * New Features
@@ -342,6 +385,7 @@ Repackaging of 1.5.1 with a gemspec that is compatible with older Rubies. #631,
342
385
  1.1.26. Prior to this release, libxml 2.7.3 and libxslt 1.1.24
343
386
  were bundled.
344
387
 
388
+
345
389
  === 1.4.1 / 2009/12/10
346
390
 
347
391
  * New Features
@@ -373,6 +417,7 @@ Repackaging of 1.5.1 with a gemspec that is compatible with older Rubies. #631,
373
417
  * XSLT#apply_to will honor the "output method". Thanks richardlehane!
374
418
  * Fragments containing leading text nodes with newlines now parse properly. GH #178.
375
419
 
420
+
376
421
  === 1.4.0 / 2009/10/30
377
422
 
378
423
  * Happy Birthday!
@@ -415,6 +460,7 @@ Repackaging of 1.5.1 with a gemspec that is compatible with older Rubies. #631,
415
460
 
416
461
  * Hpricot compatibility layer removed
417
462
 
463
+
418
464
  === 1.3.3 / 2009/07/26
419
465
 
420
466
  * New Features
@@ -435,6 +481,7 @@ Repackaging of 1.5.1 with a gemspec that is compatible with older Rubies. #631,
435
481
 
436
482
  * Hpricot compatibility layer will be removed in 1.4.0
437
483
 
484
+
438
485
  === 1.3.2 / 2009-06-22
439
486
 
440
487
  * New Features
@@ -458,6 +505,7 @@ Repackaging of 1.5.1 with a gemspec that is compatible with older Rubies. #631,
458
505
  * Nokogiri::XML::SAX::Document#end_element_ns is deprecated, please switch
459
506
  to Nokogiri::XML::SAX::Document#end_element_namespace
460
507
 
508
+
461
509
  === 1.3.1 / 2009-06-07
462
510
 
463
511
  * Bugfixes
@@ -465,6 +513,7 @@ Repackaging of 1.5.1 with a gemspec that is compatible with older Rubies. #631,
465
513
  * extconf.rb checks for optional RelaxNG and Schema functions
466
514
  * Namespace nodes are added to the Document node cache
467
515
 
516
+
468
517
  === 1.3.0 / 2009-05-30
469
518
 
470
519
  * New Features
@@ -508,6 +557,7 @@ Repackaging of 1.5.1 with a gemspec that is compatible with older Rubies. #631,
508
557
  * Fixed a bug with attribute conditions in CSS selectors (GH#36)
509
558
  * Fixed intolerance of HTML attributes without values in Node#before/after/inner_html=. (GH#35)
510
559
 
560
+
511
561
  === 1.2.3 / 2009-03-22
512
562
 
513
563
  * Bugfixes
@@ -519,6 +569,7 @@ Repackaging of 1.5.1 with a gemspec that is compatible with older Rubies. #631,
519
569
  * Adding a child will remove duplicate namespace declarations LH #67
520
570
  * Builder methods take a hash as a second argument
521
571
 
572
+
522
573
  === 1.2.2 / 2009-03-14
523
574
 
524
575
  * New features
@@ -545,6 +596,7 @@ Repackaging of 1.5.1 with a gemspec that is compatible with older Rubies. #631,
545
596
  * Document#dup should create a new document of the same type (LH #59)
546
597
  * Document should not have a parent method (LH #64)
547
598
 
599
+
548
600
  === 1.2.1 / 2009-02-23
549
601
 
550
602
  * Bugfixes
@@ -552,6 +604,7 @@ Repackaging of 1.5.1 with a gemspec that is compatible with older Rubies. #631,
552
604
  * Fixed a CSS selector space bug
553
605
  * Fixed Ruby 1.9 String Encoding (Thanks 角谷さん!)
554
606
 
607
+
555
608
  === 1.2.0 / 2009-02-22
556
609
 
557
610
  * New features
@@ -588,6 +641,7 @@ Repackaging of 1.5.1 with a gemspec that is compatible with older Rubies. #631,
588
641
 
589
642
  * Nokogiri::HTML.fragment now returns an XML::DocumentFragment (LH #32)
590
643
 
644
+
591
645
  === 1.1.1
592
646
 
593
647
  * New features
@@ -605,6 +659,7 @@ Repackaging of 1.5.1 with a gemspec that is compatible with older Rubies. #631,
605
659
  * XML::Node#attributes returns an Attr node for the value.
606
660
  * XML::NodeSet implements to_xml
607
661
 
662
+
608
663
  === 1.1.0
609
664
 
610
665
  * New Features
@@ -621,6 +676,7 @@ Repackaging of 1.5.1 with a gemspec that is compatible with older Rubies. #631,
621
676
  * XML::Node#dup takes an optional depth argument
622
677
  * XML::Node#add_previous_sibling returns new sibling node.
623
678
 
679
+
624
680
  === 1.0.7
625
681
 
626
682
  * Bugfixes
@@ -632,6 +688,7 @@ Repackaging of 1.5.1 with a gemspec that is compatible with older Rubies. #631,
632
688
  * Prepending rather than appending to ENV['PATH'] on windows
633
689
  * Fixed a bug in complex CSS negation selectors
634
690
 
691
+
635
692
  === 1.0.6
636
693
 
637
694
  * 5 Bugfixes
@@ -642,6 +699,7 @@ Repackaging of 1.5.1 with a gemspec that is compatible with older Rubies. #631,
642
699
  * CSS searches via Node#search are now always relative
643
700
  * CSS to XPath conversion is now cached
644
701
 
702
+
645
703
  === 1.0.5
646
704
 
647
705
  * Bugfixes
@@ -650,6 +708,7 @@ Repackaging of 1.5.1 with a gemspec that is compatible with older Rubies. #631,
650
708
  * Sets ENV['PATH'] on windows if it doesn't exist
651
709
  * Caching results of NodeSet#[] on Document
652
710
 
711
+
653
712
  === 1.0.4
654
713
 
655
714
  * Bugfixes
@@ -658,6 +717,7 @@ Repackaging of 1.5.1 with a gemspec that is compatible with older Rubies. #631,
658
717
  * Plugged some memory leaks
659
718
  * Builder blocks can call methods from surrounding contexts
660
719
 
720
+
661
721
  === 1.0.3
662
722
 
663
723
  * 5 Bugfixes
@@ -668,12 +728,14 @@ Repackaging of 1.5.1 with a gemspec that is compatible with older Rubies. #631,
668
728
  * Removed RARRAY_LEN for 1.8.5 compatibility. Thanks Shane Hanna.
669
729
  * inner_html fixed. (Thanks Yehuda!)
670
730
 
731
+
671
732
  === 1.0.2
672
733
 
673
734
  * 1 Bugfix
674
735
 
675
736
  * extconf.rb should not check for frex and racc
676
737
 
738
+
677
739
  === 1.0.1
678
740
 
679
741
  * 1 Bugfix
@@ -681,9 +743,9 @@ Repackaging of 1.5.1 with a gemspec that is compatible with older Rubies. #631,
681
743
  * Made sure extconf.rb searched libdir and prefix so that ports libxml/ruby
682
744
  will link properly. Thanks lucsky!
683
745
 
746
+
684
747
  === 1.0.0 / 2008-07-13
685
748
 
686
749
  * 1 major enhancement
687
750
 
688
751
  * Birthday!
689
-