Open
Description
Regression.
As part of my unit tests, I have a well-formed JSON file that I'm using in some tests as "bad" data (the script wants XML).
I do something like this:
response = TextResponse(body='path-to.json', encoding='utf8')
response.selector.remove_namespaces()
This used to work (1.7.x), now (2.11.1) it asserts:
def remove_namespaces(self) -> None:
"""
Remove all namespaces, allowing to traverse the document using
namespace-less xpaths. See :ref:`removing-namespaces`.
"""
for el in self.root.iter("*"):
AttributeError: 'dict' object has no attribute 'iter'
I appreciate JSON doesn't have namespaces, but it should fail gracefully, not raise an assertion.