Sourced from nokogiri's releases.
1.11.4 / 2021-05-14
Security
[CRuby] Vendored libxml2 upgraded to v2.9.12 which addresses:
Note that two additional CVEs were addressed upstream but are not relevant to this release. CVE-2021-3516 via
xmllintis not present in Nokogiri, and CVE-2020-7595 has been patched in Nokogiri since v1.10.8 (see #1992).Please see nokogiri/GHSA-7rrm-v45f-jp64 or #2233 for a more complete analysis of these CVEs and patches.
Dependencies
- [CRuby] vendored libxml2 is updated from 2.9.10 to 2.9.12. (Note that 2.9.11 was skipped because it was superseded by 2.9.12 a few hours after its release.)
1.11.3 / 2021-04-07
Fixed
- [CRuby] Passing non-
Nodeobjects toDocument#root=now raises anArgumentErrorexception. Previously this likely segfaulted. [#1900]- [JRuby] Passing non-
Nodeobjects toDocument#root=now raises anArgumentErrorexception. Previously this raised aTypeErrorexception.- [CRuby] arm64/aarch64 systems (like Apple's M1) can now compile libxml2 and libxslt from source (though we continue to strongly advise users to install the native gems for the best possible experience)
1.11.2 / 2021-03-11
Fixed
- [CRuby]
NodeSetmay now safely containNodeobjects from multiple documents. Previously the GC lifecycle of the parentDocumentobjects could lead to nodes being GCed while still in scope. [#1952]- [CRuby] Patch libxml2 to avoid "huge input lookup" errors on large CDATA elements. (See upstream GNOME/libxml2#200 and GNOME/libxml2!100.) [#2132].
- [CRuby+Windows] Enable Nokogumbo (and other downstream gems) to compile and link against
nokogiri.soby includingLDFLAGSinNokogiri::VERSION_INFO. [#2167]- [CRuby]
{XML,HTML}::Document.parsenow invokes#initializeexactly once. Previously#initializewas invoked twice on each object.- [JRuby]
{XML,HTML}::Document.parsenow invokes#initializeexactly once. Previously#initializewas not called, which was a problem for subclassing such as done byLoofah.Improved
- Reduce the number of object allocations needed when parsing an HTML::DocumentFragment. [#2087] (Thanks,
@ashmaroli!)- [JRuby] Update the algorithm used to calculate
Node#lineto be wrong less-often. The underlying parser, Xerces, does not track line numbers, and so we've always used a hacky solution for this method. [https://github.com/Instagram/IGListKit/issues/1223, #2177]- Introduce
--enable-system-librariesand--disable-system-librariesflags toextconf.rb. These flags provide the same functionality as--use-system-librariesand theNOKOGIRI_USE_SYSTEM_LIBRARIESenvironment variable, but are more idiomatic. [#2193] (Thanks,@eregon!)- [TruffleRuby]
--disable-staticis now the default on TruffleRuby when the packaged libraries are used. This is more flexible and compiles faster. (Note, though, that the default on TR is still to use system libraries.) [#2191, #2193] (Thanks,@eregon!)
... (truncated)
Sourced from nokogiri's changelog.
1.11.4 / 2021-05-14
Security
[CRuby] Vendored libxml2 upgraded to v2.9.12 which addresses:
Note that two additional CVEs were addressed upstream but are not relevant to this release. CVE-2021-3516 via
xmllintis not present in Nokogiri, and CVE-2020-7595 has been patched in Nokogiri since v1.10.8 (see #1992).Please see nokogiri/GHSA-7rrm-v45f-jp64 or #2233 for a more complete analysis of these CVEs and patches.
Dependencies
- [CRuby] vendored libxml2 is updated from 2.9.10 to 2.9.12. (Note that 2.9.11 was skipped because it was superseded by 2.9.12 a few hours after its release.)
1.11.3 / 2021-04-07
Fixed
- [CRuby] Passing non-
Nodeobjects toDocument#root=now raises anArgumentErrorexception. Previously this likely segfaulted. [#1900]- [JRuby] Passing non-
Nodeobjects toDocument#root=now raises anArgumentErrorexception. Previously this raised aTypeErrorexception.- [CRuby] arm64/aarch64 systems (like Apple's M1) can now compile libxml2 and libxslt from source (though we continue to strongly advise users to install the native gems for the best possible experience)
1.11.2 / 2021-03-11
Fixed
- [CRuby]
NodeSetmay now safely containNodeobjects from multiple documents. Previously the GC lifecycle of the parentDocumentobjects could lead to nodes being GCed while still in scope. [#1952]- [CRuby] Patch libxml2 to avoid "huge input lookup" errors on large CDATA elements. (See upstream GNOME/libxml2#200 and GNOME/libxml2!100.) [#2132].
- [CRuby+Windows] Enable Nokogumbo (and other downstream gems) to compile and link against
nokogiri.soby includingLDFLAGSinNokogiri::VERSION_INFO. [#2167]- [CRuby]
{XML,HTML}::Document.parsenow invokes#initializeexactly once. Previously#initializewas invoked twice on each object.- [JRuby]
{XML,HTML}::Document.parsenow invokes#initializeexactly once. Previously#initializewas not called, which was a problem for subclassing such as done byLoofah.Improved
- Reduce the number of object allocations needed when parsing an
HTML::DocumentFragment. [#2087] (Thanks,@ashmaroli!)- [JRuby] Update the algorithm used to calculate
Node#lineto be wrong less-often. The underlying parser, Xerces, does not track line numbers, and so we've always used a hacky solution for this method. [https://github.com/Instagram/IGListKit/issues/1223, #2177]- Introduce
--enable-system-librariesand--disable-system-librariesflags toextconf.rb. These flags provide the same functionality as--use-system-librariesand theNOKOGIRI_USE_SYSTEM_LIBRARIESenvironment variable, but are more idiomatic. [#2193] (Thanks,@eregon!)- [TruffleRuby]
--disable-staticis now the default on TruffleRuby when the packaged libraries are used. This is more flexible and compiles faster. (Note, though, that the default on TR is still to use system libraries.) [#2191, #2193] (Thanks,@eregon!)
... (truncated)
9d69b44 version bump to v1.11.4058e87f update CHANGELOG with complete CVE information9285251 Merge pull request #2234 from sparklemotion/2233-upgrade-to-libxml-2-9-125436f61 update CHANGELOG761d320 patch: renumber libxml2 patches889ee2a test: update behavior of namespaces in HTML9751d85 test: remove low-value HTML::SAX::PushParser encoding test9fcb7d2 test: adjust xpath gc test to libxml2's max recursion depth1c99019 patch: backport libxslt configure.ac change for libxml2 config82a253f patch: fix isnan/isinf patch to apply cleanly to libxml 2.9.12