=== 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) xlink:href å±æ§ããã 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 ã "&" ããã¼ã¹ããã¨åæ¢ãã¦ãã¾ã #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[preceding-sibling::E]"ã¸ã¨ 誤å¤æããã¦ãã¾ãã®ãä¿®æ£ === 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['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ã¤ã®å大ãªå¢é² * ãèªçã§ãã