From 05f3c3f3d0cc49b123f7fcefaed3b89eb42396f8 Mon Sep 17 00:00:00 2001 From: Leif Lindholm Date: Fri, 10 Nov 2023 11:30:51 -0800 Subject: BaseTools/Scripts/GetMaintainer: refactor internal returns as dicts To clean up interfaces, change the lookup functions to return dictionaries rather than multiple values. Cc: Rebecca Cran Cc: Liming Gao Cc: Bob Feng Cc: Yuwei Chen Cc: Michael D Kinney Signed-off-by: Leif Lindholm Acked-by: Rebecca Cran Reviewed-by: Michael D Kinney --- BaseTools/Scripts/GetMaintainer.py | 19 ++++++++++--------- 1 file changed, 10 insertions(+), 9 deletions(-) diff --git a/BaseTools/Scripts/GetMaintainer.py b/BaseTools/Scripts/GetMaintainer.py index cdcdff7506..cb3aadbbef 100644 --- a/BaseTools/Scripts/GetMaintainer.py +++ b/BaseTools/Scripts/GetMaintainer.py @@ -96,7 +96,7 @@ def get_section_maintainers(path, section): else: lists += [address] - return maintainers, lists + return {'maintainers': maintainers, 'lists': lists} def get_maintainers(path, sections, level=0): """For 'path', iterates over all sections, returning maintainers @@ -104,22 +104,24 @@ def get_maintainers(path, sections, level=0): maintainers = [] lists = [] for section in sections: - tmp_maint, tmp_lists = get_section_maintainers(path, section) - maintainers += tmp_maint - lists += tmp_lists + recipients = get_section_maintainers(path, section) + maintainers += recipients['maintainers'] + lists += recipients['lists'] if not maintainers: # If no match found, look for match for (nonexistent) file # REPO.working_dir/ print('"%s": no maintainers found, looking for default' % path) if level == 0: - maintainers = get_maintainers('', sections, level=level + 1) + recipients = get_maintainers('', sections, level=level + 1) + maintainers += recipients['maintainers'] + lists += recipients['lists'] else: print("No maintainers set for project.") if not maintainers: return None - return maintainers + lists + return {'maintainers': maintainers, 'lists': lists} def parse_maintainers_line(line): """Parse one line of Maintainers.txt, returning any match group and its key.""" @@ -184,9 +186,8 @@ if __name__ == '__main__': for file in FILES: print(file) - addresslist = get_maintainers(file, SECTIONS) - if addresslist: - ADDRESSES += addresslist + recipients = get_maintainers(file, SECTIONS) + ADDRESSES += recipients['maintainers'] + recipients['lists'] for address in list(OrderedDict.fromkeys(ADDRESSES)): if '<' in address and '>' in address: -- cgit v1.2.3