### Home Classes Methods

### Files

- CHANGELOG.ja.rdoc
- CHANGELOG.rdoc
- C_CODING_STYLE.rdoc
- Manifest.txt
- README.ja.rdoc
- README.rdoc

### Class Index

Quicksearch

- Nokogiri
- Nokogiri::CSS
- Nokogiri::CSS::Node
- Nokogiri::CSS::Parser
- Nokogiri::CSS::SyntaxError
- Nokogiri::CSS::Tokenizer
- Nokogiri::CSS::Tokenizer::ScanError
- Nokogiri::Decorators
- Nokogiri::Decorators::Slop
- Nokogiri::EncodingHandler
- Nokogiri::HTML
- Nokogiri::HTML::Builder
- Nokogiri::HTML::Document
- Nokogiri::HTML::Document::EncodingReader
- Nokogiri::HTML::Document::EncodingReader::JumpSAXHandler
- Nokogiri::HTML::DocumentFragment
- Nokogiri::HTML::ElementDescription
- Nokogiri::HTML::EntityDescription
- Nokogiri::HTML::EntityLookup
- Nokogiri::HTML::SAX
- Nokogiri::HTML::SAX::Parser
- Nokogiri::HTML::SAX::ParserContext
- Nokogiri::HTML::SAX::PushParser
- Nokogiri::SyntaxError
- Nokogiri::XML
- Nokogiri::XML::Attr
- Nokogiri::XML::AttributeDecl
- Nokogiri::XML::Builder
- Nokogiri::XML::CDATA
- Nokogiri::XML::CharacterData
- Nokogiri::XML::Comment
- Nokogiri::XML::DTD
- Nokogiri::XML::Document
- Nokogiri::XML::DocumentFragment
- Nokogiri::XML::Element
- Nokogiri::XML::ElementContent
- Nokogiri::XML::ElementDecl
- Nokogiri::XML::EntityDecl
- Nokogiri::XML::EntityReference
- Nokogiri::XML::Namespace
- Nokogiri::XML::Node
- Nokogiri::XML::Node::SaveOptions
- Nokogiri::XML::NodeSet
- Nokogiri::XML::Notation
- Nokogiri::XML::PP
- Nokogiri::XML::PP::CharacterData
- Nokogiri::XML::PP::Node
- Nokogiri::XML::ParseOptions
- Nokogiri::XML::ProcessingInstruction
- Nokogiri::XML::Reader
- Nokogiri::XML::RelaxNG
- Nokogiri::XML::SAX
- Nokogiri::XML::SAX::Document
- Nokogiri::XML::SAX::Parser
- Nokogiri::XML::SAX::Parser::Attribute
- Nokogiri::XML::SAX::ParserContext
- Nokogiri::XML::SAX::PushParser
- Nokogiri::XML::Schema
- Nokogiri::XML::SyntaxError
- Nokogiri::XML::Text
- Nokogiri::XML::XPath
- Nokogiri::XML::XPath::SyntaxError
- Nokogiri::XML::XPathContext
- Nokogiri::XSLT
- Nokogiri::XSLT::Stylesheet
- XSD
- XSD::XMLParser
- XSD::XMLParser::Nokogiri
- Object

No matching classes.

### 1.6.0 / 2013年6月8日

This release was based on v1.5.10 and 1.6.0.rc1, and contains changes mentioned in both.

- 廃止

  - Remove pre 1.9 monitoring from Travis.

### 1.6.0.rc1 / 2013年4月14日

This release was based on v1.5.9, and so does not contain any fixes mentioned in the notes for v1.5.10.

- 註

  - 実行時依存 gem として mini_portile を追加

  - Ruby 1.9.2以上のみサポート

- 機能

  - (MRI) libxml 2.8.0 と libxslt 1.2.26 を同梱。 環境変数 NOKOGIRI_USE_SYSTEM_LIBRARIES を設定しない限り、 gem のインストール時にコンパイルして使われる。 VERSION_INFO (および `nokogiri -v`) には、同梱の libxml またはシステムの libxml のいずれが使われているかの情報が含まれる。

  - (Windows) libxml 2.8.0 に更新

- 廃止

  - Ruby 1.8.7以下のサポートを終了

