commit: b67c57cc2e0a17b8e6454dc316c59e8736582894
Author: Brian Dolbec <dolsen <AT> gentoo <DOT> org>
AuthorDate: Mon Jul 11 01:49:01 2022 +0000
Commit: Brian Dolbec <dolsen <AT> gentoo <DOT> org>
CommitDate: Mon Jul 11 03:59:02 2022 +0000
URL: https://gitweb.gentoo.org/proj/portage.git/commit/?id=b67c57cc
xml.metadata.py: Fix gentoolkit traceback in _Useflag class
brian@storm ~/Dev/git/gentoolkit $ equery u smartmontools
Traceback (most recent call last):
File "/home/brian/Dev/git/gentoolkit/bin/equery", line 44, in <module>
equery.main(sys.argv)
File "/home/brian/Dev/git/gentoolkit/pym/gentoolkit/equery/__init__.py", line
359, in main
loaded_module.main(module_args)
File "/home/brian/Dev/git/gentoolkit/pym/gentoolkit/equery/uses.py", line
341, in main
output = get_output_descriptions(pkg, global_usedesc)
File "/home/brian/Dev/git/gentoolkit/pym/gentoolkit/equery/uses.py", line
201, in get_output_descriptions
local_usedesc = pkg.metadata.use()
File "/usr/lib/python3.10/site-packages/portage/xml/metadata.py", line 337,
in use
self._useflags = tuple(_Useflag(node) for node in iterate("flag"))
File "/usr/lib/python3.10/site-packages/portage/xml/metadata.py", line 337,
in <genexpr>
self._useflags = tuple(_Useflag(node) for node in iterate("flag"))
File "/usr/lib/python3.10/site-packages/portage/xml/metadata.py", line 109,
in __init__
for child in node.getchildren():
AttributeError: 'xml.etree.ElementTree.Element' object has no attribute
'getchildren'
Reported by: IRC user kurly
gentoolkit code class used node.iter()
Found another commmit where getchidren was deprecated and replaced.
Bug:https://bugs.gentoo.org/857537
Signed-off-by: Brian Dolbec <dolsen <AT> gentoo.org>
lib/portage/xml/metadata.py | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/lib/portage/xml/metadata.py b/lib/portage/xml/metadata.py
index 807847d7e..672f64358 100644
--- a/lib/portage/xml/metadata.py
+++ b/lib/portage/xml/metadata.py
@@ -106,7 +106,7 @@ class _Useflag:
_desc = ""
if node.text:
_desc = node.text
- for child in node.getchildren():
+ for child in node.iter():
_desc += child.text if child.text else ""
_desc += child.tail if child.tail else ""
# This takes care of tabs and newlines left from the file