nokogiri 1.2.3-x86-mswin32-60 → 1.4.5-x86-mswin32-60
Sign up to get free protection for your applications and to get access to all the features.
Potentially problematic release.
This version of nokogiri might be problematic. Click here for more details.
- data/.autotest +18 -7
- data/.gemtest +0 -0
- data/CHANGELOG.ja.rdoc +297 -3
- data/CHANGELOG.rdoc +289 -0
- data/Manifest.txt +148 -37
- data/README.ja.rdoc +20 -20
- data/README.rdoc +53 -22
- data/Rakefile +127 -211
- data/bin/nokogiri +54 -0
- data/ext/nokogiri/depend +358 -0
- data/ext/nokogiri/extconf.rb +89 -54
- data/ext/nokogiri/html_document.c +34 -27
- data/ext/nokogiri/html_document.h +1 -1
- data/ext/nokogiri/html_element_description.c +276 -0
- data/ext/nokogiri/html_element_description.h +10 -0
- data/ext/nokogiri/html_entity_lookup.c +7 -5
- data/ext/nokogiri/html_entity_lookup.h +1 -1
- data/ext/nokogiri/html_sax_parser_context.c +94 -0
- data/ext/nokogiri/html_sax_parser_context.h +11 -0
- data/ext/nokogiri/{native.c → nokogiri.c} +31 -7
- data/ext/nokogiri/{native.h → nokogiri.h} +68 -41
- data/ext/nokogiri/xml_attr.c +20 -9
- data/ext/nokogiri/xml_attr.h +1 -1
- data/ext/nokogiri/xml_attribute_decl.c +70 -0
- data/ext/nokogiri/xml_attribute_decl.h +9 -0
- data/ext/nokogiri/xml_cdata.c +21 -9
- data/ext/nokogiri/xml_cdata.h +1 -1
- data/ext/nokogiri/xml_comment.c +18 -6
- data/ext/nokogiri/xml_comment.h +1 -1
- data/ext/nokogiri/xml_document.c +247 -68
- data/ext/nokogiri/xml_document.h +5 -3
- data/ext/nokogiri/xml_document_fragment.c +15 -7
- data/ext/nokogiri/xml_document_fragment.h +1 -1
- data/ext/nokogiri/xml_dtd.c +110 -10
- data/ext/nokogiri/xml_dtd.h +3 -1
- data/ext/nokogiri/xml_element_content.c +123 -0
- data/ext/nokogiri/xml_element_content.h +10 -0
- data/ext/nokogiri/xml_element_decl.c +69 -0
- data/ext/nokogiri/xml_element_decl.h +9 -0
- data/ext/nokogiri/xml_encoding_handler.c +79 -0
- data/ext/nokogiri/xml_encoding_handler.h +8 -0
- data/ext/nokogiri/xml_entity_decl.c +110 -0
- data/ext/nokogiri/xml_entity_decl.h +10 -0
- data/ext/nokogiri/xml_entity_reference.c +16 -5
- data/ext/nokogiri/xml_entity_reference.h +1 -1
- data/ext/nokogiri/xml_io.c +40 -8
- data/ext/nokogiri/xml_io.h +2 -1
- data/ext/nokogiri/xml_libxml2_hacks.c +112 -0
- data/ext/nokogiri/xml_libxml2_hacks.h +12 -0
- data/ext/nokogiri/xml_namespace.c +84 -0
- data/ext/nokogiri/xml_namespace.h +13 -0
- data/ext/nokogiri/xml_node.c +782 -225
- data/ext/nokogiri/xml_node.h +2 -4
- data/ext/nokogiri/xml_node_set.c +253 -34
- data/ext/nokogiri/xml_node_set.h +2 -2
- data/ext/nokogiri/xml_processing_instruction.c +17 -5
- data/ext/nokogiri/xml_processing_instruction.h +1 -1
- data/ext/nokogiri/xml_reader.c +277 -85
- data/ext/nokogiri/xml_reader.h +1 -1
- data/ext/nokogiri/xml_relax_ng.c +168 -0
- data/ext/nokogiri/xml_relax_ng.h +9 -0
- data/ext/nokogiri/xml_sax_parser.c +183 -111
- data/ext/nokogiri/xml_sax_parser.h +30 -1
- data/ext/nokogiri/xml_sax_parser_context.c +199 -0
- data/ext/nokogiri/xml_sax_parser_context.h +10 -0
- data/ext/nokogiri/xml_sax_push_parser.c +42 -12
- data/ext/nokogiri/xml_sax_push_parser.h +1 -1
- data/ext/nokogiri/xml_schema.c +205 -0
- data/ext/nokogiri/xml_schema.h +9 -0
- data/ext/nokogiri/xml_syntax_error.c +28 -173
- data/ext/nokogiri/xml_syntax_error.h +2 -1
- data/ext/nokogiri/xml_text.c +16 -6
- data/ext/nokogiri/xml_text.h +1 -1
- data/ext/nokogiri/xml_xpath_context.c +104 -47
- data/ext/nokogiri/xml_xpath_context.h +1 -1
- data/ext/nokogiri/xslt_stylesheet.c +161 -19
- data/ext/nokogiri/xslt_stylesheet.h +1 -1
- data/lib/nokogiri.rb +47 -8
- data/lib/nokogiri/1.8/nokogiri.so +0 -0
- data/lib/nokogiri/1.9/nokogiri.so +0 -0
- data/lib/nokogiri/css.rb +6 -3
- data/lib/nokogiri/css/node.rb +14 -12
- data/lib/nokogiri/css/parser.rb +665 -62
- data/lib/nokogiri/css/parser.y +20 -10
- data/lib/nokogiri/css/parser_extras.rb +91 -0
- data/lib/nokogiri/css/tokenizer.rb +148 -5
- data/lib/nokogiri/css/tokenizer.rex +10 -9
- data/lib/nokogiri/css/xpath_visitor.rb +47 -44
- data/lib/nokogiri/decorators/slop.rb +8 -4
- data/lib/nokogiri/ffi/encoding_handler.rb +42 -0
- data/lib/nokogiri/ffi/html/document.rb +28 -0
- data/lib/nokogiri/ffi/html/element_description.rb +81 -0
- data/lib/nokogiri/ffi/html/entity_lookup.rb +16 -0
- data/lib/nokogiri/ffi/html/sax/parser_context.rb +38 -0
- data/lib/nokogiri/ffi/io_callbacks.rb +42 -0
- data/lib/nokogiri/ffi/libxml.rb +420 -0
- data/lib/nokogiri/ffi/structs/common_node.rb +38 -0
- data/lib/nokogiri/ffi/structs/html_elem_desc.rb +24 -0
- data/lib/nokogiri/ffi/structs/html_entity_desc.rb +13 -0
- data/lib/nokogiri/ffi/structs/xml_alloc.rb +16 -0
- data/lib/nokogiri/ffi/structs/xml_attr.rb +20 -0
- data/lib/nokogiri/ffi/structs/xml_attribute.rb +27 -0
- data/lib/nokogiri/ffi/structs/xml_buffer.rb +16 -0
- data/lib/nokogiri/ffi/structs/xml_char_encoding_handler.rb +11 -0
- data/lib/nokogiri/ffi/structs/xml_document.rb +117 -0
- data/lib/nokogiri/ffi/structs/xml_dtd.rb +28 -0
- data/lib/nokogiri/ffi/structs/xml_element.rb +26 -0
- data/lib/nokogiri/ffi/structs/xml_element_content.rb +17 -0
- data/lib/nokogiri/ffi/structs/xml_entity.rb +32 -0
- data/lib/nokogiri/ffi/structs/xml_enumeration.rb +12 -0
- data/lib/nokogiri/ffi/structs/xml_node.rb +28 -0
- data/lib/nokogiri/ffi/structs/xml_node_set.rb +53 -0
- data/lib/nokogiri/ffi/structs/xml_notation.rb +11 -0
- data/lib/nokogiri/ffi/structs/xml_ns.rb +15 -0
- data/lib/nokogiri/ffi/structs/xml_parser_context.rb +20 -0
- data/lib/nokogiri/ffi/structs/xml_parser_input.rb +19 -0
- data/lib/nokogiri/ffi/structs/xml_relax_ng.rb +14 -0
- data/lib/nokogiri/ffi/structs/xml_sax_handler.rb +51 -0
- data/lib/nokogiri/ffi/structs/xml_sax_push_parser_context.rb +124 -0
- data/lib/nokogiri/ffi/structs/xml_schema.rb +13 -0
- data/lib/nokogiri/ffi/structs/xml_syntax_error.rb +31 -0
- data/lib/nokogiri/ffi/structs/xml_text_reader.rb +12 -0
- data/lib/nokogiri/ffi/structs/xml_xpath_context.rb +38 -0
- data/lib/nokogiri/ffi/structs/xml_xpath_object.rb +35 -0
- data/lib/nokogiri/ffi/structs/xml_xpath_parser_context.rb +20 -0
- data/lib/nokogiri/ffi/structs/xslt_stylesheet.rb +13 -0
- data/lib/nokogiri/ffi/weak_bucket.rb +40 -0
- data/lib/nokogiri/ffi/xml/attr.rb +41 -0
- data/lib/nokogiri/ffi/xml/attribute_decl.rb +27 -0
- data/lib/nokogiri/ffi/xml/cdata.rb +19 -0
- data/lib/nokogiri/ffi/xml/comment.rb +18 -0
- data/lib/nokogiri/ffi/xml/document.rb +174 -0
- data/lib/nokogiri/ffi/xml/document_fragment.rb +21 -0
- data/lib/nokogiri/ffi/xml/dtd.rb +67 -0
- data/lib/nokogiri/ffi/xml/element_content.rb +43 -0
- data/lib/nokogiri/ffi/xml/element_decl.rb +19 -0
- data/lib/nokogiri/ffi/xml/entity_decl.rb +36 -0
- data/lib/nokogiri/ffi/xml/entity_reference.rb +19 -0
- data/lib/nokogiri/ffi/xml/namespace.rb +44 -0
- data/lib/nokogiri/ffi/xml/node.rb +559 -0
- data/lib/nokogiri/ffi/xml/node_set.rb +150 -0
- data/lib/nokogiri/ffi/xml/processing_instruction.rb +20 -0
- data/lib/nokogiri/ffi/xml/reader.rb +236 -0
- data/lib/nokogiri/ffi/xml/relax_ng.rb +85 -0
- data/lib/nokogiri/ffi/xml/sax/parser.rb +143 -0
- data/lib/nokogiri/ffi/xml/sax/parser_context.rb +79 -0
- data/lib/nokogiri/ffi/xml/sax/push_parser.rb +51 -0
- data/lib/nokogiri/ffi/xml/schema.rb +109 -0
- data/lib/nokogiri/ffi/xml/syntax_error.rb +98 -0
- data/lib/nokogiri/ffi/xml/text.rb +18 -0
- data/lib/nokogiri/ffi/xml/xpath.rb +9 -0
- data/lib/nokogiri/ffi/xml/xpath_context.rb +153 -0
- data/lib/nokogiri/ffi/xslt/stylesheet.rb +77 -0
- data/lib/nokogiri/html.rb +13 -47
- data/lib/nokogiri/html/builder.rb +27 -1
- data/lib/nokogiri/html/document.rb +201 -7
- data/lib/nokogiri/html/document_fragment.rb +41 -0
- data/lib/nokogiri/html/element_description.rb +23 -0
- data/lib/nokogiri/html/entity_lookup.rb +2 -0
- data/lib/nokogiri/html/sax/parser.rb +34 -3
- data/lib/nokogiri/html/sax/parser_context.rb +16 -0
- data/lib/nokogiri/nokogiri.rb +1 -0
- data/lib/nokogiri/version.rb +40 -1
- data/lib/nokogiri/version_warning.rb +14 -0
- data/lib/nokogiri/xml.rb +32 -53
- data/lib/nokogiri/xml/attr.rb +5 -0
- data/lib/nokogiri/xml/attribute_decl.rb +18 -0
- data/lib/nokogiri/xml/builder.rb +349 -29
- data/lib/nokogiri/xml/cdata.rb +3 -1
- data/lib/nokogiri/xml/character_data.rb +7 -0
- data/lib/nokogiri/xml/document.rb +166 -14
- data/lib/nokogiri/xml/document_fragment.rb +76 -1
- data/lib/nokogiri/xml/dtd.rb +16 -3
- data/lib/nokogiri/xml/element_content.rb +36 -0
- data/lib/nokogiri/xml/element_decl.rb +13 -0
- data/lib/nokogiri/xml/entity_decl.rb +19 -0
- data/lib/nokogiri/xml/namespace.rb +13 -0
- data/lib/nokogiri/xml/node.rb +561 -166
- data/lib/nokogiri/xml/node/save_options.rb +22 -2
- data/lib/nokogiri/xml/node_set.rb +202 -40
- data/lib/nokogiri/xml/parse_options.rb +93 -0
- data/lib/nokogiri/xml/pp.rb +2 -0
- data/lib/nokogiri/xml/pp/character_data.rb +18 -0
- data/lib/nokogiri/xml/pp/node.rb +56 -0
- data/lib/nokogiri/xml/processing_instruction.rb +2 -0
- data/lib/nokogiri/xml/reader.rb +93 -8
- data/lib/nokogiri/xml/relax_ng.rb +32 -0
- data/lib/nokogiri/xml/sax.rb +1 -7
- data/lib/nokogiri/xml/sax/document.rb +107 -2
- data/lib/nokogiri/xml/sax/parser.rb +57 -7
- data/lib/nokogiri/xml/sax/parser_context.rb +16 -0
- data/lib/nokogiri/xml/sax/push_parser.rb +13 -1
- data/lib/nokogiri/xml/schema.rb +63 -0
- data/lib/nokogiri/xml/syntax_error.rb +25 -1
- data/lib/nokogiri/xml/text.rb +4 -1
- data/lib/nokogiri/xml/xpath.rb +1 -1
- data/lib/nokogiri/xml/xpath/syntax_error.rb +3 -0
- data/lib/nokogiri/xml/xpath_context.rb +2 -0
- data/lib/nokogiri/xslt.rb +26 -2
- data/lib/nokogiri/xslt/stylesheet.rb +19 -0
- data/lib/xsd/xmlparser/nokogiri.rb +45 -9
- data/tasks/cross_compile.rb +173 -0
- data/tasks/test.rb +25 -69
- data/test/css/test_nthiness.rb +3 -4
- data/test/css/test_parser.rb +75 -20
- data/test/css/test_tokenizer.rb +23 -1
- data/test/css/test_xpath_visitor.rb +10 -1
- data/test/decorators/test_slop.rb +16 -0
- data/test/ffi/test_document.rb +35 -0
- data/test/files/2ch.html +108 -0
- data/test/files/address_book.rlx +12 -0
- data/test/files/address_book.xml +10 -0
- data/test/files/bar/bar.xsd +4 -0
- data/test/files/encoding.html +82 -0
- data/test/files/encoding.xhtml +84 -0
- data/test/files/foo/foo.xsd +4 -0
- data/test/files/po.xml +32 -0
- data/test/files/po.xsd +66 -0
- data/test/files/shift_jis.html +10 -0
- data/test/files/shift_jis.xml +5 -0
- data/test/files/snuggles.xml +3 -0
- data/test/files/staff.dtd +10 -0
- data/test/files/valid_bar.xml +2 -0
- data/test/helper.rb +101 -23
- data/test/html/sax/test_parser.rb +81 -2
- data/test/html/sax/test_parser_context.rb +48 -0
- data/test/html/test_builder.rb +39 -8
- data/test/html/test_document.rb +186 -23
- data/test/html/test_document_encoding.rb +78 -1
- data/test/html/test_document_fragment.rb +253 -0
- data/test/html/test_element_description.rb +98 -0
- data/test/html/test_named_characters.rb +1 -1
- data/test/html/test_node.rb +124 -36
- data/test/html/test_node_encoding.rb +27 -0
- data/test/test_convert_xpath.rb +1 -52
- data/test/test_css_cache.rb +2 -13
- data/test/test_encoding_handler.rb +46 -0
- data/test/test_memory_leak.rb +88 -19
- data/test/test_nokogiri.rb +38 -5
- data/test/test_reader.rb +188 -6
- data/test/test_soap4r_sax.rb +52 -0
- data/test/test_xslt_transforms.rb +183 -83
- data/test/xml/node/test_save_options.rb +1 -1
- data/test/xml/node/test_subclass.rb +44 -0
- data/test/xml/sax/test_parser.rb +175 -4
- data/test/xml/sax/test_parser_context.rb +113 -0
- data/test/xml/sax/test_push_parser.rb +90 -2
- data/test/xml/test_attr.rb +35 -1
- data/test/xml/test_attribute_decl.rb +82 -0
- data/test/xml/test_builder.rb +186 -1
- data/test/xml/test_cdata.rb +32 -1
- data/test/xml/test_comment.rb +13 -1
- data/test/xml/test_document.rb +415 -43
- data/test/xml/test_document_encoding.rb +1 -1
- data/test/xml/test_document_fragment.rb +173 -5
- data/test/xml/test_dtd.rb +61 -6
- data/test/xml/test_dtd_encoding.rb +3 -1
- data/test/xml/test_element_content.rb +56 -0
- data/test/xml/test_element_decl.rb +73 -0
- data/test/xml/test_entity_decl.rb +120 -0
- data/test/xml/test_entity_reference.rb +5 -1
- data/test/xml/test_namespace.rb +68 -0
- data/test/xml/test_node.rb +546 -201
- data/test/xml/test_node_attributes.rb +34 -0
- data/test/xml/test_node_encoding.rb +33 -3
- data/test/xml/test_node_reparenting.rb +321 -0
- data/test/xml/test_node_set.rb +538 -2
- data/test/xml/test_parse_options.rb +52 -0
- data/test/xml/test_processing_instruction.rb +6 -1
- data/test/xml/test_reader_encoding.rb +1 -1
- data/test/xml/test_relax_ng.rb +60 -0
- data/test/xml/test_schema.rb +94 -0
- data/test/xml/test_syntax_error.rb +12 -0
- data/test/xml/test_text.rb +35 -1
- data/test/xml/test_unparented_node.rb +5 -5
- data/test/xml/test_xpath.rb +142 -11
- data/test/xslt/test_custom_functions.rb +94 -0
- metadata +328 -92
- data/ext/nokogiri/html_sax_parser.c +0 -57
- data/ext/nokogiri/html_sax_parser.h +0 -11
- data/ext/nokogiri/iconv.dll +0 -0
- data/ext/nokogiri/libexslt.dll +0 -0
- data/ext/nokogiri/libxml2.dll +0 -0
- data/ext/nokogiri/libxslt.dll +0 -0
- data/ext/nokogiri/native.so +0 -0
- data/ext/nokogiri/xml_xpath.c +0 -53
- data/ext/nokogiri/xml_xpath.h +0 -11
- data/ext/nokogiri/zlib1.dll +0 -0
- data/lib/action-nokogiri.rb +0 -30
- data/lib/nokogiri/css/generated_parser.rb +0 -713
- data/lib/nokogiri/css/generated_tokenizer.rb +0 -144
- data/lib/nokogiri/decorators.rb +0 -2
- data/lib/nokogiri/decorators/hpricot.rb +0 -3
- data/lib/nokogiri/decorators/hpricot/node.rb +0 -56
- data/lib/nokogiri/decorators/hpricot/node_set.rb +0 -54
- data/lib/nokogiri/decorators/hpricot/xpath_visitor.rb +0 -28
- data/lib/nokogiri/hpricot.rb +0 -51
- data/lib/nokogiri/xml/comment.rb +0 -6
- data/lib/nokogiri/xml/element.rb +0 -6
- data/lib/nokogiri/xml/entity_declaration.rb +0 -9
- data/lib/nokogiri/xml/fragment_handler.rb +0 -34
- data/test/hpricot/files/basic.xhtml +0 -17
- data/test/hpricot/files/boingboing.html +0 -2266
- data/test/hpricot/files/cy0.html +0 -3653
- data/test/hpricot/files/immob.html +0 -400
- data/test/hpricot/files/pace_application.html +0 -1320
- data/test/hpricot/files/tenderlove.html +0 -16
- data/test/hpricot/files/uswebgen.html +0 -220
- data/test/hpricot/files/utf8.html +0 -1054
- data/test/hpricot/files/week9.html +0 -1723
- data/test/hpricot/files/why.xml +0 -19
- data/test/hpricot/load_files.rb +0 -11
- data/test/hpricot/test_alter.rb +0 -68
- data/test/hpricot/test_builder.rb +0 -20
- data/test/hpricot/test_parser.rb +0 -426
- data/test/hpricot/test_paths.rb +0 -15
- data/test/hpricot/test_preserved.rb +0 -77
- data/test/hpricot/test_xml.rb +0 -30
- data/test/test_gc.rb +0 -15
data/.autotest
CHANGED
@@ -1,15 +1,26 @@
|
|
1
1
|
# -*- ruby -*-
|
2
2
|
|
3
|
+
begin
|
4
|
+
require 'autotest/fsevent'
|
5
|
+
rescue LoadError
|
6
|
+
end
|
7
|
+
|
8
|
+
Autotest.add_hook :initialize do |at|
|
9
|
+
at.add_exception /bundle$/
|
10
|
+
at.add_exception /\.git/
|
11
|
+
end
|
12
|
+
|
3
13
|
Autotest.add_hook :run_command do |at|
|
14
|
+
at.unit_diff = 'cat'
|
4
15
|
if ENV['ONENINE']
|
5
|
-
system "rake1.9
|
16
|
+
system "rake1.9 compile"
|
6
17
|
else
|
7
|
-
system "rake
|
18
|
+
system "rake compile"
|
8
19
|
end
|
9
20
|
end
|
10
21
|
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
end
|
22
|
+
Autotest.add_hook :ran_command do |at|
|
23
|
+
File.open('/tmp/autotest.txt', 'wb') { |f|
|
24
|
+
f.write(at.results.join)
|
25
|
+
}
|
26
|
+
end
|
data/.gemtest
ADDED
File without changes
|
data/CHANGELOG.ja.rdoc
CHANGED
@@ -1,3 +1,297 @@
|
|
1
|
+
=== 1.4.5 / 未リリース
|
2
|
+
|
3
|
+
* 新機能
|
4
|
+
|
5
|
+
* Nokogiri::HTML::Document#title アクセサメソッドでHTML文書のタイトルを読み書きできる
|
6
|
+
|
7
|
+
* バグの修正
|
8
|
+
|
9
|
+
* Node#serialize とその仲間達はSaveOptionオブジェクトを受け入れる
|
10
|
+
* Nokogiri::CSS::Parser has-a Nokogiri::CSS::Tokenizer
|
11
|
+
* [JRUBY+FFIのみ] 「弱い参照」はスレッドセーフになった. #355
|
12
|
+
* HTML::SAX::Parserから呼ばれるstart_element()コールバックのattributes引数はHTML::XML::Parserによるエミュレートコールバックと同じく連想配列になった. rel. #356
|
13
|
+
* HTML::SAX::Parserのparse*()メソッドはXML::SAX::Parser同様に渡されたブロックをコールバックするようになった.
|
14
|
+
* HTMLパーサーのエンコーディング判定をlibxml2の仕様を超えて拡張・改善した. (XML宣言のencodingを認識、非ASCII文字出現後のmetaタグも文字化けを生じずに反映)
|
15
|
+
* Document#remove_namespaces! は名前空間付きの属性に対応した. #396
|
16
|
+
|
17
|
+
=== 1.4.4 2010年11月15日
|
18
|
+
|
19
|
+
* 新機能
|
20
|
+
|
21
|
+
* XML::Node#children=ノード内のhtml reparented node(s)を返す事によって親の変更ができる。
|
22
|
+
* XSLT はfunction extensionsをサポート。#336
|
23
|
+
* XPath はパラメーター置換を結合する. #329
|
24
|
+
* XML::Reader node typeを一定化させる. #369
|
25
|
+
* SAX Parser context は行とコラムの両方の情報を提供する
|
26
|
+
|
27
|
+
* バグの修正
|
28
|
+
|
29
|
+
* XML::DTD#attributes は属性が存在しない際、nilの代わりに空のハッシュを返す
|
30
|
+
* XML::DTD#{keys,each} は文字通りに機能するようになった #324
|
31
|
+
* {XML,HTML}::DocumentFragment.{new,parse} 行送りと末尾の空白を除去しなくなった #319
|
32
|
+
* XML::Node#{add_child,add_previous_sibling,add_next_sibling,replace} は文字列を見送る際にNodeSetを返す
|
33
|
+
* 不確定タグはフレグメント内で要、不要に関係なく解析される #315
|
34
|
+
* XML::Node#{replace,add_previous_sibling,add_next_sibling} libxmlのtext node merging に関わるedge caseを修正する #308
|
35
|
+
* xpath handler argument が整列している最中に起こるGCでのsegfaultを修正 #345
|
36
|
+
* Slop decoratorが既に確定された定義と共に正常に機能させるための便宜上の処置 #330
|
37
|
+
* 子ノードが複製される際に起こるメモリ漏れの修正 #353
|
38
|
+
* an+b記号の無使用時に発生するoff-by-oneバグとnth-last-{child,of-type} CSSセレクターの修正 #354
|
39
|
+
* 非名前空間属性がSAX::Document#start_elementへパスできるように修正 #356
|
40
|
+
* libxml2 in-contextの解析バグの処置 #362
|
41
|
+
* フレグメント内のノードの中にあるNodeSet#wrapの修正 #331
|
42
|
+
|
43
|
+
=== 1.4.3 2010年7月28日
|
44
|
+
|
45
|
+
* 新しい機能
|
46
|
+
|
47
|
+
* XML::Reader#empty_element? - 子の無いエレメントにtrueを返す #262
|
48
|
+
* Node#remove_namespaces! - 1.4.2では 名前空間のみを取り除いていたが、
|
49
|
+
1.4.3 では名前空間及び、名前空間宣言も取り除く #294
|
50
|
+
|
51
|
+
* バグの修正
|
52
|
+
|
53
|
+
* XML::NodeSet#{include?,delete,push} はXML::Namespaceを受入れる
|
54
|
+
* XML::Document#parse - 1.4.3より文書内の文脈を解析する機能を追加
|
55
|
+
* XML::DocumentFragment#inner_html= 文脈解析を共に実行する #298, #281
|
56
|
+
* lib/nokogiri/css/parser.y はCSSと疑似選別の両方を機能
|
57
|
+
* 演算によって近隣に存在する併合型ノードへの遊離問題の有無に関わらず、一切の
|
58
|
+
弊害なしにテキストノードの繰り返しが実行可能 #283
|
59
|
+
* xmlFirstElementChild et al.による libxml2バージョンでの不適合性を修正 #303
|
60
|
+
* XML::Attr#add_namespace (!)文字通りの機能実現! #252
|
61
|
+
* HTML::DocumentFragment が文字列に存在するエンコードを使用 #305
|
62
|
+
|
63
|
+
=== 1.4.2 2010年5月22日
|
64
|
+
|
65
|
+
* 新機能
|
66
|
+
|
67
|
+
* XML::Node#parse 定義されたコンテキストノードでXML 又はHTMLのフレグメント
|
68
|
+
を解析する
|
69
|
+
* XML::Node#namespacesが子ノードとその祖先ノード内で定義された全ての名前空間
|
70
|
+
を返すようになった(以前は祖先ノードの名前空間は返されなかった)
|
71
|
+
* XML::Node内にEnumerableを追加
|
72
|
+
* Nokogiri::XML::Schema#validate 与えられたファイル名が引き渡された時、
|
73
|
+
Nokogiri::XML::Schema#validateはxmlSchemaValidateFileを使用する
|
74
|
+
(時間短縮化とメモリーの能率化の理由を基にファイル名での引き渡しメソッドを
|
75
|
+
採用) GH #219
|
76
|
+
* XML::Document#create_entnty は新規のEntityDecl のオブジェクトを生成する
|
77
|
+
GH #174
|
78
|
+
* JRuby FFI implementationでは、従来まで使用されたObjectSpace._id2refの代わり
|
79
|
+
にCharles Nutterのrocking Weakling gemを使用に変更
|
80
|
+
* Nokogiri::XML::Node#first_element_child は一番最初のELEMENT子ノードを返す
|
81
|
+
* Nokogiri::XML::Node#last_element_child は最後のELEMENT子ノードを返す
|
82
|
+
* Nokogiri::XML::Node#elements は全てのELEMENT子ノードを返す
|
83
|
+
|
84
|
+
* バグの修正
|
85
|
+
|
86
|
+
* ドキュメント内にデコレータがある場合、XML::NodeSet は常にデコレータされる GH #198
|
87
|
+
* XML::NodeSet#slice がノードセットよりも長いoffset+lengthを問題なく処理する
|
88
|
+
GH #200
|
89
|
+
* XML::Node#content=はノードとその直前に記述されている内容を支障なく切り離す
|
90
|
+
GH #203
|
91
|
+
* XML::Node#namespace= はnilを一つのパラメーターと扱って取得する
|
92
|
+
* XML::Node#xpath はNodeSetのオブジェクト以外のオブジェクトを返す GH #208
|
93
|
+
* XSLT::StyleSheet#transformはパラメーターのハッシュを受け入れる GH #223
|
94
|
+
* CSSのnot()の疑似セレクタの修正 GH #205
|
95
|
+
* XML::Builder はノードらが切り離されても破壊しない(vihaiの協力に感謝)
|
96
|
+
GH #228
|
97
|
+
* SAX parser経由でエンコードを強制することが出来る Eugene Pimenovに感謝!
|
98
|
+
GH #204
|
99
|
+
* XML::DocumentFragment はML::Node#parse を使用して子を限定する
|
100
|
+
* XML Reader内のメモリリーク修正 sdorさん、ありがとう! GH#244
|
101
|
+
|
102
|
+
* ノート
|
103
|
+
|
104
|
+
* 今日4月18日現在、Windows gems は libxml 2.7.7 とlibxslt
|
105
|
+
1.1.26にDLLsを標準装備しています。このリリース以前にも既にDLLsはlibxml
|
106
|
+
2.7.3 と libxslt 1.1.24に標準装備済み。
|
107
|
+
|
108
|
+
=== 1.4.1 2009年12月10日
|
109
|
+
|
110
|
+
* 新しい機能
|
111
|
+
* Nokogiri::LIBXML_ICONV_ENABLED を追加
|
112
|
+
* Node#attr は Node#[] のエイリアス定義に変更
|
113
|
+
* XML::Node#next_element を追加
|
114
|
+
* 直接の子ノードを検索するための Node#> を追加
|
115
|
+
* XML::NodeSet#reverse を追加
|
116
|
+
* 以下のfragment supportを追加
|
117
|
+
Node#add_child
|
118
|
+
Node#add_next_sibling
|
119
|
+
Node#add_previous_sibling
|
120
|
+
Node#replace
|
121
|
+
* XML::Node#previous_element を追加
|
122
|
+
* nokogiriがRubinius でサポートされるようになった
|
123
|
+
* CSS selector の :has() が使用可能になった
|
124
|
+
* XML::NodeSet#filter() を追加
|
125
|
+
* XML::Node.next= は add_next_sibling の alias へ変更
|
126
|
+
* XML::Node.previous= は add_previous_sibling の alias へ変更
|
127
|
+
|
128
|
+
* バグの修正
|
129
|
+
* XMLのフラグメントに名前空間が存在する場合のみ、DocumentFragmentを作る際に、
|
130
|
+
例外が投げられなくなった
|
131
|
+
* DocumentFragment内で子ノードが存在する場合、
|
132
|
+
Node#matches?が機能するようになった GH #158
|
133
|
+
* Documentは add_namespace()を限定すべきではないので削除GH #169
|
134
|
+
* XPath クエリは名前空間の宣言を変換するがsegvではない。
|
135
|
+
* Node#replace は他のドキュメントのノードが使えるようになった
|
136
|
+
* XML::Document#collect_namespaces を追加
|
137
|
+
* SOAP4R のアダプター内のバグ修正
|
138
|
+
* XML::Node#next_element 内のバグ修正
|
139
|
+
* WindowsでのJRuby の LOAD_PATH を修正 GH #160
|
140
|
+
* XSLT#apply_toは "output method"の値を使用する(richardlehaneに感謝)
|
141
|
+
* 新しい文字列の先頭にくるテキストノードを含んだフレグメントが 正確に
|
142
|
+
解析出来るようになった GH #178
|
143
|
+
|
144
|
+
=== 1.4.0 2009年10月30日
|
145
|
+
|
146
|
+
* 今日はノコギリの満一歳のお誕生日です
|
147
|
+
|
148
|
+
* 新しい機能
|
149
|
+
* Node#at_xpath はXPath式に適合するNodeSetの一番最初の要素を返す
|
150
|
+
* Node#at_css はCSSセレクターに適合するNodeSetの一番最初の要素を返す
|
151
|
+
* NodeSet#| はNodeSet同士を合成する GH #119 (Serabe ありがとう!)
|
152
|
+
* NodeSet#inspect の出力をより美しくした
|
153
|
+
* Node#inspect の出力をよりrubyらしくした
|
154
|
+
* XML::DTD#external_id を追加
|
155
|
+
* XML::DTD#system_id を追加
|
156
|
+
* XML::ElementContent はDTD要素のコンテンツを有効化する
|
157
|
+
* Nokogiri::XML::Builder内での名前空間宣言用のサポートを改良
|
158
|
+
* XML::Node#external_subsetを追加
|
159
|
+
* XML::Node#create_external_subsetを追加
|
160
|
+
* XML::Node#create_internal_subsetを追加
|
161
|
+
* XML Builderは生成されていないstringsを付加出来る様になった
|
162
|
+
(GH #141, patch from dudleyf)
|
163
|
+
* XML::SAX::ParserContext を追加
|
164
|
+
* XML::Document#remove_namespaces! は名前空間を使いこなせない人たち用の措置
|
165
|
+
|
166
|
+
* バグの修正
|
167
|
+
|
168
|
+
* HTMLドキュメントが メタエンコーディングのタグを宣言しない時、
|
169
|
+
nilを返すようになった GH #115
|
170
|
+
* ENV['PATH'] を調節する為に、RbConfig::CONFIG['host_os']を使用できるように
|
171
|
+
なった GH #113
|
172
|
+
* NodeSet#searchが更に効率的になった GH #119 (Serabe!に感謝します)
|
173
|
+
* NodeSet#xpathがcustom xpath機能を取り扱える様になった
|
174
|
+
* XML::Reader が現時点のノード用に属性を取得する際に、
|
175
|
+
SEGVを修正するようになった
|
176
|
+
* Node#inner_html がNode#to_html と同じ独立変数を受け入れるようになった
|
177
|
+
GH #117
|
178
|
+
* DocumentFragment#css は子ノードへ委任するようになった GH #123
|
179
|
+
* NodeSet#[]がNodeSet#lengthより大きいスライスでも機能するようになった
|
180
|
+
GH #131
|
181
|
+
* 新たな親ノードの名前空間を維持出来るようになった GH #134
|
182
|
+
* XML::Document をNodeSetに追加する際のSEGVが修正された
|
183
|
+
* XML::SyntaxError が複製可能になった
|
184
|
+
|
185
|
+
* 廃棄予定
|
186
|
+
|
187
|
+
* Hpricot用の互換性レイヤーを削除
|
188
|
+
|
189
|
+
=== 1.3.3 / 2009年7月26日
|
190
|
+
|
191
|
+
* 新しい機能
|
192
|
+
|
193
|
+
* NodeSet#children 全ての子ノードを返すようになった
|
194
|
+
|
195
|
+
* バグの修正
|
196
|
+
|
197
|
+
* libxml-ruby のグローバ ルエラー ハンドラー に優先するようになった
|
198
|
+
* ParseOption#strict を修正
|
199
|
+
* 空文字列を Node#inner_html= に与えた時に生じたSEGVを修正 GH #88
|
200
|
+
* Ruby 1.9 では文字列のエンコーディングをUTF-8になるようにした
|
201
|
+
* ドキュメントの根ノードから違うドキュメントの根ノードに移動した時に生じた
|
202
|
+
SEGVを修正 GH #91
|
203
|
+
* ノードをインスタンス化する時のO(n)のペナルティーを修正 GH #101
|
204
|
+
* XMLのドキュメントをHTMLのドキュメントとして出力出来るようになった
|
205
|
+
|
206
|
+
* 廃棄予定
|
207
|
+
|
208
|
+
* Hpricotの互換性レイヤーがNokogiriの1.4.0で除去される予定
|
209
|
+
|
210
|
+
=== 1.3.2 / 2009年6月22日
|
211
|
+
|
212
|
+
* 新しい機能
|
213
|
+
|
214
|
+
* Nokogiri::XML::DTD#validate はドキュメントを検証できるようになった
|
215
|
+
|
216
|
+
* バグの修正
|
217
|
+
|
218
|
+
* Nokogiri::XML::NodeSet#search はトップレベルのノードを検索するようになった
|
219
|
+
GH #73
|
220
|
+
* Nokogiri::XML::Documentからメソッドに関係する名前空間を取り除いた
|
221
|
+
* 2回同じ名前空間が追加されたときSEGVする問題を修正した
|
222
|
+
* Snow Leopard で Nokogiri が動くようになった GH #79
|
223
|
+
* メーリングリストはGoogle Groupsの以下のURLに移動した
|
224
|
+
http://groups.google.com/group/nokogiri-talk
|
225
|
+
* HTML フラグメントはコメントとCDATAを正確に扱うようになった
|
226
|
+
* Nokogiri::XML::Document#cloneはdupのaliasになった
|
227
|
+
|
228
|
+
* 廃棄予定
|
229
|
+
|
230
|
+
* Nokogiri::XML::SAX::Document#start_element_nsは廃棄予定なので
|
231
|
+
Nokogiri::XML::SAX::Document#start_element_namespaceを代わりに使用して下さい
|
232
|
+
* Nokogiri::XML::SAX::Document#end_element_nsは廃棄予定なので
|
233
|
+
Nokogiri::XML::SAX::Document#end_element_namespaceを代わりに使用して下さい
|
234
|
+
|
235
|
+
=== 1.3.1 / 2009年6月7日
|
236
|
+
|
237
|
+
* バグの修正
|
238
|
+
|
239
|
+
* extconf.rb は任意のRelaxNGとSchemaの機能を探すようになった
|
240
|
+
* ドキュメントのノードキャッシュに名前空間のノードが入るようになった
|
241
|
+
|
242
|
+
=== 1.3.0 / 2009年5月30日
|
243
|
+
|
244
|
+
* 新しい機能
|
245
|
+
|
246
|
+
* Builderがブロックの引数の数に応じてスコープが定まるようになった
|
247
|
+
* Builderがアンダースコアで終わるメソッドをtagzと同様にサポートするようになった
|
248
|
+
* Nokogiri::XML::Node#<=> がドキュメントの位置によりノードを比較するように
|
249
|
+
なった
|
250
|
+
* Nokogiri::XML::Node#matches?が与えられたセレクタ内でノードがあればtrue
|
251
|
+
を返すようになった
|
252
|
+
* Nokogiri::XML::Node#ancestors がNokogiri::XML::NodeSetオブジェクトを返すようになった
|
253
|
+
* Nokogiri::XML::Node#ancestorsがオプションのセレクタに対応する親をマッチする
|
254
|
+
ようになった
|
255
|
+
* Nokogiri::HTML::Document#meta_encoding がメタデータのエンコードを返すように
|
256
|
+
なった
|
257
|
+
* Nokogiri::HTML::Document#meta_encoding= でメタデータのエンコードを
|
258
|
+
設定できるようになった
|
259
|
+
* Nokogiri::XML::Document#encoding= でドキュメントのエンコードを
|
260
|
+
設定できるようになった
|
261
|
+
* Nokogiri::XML::Schema でドキュメントがXSDのスキーマに沿って記述されているか
|
262
|
+
を検証できるようになった
|
263
|
+
* Nokogiri::XML::RelaxNG でドキュメントがRelaxNGのスキーマに沿って
|
264
|
+
記述されているかを検証できるようになった
|
265
|
+
* Nokogiri::HTML::ElementDescription はHTML要素の説明フェッチ動作するよう
|
266
|
+
になった
|
267
|
+
* Nokogiri::XML::Node#descriptionは ノードの説明をフェッチ動作するよう
|
268
|
+
になった
|
269
|
+
* Nokogiri::XML::Node#accept は Visitor パターンを実行するようになった
|
270
|
+
* 簡単にドキュメントを解析するコマンド bin/nokogiri を追加
|
271
|
+
(Yataka HARAさんに感謝感激)
|
272
|
+
* Nokogiri::XML::NodeSetが更にArrayとEnumerableの演算を
|
273
|
+
サポートするようになった:
|
274
|
+
index, delete, slice, - (差分), + (連結), & (共通部分),
|
275
|
+
push, pop, shift, ==
|
276
|
+
* Nokogiri.XML, Nokogiri.HTML はNokogiri::XML::ParseOptions objectと一緒に
|
277
|
+
呼び出されるブロックを受け入れるようになった
|
278
|
+
* Nokogiri::XML::Node#namespace は Nokogiri::XML::Namespaceを返すようになった
|
279
|
+
* Nokogiri::XML::Node#namespaceはノードの名前空間を設定するようになった
|
280
|
+
* FFI 経由で JRuby 1.3.0 をサポートするようになった
|
281
|
+
|
282
|
+
* バグの修正
|
283
|
+
|
284
|
+
* nilがCDATAsonstructorに渡される際の問題を修正
|
285
|
+
* Fragment メソッドが正規表現を抜け出させるようになった
|
286
|
+
(Joelさんに感謝感激) (LH #73)
|
287
|
+
* Builder スコープのLH #61, LH #74, LH #70に関しての様々な問題を修正
|
288
|
+
* 名前空間を付け加える時、名前空間が LH#78より除去されてしまう問題を修正
|
289
|
+
* 連結しないノードが発生し、再育成してしまう問題を修正(GH#22)
|
290
|
+
* XSLT が解析中にエラーを発見し損なう問題を修正(GH#32)
|
291
|
+
* CSS selectors内での条件属性のバグ問題を修正(GH#36)
|
292
|
+
* Node#before/after/inner_html=で値なしのHTML属性が受け入れられなかった問題を
|
293
|
+
修正 (GH#35)
|
294
|
+
|
1
295
|
=== 1.2.3 / 2009年3月22日
|
2
296
|
|
3
297
|
* バグの修正
|
@@ -15,13 +309,13 @@
|
|
15
309
|
|
16
310
|
* Nokogiri は soap4r と一緒に使う事が可能。(XSD::XMLParser::Nokogiri 参照)
|
17
311
|
* Nokogiri::XML::Node#inner_html= はノードの中のHTMLをセット出来る
|
18
|
-
* Nokogiri
|
312
|
+
* NokogiriのBuilderのインタフェースの改良
|
19
313
|
* Nokogiri::XML::Node#swap は、現在のノードに新しいhtmlを交換する事が出来る
|
20
314
|
|
21
315
|
|
22
316
|
* バグの修正
|
23
317
|
|
24
|
-
*
|
318
|
+
* BuilderAPIのタグのネスティングを修正 (LH #41)
|
25
319
|
* Nokogiri::HTML.fragment はテキストだけのノードを適切に扱う事が出来る(LH #43)
|
26
320
|
* Nokogiri::XML::Node#before はテキストノードのはじめに挿入する事が出来る (LH #44)
|
27
321
|
* Nokogiri::XML::Node#after はテキストノードの文末に挿入する事が出来る
|
@@ -146,7 +440,7 @@
|
|
146
440
|
|
147
441
|
* 弱参照からドキュメント参照へのメモリー管理の変換
|
148
442
|
* メモリリークに接続
|
149
|
-
*
|
443
|
+
* Builderブロックが取り囲んでいるコンテキストから
|
150
444
|
メソッドの呼び出しをする事が出来る
|
151
445
|
|
152
446
|
=== 1.0.3
|
data/CHANGELOG.rdoc
CHANGED
@@ -1,3 +1,292 @@
|
|
1
|
+
=== 1.4.5 / 2011-06-15
|
2
|
+
|
3
|
+
* New Features
|
4
|
+
|
5
|
+
* Nokogiri::HTML::Document#title accessor gets and sets the document title.
|
6
|
+
* extracted sets of Node::SaveOptions into Node::SaveOptions::DEFAULT_{X,H,XH}TML (refactor)
|
7
|
+
* Raise an exception if a string is passed to Nokogiri::XML::Schema#validate. #406
|
8
|
+
|
9
|
+
* Bugfixes
|
10
|
+
|
11
|
+
* Node#serialize-and-friends now accepts a SaveOption object as the, erm, save object.
|
12
|
+
* Nokogiri::CSS::Parser has-a Nokogiri::CSS::Tokenizer
|
13
|
+
* [JRUBY+FFI only] Weak references are now threadsafe. #355
|
14
|
+
* Make direct start_element() callback (currently used for
|
15
|
+
HTML::SAX::Parser) pass attributes in assoc array, just as
|
16
|
+
emulated start_element() callback does. rel. #356
|
17
|
+
* HTML::SAX::Parser should call back a block given to parse*() if any, just as XML::SAX::Parser does.
|
18
|
+
* Add further encoding detection to HTML parser that libxml2 does not do.
|
19
|
+
* Document#remove_namespaces! now handles attributes with namespaces. #396
|
20
|
+
* XSLT::Stylesheet#transform no longer segfaults when handed a non-XML::Document. #452
|
21
|
+
* XML::Reader no longer segfaults when under GC pressure. #439
|
22
|
+
|
23
|
+
=== 1.4.4 / 2010-11-15
|
24
|
+
|
25
|
+
* New Features
|
26
|
+
|
27
|
+
* XML::Node#children= sets the node's inner html (much like #inner_html=), but returns the reparent node(s).
|
28
|
+
* XSLT supports function extensions. #336
|
29
|
+
* XPath bind parameter substitution. #329
|
30
|
+
* XML::Reader node type constants. #369
|
31
|
+
* SAX Parser context provides line and column information
|
32
|
+
|
33
|
+
* Bugfixes
|
34
|
+
|
35
|
+
* XML::DTD#attributes returns an empty hash instead of nil when there are no attributes.
|
36
|
+
* XML::DTD#{keys,each} now work as expected. #324
|
37
|
+
* {XML,HTML}::DocumentFragment.{new,parse} no longer strip leading and trailing whitespace. #319
|
38
|
+
* XML::Node#{add_child,add_previous_sibling,add_next_sibling,replace} return a NodeSet when passed a string.
|
39
|
+
* Unclosed tags parsed more robustly in fragments. #315
|
40
|
+
* XML::Node#{replace,add_previous_sibling,add_next_sibling} edge cases fixed related to libxml's text node merging. #308
|
41
|
+
* Fixed a segfault when GC occurs during xpath handler argument marshalling. #345
|
42
|
+
* Added hack to Slop decorator to work with previously defined methods. #330
|
43
|
+
* Fix a memory leak when duplicating child nodes. #353
|
44
|
+
* Fixed off-by-one bug with nth-last-{child,of-type} CSS selectors when NOT using an+b notation. #354
|
45
|
+
* Fixed passing of non-namespace attributes to SAX::Document#start_element. #356
|
46
|
+
* Workaround for libxml2 in-context parsing bug. #362
|
47
|
+
* Fixed NodeSet#wrap on nodes within a fragment. #331
|
48
|
+
|
49
|
+
=== 1.4.3 / 2010/07/28
|
50
|
+
|
51
|
+
* New Features
|
52
|
+
|
53
|
+
* XML::Reader#empty_element? returns true for empty elements. #262
|
54
|
+
* Node#remove_namespaces! now removes namespace *declarations* as well. #294
|
55
|
+
* NodeSet#at_xpath, NodeSet#at_css and NodeSet#> do what the corresponding
|
56
|
+
methods of Node do.
|
57
|
+
|
58
|
+
* Bugfixes
|
59
|
+
|
60
|
+
* XML::NodeSet#{include?,delete,push} accept an XML::Namespace
|
61
|
+
* XML::Document#parse added for parsing in the context of a document
|
62
|
+
* XML::DocumentFragment#inner_html= works with contextual parsing! #298, #281
|
63
|
+
* lib/nokogiri/css/parser.y Combined CSS functions + pseudo selectors fixed
|
64
|
+
* Reparenting text nodes is safe, even when the operation frees adjacent merged nodes. #283
|
65
|
+
* Fixed libxml2 versionitis issue with xmlFirstElementChild et al. #303
|
66
|
+
* XML::Attr#add_namespace now works as expected. #252
|
67
|
+
* HTML::DocumentFragment uses the string's encoding. #305
|
68
|
+
* Fix the CSS3 selector translation rule for the general sibling combinator
|
69
|
+
(a.k.a. preceding selector) that incorrectly converted "E + F G" to
|
70
|
+
"//F//G[preceding-sibling::E]".
|
71
|
+
|
72
|
+
=== 1.4.2 / 2010/05/22
|
73
|
+
|
74
|
+
* New Features
|
75
|
+
|
76
|
+
* XML::Node#parse will parse XML or HTML fragments with respect to the
|
77
|
+
context node.
|
78
|
+
* XML::Node#namespaces returns all namespaces defined in the node and all
|
79
|
+
ancestor nodes
|
80
|
+
(previously did not return ancestors' namespace definitions).
|
81
|
+
* Added Enumerable to XML::Node
|
82
|
+
* Nokogiri::XML::Schema#validate now uses xmlSchemaValidateFile if a
|
83
|
+
filename is passed, which is faster and more memory-efficient. GH #219
|
84
|
+
* XML::Document#create_entity will create new EntityDecl objects. GH #174
|
85
|
+
* JRuby FFI implementation no longer uses ObjectSpace._id2ref,
|
86
|
+
instead using Charles Nutter's rocking Weakling gem.
|
87
|
+
* Nokogiri::XML::Node#first_element_child fetch the first child node that is
|
88
|
+
an ELEMENT node.
|
89
|
+
* Nokogiri::XML::Node#last_element_child fetch the last child node that is
|
90
|
+
an ELEMENT node.
|
91
|
+
* Nokogiri::XML::Node#elements fetch all children nodes that are ELEMENT
|
92
|
+
nodes.
|
93
|
+
* Nokogiri::XML::Node#add_child, #add_previous_sibling, #before,
|
94
|
+
#add_next_sibling, #after, #inner_html, #swap and #replace all now
|
95
|
+
accept a Node, DocumentFragment, NodeSet, or a string containing
|
96
|
+
markup.
|
97
|
+
* Node#fragment? indicates whether a node is a DocumentFragment.
|
98
|
+
|
99
|
+
* Bugfixes
|
100
|
+
|
101
|
+
* XML::NodeSet is now always decorated (if the document has decorators).
|
102
|
+
GH #198
|
103
|
+
* XML::NodeSet#slice gracefully handles offset+length larger than the set
|
104
|
+
length. GH #200
|
105
|
+
* XML::Node#content= safely unlinks previous content. GH #203
|
106
|
+
* XML::Node#namespace= takes nil as a parameter
|
107
|
+
* XML::Node#xpath returns things other than NodeSet objects. GH #208
|
108
|
+
* XSLT::StyleSheet#transform accepts hashes for parameters. GH #223
|
109
|
+
* Psuedo selectors inside not() work. GH #205
|
110
|
+
* XML::Builder doesn't break when nodes are unlinked.
|
111
|
+
Thanks to vihai! GH #228
|
112
|
+
* Encoding can be forced on the SAX parser. Thanks Eugene Pimenov! GH #204
|
113
|
+
* XML::DocumentFragment uses XML::Node#parse to determine children.
|
114
|
+
* Fixed a memory leak in xml reader. Thanks sdor! GH #244
|
115
|
+
* Node#replace returns the new child node as claimed in the
|
116
|
+
RDoc. Previously returned +self+.
|
117
|
+
|
118
|
+
* Notes
|
119
|
+
|
120
|
+
* The Windows gems now bundle DLLs for libxml 2.7.6 and libxslt
|
121
|
+
1.1.26. Prior to this release, libxml 2.7.3 and libxslt 1.1.24
|
122
|
+
were bundled.
|
123
|
+
|
124
|
+
=== 1.4.1 / 2009/12/10
|
125
|
+
|
126
|
+
* New Features
|
127
|
+
|
128
|
+
* Added Nokogiri::LIBXML_ICONV_ENABLED
|
129
|
+
* Alias Node#[] to Node#attr
|
130
|
+
* XML::Node#next_element added
|
131
|
+
* XML::Node#> added for searching a nodes immediate children
|
132
|
+
* XML::NodeSet#reverse added
|
133
|
+
* Added fragment support to Node#add_child, Node#add_next_sibling,
|
134
|
+
Node#add_previous_sibling, and Node#replace.
|
135
|
+
* XML::Node#previous_element implemented
|
136
|
+
* Rubinius support
|
137
|
+
* Ths CSS selector engine now supports :has()
|
138
|
+
* XML::NodeSet#filter() was added
|
139
|
+
* XML::Node.next= and .previous= are aliases for add_next_sibling and add_previous_sibling. GH #183
|
140
|
+
|
141
|
+
* Bugfixes
|
142
|
+
|
143
|
+
* XML fragments with namespaces do not raise an exception (regression in 1.4.0)
|
144
|
+
* Node#matches? works in nodes contained by a DocumentFragment. GH #158
|
145
|
+
* Document should not define add_namespace() method. GH #169
|
146
|
+
* XPath queries returning namespace declarations do not segfault.
|
147
|
+
* Node#replace works with nodes from different documents. GH #162
|
148
|
+
* Adding XML::Document#collect_namespaces
|
149
|
+
* Fixed bugs in the SOAP4R adapter
|
150
|
+
* Fixed bug in XML::Node#next_element for certain edge cases
|
151
|
+
* Fixed load path issue with JRuby under Windows. GH #160.
|
152
|
+
* XSLT#apply_to will honor the "output method". Thanks richardlehane!
|
153
|
+
* Fragments containing leading text nodes with newlines now parse properly. GH #178.
|
154
|
+
|
155
|
+
=== 1.4.0 / 2009/10/30
|
156
|
+
|
157
|
+
* Happy Birthday!
|
158
|
+
|
159
|
+
* New Features
|
160
|
+
|
161
|
+
* Node#at_xpath returns the first element of the NodeSet matching the XPath
|
162
|
+
expression.
|
163
|
+
* Node#at_css returns the first element of the NodeSet matching the CSS
|
164
|
+
selector.
|
165
|
+
* NodeSet#| for unions GH #119 (Thanks Serabe!)
|
166
|
+
* NodeSet#inspect makes prettier output
|
167
|
+
* Node#inspect implemented for more rubyish document inspecting
|
168
|
+
* Added XML::DTD#external_id
|
169
|
+
* Added XML::DTD#system_id
|
170
|
+
* Added XML::ElementContent for DTD Element content validity
|
171
|
+
* Better namespace declaration support in Nokogiri::XML::Builder
|
172
|
+
* Added XML::Node#external_subset
|
173
|
+
* Added XML::Node#create_external_subset
|
174
|
+
* Added XML::Node#create_internal_subset
|
175
|
+
* XML Builder can append raw strings (GH #141, patch from dudleyf)
|
176
|
+
* XML::SAX::ParserContext added
|
177
|
+
* XML::Document#remove_namespaces! for the namespace-impaired
|
178
|
+
|
179
|
+
* Bugfixes
|
180
|
+
|
181
|
+
* returns nil when HTML documents do not declare a meta encoding tag. GH #115
|
182
|
+
* Uses RbConfig::CONFIG['host_os'] to adjust ENV['PATH'] GH #113
|
183
|
+
* NodeSet#search is more efficient GH #119 (Thanks Serabe!)
|
184
|
+
* NodeSet#xpath handles custom xpath functions
|
185
|
+
* Fixing a SEGV when XML::Reader gets attributes for current node
|
186
|
+
* Node#inner_html takes the same arguments as Node#to_html GH #117
|
187
|
+
* DocumentFragment#css delegates to it's child nodes GH #123
|
188
|
+
* NodeSet#[] works with slices larger than NodeSet#length GH #131
|
189
|
+
* Reparented nodes maintain their namespace. GH #134
|
190
|
+
* Fixed SEGV when adding an XML::Document to NodeSet
|
191
|
+
* XML::SyntaxError can be duplicated. GH #148
|
192
|
+
|
193
|
+
* Deprecations
|
194
|
+
|
195
|
+
* Hpricot compatibility layer removed
|
196
|
+
|
197
|
+
=== 1.3.3 / 2009/07/26
|
198
|
+
|
199
|
+
* New Features
|
200
|
+
|
201
|
+
* NodeSet#children returns all children of all nodes
|
202
|
+
|
203
|
+
* Bugfixes
|
204
|
+
|
205
|
+
* Override libxml-ruby's global error handler
|
206
|
+
* ParseOption#strict fixed
|
207
|
+
* Fixed a segfault when sending an empty string to Node#inner_html= GH #88
|
208
|
+
* String encoding is now set to UTF-8 in Ruby 1.9
|
209
|
+
* Fixed a segfault when moving root nodes between documents. GH #91
|
210
|
+
* Fixed an O(n) penalty on node creation. GH #101
|
211
|
+
* Allowing XML documents to be output as HTML documents
|
212
|
+
|
213
|
+
* Deprecations
|
214
|
+
|
215
|
+
* Hpricot compatibility layer will be removed in 1.4.0
|
216
|
+
|
217
|
+
=== 1.3.2 / 2009-06-22
|
218
|
+
|
219
|
+
* New Features
|
220
|
+
|
221
|
+
* Nokogiri::XML::DTD#validate will validate your document
|
222
|
+
|
223
|
+
* Bugfixes
|
224
|
+
|
225
|
+
* Nokogiri::XML::NodeSet#search will search top level nodes. GH #73
|
226
|
+
* Removed namespace related methods from Nokogiri::XML::Document
|
227
|
+
* Fixed a segfault when a namespace was added twice
|
228
|
+
* Made nokogiri work with Snow Leopard GH #79
|
229
|
+
* Mailing list has moved to: http://groups.google.com/group/nokogiri-talk
|
230
|
+
* HTML fragments now correctly handle comments and CDATA blocks. GH #78
|
231
|
+
* Nokogiri::XML::Document#clone is now an alias of dup
|
232
|
+
|
233
|
+
* Deprecations
|
234
|
+
|
235
|
+
* Nokogiri::XML::SAX::Document#start_element_ns is deprecated, please switch
|
236
|
+
to Nokogiri::XML::SAX::Document#start_element_namespace
|
237
|
+
* Nokogiri::XML::SAX::Document#end_element_ns is deprecated, please switch
|
238
|
+
to Nokogiri::XML::SAX::Document#end_element_namespace
|
239
|
+
|
240
|
+
=== 1.3.1 / 2009-06-07
|
241
|
+
|
242
|
+
* Bugfixes
|
243
|
+
|
244
|
+
* extconf.rb checks for optional RelaxNG and Schema functions
|
245
|
+
* Namespace nodes are added to the Document node cache
|
246
|
+
|
247
|
+
=== 1.3.0 / 2009-05-30
|
248
|
+
|
249
|
+
* New Features
|
250
|
+
|
251
|
+
* Builder changes scope based on block arity
|
252
|
+
* Builder supports methods ending in underscore similar to tagz
|
253
|
+
* Nokogiri::XML::Node#<=> compares nodes based on Document position
|
254
|
+
* Nokogiri::XML::Node#matches? returns true if Node can be found with
|
255
|
+
given selector.
|
256
|
+
* Nokogiri::XML::Node#ancestors now returns an Nokogiri::XML::NodeSet
|
257
|
+
* Nokogiri::XML::Node#ancestors will match parents against optional selector
|
258
|
+
* Nokogiri::HTML::Document#meta_encoding for getting the meta encoding
|
259
|
+
* Nokogiri::HTML::Document#meta_encoding= for setting the meta encoding
|
260
|
+
* Nokogiri::XML::Document#encoding= to set the document encoding
|
261
|
+
* Nokogiri::XML::Schema for validating documents against XSD schema
|
262
|
+
* Nokogiri::XML::RelaxNG for validating documents against RelaxNG schema
|
263
|
+
* Nokogiri::HTML::ElementDescription for fetching HTML element descriptions
|
264
|
+
* Nokogiri::XML::Node#description to fetch the node description
|
265
|
+
* Nokogiri::XML::Node#accept implements Visitor pattern
|
266
|
+
* bin/nokogiri for easily examining documents (Thanks Yutaka HARA!)
|
267
|
+
* Nokogiri::XML::NodeSet now supports more Array and Enumerable operators:
|
268
|
+
index, delete, slice, - (difference), + (concatenation), & (intersection),
|
269
|
+
push, pop, shift, ==
|
270
|
+
* Nokogiri.XML, Nokogiri.HTML take blocks that receive
|
271
|
+
Nokogiri::XML::ParseOptions objects
|
272
|
+
* Nokogiri::XML::Node#namespace returns a Nokogiri::XML::Namespace
|
273
|
+
* Nokogiri::XML::Node#namespace= for setting a node's namespace
|
274
|
+
* Nokogiri::XML::DocumentFragment and Nokogiri::HTML::DocumentFragment
|
275
|
+
have a sensible API and a more robust implementation.
|
276
|
+
* JRuby 1.3.0 support via FFI.
|
277
|
+
|
278
|
+
* Bugfixes
|
279
|
+
|
280
|
+
* Fixed a problem with nil passed to CDATA constructor
|
281
|
+
* Fragment method deals with regular expression characters
|
282
|
+
(Thanks Joel!) LH #73
|
283
|
+
* Fixing builder scope issues LH #61, LH #74, LH #70
|
284
|
+
* Fixed a problem when adding a child could remove the child namespace LH#78
|
285
|
+
* Fixed bug with unlinking a node then reparenting it. (GH#22)
|
286
|
+
* Fixed failure to catch errors during XSLT parsing (GH#32)
|
287
|
+
* Fixed a bug with attribute conditions in CSS selectors (GH#36)
|
288
|
+
* Fixed intolerance of HTML attributes without values in Node#before/after/inner_html=. (GH#35)
|
289
|
+
|
1
290
|
=== 1.2.3 / 2009-03-22
|
2
291
|
|
3
292
|
* Bugfixes
|