### 1.5.10 / 2013年6月7日

- バグ修正

  - (JRuby) Fix “null document” error when parsing an empty IO in jruby 1.7.3. #883

  - (JRuby) Fix schema validation when XSD has DOCTYPE set to DTD. #861 (Thanks, Patrick Cheng!)

  - (MRI) Fix segfault when there is no default subelement for an HTML node. #917

- 註

  - Use rb_ary_entry instead of RARRAY_PTR (you know, for Rubinius). #877 (Thanks, Dirkjan Bussink!)

  - Fix TypeError when running tests. #900 (Thanks, Cédric Boutillier!)

### 1.5.9 / 2013年3月21日

- バグ修正

  - prefixed attributes を持つ要素が親を付け替えられたとき名前空間を適切に扱う #869

  - ネストされた HTML のなかの SVG 要素が持つ名前空間つき属性を参照したときの返り値が一致しないバグを修正 #861

  - (MRI) 部分ノードをパースしたときメモリリークするバグを修正 #856

### 1.5.8 / 2013年3月19日

- バグ修正

  - (JRuby) xhref 属性があり base_uri が無いとき、 EmptyStackException 例外が発生するのを修正 #534, #805. (ありがとう, Patrick Quinn と Brian Hoffman!)

  - 1.5.7 から xmlns 属性が重複するバグを修正 #865

  - Nokogiri::XML::Builder を使って prefixed 名前空間をルートノードに対しても使えるようにした。 #868

### 1.5.7 / 2013年3月18日

- 機能

  - Ruby 2.0 で Windows 環境をサポート

- バグ修正

  - エンコーディング名が小文字のとき SAX::Parser.parse_io が例外を投げるようになった。 #828

  - (JRuby) Java の Nokogiri はついに 1.8 と 1.9 両方のモードで全てのテストがグリーンになった！イェーイ！ #798, #705

  - (JRuby) Nokogiri::XML::Reader が jruby で壊れていたのを修正 (pull parser なのに全ての xml ドキュメントをメモリ上にロードしていた) #831

  - (JRuby) JRuby が “&amp;” をパースすると停止してしまう #837

  - (JRuby) JRuby で不正な XML 命令をパースさせると NullPointerException 例外が発生する #838

  - (JRuby) Node#content= が JRuby と MRI で一致しない #839

  - (JRuby) to_xhtml が自分自身に閉じタグを表すスラッシュを含む要素を正しく表示しない #834

  - (JRuby) テキストノードの後ろに続くエンティティが壊れてしまう (`&` や `;` が消える) #835

  - (JRuby) 空の attributes を参照すると nil が返る #818

  - “.foo” のような CSS クラス名の問い合わせ時に連続した空白を単一とみなす #854

  - 名前空間の扱いが MRI と JRuby の間で統一された #846, #801 (ありがとう, Michael Klein!)

  - (MRI) SAX パーサーが空の xml 命令をパースできるようにする #845

### 1.5.6 / 2012年12月19日

- 新機能

  - XML::Document#collect_namespaces　メソッドのパフォーマンスを改善した。 #761 (ありがとう、Juergen Mangler!)

  - SAX::Document#processing_instructionに新しいcallbackが追加 (ありがとう、Kitaiti Makoto!)

  - Node#native_content= メソッドでエスケープされていない文字列をセットできるようにした。 #768

  - 名前空間を付けて xpath 式を書く場合に、シンボルキーを使えるようにした。#729 (ありがとう、Ben Langfeld.)

  - XML::Node#[]= メソッド内で受け取った引数を文字列に変換するようにした。#729 (ありがとう、Ben Langfeld.)

  - bin/nokogiri コマンドが $stdin からドキュメントを読んで処理できるようにした。

  - bin/nokogiri -e を指定することでコマンドラインプログラムを実行できるようにした。

  - (JRuby) bin/nokogiri –version は Xerces および NekoHTML のバージョンを表示。

