superfeedr-nokogiri 1.4.0.20091116183308

Sign up to get free protection for your applications and to get access to all the features.
Files changed (270) hide show
  1. data/.autotest +27 -0
  2. data/CHANGELOG.ja.rdoc +330 -0
  3. data/CHANGELOG.rdoc +314 -0
  4. data/Manifest.txt +269 -0
  5. data/README.ja.rdoc +105 -0
  6. data/README.rdoc +118 -0
  7. data/Rakefile +244 -0
  8. data/bin/nokogiri +49 -0
  9. data/ext/nokogiri/extconf.rb +145 -0
  10. data/ext/nokogiri/html_document.c +145 -0
  11. data/ext/nokogiri/html_document.h +10 -0
  12. data/ext/nokogiri/html_element_description.c +272 -0
  13. data/ext/nokogiri/html_element_description.h +10 -0
  14. data/ext/nokogiri/html_entity_lookup.c +32 -0
  15. data/ext/nokogiri/html_entity_lookup.h +8 -0
  16. data/ext/nokogiri/html_sax_parser_context.c +92 -0
  17. data/ext/nokogiri/html_sax_parser_context.h +11 -0
  18. data/ext/nokogiri/nokogiri.c +89 -0
  19. data/ext/nokogiri/nokogiri.h +145 -0
  20. data/ext/nokogiri/xml_attr.c +92 -0
  21. data/ext/nokogiri/xml_attr.h +9 -0
  22. data/ext/nokogiri/xml_attribute_decl.c +67 -0
  23. data/ext/nokogiri/xml_attribute_decl.h +9 -0
  24. data/ext/nokogiri/xml_cdata.c +54 -0
  25. data/ext/nokogiri/xml_cdata.h +9 -0
  26. data/ext/nokogiri/xml_comment.c +52 -0
  27. data/ext/nokogiri/xml_comment.h +9 -0
  28. data/ext/nokogiri/xml_document.c +388 -0
  29. data/ext/nokogiri/xml_document.h +24 -0
  30. data/ext/nokogiri/xml_document_fragment.c +46 -0
  31. data/ext/nokogiri/xml_document_fragment.h +10 -0
  32. data/ext/nokogiri/xml_dtd.c +192 -0
  33. data/ext/nokogiri/xml_dtd.h +10 -0
  34. data/ext/nokogiri/xml_element_content.c +123 -0
  35. data/ext/nokogiri/xml_element_content.h +10 -0
  36. data/ext/nokogiri/xml_element_decl.c +69 -0
  37. data/ext/nokogiri/xml_element_decl.h +9 -0
  38. data/ext/nokogiri/xml_entity_decl.c +97 -0
  39. data/ext/nokogiri/xml_entity_decl.h +10 -0
  40. data/ext/nokogiri/xml_entity_reference.c +50 -0
  41. data/ext/nokogiri/xml_entity_reference.h +9 -0
  42. data/ext/nokogiri/xml_io.c +31 -0
  43. data/ext/nokogiri/xml_io.h +11 -0
  44. data/ext/nokogiri/xml_namespace.c +74 -0
  45. data/ext/nokogiri/xml_namespace.h +12 -0
  46. data/ext/nokogiri/xml_node.c +1060 -0
  47. data/ext/nokogiri/xml_node.h +13 -0
  48. data/ext/nokogiri/xml_node_set.c +397 -0
  49. data/ext/nokogiri/xml_node_set.h +9 -0
  50. data/ext/nokogiri/xml_processing_instruction.c +54 -0
  51. data/ext/nokogiri/xml_processing_instruction.h +9 -0
  52. data/ext/nokogiri/xml_reader.c +593 -0
  53. data/ext/nokogiri/xml_reader.h +10 -0
  54. data/ext/nokogiri/xml_relax_ng.c +159 -0
  55. data/ext/nokogiri/xml_relax_ng.h +9 -0
  56. data/ext/nokogiri/xml_sax_parser.c +286 -0
  57. data/ext/nokogiri/xml_sax_parser.h +43 -0
  58. data/ext/nokogiri/xml_sax_parser_context.c +155 -0
  59. data/ext/nokogiri/xml_sax_parser_context.h +10 -0
  60. data/ext/nokogiri/xml_sax_push_parser.c +114 -0
  61. data/ext/nokogiri/xml_sax_push_parser.h +9 -0
  62. data/ext/nokogiri/xml_schema.c +156 -0
  63. data/ext/nokogiri/xml_schema.h +9 -0
  64. data/ext/nokogiri/xml_syntax_error.c +261 -0
  65. data/ext/nokogiri/xml_syntax_error.h +13 -0
  66. data/ext/nokogiri/xml_text.c +48 -0
  67. data/ext/nokogiri/xml_text.h +9 -0
  68. data/ext/nokogiri/xml_xpath.c +53 -0
  69. data/ext/nokogiri/xml_xpath.h +11 -0
  70. data/ext/nokogiri/xml_xpath_context.c +239 -0
  71. data/ext/nokogiri/xml_xpath_context.h +9 -0
  72. data/ext/nokogiri/xslt_stylesheet.c +131 -0
  73. data/ext/nokogiri/xslt_stylesheet.h +9 -0
  74. data/lib/nokogiri.rb +116 -0
  75. data/lib/nokogiri/css.rb +25 -0
  76. data/lib/nokogiri/css/generated_parser.rb +646 -0
  77. data/lib/nokogiri/css/generated_tokenizer.rb +142 -0
  78. data/lib/nokogiri/css/node.rb +99 -0
  79. data/lib/nokogiri/css/parser.rb +82 -0
  80. data/lib/nokogiri/css/parser.y +227 -0
  81. data/lib/nokogiri/css/syntax_error.rb +7 -0
  82. data/lib/nokogiri/css/tokenizer.rb +7 -0
  83. data/lib/nokogiri/css/tokenizer.rex +54 -0
  84. data/lib/nokogiri/css/xpath_visitor.rb +162 -0
  85. data/lib/nokogiri/decorators/slop.rb +33 -0
  86. data/lib/nokogiri/ffi/html/document.rb +28 -0
  87. data/lib/nokogiri/ffi/html/element_description.rb +85 -0
  88. data/lib/nokogiri/ffi/html/entity_lookup.rb +16 -0
  89. data/lib/nokogiri/ffi/html/sax/parser_context.rb +38 -0
  90. data/lib/nokogiri/ffi/io_callbacks.rb +42 -0
  91. data/lib/nokogiri/ffi/libxml.rb +356 -0
  92. data/lib/nokogiri/ffi/structs/common_node.rb +26 -0
  93. data/lib/nokogiri/ffi/structs/html_elem_desc.rb +24 -0
  94. data/lib/nokogiri/ffi/structs/html_entity_desc.rb +13 -0
  95. data/lib/nokogiri/ffi/structs/xml_alloc.rb +16 -0
  96. data/lib/nokogiri/ffi/structs/xml_attr.rb +19 -0
  97. data/lib/nokogiri/ffi/structs/xml_attribute.rb +27 -0
  98. data/lib/nokogiri/ffi/structs/xml_buffer.rb +16 -0
  99. data/lib/nokogiri/ffi/structs/xml_document.rb +108 -0
  100. data/lib/nokogiri/ffi/structs/xml_dtd.rb +28 -0
  101. data/lib/nokogiri/ffi/structs/xml_element.rb +26 -0
  102. data/lib/nokogiri/ffi/structs/xml_element_content.rb +17 -0
  103. data/lib/nokogiri/ffi/structs/xml_entity.rb +32 -0
  104. data/lib/nokogiri/ffi/structs/xml_enumeration.rb +12 -0
  105. data/lib/nokogiri/ffi/structs/xml_node.rb +28 -0
  106. data/lib/nokogiri/ffi/structs/xml_node_set.rb +53 -0
  107. data/lib/nokogiri/ffi/structs/xml_notation.rb +11 -0
  108. data/lib/nokogiri/ffi/structs/xml_ns.rb +15 -0
  109. data/lib/nokogiri/ffi/structs/xml_parser_context.rb +19 -0
  110. data/lib/nokogiri/ffi/structs/xml_relax_ng.rb +14 -0
  111. data/lib/nokogiri/ffi/structs/xml_sax_handler.rb +51 -0
  112. data/lib/nokogiri/ffi/structs/xml_sax_push_parser_context.rb +15 -0
  113. data/lib/nokogiri/ffi/structs/xml_schema.rb +13 -0
  114. data/lib/nokogiri/ffi/structs/xml_syntax_error.rb +31 -0
  115. data/lib/nokogiri/ffi/structs/xml_text_reader.rb +12 -0
  116. data/lib/nokogiri/ffi/structs/xml_xpath_context.rb +37 -0
  117. data/lib/nokogiri/ffi/structs/xml_xpath_object.rb +35 -0
  118. data/lib/nokogiri/ffi/structs/xml_xpath_parser_context.rb +20 -0
  119. data/lib/nokogiri/ffi/structs/xslt_stylesheet.rb +13 -0
  120. data/lib/nokogiri/ffi/xml/attr.rb +41 -0
  121. data/lib/nokogiri/ffi/xml/attribute_decl.rb +27 -0
  122. data/lib/nokogiri/ffi/xml/cdata.rb +19 -0
  123. data/lib/nokogiri/ffi/xml/comment.rb +18 -0
  124. data/lib/nokogiri/ffi/xml/document.rb +135 -0
  125. data/lib/nokogiri/ffi/xml/document_fragment.rb +21 -0
  126. data/lib/nokogiri/ffi/xml/dtd.rb +69 -0
  127. data/lib/nokogiri/ffi/xml/element_content.rb +43 -0
  128. data/lib/nokogiri/ffi/xml/element_decl.rb +19 -0
  129. data/lib/nokogiri/ffi/xml/entity_decl.rb +27 -0
  130. data/lib/nokogiri/ffi/xml/entity_reference.rb +19 -0
  131. data/lib/nokogiri/ffi/xml/namespace.rb +44 -0
  132. data/lib/nokogiri/ffi/xml/node.rb +444 -0
  133. data/lib/nokogiri/ffi/xml/node_set.rb +133 -0
  134. data/lib/nokogiri/ffi/xml/processing_instruction.rb +20 -0
  135. data/lib/nokogiri/ffi/xml/reader.rb +227 -0
  136. data/lib/nokogiri/ffi/xml/relax_ng.rb +85 -0
  137. data/lib/nokogiri/ffi/xml/sax/parser.rb +142 -0
  138. data/lib/nokogiri/ffi/xml/sax/parser_context.rb +67 -0
  139. data/lib/nokogiri/ffi/xml/sax/push_parser.rb +39 -0
  140. data/lib/nokogiri/ffi/xml/schema.rb +92 -0
  141. data/lib/nokogiri/ffi/xml/syntax_error.rb +91 -0
  142. data/lib/nokogiri/ffi/xml/text.rb +18 -0
  143. data/lib/nokogiri/ffi/xml/xpath.rb +19 -0
  144. data/lib/nokogiri/ffi/xml/xpath_context.rb +135 -0
  145. data/lib/nokogiri/ffi/xslt/stylesheet.rb +47 -0
  146. data/lib/nokogiri/html.rb +35 -0
  147. data/lib/nokogiri/html/builder.rb +35 -0
  148. data/lib/nokogiri/html/document.rb +88 -0
  149. data/lib/nokogiri/html/document_fragment.rb +15 -0
  150. data/lib/nokogiri/html/element_description.rb +23 -0
  151. data/lib/nokogiri/html/entity_lookup.rb +13 -0
  152. data/lib/nokogiri/html/sax/parser.rb +48 -0
  153. data/lib/nokogiri/html/sax/parser_context.rb +16 -0
  154. data/lib/nokogiri/syntax_error.rb +4 -0
  155. data/lib/nokogiri/version.rb +33 -0
  156. data/lib/nokogiri/version_warning.rb +11 -0
  157. data/lib/nokogiri/xml.rb +67 -0
  158. data/lib/nokogiri/xml/attr.rb +14 -0
  159. data/lib/nokogiri/xml/attribute_decl.rb +18 -0
  160. data/lib/nokogiri/xml/builder.rb +405 -0
  161. data/lib/nokogiri/xml/cdata.rb +11 -0
  162. data/lib/nokogiri/xml/character_data.rb +7 -0
  163. data/lib/nokogiri/xml/document.rb +131 -0
  164. data/lib/nokogiri/xml/document_fragment.rb +69 -0
  165. data/lib/nokogiri/xml/dtd.rb +11 -0
  166. data/lib/nokogiri/xml/element_content.rb +36 -0
  167. data/lib/nokogiri/xml/element_decl.rb +13 -0
  168. data/lib/nokogiri/xml/entity_decl.rb +15 -0
  169. data/lib/nokogiri/xml/fragment_handler.rb +71 -0
  170. data/lib/nokogiri/xml/namespace.rb +13 -0
  171. data/lib/nokogiri/xml/node.rb +665 -0
  172. data/lib/nokogiri/xml/node/save_options.rb +42 -0
  173. data/lib/nokogiri/xml/node_set.rb +307 -0
  174. data/lib/nokogiri/xml/notation.rb +6 -0
  175. data/lib/nokogiri/xml/parse_options.rb +85 -0
  176. data/lib/nokogiri/xml/pp.rb +2 -0
  177. data/lib/nokogiri/xml/pp/character_data.rb +18 -0
  178. data/lib/nokogiri/xml/pp/node.rb +56 -0
  179. data/lib/nokogiri/xml/processing_instruction.rb +8 -0
  180. data/lib/nokogiri/xml/reader.rb +74 -0
  181. data/lib/nokogiri/xml/relax_ng.rb +32 -0
  182. data/lib/nokogiri/xml/sax.rb +4 -0
  183. data/lib/nokogiri/xml/sax/document.rb +160 -0
  184. data/lib/nokogiri/xml/sax/parser.rb +115 -0
  185. data/lib/nokogiri/xml/sax/parser_context.rb +16 -0
  186. data/lib/nokogiri/xml/sax/push_parser.rb +60 -0
  187. data/lib/nokogiri/xml/schema.rb +61 -0
  188. data/lib/nokogiri/xml/syntax_error.rb +38 -0
  189. data/lib/nokogiri/xml/xpath.rb +10 -0
  190. data/lib/nokogiri/xml/xpath/syntax_error.rb +8 -0
  191. data/lib/nokogiri/xml/xpath_context.rb +16 -0
  192. data/lib/nokogiri/xslt.rb +48 -0
  193. data/lib/nokogiri/xslt/stylesheet.rb +25 -0
  194. data/lib/xsd/xmlparser/nokogiri.rb +71 -0
  195. data/tasks/test.rb +100 -0
  196. data/test/css/test_nthiness.rb +159 -0
  197. data/test/css/test_parser.rb +277 -0
  198. data/test/css/test_tokenizer.rb +183 -0
  199. data/test/css/test_xpath_visitor.rb +76 -0
  200. data/test/ffi/test_document.rb +35 -0
  201. data/test/files/2ch.html +108 -0
  202. data/test/files/address_book.rlx +12 -0
  203. data/test/files/address_book.xml +10 -0
  204. data/test/files/bar/bar.xsd +4 -0
  205. data/test/files/dont_hurt_em_why.xml +422 -0
  206. data/test/files/exslt.xml +8 -0
  207. data/test/files/exslt.xslt +35 -0
  208. data/test/files/foo/foo.xsd +4 -0
  209. data/test/files/po.xml +32 -0
  210. data/test/files/po.xsd +66 -0
  211. data/test/files/shift_jis.html +10 -0
  212. data/test/files/shift_jis.xml +5 -0
  213. data/test/files/snuggles.xml +3 -0
  214. data/test/files/staff.dtd +10 -0
  215. data/test/files/staff.xml +59 -0
  216. data/test/files/staff.xslt +32 -0
  217. data/test/files/tlm.html +850 -0
  218. data/test/files/valid_bar.xml +2 -0
  219. data/test/helper.rb +136 -0
  220. data/test/html/sax/test_parser.rb +64 -0
  221. data/test/html/sax/test_parser_context.rb +48 -0
  222. data/test/html/test_builder.rb +164 -0
  223. data/test/html/test_document.rb +390 -0
  224. data/test/html/test_document_encoding.rb +77 -0
  225. data/test/html/test_document_fragment.rb +132 -0
  226. data/test/html/test_element_description.rb +94 -0
  227. data/test/html/test_named_characters.rb +14 -0
  228. data/test/html/test_node.rb +228 -0
  229. data/test/html/test_node_encoding.rb +27 -0
  230. data/test/test_convert_xpath.rb +135 -0
  231. data/test/test_css_cache.rb +45 -0
  232. data/test/test_gc.rb +15 -0
  233. data/test/test_memory_leak.rb +77 -0
  234. data/test/test_nokogiri.rb +134 -0
  235. data/test/test_reader.rb +358 -0
  236. data/test/test_xslt_transforms.rb +131 -0
  237. data/test/xml/node/test_save_options.rb +20 -0
  238. data/test/xml/node/test_subclass.rb +44 -0
  239. data/test/xml/sax/test_parser.rb +307 -0
  240. data/test/xml/sax/test_parser_context.rb +56 -0
  241. data/test/xml/sax/test_push_parser.rb +131 -0
  242. data/test/xml/test_attr.rb +38 -0
  243. data/test/xml/test_attribute_decl.rb +82 -0
  244. data/test/xml/test_builder.rb +167 -0
  245. data/test/xml/test_cdata.rb +38 -0
  246. data/test/xml/test_comment.rb +29 -0
  247. data/test/xml/test_document.rb +607 -0
  248. data/test/xml/test_document_encoding.rb +26 -0
  249. data/test/xml/test_document_fragment.rb +138 -0
  250. data/test/xml/test_dtd.rb +82 -0
  251. data/test/xml/test_dtd_encoding.rb +33 -0
  252. data/test/xml/test_element_content.rb +56 -0
  253. data/test/xml/test_element_decl.rb +73 -0
  254. data/test/xml/test_entity_decl.rb +83 -0
  255. data/test/xml/test_entity_reference.rb +21 -0
  256. data/test/xml/test_namespace.rb +68 -0
  257. data/test/xml/test_node.rb +889 -0
  258. data/test/xml/test_node_attributes.rb +34 -0
  259. data/test/xml/test_node_encoding.rb +107 -0
  260. data/test/xml/test_node_set.rb +531 -0
  261. data/test/xml/test_parse_options.rb +52 -0
  262. data/test/xml/test_processing_instruction.rb +30 -0
  263. data/test/xml/test_reader_encoding.rb +126 -0
  264. data/test/xml/test_relax_ng.rb +60 -0
  265. data/test/xml/test_schema.rb +89 -0
  266. data/test/xml/test_syntax_error.rb +27 -0
  267. data/test/xml/test_text.rb +30 -0
  268. data/test/xml/test_unparented_node.rb +381 -0
  269. data/test/xml/test_xpath.rb +106 -0
  270. metadata +430 -0
