Jan Tojnar schrieb am 13.05.21 um 21:44:
>> I fail to build libxslt 1.1.34 against it. The "configure" script of
>> libxslt has this line:
> 
> libxml2 now behaves more correctly by rejecting invalid arguments like
> `print`. This is fixed in libxslt master so it no longer passes it the
> extra print argument.

Thanks. I fixed it by discarding the erroneous "print" before building libxslt.

Past that obstacle, I tested the release with lxml in Python and found a
bunch of tests (>40) from lxml's test suite failing due to changes in the
serialiser. Most of them are due to a line break that was apparently added
to the end of the output, e.g.

"""
AssertionError:
b'<html><head><title>test</title></head><body><p>test</p></body></html>\n'
!=
b'<html><head><title>test</title></head><body><p>test</p></body></html>'
"""

Difficult to say if this is an improvement or deliberate breakage.
Technically, it's not a semantic change in the XML output, rather a byte
level change in ignorable whitespace. But I'll need to look into it further
to understand what the best adaptation to this change is.

More importantly, there also seem to be issues where additional closing
tags or duplicated PIs and comments are being written, e.g.

"""
AssertionError:
'<p><span>Cyan</span></p></body></html>\n'
!=
'<p><span>Cyan</span></p>'
"""

or

"""
AssertionError:
b'<!D[123 chars]<body><p>Hello world!</p></body></html><?foo bar>\n<?foo bar?>'
!=
b'<!D[123 chars]<body><p>Hello world!</p></body></html><?foo bar?>'
"""

I haven't looked into them in detail yet but will do so as soon as I find
the time (probably during the next days). It's not possible that lxml is
doing something here that libxml2 doesn't expect, but we'll see.

Stefan
_______________________________________________
xml mailing list, project page  http://xmlsoft.org/
xml@gnome.org
https://mail.gnome.org/mailman/listinfo/xml

Reply via email to