You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
import html5lib
from html5lib.serializer import HTMLSerializer
text = '<svg><pattern id="patt1" xlink:href="http://example.com/#foo" /></svg>'
parser = html5lib.HTMLParser()
dom = parser.parseFragment(text)
walker = html5lib.getTreeWalker('etree')
ser = HTMLSerializer(alphabetical_attributes=True)
ser.render(walker(dom))
Traceback:
Traceback (most recent call last):
File "foo.py", line 12, in <module>
ser.render(walker(dom))
File "/home/willkg/mozilla/bleach/.tox/py34-html5lib99999999/lib/python3.4/site-packages/html5lib/serializer.py", line 323, in render
return "".join(list(self.serialize(treewalker)))
File "/home/willkg/mozilla/bleach/.tox/py34-html5lib99999999/lib/python3.4/site-packages/html5lib/serializer.py", line 209, in serialize
for token in treewalker:
File "/home/willkg/mozilla/bleach/.tox/py34-html5lib99999999/lib/python3.4/site-packages/html5lib/filters/optionaltags.py", line 18, in __iter__
for previous, token, next in self.slider():
File "/home/willkg/mozilla/bleach/.tox/py34-html5lib99999999/lib/python3.4/site-packages/html5lib/filters/optionaltags.py", line 9, in slider
for token in self.source:
File "/home/willkg/mozilla/bleach/.tox/py34-html5lib99999999/lib/python3.4/site-packages/html5lib/filters/alphabeticalattributes.py", line 17, in __iter__
key=lambda x: x[0]):
TypeError: unorderable types: str() < NoneType()
This is true of html5lib 0.99999999 (8 9s) and 0.999999999 (9 9s).
The text was updated successfully, but these errors were encountered:
If a tag has an attribute with a None namespace and one with a str namespace,
then this filter would fail with a TypeError in Python 3. This fixes that.
Fixes#322
In SVG 1.1, you could have something like this:
In Python 3, that creates the following attributes:
The problem is that this means we're comparing
None
with a str here:html5lib-python/html5lib/filters/alphabeticalattributes.py
Line 17 in 17499b9
That kicks up a TypeError.
Script:
Traceback:
This is true of html5lib 0.99999999 (8 9s) and 0.999999999 (9 9s).
The text was updated successfully, but these errors were encountered: