Previously, the XML document loading paths used the HTML encoding
sniffing algorithm to determine character encoding. After the chardetng
integration, this algorithm could return a non-UTF-8 encoding for XML
documents that did not specify a charset, causing non-ASCII UTF-8
content to be decoded incorrectly.
We now use BOM sniffing and default to UTF-8, per the XML specification.
At some point we must have broken the ability of running XHTML test
cases, so the whitespace expectation changes have not been rebaselined
for this test case.
We were mistakenly executing the current node's script instead of the
document's pending parsing-blocking script.
This caused ~1000 WPT tests to time out, since we never ended up firing
a load event for XHTML pages that load multiple external scripts.