Skip to content

Commit 38f8c46

Browse files
committed
Track last commit date in metadata script
1 parent 33f4757 commit 38f8c46

File tree

2 files changed

+14
-11
lines changed

2 files changed

+14
-11
lines changed

generate_metadata.py

Lines changed: 12 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@
3434

3535
def get_projects_metadata(
3636
completion_progress: Sequence[LanguageProjectData],
37-
) -> Iterator[tuple[int, int]]:
37+
) -> Iterator[tuple[int, int, datetime | None]]:
3838
with concurrent.futures.ProcessPoolExecutor() as executor:
3939
return executor.map(
4040
get_metadata,
@@ -45,17 +45,18 @@ def get_projects_metadata(
4545

4646
def get_metadata(
4747
language: Language, repo: str | None, completion: float, clones_dir: str
48-
) -> tuple[int, int]:
49-
if repo and (repo_path := Path(clones_dir, 'translations', repo)).exists():
50-
Repo(repo_path).git.checkout()
48+
) -> tuple[int, int, datetime | None]:
49+
if not repo or not (repo_path := Path(clones_dir, 'translations', repo)).exists():
50+
return 0, 0, None
51+
(clone_repo := Repo(repo_path)).git.checkout()
52+
latest_commit = clone_repo.head.commit.committed_datetime
53+
if not completion:
54+
return 0, 0, latest_commit
5155
return (
52-
repo
53-
and completion
54-
and (
55-
build_warnings.number(clones_dir, repo, language.code),
56-
sphinx_lint.store_and_count_failures(clones_dir, repo, language.code),
57-
)
58-
) or (0, 0)
56+
build_warnings.number(clones_dir, repo, language.code),
57+
sphinx_lint.store_and_count_failures(clones_dir, repo, language.code),
58+
latest_commit,
59+
)
5960

6061

6162
def get_language_repo_and_completion(

metadata.html.jinja

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@
1515
<tr>
1616
<th>language</th>
1717
<th>branch</th>
18+
<th>last updated</th>
1819
<th>build warnings*</th>
1920
<th>lint failures</th>
2021
</tr>
@@ -24,6 +25,7 @@
2425
<tr>
2526
<td data-label="language">{{ project.language.name }} ({{ project.language.code }})</td>
2627
<td data-label="branch">{{ project.branch }}</td>
28+
<td data-label="updated">{{ metadata[2].strftime('%Y/%m/%d %T') if metadata[2] else '' }}</td>
2729
<td data-label="warnings">
2830
{% if project.completion %}<a href="warnings-{{ project.language.code }}.txt">{{ metadata[0] }}</a>{% else %}{{ metadata[0] }}{% endif %}
2931
</td>

0 commit comments

Comments
 (0)