diff options
author | Zac Medico <zmedico@gentoo.org> | 2011-08-31 19:52:58 -0700 |
---|---|---|
committer | Zac Medico <zmedico@gentoo.org> | 2011-08-31 19:55:45 -0700 |
commit | 1df7fc5c8c1295aec7bf3c91863432ebac0caae5 (patch) | |
tree | 742d0fbe6d91be01aae359def5e5b8167eda726a | |
parent | d7579ecd27ca051d7f987102caeb53e826a6fe93 (diff) | |
download | portage-1df7fc5c8c1295aec7bf3c91863432ebac0caae5.tar.gz portage-1df7fc5c8c1295aec7bf3c91863432ebac0caae5.tar.bz2 portage-1df7fc5c8c1295aec7bf3c91863432ebac0caae5.zip |
xml/metadata: implement XMLParser.doctype()
Avoid deprecation warnings again, like in commit
63035acd702ab0cdaac31e33676b5a20a91eae47.
-rw-r--r-- | pym/portage/xml/metadata.py | 15 |
1 files changed, 13 insertions, 2 deletions
diff --git a/pym/portage/xml/metadata.py b/pym/portage/xml/metadata.py index ef335e29f..9e1886927 100644 --- a/pym/portage/xml/metadata.py +++ b/pym/portage/xml/metadata.py @@ -36,10 +36,19 @@ except ImportError: import xml.etree.ElementTree as etree import re +import xml.etree.ElementTree import portage from portage import os from portage.util import unique_everseen +class _MetadataTreeBuilder(xml.etree.ElementTree.TreeBuilder): + """ + Implements doctype() as required to avoid deprecation warnings with + Python >=2.7. + """ + def doctype(self, name, pubid, system): + pass + class _Maintainer(object): """An object for representing one maintainer. @@ -173,7 +182,8 @@ class MetaDataXML(object): self._xml_tree = None try: - self._xml_tree = etree.parse(metadata_xml_path) + self._xml_tree = etree.parse(metadata_xml_path, + parser=etree.XMLParser(target=_MetadataTreeBuilder())) except ImportError: pass @@ -208,7 +218,8 @@ class MetaDataXML(object): if self._herdstree is None: try: - self._herdstree = etree.parse(self._herds_path) + self._herdstree = etree.parse(self._herds_path, + parser=etree.XMLParser(target=_MetadataTreeBuilder())) except (ImportError, IOError, SyntaxError): return None |