diff options
author | Stefan Behnel <stefan_ml@behnel.de> | 2019-04-14 19:12:34 (GMT) |
---|---|---|
committer | GitHub <noreply@github.com> | 2019-04-14 19:12:34 (GMT) |
commit | 3c5a858ec6a4e5851903762770fe526a46d3c351 (patch) | |
tree | d6a95ae26cb8b9f1c0963248e79a60f0d87726c3 | |
parent | cd466559c4a312b3c1223a774ad4df19fc4f0407 (diff) | |
download | cpython-3c5a858ec6a4e5851903762770fe526a46d3c351.zip cpython-3c5a858ec6a4e5851903762770fe526a46d3c351.tar.gz cpython-3c5a858ec6a4e5851903762770fe526a46d3c351.tar.bz2 |
bpo-30485: Re-allow empty strings in ElementPath namespace mappings since they might actually be harmless and unused (and thus went undetected previously). (#12830)
-rw-r--r-- | Lib/test/test_xml_etree.py | 3 | ||||
-rw-r--r-- | Lib/xml/etree/ElementPath.py | 2 |
2 files changed, 0 insertions, 5 deletions
diff --git a/Lib/test/test_xml_etree.py b/Lib/test/test_xml_etree.py index 2f7a3b6..f5b118b 100644 --- a/Lib/test/test_xml_etree.py +++ b/Lib/test/test_xml_etree.py @@ -2466,9 +2466,6 @@ class ElementFindTest(unittest.TestCase): nsmap = {'xx': 'X', None: 'Y'} self.assertEqual(len(root.findall(".//xx:b", namespaces=nsmap)), 2) self.assertEqual(len(root.findall(".//b", namespaces=nsmap)), 1) - nsmap = {'xx': 'X', '': 'Y'} - with self.assertRaisesRegex(ValueError, 'namespace prefix'): - root.findall(".//xx:b", namespaces=nsmap) def test_bad_find(self): e = ET.XML(SAMPLE_XML) diff --git a/Lib/xml/etree/ElementPath.py b/Lib/xml/etree/ElementPath.py index 0e3854f..4d231a7 100644 --- a/Lib/xml/etree/ElementPath.py +++ b/Lib/xml/etree/ElementPath.py @@ -275,8 +275,6 @@ def iterfind(elem, path, namespaces=None): cache_key = (path,) if namespaces: - if '' in namespaces: - raise ValueError("empty namespace prefix must be passed as None, not the empty string") if None in namespaces: cache_key += (namespaces[None],) + tuple(sorted( item for item in namespaces.items() if item[0] is not None)) |