VirtualBox

Ignore:
Timestamp:
Aug 14, 2024 1:16:30 PM (4 months ago)
Author:
vboxsync
Message:

Devices/EFI/FirmwareNew: Merge edk2-stable-202405 and make it build on aarch64, bugref:4643

Location:
trunk/src/VBox/Devices/EFI/FirmwareNew
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/Devices/EFI/FirmwareNew

  • trunk/src/VBox/Devices/EFI/FirmwareNew/BaseTools/Scripts/GetMaintainer.py

    r99404 r105670  
    7777       matching the provided path in the provided section."""
    7878    maintainers = []
     79    reviewers = []
    7980    lists = []
    8081    nowarn_status = ['Supported', 'Maintained']
     
    8485            if status not in nowarn_status:
    8586                print('WARNING: Maintained status for "%s" is \'%s\'!' % (path, status))
    86         for address in section['maintainer'], section['reviewer']:
     87        for address in section['maintainer']:
    8788            # Convert to list if necessary
    8889            if isinstance(address, list):
    8990                maintainers += address
    9091            else:
    91                 lists += [address]
     92                maintainers += [address]
     93        for address in section['reviewer']:
     94            # Convert to list if necessary
     95            if isinstance(address, list):
     96                reviewers += address
     97            else:
     98                reviewers += [address]
    9299        for address in section['list']:
    93100            # Convert to list if necessary
     
    97104                lists += [address]
    98105
    99     return maintainers, lists
     106    return {'maintainers': maintainers, 'reviewers': reviewers, 'lists': lists}
    100107
    101108def get_maintainers(path, sections, level=0):
     
    103110       for matching ones."""
    104111    maintainers = []
     112    reviewers = []
    105113    lists = []
    106114    for section in sections:
    107         tmp_maint, tmp_lists = get_section_maintainers(path, section)
    108         if tmp_maint:
    109             maintainers += tmp_maint
    110         if tmp_lists:
    111             lists += tmp_lists
     115        recipients = get_section_maintainers(path, section)
     116        maintainers += recipients['maintainers']
     117        reviewers += recipients['reviewers']
     118        lists += recipients['lists']
    112119
    113120    if not maintainers:
     
    116123        print('"%s": no maintainers found, looking for default' % path)
    117124        if level == 0:
    118             maintainers = get_maintainers('<default>', sections, level=level + 1)
     125            recipients = get_maintainers('<default>', sections, level=level + 1)
     126            maintainers += recipients['maintainers']
     127            reviewers += recipients['reviewers']
     128            lists += recipients['lists']
    119129        else:
    120130            print("No <default> maintainers set for project.")
     
    122132            return None
    123133
    124     return maintainers + lists
     134    return {'maintainers': maintainers, 'reviewers': reviewers, 'lists': lists}
    125135
    126136def parse_maintainers_line(line):
     
    183193        FILES = get_modified_files(REPO, ARGS)
    184194
    185     ADDRESSES = []
    186 
     195    # Accumulate a sorted list of addresses
     196    ADDRESSES = set([])
    187197    for file in FILES:
    188198        print(file)
    189         addresslist = get_maintainers(file, SECTIONS)
    190         if addresslist:
    191             ADDRESSES += addresslist
    192 
    193     for address in list(OrderedDict.fromkeys(ADDRESSES)):
     199        recipients = get_maintainers(file, SECTIONS)
     200        ADDRESSES |= set(recipients['maintainers'] + recipients['reviewers'] + recipients['lists'])
     201    ADDRESSES = list(ADDRESSES)
     202    ADDRESSES.sort()
     203
     204    for address in ADDRESSES:
    194205        if '<' in address and '>' in address:
    195206            address = address.split('>', 1)[0] + '>'
Note: See TracChangeset for help on using the changeset viewer.

© 2024 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette