Bug 2062599 - libxml2-2.9.13 breaks various stuff
Summary: libxml2-2.9.13 breaks various stuff
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Fedora
Classification: Fedora
Component: libxml2
Version: rawhide
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: ---
Assignee: Igor Raits
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2022-03-10 09:11 UTC by Vít Ondruch
Modified: 2022-05-18 08:09 UTC (History)
3 users (show)

Fixed In Version:
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed: 2022-05-18 08:09:23 UTC
Type: Bug
Embargoed:


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
GNOME Gitlab GNOME libxml2 issues 339 0 None None None 2022-03-17 16:53:08 UTC

Description Vít Ondruch 2022-03-10 09:11:20 UTC
Description of problem:
It seems that libxml2 breaks various stuff. Just noticed these two libraries become FTBFS after update:

https://koschei.fedoraproject.org/package/rubygem-actionview?collection=f35


~~~
* Test file: test/template/sanitize_helper_test.rb
Run options: --seed 14898
# Running:
...F
Failure:
SanitizeHelperTest#test_strip_links [test/template/sanitize_helper_test.rb:15]:
Expected: "<malformed & link"
  Actual: "malformed & link"
~~~

https://koschei.fedoraproject.org/package/rubygem-rails-html-sanitizer?collection=f35

~~~
  1) Failure:
SanitizersTest#test_strip_invalid_html [/builddir/build/BUILD/rails-html-sanitizer-1.4.2/usr/share/gems/gems/rails-html-sanitizer-1.4.2/test/sanitizer_test.rb:61]:
--- expected
+++ actual
@@ -1,3 +1 @@
-# encoding: UTF-8
-#    valid: true
-"<<"
+""
~~~

So it seems the `<` is not escaped anymore.

Version-Release number of selected component (if applicable):
libxml2-2.9.13


How reproducible:


Steps to Reproduce:
1.
2.
3.

Actual results:
The `<` is not in the escaped output anymore therefore some test suites are broken


Expected results:
The test suites and packages keep working.


Additional info:
TBH, this is a bit annoying, especially because this change happened not just in Rawhide, but also in stable F35. Also, it seems to me that libxml2 keeps changing the escaping quite a lot and I don't understand why. Therefore, could you check for example these two libraries that they keep working prior you submit such update?

Comment 1 Vít Ondruch 2022-03-18 09:46:48 UTC
Thx for the upstream report and for the analysis. I see that the Nokogiri author, which is likely the library used on background to parse the XML is involved in the discussion. So should it stay the way it currently is, I'll probably need to follow up with Nokogiri or so.

Comment 2 David King 2022-03-18 10:23:13 UTC
Please check against https://src.fedoraproject.org/rpms/libxml2/pull-request/11 which includes a backport of the upstream fix.

Comment 3 Vít Ondruch 2022-03-18 13:35:05 UTC
Well, this fixes some places, such as rubygem-actionview test failures, but keeps (and changes) test failures in rubygem-rails-html-sanitizer. I have opened this ticket against Nokogiri (Ruby binding for the libxml2):


https://github.com/sparklemotion/nokogiri/issues/2479

Comment 4 David King 2022-05-18 08:09:23 UTC
2.9.14 includes the upstream change from comment #2, and the nokogiri developers have adjusted their test suite to work with that, so this seems resolved now.


Note You need to log in before you can comment on or make changes to this bug.