pkgsrc-Changes archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

CVS commit: pkgsrc/textproc/ruby-nokogiri



Module Name:    pkgsrc
Committed By:   tsutsui
Date:           Sat Feb  4 02:07:05 UTC 2023

Modified Files:
        pkgsrc/textproc/ruby-nokogiri: Makefile PLIST distinfo

Log Message:
ruby-nokogiri: update to 1.14.1.

Upstream changes (from CHANGELOG.md)

 1.14.1 / 2023-01-30

 Fixed

  * Serializing documents now works again with pseudo-IO objects that don't
    support IO's encoding API (like rubyzip's Zip::OutputStream). This was a
    regression in v1.14.0 due to the fix for #752 in #2434, and was not
    completely fixed by #2753. [#2773]
  * [CRuby] Address compiler warnings about void* casting and old-style C
    function definitions.

 1.14.0 / 2023-01-12

 Notable Changes

 Ruby

This release introduces native gem support for Ruby 3.2. (Also see "Technical
note" under "Changed" below.)

This release ends support for:

  * Ruby 2.6, for which upstream support ended 2022-04-12.
  * JRuby 9.3, which is not fully compatible with Ruby 2.7+

 Faster, more reliable installation: Native Gem for aarch64-linux (aka linux/
arm64/v8)

This version of Nokogiri ships official native gem support for the
aarch64-linux platform, which should support AWS Graviton and other ARM64 Linux
platforms. Please note that glibc >= 2.29 is required for aarch64-linux
systems, see Supported Platforms for more information.

 Faster, more reliable installation: Native Gem for arm-linux (aka linux/arm/
v7)

This version of Nokogiri ships experimental native gem support for the
arm-linux platform. Please note that glibc >= 2.29 is required for arm-linux
systems, see Supported Platforms for more information.

 Pattern matching

This version introduces an experimental pattern matching API for XML::Attr,
XML::Document, XML::DocumentFragment, XML::Namespace, XML::Node, and
XML::NodeSet (and their subclasses).

Some documentation on what can be matched:

  * XML::Attr#deconstruct_keys
  * XML::Document#deconstruct_keys
  * XML::Namespace#deconstruct_keys
  * XML::Node#deconstruct_keys
  * XML::DocumentFragment#deconstruct
  * XML::NodeSet#deconstruct

We welcome feedback on this API at #2360.

 Dependencies

 CRuby

  * Vendored libiconv is updated to v1.17

 JRuby

  * This version of Nokogiri uses jar-dependencies to manage most of the
    vendored Java dependencies. nokogiri -v now outputs maven metadata for all
    Java dependencies, and Nokogiri::VERSION_INFO also contains this metadata.
    [#2432]
  * HTML parsing is now provided by
    net.sourceforge.htmlunit:neko-htmlunit:2.61.0 (previously Nokogiri used a
    fork of org.cyberneko.html:nekohtml)
  * Vendored Jing is updated from com.thaiopensource:jing:20091111 to
    nu.validator:jing:20200702VNU.
  * New dependency on net.sf.saxon:Saxon-HE:9.6.0-4 (via
    nu.validator:jing:20200702VNU).

 Added

  * Node#wrap and NodeSet#wrap now also accept a Node type argument, which will
    be duped for each wrapper. For cases where many nodes are being wrapped,
    creating a Node once using Document#create_element and passing that Node
    multiple times is significantly faster than re-parsing markup on each call.
    [#2657]
  * [CRuby] Invocation of custom XPath or CSS handler functions may now use the
    nokogiri namespace prefix. Historically, the JRuby implementation required
    this namespace but the CRuby implementation did not support it. It's
    recommended that all XPath and CSS queries use the nokogiri namespace going
    forward. Invocation without the namespace is planned for deprecation in
    v1.15.0 and removal in a future release. [#2147]
  * HTML5::Document#quirks_mode and HTML5::DocumentFragment#quirks_mode expose
    the quirks mode used by the parser.

 Improved

 Functional

  * HTML5 parser update to reflect changes to the living specification:
      + Add the <search> element by domenic - whatwg/html
      + Remove parse error for <template><tr></tr> </template> by zcorpan -
        whatwg/html

 Performance

  * Serialization of HTML5 documents and fragments has been re-implemented and
    is ~10x faster than previous versions. [#2596, #2569]
  * Parsing of HTML5 documents is ~90% faster thanks to additional compiler
    optimizations being applied. [#2639]
  * Compare Encoding objects rather than compare their names. This is a slight
    performance improvement and is future-proof. [#2454] (Thanks, @casperisfine
    !)

 Error handling

  * Document#canonicalize now raises an exception if inclusive_namespaces is
    non-nil and the mode is inclusive, i.e. XML_C14N_1_0 or XML_C14N_1_1.
    inclusive_namespaces can only be passed with exclusive modes, and
    previously this silently failed.
  * Empty CSS selectors now raise a clearer Nokogiri::CSS::SyntaxError message,
    "empty CSS selector". Previously the exception raised from the bowels of
    racc was "unexpected '$' after ''". [#2700]
  * [CRuby] XML::Reader parsing errors encountered during Reader#attribute_hash
    and Reader#namespaces now raise an XML::SyntaxError. Previously these
    methods would return nil and users would generally experience
    NoMethodErrors from elsewhere in the code.
  * Prefer ruby_xmalloc to malloc within the C extension. [#2480] (Thanks,
    @Garfield96!)

 Installation

  * Avoid compile-time conflict with system-installed gumbo.h on OpenBSD. [#
    2464]
  * Remove calls to vasprintf in favor of platform-independent rb_vsprintf
  * Installation from source on systems missing libiconv will once again
    generate a helpful error message (broken since v1.11.0). [#2505]
  * [CRuby+OSX] Compiling from source on MacOS will use the clang option
    -Wno-unknown-warning-option to avoid errors when Ruby injects options that
    clang doesn't know about. [#2689]

 Fixed

  * SAX::Parser's encoding attribute will not be clobbered when an alternative
    encoding is passed into SAX::Parser#parse_io. [#1942] (Thanks, @kp666!)
  * Serialized HTML4::DocumentFragment will now be properly encoded. Previously
    this empty string was encoded as US-ASCII. [#2649]
  * Node#wrap now uses the parent as the context node for parsing wrapper
    markup, falling back to the document for unparented nodes. Previously the
    document was always used.
  * [CRuby] UTF-16-encoded documents longer than ~4000 code points now
    serialize properly. Previously the serialized document was corrupted when
    it exceeded the length of libxml2's internal string buffer. [#752]
  * [CRuby] The HTML5 parser now correctly handles text at the end of form
    elements.
  * [CRuby] HTML5::Document#fragment now always uses body as the parsing
    context. Previously, fragments were parsed in the context of the associated
    document's root node, which allowed for inconsistent parsing. [#2553]
  * [CRuby] Nokogiri::HTML5::Document#url now correctly returns the URL passed
    to the constructor method. Previously it always returned nil. [#2583]
  * [CRuby] HTML5 encoding detection is now case-insensitive with respect to
    meta tag charset declaration. [#2693]
  * [CRuby] HTML5 fragment parsing in context of an annotation-xml node now
    works. Previously this rarely-used path invoked rb_funcall with incorrect
    parameters, resulting in an exception, a fatal error, or potentially a
    segfault. [#2692]
  * [CRuby] HTML5 quirks mode during fragment parsing more closely matches
    document parsing. [#2646]
  * [JRuby] Fixed a bug with adding the same namespace to multiple nodes via #
    add_namespace_definition. [#1247]
  * [JRuby] NodeSet#[] now raises a TypeError if passed an invalid parameter
    type. [#2211]

 Deprecated

  * Nokogiri.install_default_aliases is deprecated in favor of
    Nokogiri::EncodingHandler.install_default_aliases. This is part of a
    private API and is probably not called by anybody, but we'll go through a
    deprecation cycle before removal anyway. [#2643, #2446]

 Changed

  * [CRuby+OSX] Technical note: On MacOS Ruby 3.2, the symbols from libxml2 and
    libxslt are no longer exported. Ruby 3.2 adopted new features from the
    Darwin toolchain that make it challenging to continue to support this
    rarely-used binary API. A future minor release of Nokogiri may remove these
    symbols (and others) entirely. Feedback from downstream gem maintainers is
    welcome at #2746, where you'll also be able to read deeper context on this
    decision.

 Thank you!

The following people and organizations were kind enough to sponsor @flavorjones
or the Nokogiri project during the development of v1.14.0:

  * Gotz Gorisch @GoetzGoerisch
  * Airbnb @airbnb
  * Kyohei Nanba @kyo-nanba
  * Maxime Gauthier @biximilien
  * @renuo
  * @dbootyfvrt
  * YOSHIDA Katsuhiko @kyoshidajp
  * Homebrew @Homebrew
  * David Vrensk @dvrensk
  * Alex Daragiu @daragiu
  * Github @github
  * Julian Joseph @Julian88Tex
  * Charles Simon-Meunier @csimonmeunier
  * Ben Slaughter @benSlaughter
  * Garen Torikian @gjtorikian
  * Frank Groeneveld @frenkel
  * Hiroshi SHIBATA @hsbt


To generate a diff of this commit:
cvs rdiff -u -r1.76 -r1.77 pkgsrc/textproc/ruby-nokogiri/Makefile
cvs rdiff -u -r1.38 -r1.39 pkgsrc/textproc/ruby-nokogiri/PLIST
cvs rdiff -u -r1.54 -r1.55 pkgsrc/textproc/ruby-nokogiri/distinfo

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: pkgsrc/textproc/ruby-nokogiri/Makefile
diff -u pkgsrc/textproc/ruby-nokogiri/Makefile:1.76 pkgsrc/textproc/ruby-nokogiri/Makefile:1.77
--- pkgsrc/textproc/ruby-nokogiri/Makefile:1.76 Thu Dec  8 15:30:47 2022
+++ pkgsrc/textproc/ruby-nokogiri/Makefile      Sat Feb  4 02:07:05 2023
@@ -1,6 +1,6 @@
-# $NetBSD: Makefile,v 1.76 2022/12/08 15:30:47 tsutsui Exp $
+# $NetBSD: Makefile,v 1.77 2023/02/04 02:07:05 tsutsui Exp $
 
-DISTNAME=      nokogiri-1.13.10
+DISTNAME=      nokogiri-1.14.1
 CATEGORIES=    textproc
 
 MAINTAINER=    tsutsui%NetBSD.org@localhost

Index: pkgsrc/textproc/ruby-nokogiri/PLIST
diff -u pkgsrc/textproc/ruby-nokogiri/PLIST:1.38 pkgsrc/textproc/ruby-nokogiri/PLIST:1.39
--- pkgsrc/textproc/ruby-nokogiri/PLIST:1.38    Sun Oct 30 07:43:56 2022
+++ pkgsrc/textproc/ruby-nokogiri/PLIST Sat Feb  4 02:07:05 2023
@@ -1,4 +1,4 @@
-@comment $NetBSD: PLIST,v 1.38 2022/10/30 07:43:56 tsutsui Exp $
+@comment $NetBSD: PLIST,v 1.39 2023/02/04 02:07:05 tsutsui Exp $
 bin/nokogiri${RUBY_SUFFIX}
 ${GEM_HOME}/cache/${GEM_NAME}.gem
 ${GEM_EXTSDIR}/gem.build_complete
@@ -63,9 +63,9 @@ ${GEM_LIBDIR}/gumbo-parser/src/error.c
 ${GEM_LIBDIR}/gumbo-parser/src/error.h
 ${GEM_LIBDIR}/gumbo-parser/src/foreign_attrs.c
 ${GEM_LIBDIR}/gumbo-parser/src/foreign_attrs.gperf
-${GEM_LIBDIR}/gumbo-parser/src/gumbo.h
 ${GEM_LIBDIR}/gumbo-parser/src/insertion_mode.h
 ${GEM_LIBDIR}/gumbo-parser/src/macros.h
+${GEM_LIBDIR}/gumbo-parser/src/nokogiri_gumbo.h
 ${GEM_LIBDIR}/gumbo-parser/src/parser.c
 ${GEM_LIBDIR}/gumbo-parser/src/parser.h
 ${GEM_LIBDIR}/gumbo-parser/src/replacement.h
@@ -104,6 +104,7 @@ ${GEM_LIBDIR}/lib/nokogiri/css/tokenizer
 ${GEM_LIBDIR}/lib/nokogiri/css/tokenizer.rex
 ${GEM_LIBDIR}/lib/nokogiri/css/xpath_visitor.rb
 ${GEM_LIBDIR}/lib/nokogiri/decorators/slop.rb
+${GEM_LIBDIR}/lib/nokogiri/encoding_handler.rb
 ${GEM_LIBDIR}/lib/nokogiri/extension.rb
 ${GEM_LIBDIR}/lib/nokogiri/gumbo.rb
 ${GEM_LIBDIR}/lib/nokogiri/html.rb
@@ -113,6 +114,7 @@ ${GEM_LIBDIR}/lib/nokogiri/html4/documen
 ${GEM_LIBDIR}/lib/nokogiri/html4/document_fragment.rb
 ${GEM_LIBDIR}/lib/nokogiri/html4/element_description.rb
 ${GEM_LIBDIR}/lib/nokogiri/html4/element_description_defaults.rb
+${GEM_LIBDIR}/lib/nokogiri/html4/encoding_reader.rb
 ${GEM_LIBDIR}/lib/nokogiri/html4/entity_lookup.rb
 ${GEM_LIBDIR}/lib/nokogiri/html4/sax/parser.rb
 ${GEM_LIBDIR}/lib/nokogiri/html4/sax/parser_context.rb
@@ -122,6 +124,7 @@ ${GEM_LIBDIR}/lib/nokogiri/html5/documen
 ${GEM_LIBDIR}/lib/nokogiri/html5/document_fragment.rb
 ${GEM_LIBDIR}/lib/nokogiri/html5/node.rb
 ${GEM_LIBDIR}/lib/nokogiri/jruby/dependencies.rb
+${GEM_LIBDIR}/lib/nokogiri/jruby/nokogiri_jars.rb
 ${GEM_LIBDIR}/lib/nokogiri/nokogiri.${RUBY_DLEXT}
 ${GEM_LIBDIR}/lib/nokogiri/syntax_error.rb
 ${GEM_LIBDIR}/lib/nokogiri/version.rb
@@ -170,7 +173,6 @@ ${GEM_LIBDIR}/lib/xsd/xmlparser/nokogiri
 ${GEM_LIBDIR}/patches/libxml2/0001-Remove-script-macro-support.patch
 ${GEM_LIBDIR}/patches/libxml2/0002-Update-entities-to-remove-handling-of-ssi.patch
 ${GEM_LIBDIR}/patches/libxml2/0003-libxml2.la-is-in-top_builddir.patch
-${GEM_LIBDIR}/patches/libxml2/0005-avoid-isnan-isinf.patch
 ${GEM_LIBDIR}/patches/libxml2/0009-allow-wildcard-namespaces.patch
 ${GEM_LIBDIR}/patches/libxslt/0001-update-automake-files-for-arm64.patch
 ${GEM_HOME}/specifications/${GEM_NAME}.gemspec

Index: pkgsrc/textproc/ruby-nokogiri/distinfo
diff -u pkgsrc/textproc/ruby-nokogiri/distinfo:1.54 pkgsrc/textproc/ruby-nokogiri/distinfo:1.55
--- pkgsrc/textproc/ruby-nokogiri/distinfo:1.54 Thu Dec  8 15:30:47 2022
+++ pkgsrc/textproc/ruby-nokogiri/distinfo      Sat Feb  4 02:07:05 2023
@@ -1,5 +1,5 @@
-$NetBSD: distinfo,v 1.54 2022/12/08 15:30:47 tsutsui Exp $
+$NetBSD: distinfo,v 1.55 2023/02/04 02:07:05 tsutsui Exp $
 
-BLAKE2s (nokogiri-1.13.10.gem) = efd7307c9dbe9b93e482c532d507c2557419c34eed7fd3651b222a4ac7cb3c6b
-SHA512 (nokogiri-1.13.10.gem) = aee3417d99a07c522d3fa479eddc952c4ec215a96e0dec9b6109af02855d5313d4b62d54544d36ed1a50f7993510d8fdc6fb93af4ae4bb289cc85f5d7ebb1556
-Size (nokogiri-1.13.10.gem) = 4634624 bytes
+BLAKE2s (nokogiri-1.14.1.gem) = 162ac0f8e509cdc2be08524fb4651905bcbd5b97fbcbd4262416015e762e1a88
+SHA512 (nokogiri-1.14.1.gem) = 655792e2dbae59e1924691ea4e9b77f029185ff588f366fefa93af34aceff8a814a0fe712c715df50f0d539fc588cc1bf08774c975b76973e174054ffab03753
+Size (nokogiri-1.14.1.gem) = 4643328 bytes



Home | Main Index | Thread Index | Old Index