diff --git a/maintainers/scripts/remove-old-aliases.py b/maintainers/scripts/remove-old-aliases.py index 8ed326cbc204..c5629c829594 100755 --- a/maintainers/scripts/remove-old-aliases.py +++ b/maintainers/scripts/remove-old-aliases.py @@ -28,6 +28,11 @@ def process_args() -> argparse.Namespace: default=1, help="operate on aliases older than $year-$month", ) + arg_parser.add_argument( + "--only-throws", + action="store_true", + help="only operate on throws. e.g remove throws older than $date", + ) arg_parser.add_argument("--file", required=True, type=Path, help="alias file") arg_parser.add_argument( "--dry-run", action="store_true", help="don't modify files, only print results" @@ -36,7 +41,7 @@ def process_args() -> argparse.Namespace: def get_date_lists( - txt: list[str], cutoffdate: datetimedate + txt: list[str], cutoffdate: datetimedate, only_throws: bool ) -> tuple[list[str], list[str], list[str]]: """get a list of lines in which the date is older than $cutoffdate""" date_older_list: list[str] = [] @@ -57,7 +62,11 @@ def get_date_lists( except ValueError: continue - if my_date is None or my_date > cutoffdate or "preserve, reason:" in line.lower(): + if ( + my_date is None + or my_date > cutoffdate + or "preserve, reason:" in line.lower() + ): continue if "=" not in line: @@ -67,7 +76,7 @@ def get_date_lists( print(f"RESOLVE MANUALLY {line}") elif "throw" in line: date_older_throw_list.append(line) - else: + elif not only_throws: date_older_list.append(line) return ( @@ -160,6 +169,7 @@ def main() -> None: """main""" args = process_args() + only_throws = args.only_throws aliasfile = Path(args.file).absolute() cutoffdate = (datetime.strptime(f"{args.year}-{args.month}-01", "%Y-%m-%d")).date() @@ -170,13 +180,12 @@ def main() -> None: date_older_throw_list: list[str] = [] date_older_list, date_sep_line_list, date_older_throw_list = get_date_lists( - txt, cutoffdate + txt, cutoffdate, only_throws ) converted_to_throw: list[tuple[str, str]] = [] - converted_to_throw = convert_to_throw(date_older_list) - if date_older_list: + converted_to_throw = convert_to_throw(date_older_list) print(" Will be converted to throws. ".center(100, "-")) for l_n in date_older_list: print(l_n)