Nokogiri v1.8.0 Release Notes

Release Date: 2017-06-04 // almost 7 years ago
  • Dependencies

    ๐Ÿš€ This release ends support for Ruby 2.1 on Windows in the x86-mingw32 and x64-mingw32 platform gems (containing pre-compiled DLLs). Official support ended for Ruby 2.1 on 2017-04-01.

    ๐Ÿ Please note that this deprecation note only applies to the precompiled Windows gems. Ruby 2.1 continues to be supported (for now) in the default gem when compiled on installation.

    Dependencies

    • โฌ†๏ธ [Windows] Upgrade iconv from 1.14 to 1.15 (unless --use-system-libraries)
    • โฌ†๏ธ [Windows] Upgrade zlib from 1.2.8 to 1.2.11 (unless --use-system-libraries)
    • โฌ†๏ธ [MRI] Upgrade rake-compiler dependency from 0.9.2 to 1.0.3
    • โฌ†๏ธ [MRI] Upgrade mini-portile2 dependency from ~> 2.1.0 to ~> 2.2.0
    • ๐Ÿšš [JRuby] Removed support for jruby --1.8 code paths. [#1607] (Thanks, @kares!)
    • ๐Ÿ [MRI Windows] Retrieve zlib source from http://zlib.net/fossils to avoid deprecation issues going forward. See #1632 for details around this problem.

    โž• Added

    • ๐Ÿ‘ฏ NodeSet#clone is now an alias for NodeSet#dup [#1503] (Thanks, @stephankaag!)
    • ๐Ÿ‘ Allow Processing Instructions and Comments as children of a document root. [#1033] (Thanks, @windwiny!)
    • [MRI] PushParser#replace_entities and #replace_entities= will control whether entities are replaced or not. [#1017] (Thanks, @spraints!)
    • ๐Ÿ“œ [MRI] SyntaxError#to_s now includes line number, column number, and log level if made available by the parser. [#1304, #1637] (Thanks, @spk and @ccarruitero!)
    • ๐Ÿ [MRI] Cross-built Windows gems now support Ruby 2.4
    • ๐Ÿ‘ [MRI] Support for frozen string literals. [#1413]
    • ๐Ÿ‘ [MRI] Support for installing Nokogiri on a machine in FIPS-enabled mode [#1544]
    • [MRI] Vendored libraries are verified with SHA-256 hashes (formerly some MD5 hashes were used) [#1544]
    • ๐ŸŽ [JRuby] (performance) remove unnecessary synchronization of class-cache [#1563] (Thanks, @kares!)
    • ๐ŸŽ [JRuby] (performance) remove unnecessary cloning of objects in XPath searches [#1563] (Thanks, @kares!)
    • ๐ŸŽ [JRuby] (performance) more performance improvements, particularly in XPath, Reader, XmlNode, and XmlNodeSet [#1597] (Thanks, @kares!)

    ๐Ÿ›  Fixed

    • โœ… HTML::SAX::Parser#parse_io now correctly parses HTML and not XML [#1577] (Thanks for the test case, @gregors!)
    • ๐Ÿ‘Œ Support installation on systems with a lib64 site config. [#1562]
    • [MRI] on OpenBSD, do not require gcc if using system libraries [#1515] (Thanks, @jeremyevans!)
    • [MRI] XML::Attr.new checks type of Document arg to prevent segfaults. [#1477]
    • [MRI] Prefer xmlCharStrdup (and friends) to strdup (and friends), which can cause problems on some platforms. [#1517] (Thanks, @jeremy!)
    • ๐Ÿ’Ž [JRuby] correctly append a text node before another text node [#1318] (Thanks, @jkraemer!)
    • ๐Ÿ’Ž [JRuby] custom xpath functions returning an integer now work correctly [#1595] (Thanks, @kares!)
    • [JRuby] serializing (#to_html, #to_s, et al) a document with explicit encoding now works correctly. [#1281, #1440] (Thanks, @kares!)
    • ๐Ÿ“œ [JRuby] XML::Reader now returns parse errors [#1586] (Thanks, @kares!)
    • ๐Ÿ’Ž [JRuby] Empty NodeSets are now decorated properly. [#1319] (Thanks, @kares!)
    • ๐Ÿ”€ [JRuby] Merged nodes no longer results in Java exceptions during XPath queries. [#1320] (Thanks, @kares!)