diff --git a/Doc/whatsnew/3.6.rst b/Doc/whatsnew/3.6.rst index 928d7486ad6..6799f69fc0c 100644 --- a/Doc/whatsnew/3.6.rst +++ b/Doc/whatsnew/3.6.rst @@ -460,7 +460,8 @@ Changes in the Python API * The following modules have had missing APIs added to their :attr:`__all__` attributes to match the documented APIs: :mod:`calendar`, :mod:`csv`, - :mod:`enum`, :mod:`fileinput`, :mod:`ftplib`, :mod:`logging`, + :mod:`~xml.etree.ElementTree`, :mod:`enum`, + :mod:`fileinput`, :mod:`ftplib`, :mod:`logging`, :mod:`optparse`, :mod:`tarfile`, :mod:`threading` and :mod:`wave`. This means they will export new symbols when ``import *`` is used. See :issue:`23883`. diff --git a/Lib/test/test_xml_etree.py b/Lib/test/test_xml_etree.py index bfd72153795..a56f1582b65 100644 --- a/Lib/test/test_xml_etree.py +++ b/Lib/test/test_xml_etree.py @@ -91,8 +91,6 @@ class ModuleTest(unittest.TestCase): - # TODO: this should be removed once we get rid of the global module vars - def test_sanity(self): # Import sanity. @@ -100,6 +98,10 @@ def test_sanity(self): from xml.etree import ElementInclude from xml.etree import ElementPath + def test_all(self): + names = ("xml.etree.ElementTree", "_elementtree") + support.check__all__(self, ET, names, blacklist=("HTML_EMPTY",)) + def serialize(elem, to_string=True, encoding='unicode', **options): if encoding != 'unicode': diff --git a/Lib/xml/etree/ElementTree.py b/Lib/xml/etree/ElementTree.py index b92fb52124a..50e42c85e45 100644 --- a/Lib/xml/etree/ElementTree.py +++ b/Lib/xml/etree/ElementTree.py @@ -85,7 +85,7 @@ "TreeBuilder", "VERSION", "XML", "XMLID", - "XMLParser", + "XMLParser", "XMLPullParser", "register_namespace", ] diff --git a/Misc/NEWS b/Misc/NEWS index 64977018f66..8a7fac4ebdb 100644 --- a/Misc/NEWS +++ b/Misc/NEWS @@ -237,6 +237,8 @@ Core and Builtins Library ------- +- Issue #26676: Added missing XMLPullParser to ElementTree.__all__. + - Issue #22854: Change BufferedReader.writable() and BufferedWriter.readable() to always return False.