|
33 | 33 | from datetime import datetime, timezone
|
34 | 34 | from functools import lru_cache
|
35 | 35 | from pathlib import Path
|
36 |
| -from typing import Any, Dict, List, Optional |
| 36 | +from typing import Any, cast, Dict, List, Optional |
37 | 37 |
|
38 | 38 | import boto3 # type: ignore[import]
|
39 | 39 | from torchci.clickhouse import query_clickhouse
|
@@ -607,7 +607,7 @@ def remove_key_from_s3(self, bucket: str, key: str) -> None:
|
607 | 607 | self.get_s3_resource().Object(bucket, key).delete()
|
608 | 608 |
|
609 | 609 |
|
610 |
| -def main(): |
| 610 | +def main() -> None: |
611 | 611 | """Main function to run the file report generator"""
|
612 | 612 | parser = argparse.ArgumentParser(
|
613 | 613 | description="Generate comprehensive file reports grouped by owner labels",
|
@@ -664,17 +664,20 @@ def main():
|
664 | 664 | existing_metadata.pop(i)
|
665 | 665 | break
|
666 | 666 |
|
667 |
| - shas = [] |
| 667 | + shas: list[str] = [] |
668 | 668 | for date in args.add_dates or []:
|
669 | 669 | if date in _existing_dates:
|
670 | 670 | print(f"Date {date} already exists in metadata, skipping")
|
671 | 671 | continue
|
672 | 672 | sha = generator.find_suitable_sha(date)
|
| 673 | + if sha is None: |
| 674 | + print(f"No suitable SHA found for date {date}, skipping") |
| 675 | + continue |
673 | 676 | print(f"Found suitable SHA {sha} for date {date}")
|
674 | 677 | shas.append(sha)
|
675 | 678 |
|
676 | 679 | for sha in args.add_shas or []:
|
677 |
| - shas.append(sha) |
| 680 | + shas.append(cast(str, sha)) |
678 | 681 |
|
679 | 682 | print(f"Adding SHAs: {shas}")
|
680 | 683 |
|
|
0 commit comments