mirror of
				https://github.com/espressif/esp-idf.git
				synced 2025-11-04 14:14:11 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			66 lines
		
	
	
		
			1.7 KiB
		
	
	
	
		
			Python
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			66 lines
		
	
	
		
			1.7 KiB
		
	
	
	
		
			Python
		
	
	
		
			Executable File
		
	
	
	
	
#!/usr/bin/env python
 | 
						|
 | 
						|
# SPDX-FileCopyrightText: 2023 Espressif Systems (Shanghai) CO LTD
 | 
						|
# SPDX-License-Identifier: Apache-2.0
 | 
						|
 | 
						|
import glob
 | 
						|
import os
 | 
						|
import typing as t
 | 
						|
from pathlib import Path
 | 
						|
 | 
						|
from idf_ci_utils import IDF_PATH
 | 
						|
 | 
						|
 | 
						|
def print_list(_list: t.Iterable[t.Any], title: t.Optional[str] = None) -> None:
 | 
						|
    if not _list:
 | 
						|
        return
 | 
						|
 | 
						|
    if title:
 | 
						|
        print(title)
 | 
						|
 | 
						|
    for i in _list:
 | 
						|
        print('- ', str(i))
 | 
						|
 | 
						|
 | 
						|
if __name__ == '__main__':
 | 
						|
    os.chdir(IDF_PATH)
 | 
						|
    ignore_lists: t.Set[Path] = set()
 | 
						|
    ignore_lists.update(Path('tools', 'ci').glob('**/*.txt'))
 | 
						|
    ignore_lists.remove(Path('tools', 'ci', 'ignore_build_warnings.txt'))
 | 
						|
    ignore_lists.remove(Path('tools', 'ci', 'check_ldgen_mapping_exceptions.txt'))
 | 
						|
 | 
						|
    print_list(ignore_lists, 'Ignore lists:')
 | 
						|
 | 
						|
    updated_files = []
 | 
						|
    for f in ignore_lists:
 | 
						|
        print('Checking file:', f)
 | 
						|
 | 
						|
        updated = False
 | 
						|
        lines = []
 | 
						|
        with open(f) as fr:
 | 
						|
            for line in map(str.strip, fr.readlines()):
 | 
						|
                if line.startswith('#'):
 | 
						|
                    lines.append(line)
 | 
						|
                    continue
 | 
						|
 | 
						|
                if not line:
 | 
						|
                    lines.append(line)
 | 
						|
                    continue
 | 
						|
 | 
						|
                glob_pattern = line
 | 
						|
                if not list(glob.glob(glob_pattern, recursive=True)):
 | 
						|
                    print('  - No match:', glob_pattern)
 | 
						|
                    updated = True
 | 
						|
                else:
 | 
						|
                    lines.append(glob_pattern)
 | 
						|
        lines.append('')
 | 
						|
 | 
						|
        if updated:
 | 
						|
            updated_files.append(f)
 | 
						|
            with open(f, 'w') as fw:
 | 
						|
                fw.write('\n'.join(lines))
 | 
						|
 | 
						|
    if updated_files:
 | 
						|
        print_list(updated_files, 'Updated files:')
 | 
						|
        exit(1)
 |