BaseTools/Scripts/GetMaintainer: Sort output addresses

REF: https://bugzilla.tianocore.org/show_bug.cgi?id=4593

Sort the list of output addresses alphabetically so this
script produces the same output even if the order of patches
in a patch series is modified such that that order of files
processed by this script changes.

Use set() logic instead of OrderedDict to accumulate the
list of unique addresses that are sorted alphabetically.

Cc: Rebecca Cran <rebecca@bsdio.com>
Cc: Liming Gao <gaoliming@byosoft.com.cn>
Cc: Bob Feng <bob.c.feng@intel.com>
Cc: Yuwei Chen <yuwei.chen@intel.com>
Cc: Leif Lindholm <quic_llindhol@quicinc.com>
Signed-off-by: Michael D Kinney <michael.d.kinney@intel.com>
Acked-by: Rebecca Cran <rebecca@bsdio.com>
Reviewed-by: Leif Lindholm <quic_llindhol@quicinc.com>
This commit is contained in:
Michael D Kinney 2023-11-10 11:30:53 -08:00 committed by mergify[bot]
parent 706811819d
commit 33deaa3b84
1 changed files with 6 additions and 4 deletions

View File

@ -192,14 +192,16 @@ if __name__ == '__main__':
else:
FILES = get_modified_files(REPO, ARGS)
ADDRESSES = []
# Accumulate a sorted list of addresses
ADDRESSES = set([])
for file in FILES:
print(file)
recipients = get_maintainers(file, SECTIONS)
ADDRESSES += recipients['maintainers'] + recipients['reviewers'] + recipients['lists']
ADDRESSES |= set(recipients['maintainers'] + recipients['reviewers'] + recipients['lists'])
ADDRESSES = list(ADDRESSES)
ADDRESSES.sort()
for address in list(OrderedDict.fromkeys(ADDRESSES)):
for address in ADDRESSES:
if '<' in address and '>' in address:
address = address.split('>', 1)[0] + '>'
print(' %s' % address)