- バグ修正

  - Nokogiri はこのバージョンからXSLT変換のエラーを検出するようになった。#731 (ありがとう、Justin Fitzsimmons!)

  - DocumentFragment のトップレベルノードを置き換えようとした際に Error を出さない。 #775

  - SAXパーザに不正なエンコーディングに渡された場合はArgumentErrorを投げるようにした。#756 (ありがとう、Bradley Schaefer!)

  - (JRuby) XML宣言の前にスペースがあると、ドキュメントのパーズに失敗する。(#748の修正でこれもなおっている) #790

  - (JRuby) Nokogiri::XML::Node#content のJRubyの振る舞いがCRubyと同じではない。#794, #797

  - (JRuby) で ‘#’ で始まる文字列を名前とする EntityReference を作ろうとすると INVALID_CHARACTER_ERR という例外がはっせいする。 #719

  - (JRuby) では Nodeのサブクラスのnamespaceを正しく文字列に変換しない。 #715

  - (JRuby) Node#contentがこのバージョンから改行コードを正しく表示するようになった。#737 (ありがとう、Piotr Szmielew!)

  - (JRuby) recover optionが指定されている場合は宣言の無い名前空間を無視するようにした。#748

  - (JRuby) 名前空間を検出するXPathが続けて実行されても例外を投げてはいけない。#764

  - (JRuby) XMLを表示(出力)する際のホワイトスペースの扱いをlibxml2バージョンとさらに同様になるようにした。#771

  - (JRuby) 名前空間付きの属性を含むXMLドキュメントを文字列でbuilderに追加しようとすると失敗する。#770

  - (JRuby) Nokogiri::XML::Document#wrapを使って生成したドキュメントに << でノードを追加しようとすると

        undefined method `length' for nil:NilClassのエラーが発生する #781

  - (JRuby) 開いているファイルのデスクリプタを閉じようとすると、“bad file descriptor” が発生する。#495

  - (JRuby) 属性デコレータに関するJRubyとCRubyの非互換性 #785

  - (JRuby) DOCTYPE宣言内に内部サブセットを持たない(正しい)XMLをパースする際の問題 #547, #811

  - (JRuby) テキストにコロンを含むノードをパースする際の問題 #728

  - (JRuby) HTML文書のDOCTYPEを正しくパース #733

  - (JRuby) Builder で create_internal_subset を使った場合のXML出力にDOCTYPE宣言を含める #751

  - (JRuby) JRubyでのみ、 Builder でUTF-8テキストを text で括る必要があった #784

### 1.5.5 / 2012年6月24日

- 機能

  - JRuby の1.9モードのサポートを大幅改善！イェイ！

- バグ修正

  - JRuby Nokogiri の add_previous_sibling が以前は動いていたのに今は動かない(1.5.0 -> 1.5.1)。 #691 (ありがとう, John Shahid!)

  - JRuby バーションは URL が引数にあたえられると HTML ドキュメントを作れない。 #674 (ありがとう, John Shahid!)

  - JRuby バージョンは HTMLとして nil か “” が与えられると NullPointerException を投げる。 #699

  - JRuby 1.9 モードでエラー, uncaught throw ‘encoding_found’, が発生する。 #673

  - JRuby で US-ASCII にエンコードされた文字列が正しくないエンコードを返してくる。 #583

  - 512 文字以上が与えられたときに XmlSaxPushParser が IndexOutOfBoundsException を投げる。#567, #615

  - Xpath を評価した結果、空の NodeSet が帰ってくる場合に、NodeSet が持っている Document の decorate に失敗して例外が投げられる。#514

  - JRuby で xpath を namespace 付きで指定した場合に、エラーが発生する。pull request #681 (ありがとう, Piotr Szmielew)

  - JRuby で Nokogiri::XML::Node を継承したクラスを定義すると、namespace が表示されない。 #695

  - JRuby で RDF::RDFXML::Writer をインスタンス化しようとすると NAMESPACE_ERR (org.w3c.dom.DOMException) が発生する. #683

  - JRuby で xpath に namespaces を指定すると例外が発生する. #493

  - JRuby の Entity 解決は C version の Nokogiri と同じ結果にならないといけない。#704, #647, #703

### 1.5.4 / 2012年6月12日

- 機能

  - “nokogiri” コマンドに `–rng` オプションが与えられと、より詳しい説明を表示するようになった。 #675 (ありがとう, Dan Radez!)

  - `-Werror=format-security`　CFLAGを使っている hardened な Debian 系 Linux でのビルドをサポート #680.

  - pkg-config ありのシステム上でのよりよいビルドをサポート。 #584

  - 複数の iconv がイストールされているシステムでのよりよいビルドをサポート。

- バグ修正

  - DocumentFragment をベースにしてコメントノードを作ったときに Segmentation fault する。 #677, #678.

  - at() と search() メソッドで ‘.’ をxpathとして扱う。 #690

  - (MRI, Security) XML パース時のディフォルトのオプションを nonet に変更。これにより、ディフォルトでは ドキュメントパース時にネットワーク接続を行わないようにし、XXE 脆弱性に対応した。#693

    パース時にネットワークに接続して外部のドキュメントを見にいかせたい場合には、以下のように `nonoet` オプションを設定する:

    Nokogiri::XML::Document.parse(xml) { |config| config.nononet }

    ここに、自分ならではの二重否定のジョークをうめこむとなおよし。

### 1.5.3 / 2012年6月1日

- 機能

  - jQuery のような “prefixless” CSS セレクタ, ~ や >, + をサポート。#621, #623. (ありがとう, David Lee!)

  - homebrew 0.9でのインストールを改善してみる。(iconv周り) パッケージ管理って便利じゃない？

- バグ修正

  - カスタム xpath 関数が空の nodeset を引数に含む場合、segfault を起こす。 #634.

  - Nokogiri::XML::Node#css は、デフォルトの名前空間を持つXML文書に対して名前空間なしの属性セレクタをルールに含めても動作するようになった。

  - Marshalにおいて、XSLTのカスタムXPath関数への引数の渡し方(および戻し方)に関するバグを修正 #640.

  - Nokogiri::XML::Reader#outer_xml がJRubyで正しく動作しない #617

  - Nokogiri::XML::Attribute が JRuby 上で　nil namespace を返す　#647

  - Nokogiri::XML::Node#namespace= メソッドが JRuby　上で prefix

  が無い namespace を設定できない #648

  - (JRuby) 1.9 モードで rake を実行するとデッドロックを引き起こす #571

  - HTML::Document#meta_encoding は誤った Content-Type (charset部)を含む文書で例外を起こさなくなった #655

  - コンテキスト付きフラグメントのパースで非サポートのエンコーディングが原因でRuby 1.8.7がSEGVを起こすのを修正 #643

  - (JRuby) XPathパースにおける並行実行時の問題 #682

### 1.5.2 / 2012年3月9日

古いRuby用にgemspecを修正しての再パッケージ. #631, #632.

### 1.5.1 / 2012年3月9日

- 新機能

  - XML::Builder#comment はコメントノードを作れるようになった.

  - CSS searches now support namespaced attributes. #593

  - Java integration 機能が追加された. このバージョンから, XML::Document.wrap と XML::Document#to_java メソッドが利用可能。

  - RelaxNG validator support in the `nokogiri` cli utility. #591 (thanks, Dan Radez!)

- バグの修正

  - エンコーディング自動認識において発生しうるメモリリークを修正. Tim Elliottに感謝！

  - homebrew はインストールしたら、extconf は homebrew のパスを読む。

  - Inconsistent behavior of Nokogiri 1.5.0 Java #620

  - Inheriting from Nokogiri::XML::Node on JRuby (1.6.4/5) fails #560

  - XML::Attr nodes are not allowed to be added as node children, so an exception is raised. #558

  - No longer defensively “pickle” adjacent text nodes on Node#add_next_sibling and Node#add_previous_sibling calls. #595.

  - Java version inconsistency: it returns nil for empty attributes #589

  - to_xhtml incorrectly generates <p /></p> when tag is empty #557

  - Document#add_child now accepts a Node, NodeSet, DocumentFragment, or String. #546.

  - Document#create_element now recognizes namespaces containing non-word characters (like “SOAP-ENV”). This is mostly relevant to users of Builder, which calls Document#create_element for nearly everything. #531.

  - File encoding broken in 1.5.0 / jruby / windows #529

  - Java version does not return namespace defs as attrs for ::HTML #542

  - Bad file descriptor with Nokogiri 1.5.0 #495

  - remove_namespace! doesn’t work in pure java version #492

  - The Nokogiri Java native build throws a null pointer exception when ActiveSupport’s .blank? method is called directly on a parsed object. #489

  - 1.5.0 Not using correct character encoding #488

  - Raw XML string in XML Builder broken on JRuby #486

  - Nokogiri 1.5.0 XML generation broken on JRuby #484

  - Do not allow multiple root nodes. #550

  - Fixes for custom XPath functions. #605, #606 (thanks, Juan Wajnerman!)

  - Node#to_xml does not override :save_with if it is provided. #505

  - Node#set is a private method (JRuby). #564 (thanks, Nick Sieger!)

  - C14n cleanup and Node#canonicalize (thanks, Ivan Pirlik!) #563

### 1.5.0 / 2011年7月1日

- 註

  - 1.4.7からの変更点を参照

- 新機能

  - 各文書形式用のデフォルトのNode::SaveOptionsの組合せを定数化. (Node::SaveOptions::DEFAULT_{X,H,XH}TML)

- バグの修正

  - JRuby版ではホワイトスペースの扱いに難があるため、XML出力（to_xml）において 自動整形をデフォルトでは行わないように変更. #415

  - JRuby版でNodeのないNodeSetでNullPointerExceptionが発生するのを修正. #443

  - エンコーディング宣言のないHTMLファイルで部分的に重複したドキュメントが生成される問題を修正した. #478

  - <meta charset=“…”> を認識するようになった.

### 1.5.0 beta3 2010年12月2日

- 註

  - JRubyでの性能改善

  - 1.4.4からの変更点を参照

- バグの修正

  - Node#inner_textはnilを返さなくなった. (JRuby) #264

### 1.5.0 beta2 2010年7月30日

- 註

  - 1.4.3からの変更点を参照

### 1.5.0 beta1 2010年5月22日

- 註

  - 新しいピュアJavaバックエンドによりJRubyサポートを追加

- 廃止

  - Ruby 1.8.6は非推奨となった. インストールできるかもしれないが、正式なサポートは終了.

  - LibXML 2.6.16および古いバージョンは非推奨. インストールできない.

  - FFIサポートは削除された.

### 1.4.7 / 2011年7月1日

- バグの修正

  - エンコーディング宣言のないHTMLファイルで部分的に重複したドキュメントが生成される問題を修正した. #478

### 1.4.6 / 2011年6月19日

- ノート

  - このバージョンは、1.4.5と機能的に同じです

  - Rubyの1.8.6のサポートが復元されている

### 1.4.5 / 2011年5月19日

- 新機能

  - Nokogiri::HTML::Document#title アクセサメソッドでHTML文書のタイトルを読み書きできる

- バグの修正

  - Node#serialize とその仲間達はSaveOptionオブジェクトを受け入れる

  - Nokogiri::CSS::Parser has-a Nokogiri::CSS::Tokenizer

  - (JRUBY+FFIのみ) 「弱い参照」はスレッドセーフになった. #355

  - HTML::SAX::Parserから呼ばれるstart_element()コールバックのattributes引数はHTML::XML::Parserによるエミュレートコールバックと同じく連想配列になった. rel. #356

  - HTML::SAX::Parserのparse*()メソッドはXML::SAX::Parser同様に渡されたブロックをコールバックするようになった.

  - HTMLパーサーのエンコーディング判定をlibxml2の仕様を超えて拡張・改善した. (XML宣言のencodingを認識、非ASCII文字出現後のmetaタグも文字化けを生じずに反映)

  - Document#remove_namespaces! は名前空間付きの属性に対応した. #396

### 1.4.4 2010年11月15日

- 新機能

  - XML::Node#children=ノード内のhtml reparented node(s)を返す事によって親の変更ができる。

  - XSLT はfunction extensionsをサポート。#336

  - XPath はパラメーター置換を結合する. #329

  - XML::Reader node typeを一定化させる. #369

  - SAX Parser context は行とコラムの両方の情報を提供する

- バグの修正

  - XML::DTD#attributes は属性が存在しない際、nilの代わりに空のハッシュを返す

  - XML::DTD#{keys,each} は文字通りに機能するようになった #324

  - {XML,HTML}::DocumentFragment.{new,parse} 行送りと末尾の空白を除去しなくなった #319

  - XML::Node#{add_child,add_previous_sibling,add_next_sibling,replace} は文字列を見送る際にNodeSetを返す

  - 不確定タグはフレグメント内で要、不要に関係なく解析される　#315

  - XML::Node#{replace,add_previous_sibling,add_next_sibling}　libxmlのtext node merging に関わるedge caseを修正する #308

  - xpath handler argument が整列している最中に起こるGCでのsegfaultを修正　#345

  - Slop decoratorが既に確定された定義と共に正常に機能させるための便宜上の処置 #330

  - 子ノードが複製される際に起こるメモリ漏れの修正 #353

  - an+b記号の無使用時に発生するoff-by-oneバグとnth-last-{child,of-type} CSSセレクターの修正 #354

  - 非名前空間属性がSAX::Document#start_elementへパスできるように修正　#356

  - libxml2 in-contextの解析バグの処置　 #362

  - フレグメント内のノードの中にあるNodeSet#wrapの修正　#331

### 1.4.3 2010年7月28日

- 新しい機能

  - XML::Reader#empty_element? - 子の無いエレメントにtrueを返す　 #262

  - Node#remove_namespaces! - 1.4.2では 名前空間のみを取り除いていたが、 1.4.3 では名前空間及び、名前空間宣言も取り除く　#294

  - NodeSet#{at_xpath,at_css,>} はNodeの同名メソッドと同様の動作

- バグの修正

  - XML::NodeSet#{include?,delete,push} はXML::Namespaceを受入れる

  - XML::Document#parse - 1.4.3より文書内の文脈を解析する機能を追加

  - XML::DocumentFragment#inner_html= 文脈解析を共に実行する　#298, #281

  - lib/nokogiri/css/parser.y はCSSと疑似選別の両方を機能

  - 演算によって近隣に存在する併合型ノードへの遊離問題の有無に関わらず、一切の 弊害なしにテキストノードの繰り返しが実行可能　 #283

  - xmlFirstElementChild et al.による libxml2バージョンでの不適合性を修正 #303

  - XML::Attr#add_namespace　（！）文字通りの機能実現!　 #252

  - HTML::DocumentFragment が文字列に存在するエンコードを使用　#305

  - CSS3の間接セレクタ“E ~ F G”がXPathの“//F//G”へと 誤変換されてしまうのを修正

### 1.4.2 2010年5月22日

- 新機能

  - XML::Node#parse　定義されたコンテキストノードでXML 又はHTMLのフレグメント を解析する

  - XML::Node#namespacesが子ノードとその祖先ノード内で定義された全ての名前空間 を返すようになった（以前は祖先ノードの名前空間は返されなかった）

  - XML::Node内にEnumerableを追加

  - Nokogiri::XML::Schema#validate与えられたファイル名が引き渡された時、 Nokogiri::XML::Schema#validateはxmlSchemaValidateFileを使用する

      （時間短縮化とメモリーの能率化の理由を基にファイル名での引き渡しメソッドを
       採用） GH #219

  - XML::Document#create_entnty は新規のEntityDecl のオブジェクトを生成する GH #174

  - JRuby FFI implementationでは、従来まで使用されたObjectSpace._id2refの代わり にCharles Nutterのrocking Weakling gemを使用に変更

  - Nokogiri::XML::Node#first_element_child は一番最初のELEMENT子ノードを返す

  - Nokogiri::XML::Node#last_element_child は最後のELEMENT子ノードを返す

  - Nokogiri::XML::Node#elements は全てのELEMENT子ノードを返す

  - Nokogiri::XML::Node#add_child, add_previous_sibling, before, add_next_sibling, after, inner_html, swap, replaceはNode, DocumentFragment, NodeSetおよびマークアップ文字列を受け付ける

  - Node#fragment? はノードがDocumentFragmentかどうかを示す

- バグの修正

  - ドキュメント内にデコレータがある場合、XML::NodeSet は常にデコレータされる GH #198

  - XML::NodeSet#slice がノードセットよりも長いoffset+lengthを問題なく処理する GH #200

  - XML::Node#content=はノードとその直前に記述されている内容を支障なく切り離す GH #203

  - XML::Node#namespace= はnilを一つのパラメーターと扱って取得する

  - XML::Node#xpath はNodeSetのオブジェクト以外のオブジェクトを返す　GH #208

  - XSLT::StyleSheet#transformはパラメーターのハッシュを受け入れる　GH #223

  - CSSのnot()の疑似セレクタの修正　 GH #205

  - XML::Builder はノードらが切り離されても破壊しない（vihaiの協力に感謝） GH #228

  - SAX parser経由でエンコードを強制することが出来る　 Eugene Pimenovに感謝! GH #204

  - XML::DocumentFragment はML::Node#parse を使用して子を限定する

  - XML Reader内のメモリリーク修正　 sdorさん、ありがとう! GH#244

  - Node#replaceはRDocの通り新しい子ノードを返す（selfを返していた）

- ノート

  - 今日４月１８日現在、Windows gems は libxml 2.7.7 とlibxslt 1.1.26にDLLsを標準装備しています。このリリース以前にも既にDLLsはlibxml 2.7.3 と libxslt 1.1.24に標準装備済み。

### 1.4.1 2009年12月10日

- 新しい機能

  - Nokogiri::LIBXML_ICONV_ENABLED を追加

  - Node#attr は Node#[] のエイリアス定義に変更

  - XML::Node#next_element を追加

  - 直接の子ノードを検索するための Node#> を追加

  - XML::NodeSet#reverse を追加

  - 以下のfragment supportを追加

Node#add_child 　 Node#add_next_sibling

       Node#add_previous_sibling
    　 Node#replace
     * XML::Node#previous_element を追加
     * nokogiriがRubinius でサポートされるようになった
     * CSS selector の :has() が使用可能になった
     * XML::NodeSet#filter() を追加
     * XML::Node.next= は add_next_sibling の alias へ変更
     * XML::Node.previous= は add_previous_sibling の alias へ変更

- バグの修正

  - XMLのフラグメントに名前空間が存在する場合のみ、DocumentFragmentを作る際に、 例外が投げられなくなった

  - DocumentFragment内で子ノードが存在する場合、 Node#matches?が機能するようになった　GH #158

  - Documentは add_namespace()を限定すべきではないので削除GH #169

  - XPath クエリは名前空間の宣言を変換するがsegvではない。

  - Node#replace は他のドキュメントのノードが使えるようになった

  - XML::Document#collect_namespaces を追加

  - SOAP4R のアダプター内のバグ修正

  - XML::Node#next_element 内のバグ修正

  - WindowsでのJRuby の LOAD_PATH を修正 GH #160

  - XSLT#apply_toは “output method”の値を使用する（richardlehaneに感謝）

  - 新しい文字列の先頭にくるテキストノードを含んだフレグメントが 正確に 解析出来るようになった　GH #178

### 1.4.0 2009年10月30日

- 今日はノコギリの満一歳のお誕生日です

- 新しい機能

  - Node#at_xpath はXPath式に適合するNodeSetの一番最初の要素を返す

  - Node#at_css はCSSセレクターに適合するNodeSetの一番最初の要素を返す

  - NodeSet#| はNodeSet同士を合成する　GH #119 (Serabe ありがとう！)

  - NodeSet#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 を調節する為に、RbConfig::CONFIGを使用できるように なった 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に移動した 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 に付加せれる代わりに先頭へデータ挿入される

  - 複雑な CSS 内のバグを修正完了 :not selector ではありません

### 1.0.6

- 5つの修正

  - XPath のパーサーが SyntaxError を生じさせ解析停止させる

  - CSS のパーサーが SyntaxError を生じさせ解析停止させる

  - filter() と not() hpricot の互換性を追加

  - CSS が Node#search 経由で検索し、常時対応する事が出来るようになった

  - CSS より XPath 変換がキャッシュに入れられるようになった

### 1.0.5

- バグフィックス

  - メーリンクリストを作成

  - バグファイルを作成

  - Windows 内で ENV が存在しない場合でも、存在出来るように設定完了

  - 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つの偉大な増進

  - ご誕生である

[Validate]

Generated with the Darkfish Rdoc Generator 2.