Skip to content

Commit 3c5a858

Browse files
authored
bpo-30485: Re-allow empty strings in ElementPath namespace mappings since they might actually be harmless and unused (and thus went undetected previously). (#12830)
1 parent cd46655 commit 3c5a858

File tree

2 files changed

+0
-5
lines changed

2 files changed

+0
-5
lines changed

Lib/test/test_xml_etree.py

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2466,9 +2466,6 @@ def test_findall_different_nsmaps(self):
24662466
nsmap = {'xx': 'X', None: 'Y'}
24672467
self.assertEqual(len(root.findall(".//xx:b", namespaces=nsmap)), 2)
24682468
self.assertEqual(len(root.findall(".//b", namespaces=nsmap)), 1)
2469-
nsmap = {'xx': 'X', '': 'Y'}
2470-
with self.assertRaisesRegex(ValueError, 'namespace prefix'):
2471-
root.findall(".//xx:b", namespaces=nsmap)
24722469

24732470
def test_bad_find(self):
24742471
e = ET.XML(SAMPLE_XML)

Lib/xml/etree/ElementPath.py

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -275,8 +275,6 @@ def iterfind(elem, path, namespaces=None):
275275

276276
cache_key = (path,)
277277
if namespaces:
278-
if '' in namespaces:
279-
raise ValueError("empty namespace prefix must be passed as None, not the empty string")
280278
if None in namespaces:
281279
cache_key += (namespaces[None],) + tuple(sorted(
282280
item for item in namespaces.items() if item[0] is not None))

0 commit comments

Comments
 (0)