=== 1.4.0 2009年10月30日 * 今日はノコギリの満一歳のお誕生日です * 新しい機能 * Node#at_xpath はXPathの表現に適したNodeSetの一番最初の要素に返す * Node#at_css はCSSのセレクターに合うNodeSetの一番最初の要素に返す * NodeSet#| は合併させる機能を果たす GH #119 (Serabe ありがとう!) * NodeSet#inspect inspectは出力をきれいにさせる * Node#inspect インスペクト後、普通のrubyで出力施行する * XML::DTD#external_id を追加 * XML::DTD#system_id を追加 * XML::ElementContent はDTD要素のコンテンツを有効化させる * Nokogiri::XML::Builder内での名前空間宣言用のサポートを改良 * XML::Node#external_subsetを追加 * XML::Node#create_external_subsetを追加 * XML::Node#create_internal_subsetを追加 * XML Builderは生成されていないstringsを付加出来る様になった (GH #141, patch from dudleyf) * XML::SAX::ParserContext を追加 * XML::Document#remove_namespaces! は名前空間を使いこなせない人たち用の措置 * バグの修正 * HTMLドキュメントが メタエンコーディングのタグを宣言しない時、 nilを返すようになった GH #115 * ENV['PATH'] を調節する為に、RbConfig::CONFIG['host_os']を使用できるように なった GH #113 * NodeSet#searchが更に効率的になった GH #119 (Serabe!に感謝します) * NodeSet#xpathがcustom xpath機能を取り扱える様になった * XML::Reader が現時点のノード用に属性を取得する際に、 SEGVを修正するようになった * Node#inner_html がNode#to_html と同じ独立変数を受け入れるようになった GH #117 * DocumentFragment#css は子ノードへ委任をするようになった GH #123 * NodeSet#[]がNodeSet#lengthより大きいスライスでも機能できるようになった GH #131 * 新たな親ノードの名前空間の維持出来るようになった GH #134 * XML::Document をNodeSetに追加の際にSEGVが修正されるようになった * XML::SyntaxError が重複可 * 廃棄予定 * Hpricot用の互換性レイヤーを削除 === 1.3.3 / 2009年7月26日 * 新しい機能 * NodeSet#children 全ての子ノードを返すようになった * バグの修正 * libxml-ruby のグローバ ルエラー ハンドラー に優先するようになった * ParseOption#strict を修正 * 空文字列を Node#inner_html= に与えた時に生じたSEGVを修正 GH #88 * Ruby 1.9 では文字列のエンコーディングをUTF-8になるようにした * ドキュメントの根ノードから違うドキュメントの根ノードに移動した時に生じた SEGVを修正 GH #91 * ノードをインスタンス化する時のO(n)のペナルティーを修正 GH #101 * XMLのドキュメントをHTMLのドキュメントとして出力出来るようになった * 廃棄予定 * Hpricotの互換性レイヤーがNokogiriの1.4.0で除去される予定 === 1.3.2 / 2009年6月22日 * 新しい機能 * Nokogiri::XML::DTD#validate はドキュメントを検証できるようになった * バグの修正 * Nokogiri::XML::NodeSet#search はトップレベルのノードを検索するようになった GH #73 * Nokogiri::XML::Documentからメソッドに関係する名前空間を取り除いた * 2回同じ名前空間が追加されたときSEGVする問題を修正した * Snow Leopard で Nokogiri が動くようになった GH #79 * メーリングリストはGoogle Groupsの以下のURLに移動した http://groups.google.com/group/nokogiri-talk * HTML フラグメントはコメントとCDATAを正確に扱うようになった * Nokogiri::XML::Document#cloneはdupのaliasになった * 廃棄予定 * Nokogiri::XML::SAX::Document#start_element_nsは廃棄予定なので Nokogiri::XML::SAX::Document#start_element_namespaceを代わりに使用して下さい * Nokogiri::XML::SAX::Document#end_element_nsは廃棄予定なので Nokogiri::XML::SAX::Document#end_element_namespaceを代わりに使用して下さい === 1.3.1 / 2009年6月7日 * バグの修正 * extconf.rb は任意のRelaxNGとSchemaの機能を探すようになった * ドキュメントのノードキャッシュに名前空間のノードが入るようになった === 1.3.0 / 2009年5月30日 * 新しい機能 * Builderがブロックの引数の数に応じてスコープが定まるようになった * Builderがアンダースコアで終わるメソッドをtagzと同様にサポートするようになった * Nokogiri::XML::Node#<=> がドキュメントの位置によりノードを比較するように なった * Nokogiri::XML::Node#matches?が与えられたセレクタ内でノードがあればtrue を返すようになった * Nokogiri::XML::Node#ancestors がNokogiri::XML::NodeSetオブジェクトを返すようになった * Nokogiri::XML::Node#ancestorsがオプションのセレクタに対応する親をマッチする ようになった * Nokogiri::HTML::Document#meta_encoding がメタデータのエンコードを返すように なった * Nokogiri::HTML::Document#meta_encoding= でメタデータのエンコードを 設定できるようになった * Nokogiri::XML::Document#encoding= でドキュメントのエンコードを 設定できるようになった * Nokogiri::XML::Schema でドキュメントがXSDのスキーマに沿って記述されているか を検証できるようになった * Nokogiri::XML::RelaxNG でドキュメントがRelaxNGのスキーマに沿って 記述されているかを検証できるようになった * Nokogiri::HTML::ElementDescription はHTML要素の説明フェッチ動作するよう になった * Nokogiri::XML::Node#descriptionは ノードの説明をフェッチ動作するよう になった * Nokogiri::XML::Node#accept は Visitor パターンを実行するようになった * 簡単にドキュメントを解析するコマンド bin/nokogiri を追加 (Yataka HARAさんに感謝感激) * Nokogiri::XML::NodeSetが更にArrayとEnumerableの演算を サポートするようになった: index, delete, slice, - (差分), + (連結), & (共通部分), push, pop, shift, == * Nokogiri.XML, Nokogiri.HTML はNokogiri::XML::ParseOptions objectと一緒に 呼び出されるブロックを受け入れるようになった * Nokogiri::XML::Node#namespace は Nokogiri::XML::Namespaceを返すようになった * Nokogiri::XML::Node#namespaceはノードの名前空間を設定するようになった * FFI 経由で JRuby 1.3.0 をサポートするようになった * バグの修正 * nilがCDATAsonstructorに渡される際の問題を修正 * Fragment メソッドが正規表現を抜け出させるようになった (Joelさんに感謝感激) (LH #73) * Builder スコープのLH #61, LH #74, LH #70に関しての様々な問題を修正 * 名前空間を付け加える時、名前空間が LH#78より除去されてしまう問題を修正 * 連結しないノードが発生し、再育成してしまう問題を修正(GH#22) * XSLT が解析中にエラーを発見し損なう問題を修正(GH#32) * CSS selectors内での条件属性のバグ問題を修正(GH#36) * Node#before/after/inner_html=で値なしのHTML属性が受け入れられなかった問題を 修正 (GH#35) === 1.2.3 / 2009年3月22日 * バグの修正 * Node#new 内にて、バグを修正する * DocumentFragmentの作成時、名前空間に割り当てる LH #66 * Nokogiri::XML::NodeSet#dup は機能するようになった GH #10 * Nokogiri::HTMLは文字列がブランクの時、空のドキュメントで返す GH#11 * 子ノードを付加する事で、重複した名前空間の宣言を取り除く LH#67 * ビルダ方法はハッシュを第二引数とする === 1.2.2 / 2009年3月14日 * 新しい機能 * Nokogiri は soap4r と一緒に使う事が可能。(XSD::XMLParser::Nokogiri 参照) * Nokogiri::XML::Node#inner_html= はノードの中のHTMLをセット出来る * NokogiriのBuilderのインタフェースの改良 * Nokogiri::XML::Node#swap は、現在のノードに新しいhtmlを交換する事が出来る * バグの修正 * BuilderAPIのタグのネスティングを修正 (LH #41) * Nokogiri::HTML.fragment はテキストだけのノードを適切に扱う事が出来る(LH #43) * Nokogiri::XML::Node#before はテキストノードのはじめに挿入する事が出来る (LH #44) * Nokogiri::XML::Node#after はテキストノードの文末に挿入する事が出来る * Nokogiri::XML::Node#search 名前空間が自動的に登録されるようになった(LH#42) * Nokogiri::XML::NodeSet#search 名前空間が自動的に登録されるようになった * Nokogiri::HTML::NamedCharacters はlibxml2に委任 * Nokogiri::XML::Node#[] はSymbolを使う (LH #48) * vasprintf にwindowsを修正 (Geffroy Couprie ありがとう!) * Nokogiri::XML::Node#[]= はentityを符号化しない (LH #55) * 名前空間はreparentedのノードに模写する (LH #56) * StringのエンコードはRuby 1.9での初期設定を使用する * Document#dup は新しいドキュメントに同じタイプを作る (LH #59) * Document#parent は存在しない (LH #64) === 1.2.1 / 2009年2月23日 * 修正 * CSS のセレクターのスペースを修正 * Ruby 1.9 のStringのエンコードを修正 (角谷さんに感謝!) === 1.2.0 / 2009年2月22日 * 新しい機能 * CSSサーチが CSS3 名前空間クエリをサポートするようになった * ルート要素での名前空間が自動的に登録されるようになった * CSS クエリが初期設定の名前空間を使うようになった * Nokogiri::XML::Document#encoding で文書にエンコードを使用、受け取る * Nokogiri::XML::Document#url で文書のURLを受け取る * Nokogiri::XML::Node#each はname属性、値を一組にし反復適用する * Nokogiri::XML::Node#keys はすべてのname属性を受け取る * Nokogiri::XML::Node#line は行番号をノード用に受け取る (Dirkjan Bussinkさんに感謝感激) * Nokogiri::XML::Node#serialize は任意されたencodingパラメーターを受け入れる * Nokogiri::XML::Node#to_html, to_xml, と to_xhtml は任意されたencodingパラメーターを受け入れる * Nokogiri::XML::Node#to_str * Nokogiri::XML::Node#to_xhtml でXHTML文書を生成する * Nokogiri::XML::Node#values が全ての属性値を受け入れる * Nokogiri::XML::Node#write_to は任意されたencodingで要素をIOオブジェクトへ書く * Nokogiri::XML::ProcessingInstrunction.new * Nokogiri::XML::SAX::PushParser は全てのプッシュパースに必要な解析をする * バグの修正 * Nokogiri::XML::Document#dup を修正 * ヘッダ検知を修正. 謝々るびきちさん! * 無効なCSS内にて解析機能を動かなくさせる原因を修正 * 廃棄予定 * Nokogiri::XML::Node.new_from_str は1.3.0にて廃棄予定 * APIの変更 * Nokogiri::HTML.fragment は XML::DocumentFragment (LH #32)で返す === 1.1.1 * 新しい機能 * XML::Node#elem? を追加 * XML::Node#attribute_nodes を追加 * XML::Attr を追加 * XML::Node#delete を追加 * XML::NodeSet#inner_html を追加 * バグの修正 * HTML のノードを \r のエンティティを含まない * CSS::SelectorHandler と XML::XPathHandler を除去 * XML::Node#attributes が Attr node を value値に返す * XML::NodeSet が to_xml へ実行 === 1.1.0 * 新しい機能 * カスタム XPath 機能はある。( Nokogiri::XML::Node#xpath 参照 ) * カスタム CSS 擬似クラスと機能はある。( Nokogiri::XML::Node#css 参照 ) * Nokogiri::XML::Node#<< が作成中に子ノードを自動追加 * バグの修正 * mutex が CSS のキャッシュのアクセスをロックする * GCC 3.3.5 のビルドに関する問題を修正 * XML::Node#to_xml が引数indentationを取る * XML::Node#dup が引数任意のdepthを取る * XML::Node#add_previous_sibling が新しい兄弟ノードで返す === 1.0.7 * バグの修正 * Dike 使用時中のメモリーリークの修正 * SAX パーサーが現在 IO Stream 同時解析 * コメント nodes が独自のクラスを継承する * Nokogiri() は Nokogiri.parse() へデリゲートする * ENV['PATH'] に付加せれる代わりに先頭へデータ挿入される * 複雑な CSS 内のバグを修正完了 :not selector ではありません === 1.0.6 * 5つの修正 * XPath のパーサーが SyntaxError を生じさせ解析停止させる * CSS のパーサーが SyntaxError を生じさせ解析停止させる * filter() と not() hpricot の互換性を追加 * CSS が Node#search 経由で検索し、常時対応する事が出来るようになった * CSS より XPath 変換がキャッシュに入れられるようになった === 1.0.5 * バグフィックス * メーリンクリストを作成 * バグファイルを作成 * Windows 内で ENV['PATH'] が存在しない場合でも、存在出来るように設定完了 * Document 内の NodeSet#[] の結果をキャッシュする === 1.0.4 * バグフィックス * 弱参照からドキュメント参照へのメモリー管理の変換 * メモリリークに接続 * Builderブロックが取り囲んでいるコンテキストから メソッドの呼び出しをする事が出来る === 1.0.3 * 5つのバグ修正 * NodeSet が to_ary へ実行 * XML::Document#parent を除去 * GCバグ修正済み (Mike は最高!) * 1.8.5互換性の為の RARRAY_LEN 除去 * inner_html 修正済み (Yahuda に感謝) === 1.0.2 * 1つのバグ修正 * extconf.rb は frex や racc を調べないはず === 1.0.1 * 1つのバグ修正 * extconf.rb が libdir や prefix を検索しない事を確認済み それによって、ports libxml/ruby が正しくリンクする (lucsky に感謝!) === 1.0.0 / 2008-07-13 * 1つの偉大な増進 * ご誕生である