@@ -0,0 +1,27 @@
1
+ # -*- ruby -*-
2
+
3
+ begin
4
+ require 'autotest/fsevent'
5
+ rescue LoadError
6
+ end
7
+
8
+ Autotest.add_hook :run_command do |at|
9
+ at.unit_diff = 'cat'
10
+ if ENV['ONENINE']
11
+ system "rake1.9 compile"
12
+ else
13
+ system "rake compile"
14
+ end
15
+ end
16
+
17
+ Autotest.add_hook :ran_command do |at|
18
+ File.open('/tmp/autotest.txt', 'wb') { |f|
19
+ f.write(at.results.join)
20
+ }
21
+ end
22
+
23
+ class Autotest
24
+ def ruby
25
+ 'ruby1.9'
26
+ end
27
+ end if ENV['ONENINE']
@@ -0,0 +1,330 @@
1
+ === 1.4.0 2009年10月30日
2
+
3
+ * 今日はノコギリの満一歳のお誕生日です
4
+
5
+ * 新しい機能
6
+ * Node#at_xpath はXPathの表現に適したNodeSetの一番最初の要素に返す
7
+ * Node#at_css はCSSのセレクターに合うNodeSetの一番最初の要素に返す
8
+ * NodeSet#| は合併させる機能を果たす GH #119 (Serabe ありがとう!)
9
+ * NodeSet#inspect inspectは出力をきれいにさせる
10
+ * Node#inspect インスペクト後、普通のrubyで出力施行する
11
+ * XML::DTD#external_id を追加
12
+ * XML::DTD#system_id を追加
13
+ * XML::ElementContent はDTD要素のコンテンツを有効化させる
14
+ * Nokogiri::XML::Builder内での名前空間宣言用のサポートを改良
15
+ * XML::Node#external_subsetを追加
16
+ * XML::Node#create_external_subsetを追加
17
+ * XML::Node#create_internal_subsetを追加
18
+ * XML Builderは生成されていないstringsを付加出来る様になった
19
+ (GH #141, patch from dudleyf)
20
+ * XML::SAX::ParserContext を追加
21
+ * XML::Document#remove_namespaces! は名前空間を使いこなせない人たち用の措置
22
+
23
+ * バグの修正
24
+
25
+ * HTMLドキュメントが メタエンコーディングのタグを宣言しない時、
26
+ nilを返すようになった GH #115
27
+ * ENV['PATH'] を調節する為に、RbConfig::CONFIG['host_os']を使用できるように
28
+ なった GH #113
29
+ * NodeSet#searchが更に効率的になった GH #119 (Serabe!に感謝します)
30
+ * NodeSet#xpathがcustom xpath機能を取り扱える様になった
31
+ * XML::Reader が現時点のノード用に属性を取得する際に、
32
+ SEGVを修正するようになった
33
+ * Node#inner_html がNode#to_html と同じ独立変数を受け入れるようになった
34
+ GH #117
35
+ * DocumentFragment#css は子ノードへ委任をするようになった GH #123
36
+ * NodeSet#[]がNodeSet#lengthより大きいスライスでも機能できるようになった
37
+ GH #131
38
+ * 新たな親ノードの名前空間の維持出来るようになった GH #134
39
+ * XML::Document をNodeSetに追加の際にSEGVが修正されるようになった
40
+ * XML::SyntaxError が重複可
41
+
42
+ * 廃棄予定
43
+
44
+ * Hpricot用の互換性レイヤーを削除
45
+
46
+ === 1.3.3 / 2009年7月26日
47
+
48
+ * 新しい機能
49
+
50
+ * NodeSet#children 全ての子ノードを返すようになった
51
+
52
+ * バグの修正
53
+
54
+ * libxml-ruby のグローバ ルエラー ハンドラー に優先するようになった
55
+ * ParseOption#strict を修正
56
+ * 空文字列を Node#inner_html= に与えた時に生じたSEGVを修正 GH #88
57
+ * Ruby 1.9 では文字列のエンコーディングをUTF-8になるようにした
58
+ * ドキュメントの根ノードから違うドキュメントの根ノードに移動した時に生じた
59
+ SEGVを修正 GH #91
60
+ * ノードをインスタンス化する時のO(n)のペナルティーを修正 GH #101
61
+ * XMLのドキュメントをHTMLのドキュメントとして出力出来るようになった
62
+
63
+ * 廃棄予定
64
+
65
+ * Hpricotの互換性レイヤーがNokogiriの1.4.0で除去される予定
66
+
67
+ === 1.3.2 / 2009年6月22日
68
+
69
+ * 新しい機能
70
+
71
+ * Nokogiri::XML::DTD#validate はドキュメントを検証できるようになった
72
+
73
+ * バグの修正
74
+
75
+ * Nokogiri::XML::NodeSet#search はトップレベルのノードを検索するようになった
76
+ GH #73
77
+ * Nokogiri::XML::Documentからメソッドに関係する名前空間を取り除いた
78
+ * 2回同じ名前空間が追加されたときSEGVする問題を修正した
79
+ * Snow Leopard で Nokogiri が動くようになった GH #79
80
+ * メーリングリストはGoogle Groupsの以下のURLに移動した
81
+ http://groups.google.com/group/nokogiri-talk
82
+ * HTML フラグメントはコメントとCDATAを正確に扱うようになった
83
+ * Nokogiri::XML::Document#cloneはdupのaliasになった
84
+
85
+ * 廃棄予定
86
+
87
+ * Nokogiri::XML::SAX::Document#start_element_nsは廃棄予定なので
88
+ Nokogiri::XML::SAX::Document#start_element_namespaceを代わりに使用して下さい
89
+ * Nokogiri::XML::SAX::Document#end_element_nsは廃棄予定なので
90
+ Nokogiri::XML::SAX::Document#end_element_namespaceを代わりに使用して下さい
91
+
92
+ === 1.3.1 / 2009年6月7日
93
+
94
+ * バグの修正
95
+
96
+ * extconf.rb は任意のRelaxNGとSchemaの機能を探すようになった
97
+ * ドキュメントのノードキャッシュに名前空間のノードが入るようになった
98
+
99
+ === 1.3.0 / 2009年5月30日
100
+
101
+ * 新しい機能
102
+
103
+ * Builderがブロックの引数の数に応じてスコープが定まるようになった
104
+ * Builderがアンダースコアで終わるメソッドをtagzと同様にサポートするようになった
105
+ * Nokogiri::XML::Node#<=> がドキュメントの位置によりノードを比較するように
106
+ なった
107
+ * Nokogiri::XML::Node#matches?が与えられたセレクタ内でノードがあればtrue
108
+ を返すようになった
109
+ * Nokogiri::XML::Node#ancestors がNokogiri::XML::NodeSetオブジェクトを返すようになった
110
+ * Nokogiri::XML::Node#ancestorsがオプションのセレクタに対応する親をマッチする
111
+ ようになった
112
+ * Nokogiri::HTML::Document#meta_encoding がメタデータのエンコードを返すように
113
+ なった
114
+ * Nokogiri::HTML::Document#meta_encoding= でメタデータのエンコードを
115
+ 設定できるようになった
116
+ * Nokogiri::XML::Document#encoding= でドキュメントのエンコードを
117
+ 設定できるようになった
118
+ * Nokogiri::XML::Schema でドキュメントがXSDのスキーマに沿って記述されているか
119
+ を検証できるようになった
120
+ * Nokogiri::XML::RelaxNG でドキュメントがRelaxNGのスキーマに沿って
121
+ 記述されているかを検証できるようになった
122
+ * Nokogiri::HTML::ElementDescription はHTML要素の説明フェッチ動作するよう
123
+ になった
124
+ * Nokogiri::XML::Node#descriptionは ノードの説明をフェッチ動作するよう
125
+ になった
126
+ * Nokogiri::XML::Node#accept は Visitor パターンを実行するようになった
127
+ * 簡単にドキュメントを解析するコマンド bin/nokogiri を追加
128
+ (Yataka HARAさんに感謝感激)
129
+ * Nokogiri::XML::NodeSetが更にArrayとEnumerableの演算を
130
+ サポートするようになった:
131
+ index, delete, slice, - (差分), + (連結), & (共通部分),
132
+ push, pop, shift, ==
133
+ * Nokogiri.XML, Nokogiri.HTML はNokogiri::XML::ParseOptions objectと一緒に
134
+ 呼び出されるブロックを受け入れるようになった
135
+ * Nokogiri::XML::Node#namespace は Nokogiri::XML::Namespaceを返すようになった
136
+ * Nokogiri::XML::Node#namespaceはノードの名前空間を設定するようになった
137
+ * FFI 経由で JRuby 1.3.0 をサポートするようになった
138
+
139
+ * バグの修正
140
+
141
+ * nilがCDATAsonstructorに渡される際の問題を修正
142
+ * Fragment メソッドが正規表現を抜け出させるようになった
143
+ (Joelさんに感謝感激) (LH #73)
144
+ * Builder スコープのLH #61, LH #74, LH #70に関しての様々な問題を修正
145
+ * 名前空間を付け加える時、名前空間が LH#78より除去されてしまう問題を修正
146
+ * 連結しないノードが発生し、再育成してしまう問題を修正(GH#22)
147
+ * XSLT が解析中にエラーを発見し損なう問題を修正(GH#32)
148
+ * CSS selectors内での条件属性のバグ問題を修正(GH#36)
149
+ * Node#before/after/inner_html=で値なしのHTML属性が受け入れられなかった問題を
150
+ 修正 (GH#35)
151
+
152
+ === 1.2.3 / 2009年3月22日
153
+
154
+ * バグの修正
155
+
156
+ * Node#new 内にて、バグを修正する
157
+ * DocumentFragmentの作成時、名前空間に割り当てる LH #66
158
+ * Nokogiri::XML::NodeSet#dup は機能するようになった GH #10
159
+ * Nokogiri::HTMLは文字列がブランクの時、空のドキュメントで返す GH#11
160
+ * 子ノードを付加する事で、重複した名前空間の宣言を取り除く LH#67
161
+ * ビルダ方法はハッシュを第二引数とする
162
+
163
+ === 1.2.2 / 2009年3月14日
164
+
165
+ * 新しい機能
166
+
167
+ * Nokogiri は soap4r と一緒に使う事が可能。(XSD::XMLParser::Nokogiri 参照)
168
+ * Nokogiri::XML::Node#inner_html= はノードの中のHTMLをセット出来る
169
+ * NokogiriのBuilderのインタフェースの改良
170
+ * Nokogiri::XML::Node#swap は、現在のノードに新しいhtmlを交換する事が出来る
171
+
172
+
173
+ * バグの修正
174
+
175
+ * BuilderAPIのタグのネスティングを修正 (LH #41)
176
+ * Nokogiri::HTML.fragment はテキストだけのノードを適切に扱う事が出来る(LH #43)
177
+ * Nokogiri::XML::Node#before はテキストノードのはじめに挿入する事が出来る (LH #44)
178
+ * Nokogiri::XML::Node#after はテキストノードの文末に挿入する事が出来る
179
+ * Nokogiri::XML::Node#search 名前空間が自動的に登録されるようになった(LH#42)
180
+ * Nokogiri::XML::NodeSet#search 名前空間が自動的に登録されるようになった
181
+ * Nokogiri::HTML::NamedCharacters はlibxml2に委任
182
+ * Nokogiri::XML::Node#[] はSymbolを使う (LH #48)
183
+ * vasprintf にwindowsを修正 (Geffroy Couprie ありがとう!)
184
+ * Nokogiri::XML::Node#[]= はentityを符号化しない (LH #55)
185
+ * 名前空間はreparentedのノードに模写する (LH #56)
186
+ * StringのエンコードはRuby 1.9での初期設定を使用する
187
+ * Document#dup は新しいドキュメントに同じタイプを作る (LH #59)
188
+ * Document#parent は存在しない (LH #64)
189
+
190
+
191
+ === 1.2.1 / 2009年2月23日
192
+
193
+ * 修正
194
+
195
+ * CSS のセレクターのスペースを修正
196
+ * Ruby 1.9 のStringのエンコードを修正 (角谷さんに感謝!)
197
+
198
+ === 1.2.0 / 2009年2月22日
199
+
200
+ * 新しい機能
201
+ * CSSサーチが CSS3 名前空間クエリをサポートするようになった
202
+ * ルート要素での名前空間が自動的に登録されるようになった
203
+ * CSS クエリが初期設定の名前空間を使うようになった
204
+ * Nokogiri::XML::Document#encoding で文書にエンコードを使用、受け取る
205
+ * Nokogiri::XML::Document#url で文書のURLを受け取る
206
+ * Nokogiri::XML::Node#each はname属性、値を一組にし反復適用する
207
+ * Nokogiri::XML::Node#keys はすべてのname属性を受け取る
208
+ * Nokogiri::XML::Node#line は行番号をノード用に受け取る (Dirkjan Bussinkさんに感謝感激)
209
+ * Nokogiri::XML::Node#serialize は任意されたencodingパラメーターを受け入れる
210
+ * Nokogiri::XML::Node#to_html, to_xml, と to_xhtml は任意されたencodingパラメーターを受け入れる
211
+ * Nokogiri::XML::Node#to_str
212
+ * Nokogiri::XML::Node#to_xhtml でXHTML文書を生成する
213
+ * Nokogiri::XML::Node#values が全ての属性値を受け入れる
214
+ * Nokogiri::XML::Node#write_to は任意されたencodingで要素をIOオブジェクトへ書く
215
+ * Nokogiri::XML::ProcessingInstrunction.new
216
+ * Nokogiri::XML::SAX::PushParser は全てのプッシュパースに必要な解析をする
217
+
218
+ * バグの修正
219
+
220
+ * Nokogiri::XML::Document#dup を修正
221
+ * ヘッダ検知を修正. 謝々るびきちさん!
222
+ * 無効なCSS内にて解析機能を動かなくさせる原因を修正
223
+
224
+ * 廃棄予定
225
+
226
+ * Nokogiri::XML::Node.new_from_str は1.3.0にて廃棄予定
227
+
228
+ * APIの変更
229
+
230
+ * Nokogiri::HTML.fragment は XML::DocumentFragment (LH #32)で返す
231
+
232
+ === 1.1.1
233
+
234
+ * 新しい機能
235
+ * XML::Node#elem? を追加
236
+ * XML::Node#attribute_nodes を追加
237
+ * XML::Attr を追加
238
+ * XML::Node#delete を追加
239
+ * XML::NodeSet#inner_html を追加
240
+
241
+ * バグの修正
242
+
243
+ * HTML のノードを \r のエンティティを含まない
244
+ * CSS::SelectorHandler と XML::XPathHandler を除去
245
+ * XML::Node#attributes が Attr node を value値に返す
246
+ * XML::NodeSet が to_xml へ実行
247
+
248
+ === 1.1.0
249
+
250
+ * 新しい機能
251
+
252
+ * カスタム XPath 機能はある。( Nokogiri::XML::Node#xpath 参照 )
253
+ * カスタム CSS 擬似クラスと機能はある。( Nokogiri::XML::Node#css 参照 )
254
+ * Nokogiri::XML::Node#<< が作成中に子ノードを自動追加
255
+
256
+ * バグの修正
257
+
258
+ * mutex が CSS のキャッシュのアクセスをロックする
259
+ * GCC 3.3.5 のビルドに関する問題を修正
260
+ * XML::Node#to_xml が引数indentationを取る
261
+ * XML::Node#dup が引数任意のdepthを取る
262
+ * XML::Node#add_previous_sibling が新しい兄弟ノードで返す
263
+
264
+ === 1.0.7
265
+
266
+ * バグの修正
267
+
268
+ * Dike 使用時中のメモリーリークの修正
269
+ * SAX パーサーが現在 IO Stream 同時解析
270
+ * コメント nodes が独自のクラスを継承する
271
+ * Nokogiri() は Nokogiri.parse() へデリゲートする
272
+ * ENV['PATH'] に付加せれる代わりに先頭へデータ挿入される
273
+ * 複雑な CSS 内のバグを修正完了 :not selector ではありません
274
+
275
+ === 1.0.6
276
+
277
+ * 5つの修正
278
+
279
+ * XPath のパーサーが SyntaxError を生じさせ解析停止させる
280
+ * CSS のパーサーが SyntaxError を生じさせ解析停止させる
281
+ * filter() と not() hpricot の互換性を追加
282
+ * CSS が Node#search 経由で検索し、常時対応する事が出来るようになった
283
+ * CSS より XPath 変換がキャッシュに入れられるようになった
284
+
285
+ === 1.0.5
286
+
287
+ * バグフィックス
288
+
289
+ * メーリンクリストを作成
290
+ * バグファイルを作成
291
+ * Windows 内で ENV['PATH'] が存在しない場合でも、存在出来るように設定完了
292
+ * Document 内の NodeSet#[] の結果をキャッシュする
293
+
294
+ === 1.0.4
295
+
296
+ * バグフィックス
297
+
298
+ * 弱参照からドキュメント参照へのメモリー管理の変換
299
+ * メモリリークに接続
300
+ * Builderブロックが取り囲んでいるコンテキストから
301
+ メソッドの呼び出しをする事が出来る
302
+
303
+ === 1.0.3
304
+
305
+ * 5つのバグ修正
306
+
307
+ * NodeSet が to_ary へ実行
308
+ * XML::Document#parent を除去
309
+ * GCバグ修正済み (Mike は最高!)
310
+ * 1.8.5互換性の為の RARRAY_LEN 除去
311
+ * inner_html 修正済み (Yahuda に感謝)
312
+
313
+ === 1.0.2
314
+
315
+ * 1つのバグ修正
316
+
317
+ * extconf.rb は frex や racc を調べないはず
318
+
319
+ === 1.0.1
320
+
321
+ * 1つのバグ修正
322
+
323
+ * extconf.rb が libdir や prefix を検索しない事を確認済み
324
+ それによって、ports libxml/ruby が正しくリンクする (lucsky に感謝!)
325
+
326
+ === 1.0.0 / 2008-07-13
327
+
328
+ * 1つの偉大な増進
329
+
330
+ * ご誕生である
@@ -0,0 +1,314 @@
1
+ === 1.4.0 / 2009/10/30
2
+
3
+ * Happy Birthday!
4
+
5
+ * New Features
6
+
7
+ * Node#at_xpath returns the first element of the NodeSet matching the XPath
8
+ expression.
9
+ * Node#at_css returns the first element of the NodeSet matching the CSS
10
+ selector.
11
+ * NodeSet#| for unions GH #119 (Thanks Serabe!)
12
+ * NodeSet#inspect makes prettier output
13
+ * Node#inspect implemented for more rubyish document inspecting
14
+ * Added XML::DTD#external_id
15
+ * Added XML::DTD#system_id
16
+ * Added XML::ElementContent for DTD Element content validity
17
+ * Better namespace declaration support in Nokogiri::XML::Builder
18
+ * Added XML::Node#external_subset
19
+ * Added XML::Node#create_external_subset
20
+ * Added XML::Node#create_internal_subset
21
+ * XML Builder can append raw strings (GH #141, patch from dudleyf)
22
+ * XML::SAX::ParserContext added
23
+ * XML::Document#remove_namespaces! for the namespace-impaired
24
+
25
+ * Bugfixes
26
+
27
+ * returns nil when HTML documents do not declare a meta encoding tag. GH #115
28
+ * Uses RbConfig::CONFIG['host_os'] to adjust ENV['PATH'] GH #113
29
+ * NodeSet#search is more efficient GH #119 (Thanks Serabe!)
30
+ * NodeSet#xpath handles custom xpath functions
31
+ * Fixing a SEGV when XML::Reader gets attributes for current node
32
+ * Node#inner_html takes the same arguments as Node#to_html GH #117
33
+ * DocumentFragment#css delegates to it's child nodes GH #123
34
+ * NodeSet#[] works with slices larger than NodeSet#length GH #131
35
+ * Reparented nodes maintain their namespace. GH #134
36
+ * Fixed SEGV when adding an XML::Document to NodeSet
37
+ * XML::SyntaxError can be duplicated. GH #148
38
+
39
+ * Deprecations
40
+
41
+ * Hpricot compatibility layer removed
42
+
43
+ === 1.3.3 / 2009/07/26
44
+
45
+ * New Features
46
+
47
+ * NodeSet#children returns all children of all nodes
48
+
49
+ * Bugfixes
50
+
51
+ * Override libxml-ruby's global error handler
52
+ * ParseOption#strict fixed
53
+ * Fixed a segfault when sending an empty string to Node#inner_html= GH #88
54
+ * String encoding is now set to UTF-8 in Ruby 1.9
55
+ * Fixed a segfault when moving root nodes between documents. GH #91
56
+ * Fixed an O(n) penalty on node creation. GH #101
57
+ * Allowing XML documents to be output as HTML documents
58
+
59
+ * Deprecations
60
+
61
+ * Hpricot compatibility layer will be removed in 1.4.0
62
+
63
+ === 1.3.2 / 2009-06-22
64
+
65
+ * New Features
66
+
67
+ * Nokogiri::XML::DTD#validate will validate your document
68
+
69
+ * Bugfixes
70
+
71
+ * Nokogiri::XML::NodeSet#search will search top level nodes. GH #73
72
+ * Removed namespace related methods from Nokogiri::XML::Document
73
+ * Fixed a segfault when a namespace was added twice
74
+ * Made nokogiri work with Snow Leopard GH #79
75
+ * Mailing list has moved to: http://groups.google.com/group/nokogiri-talk
76
+ * HTML fragments now correctly handle comments and CDATA blocks. GH #78
77
+ * Nokogiri::XML::Document#clone is now an alias of dup
78
+
79
+ * Deprecations
80
+
81
+ * Nokogiri::XML::SAX::Document#start_element_ns is deprecated, please switch
82
+ to Nokogiri::XML::SAX::Document#start_element_namespace
83
+ * Nokogiri::XML::SAX::Document#end_element_ns is deprecated, please switch
84
+ to Nokogiri::XML::SAX::Document#end_element_namespace
85
+
86
+ === 1.3.1 / 2009-06-07
87
+
88
+ * Bugfixes
89
+
90
+ * extconf.rb checks for optional RelaxNG and Schema functions
91
+ * Namespace nodes are added to the Document node cache
92
+
93
+ === 1.3.0 / 2009-05-30
94
+
95
+ * New Features
96
+
97
+ * Builder changes scope based on block arity
98
+ * Builder supports methods ending in underscore similar to tagz
99
+ * Nokogiri::XML::Node#<=> compares nodes based on Document position
100
+ * Nokogiri::XML::Node#matches? returns true if Node can be found with
101
+ given selector.
102
+ * Nokogiri::XML::Node#ancestors now returns an Nokogiri::XML::NodeSet
103
+ * Nokogiri::XML::Node#ancestors will match parents against optional selector
104
+ * Nokogiri::HTML::Document#meta_encoding for getting the meta encoding
105
+ * Nokogiri::HTML::Document#meta_encoding= for setting the meta encoding
106
+ * Nokogiri::XML::Document#encoding= to set the document encoding
107
+ * Nokogiri::XML::Schema for validating documents against XSD schema
108
+ * Nokogiri::XML::RelaxNG for validating documents against RelaxNG schema
109
+ * Nokogiri::HTML::ElementDescription for fetching HTML element descriptions
110
+ * Nokogiri::XML::Node#description to fetch the node description
111
+ * Nokogiri::XML::Node#accept implements Visitor pattern
112
+ * bin/nokogiri for easily examining documents (Thanks Yutaka HARA!)
113
+ * Nokogiri::XML::NodeSet now supports more Array and Enumerable operators:
114
+ index, delete, slice, - (difference), + (concatenation), & (intersection),
115
+ push, pop, shift, ==
116
+ * Nokogiri.XML, Nokogiri.HTML take blocks that receive
117
+ Nokogiri::XML::ParseOptions objects
118
+ * Nokogiri::XML::Node#namespace returns a Nokogiri::XML::Namespace
119
+ * Nokogiri::XML::Node#namespace= for setting a node's namespace
120
+ * Nokogiri::XML::DocumentFragment and Nokogiri::HTML::DocumentFragment
121
+ have a sensible API and a more robust implementation.
122
+ * JRuby 1.3.0 support via FFI.
123
+
124
+ * Bugfixes
125
+
126
+ * Fixed a problem with nil passed to CDATA constructor
127
+ * Fragment method deals with regular expression characters
128
+ (Thanks Joel!) LH #73
129
+ * Fixing builder scope issues LH #61, LH #74, LH #70
130
+ * Fixed a problem when adding a child could remove the child namespace LH#78
131
+ * Fixed bug with unlinking a node then reparenting it. (GH#22)
132
+ * Fixed failure to catch errors during XSLT parsing (GH#32)
133
+ * Fixed a bug with attribute conditions in CSS selectors (GH#36)
134
+ * Fixed intolerance of HTML attributes without values in Node#before/after/inner_html=. (GH#35)
135
+
136
+ === 1.2.3 / 2009-03-22
137
+
138
+ * Bugfixes
139
+
140
+ * Fixing bug where a node is passed in to Node#new
141
+ * Namespace should be assigned on DocumentFragment creation. LH #66
142
+ * Nokogiri::XML::NodeSet#dup works GH #10
143
+ * Nokogiri::HTML returns an empty Document when given a blank string GH#11
144
+ * Adding a child will remove duplicate namespace declarations LH #67
145
+ * Builder methods take a hash as a second argument
146
+
147
+ === 1.2.2 / 2009-03-14
148
+
149
+ * New features
150
+
151
+ * Nokogiri may be used with soap4r. See XSD::XMLParser::Nokogiri
152
+ * Nokogiri::XML::Node#inner_html= to set the inner html for a node
153
+ * Nokogiri builder interface improvements
154
+ * Nokogiri::XML::Node#swap swaps html for current node (LH #50)
155
+
156
+ * Bugfixes
157
+
158
+ * Fixed a tag nesting problem in the Builder API (LH #41)
159
+ * Nokogiri::HTML.fragment will properly handle text only nodes (LH #43)
160
+ * Nokogiri::XML::Node#before will prepend text nodes (LH #44)
161
+ * Nokogiri::XML::Node#after will append text nodes
162
+ * Nokogiri::XML::Node#search automatically registers root namepsaces (LH #42)
163
+ * Nokogiri::XML::NodeSet#search automatically registers namespaces
164
+ * Nokogiri::HTML::NamedCharacters delegates to libxml2
165
+ * Nokogiri::XML::Node#[] can take a symbol (LH #48)
166
+ * vasprintf for windows updated. Thanks Geoffroy Couprie!
167
+ * Nokogiri::XML::Node#[]= should not encode entities (LH #55)
168
+ * Namespaces should be copied to reparented nodes (LH #56)
169
+ * Nokogiri uses encoding set on the string for default in Ruby 1.9
170
+ * Document#dup should create a new document of the same type (LH #59)
171
+ * Document should not have a parent method (LH #64)
172
+
173
+ === 1.2.1 / 2009-02-23
174
+
175
+ * Bugfixes
176
+
177
+ * Fixed a CSS selector space bug
178
+ * Fixed Ruby 1.9 String Encoding (Thanks 角谷さん!)
179
+
180
+ === 1.2.0 / 2009-02-22
181
+
182
+ * New features
183
+
184
+ * CSS search now supports CSS3 namespace queries
185
+ * Namespaces on the root node are automatically registered
186
+ * CSS queries use the default namespace
187
+ * Nokogiri::XML::Document#encoding get encoding used for this document
188
+ * Nokogiri::XML::Document#url get the document url
189
+ * Nokogiri::XML::Node#add_namespace add a namespace to the node LH#38
190
+ * Nokogiri::XML::Node#each iterate over attribute name, value pairs
191
+ * Nokogiri::XML::Node#keys get all attribute names
192
+ * Nokogiri::XML::Node#line get the line number for a node (Thanks Dirkjan Bussink!)
193
+ * Nokogiri::XML::Node#serialize now takes an optional encoding parameter
194
+ * Nokogiri::XML::Node#to_html, to_xml, and to_xhtml take an optional encoding
195
+ * Nokogiri::XML::Node#to_str
196
+ * Nokogiri::XML::Node#to_xhtml to produce XHTML documents
197
+ * Nokogiri::XML::Node#values get all attribute values
198
+ * Nokogiri::XML::Node#write_to writes the node to an IO object with optional encoding
199
+ * Nokogiri::XML::ProcessingInstrunction.new
200
+ * Nokogiri::XML::SAX::PushParser for all your push parsing needs.
201
+
202
+ * Bugfixes
203
+
204
+ * Fixed Nokogiri::XML::Document#dup
205
+ * Fixed header detection. Thanks rubikitch!
206
+ * Fixed a problem where invalid CSS would cause the parser to hang
207
+
208
+ * Deprecations
209
+
210
+ * Nokogiri::XML::Node.new_from_str will be deprecated in 1.3.0
211
+
212
+ * API Changes
213
+
214
+ * Nokogiri::HTML.fragment now returns an XML::DocumentFragment (LH #32)
215
+
216
+ === 1.1.1
217
+
218
+ * New features
219
+
220
+ * Added XML::Node#elem?
221
+ * Added XML::Node#attribute_nodes
222
+ * Added XML::Attr
223
+ * XML::Node#delete added.
224
+ * XML::NodeSet#inner_html added.
225
+
226
+ * Bugfixes
227
+
228
+ * Not including an HTML entity for \r for HTML nodes.
229
+ * Removed CSS::SelectorHandler and XML::XPathHandler
230
+ * XML::Node#attributes returns an Attr node for the value.
231
+ * XML::NodeSet implements to_xml
232
+
233
+ === 1.1.0
234
+
235
+ * New Features
236
+
237
+ * Custom XPath functions are now supported. See Nokogiri::XML::Node#xpath
238
+ * Custom CSS pseudo classes are now supported. See Nokogiri::XML::Node#css
239
+ * Nokogiri::XML::Node#<< will add a child to the current node
240
+
241
+ * Bugfixes
242
+
243
+ * Mutex lock on CSS cache access
244
+ * Fixed build problems with GCC 3.3.5
245
+ * XML::Node#to_xml now takes an indentation argument
246
+ * XML::Node#dup takes an optional depth argument
247
+ * XML::Node#add_previous_sibling returns new sibling node.
248
+
249
+ === 1.0.7
250
+
251
+ * Bugfixes
252
+
253
+ * Fixed memory leak when using Dike
254
+ * SAX parser now parses IO streams
255
+ * Comment nodes have their own class
256
+ * Nokogiri() should delegate to Nokogiri.parse()
257
+ * Prepending rather than appending to ENV['PATH'] on windows
258
+ * Fixed a bug in complex CSS negation selectors
259
+
260
+ === 1.0.6
261
+
262
+ * 5 Bugfixes
263
+
264
+ * XPath Parser raises a SyntaxError on parse failure
265
+ * CSS Parser raises a SyntaxError on parse failure
266
+ * filter() and not() hpricot compatibility added
267
+ * CSS searches via Node#search are now always relative
268
+ * CSS to XPath conversion is now cached
269
+
270
+ === 1.0.5
271
+
272
+ * Bugfixes
273
+
274
+ * Added mailing list and ticket tracking information to the README.txt
275
+ * Sets ENV['PATH'] on windows if it doesn't exist
276
+ * Caching results of NodeSet#[] on Document
277
+
278
+ === 1.0.4
279
+
280
+ * Bugfixes
281
+
282
+ * Changed memory mangement from weak refs to document refs
283
+ * Plugged some memory leaks
284
+ * Builder blocks can call methods from surrounding contexts
285
+
286
+ === 1.0.3
287
+
288
+ * 5 Bugfixes
289
+
290
+ * NodeSet now implements to_ary
291
+ * XML::Document should not implement parent
292
+ * More GC Bugs fixed. (Mike is AWESOME!)
293
+ * Removed RARRAY_LEN for 1.8.5 compatibility. Thanks Shane Hanna.
294
+ * inner_html fixed. (Thanks Yehuda!)
295
+
296
+ === 1.0.2
297
+
298
+ * 1 Bugfix
299
+
300
+ * extconf.rb should not check for frex and racc
301
+
302
+ === 1.0.1
303
+
304
+ * 1 Bugfix
305
+
306
+ * Made sure extconf.rb searched libdir and prefix so that ports libxml/ruby
307
+ will link properly. Thanks lucsky!
308
+
309
+ === 1.0.0 / 2008-07-13
310
+
311
+ * 1 major enhancement
312
+
313
+ * Birthday!
314
+