Write the README language tables after translations land #1045

Merged
tiagoagueda merged 1 commit from 1044-readme-languages into main 2026-10-24 16:52:49 +00:00
Owner

Closes #1044

The README's language table follows each language's translation of the tagline, so every Weblate pull request turned the unit job red until the README was regenerated by hand on the weblate branch, and Weblate dropped that commit at its next rebase.

  • .forgejo/workflows/readme.yml (new): on a push to main that touches the locale catalogues, the README, the flags or the two scripts (and on demand), it runs scripts/readme_languages.py and scripts/github_readme.py. If either file moved, it force-pushes readme-languages (main plus one commit) and opens a PR, or updates the one already open. If nothing moved and one is open, it closes it. It uses the DEPENDENCIES_TOKEN bot token, as dependencies.yml does, so CI runs on that PR. The PR says to squash-merge it: main now requires signed commits and the bot's commit is unsigned, but the squash commit is Forgejo's and signed.
  • tests/test_readme.py: under CI, the table test still writes the table (a broken script still fails) but skips the comparison. On a contributor's machine it compares as before. The .github/README.md test is unchanged; Weblate never touches the README.
  • CONTRIBUTING.md and .forgejo/zizmor.yml say the same; zizmor passes offline.

The new workflow only runs once it is on main, so its first real run is after this merges (and after #1041 lands, if that is merged first).

🤖 Generated with Claude Code

Closes #1044 The README's language table follows each language's translation of the tagline, so every Weblate pull request turned the unit job red until the README was regenerated by hand on the `weblate` branch, and Weblate dropped that commit at its next rebase. - **`.forgejo/workflows/readme.yml`** (new): on a push to `main` that touches the locale catalogues, the README, the flags or the two scripts (and on demand), it runs `scripts/readme_languages.py` and `scripts/github_readme.py`. If either file moved, it force-pushes `readme-languages` (main plus one commit) and opens a PR, or updates the one already open. If nothing moved and one is open, it closes it. It uses the `DEPENDENCIES_TOKEN` bot token, as `dependencies.yml` does, so CI runs on that PR. The PR says to squash-merge it: `main` now requires signed commits and the bot's commit is unsigned, but the squash commit is Forgejo's and signed. - **`tests/test_readme.py`**: under `CI`, the table test still writes the table (a broken script still fails) but skips the comparison. On a contributor's machine it compares as before. The `.github/README.md` test is unchanged; Weblate never touches the README. - **`CONTRIBUTING.md`** and **`.forgejo/zizmor.yml`** say the same; zizmor passes offline. The new workflow only runs once it is on `main`, so its first real run is after this merges (and after #1041 lands, if that is merged first). 🤖 Generated with [Claude Code](https://claude.com/claude-code)
Write the README language tables after translations land (#1044)
All checks were successful
Every Python / Unit tests (Python 3.12) (push) Successful in 14m21s
Every Python / Unit tests (Python 3.13) (push) Successful in 14m32s
CI / Unit tests and coverage (Python 3.14) (push) Successful in 12m26s
CI / Browser tests (Chromium) (push) Successful in 28m50s
CI / Checks: lint, migrations, catalogues, settings, built files (push) Successful in 2m36s
CI / Security audit (push) Successful in 1m1s
CI / Database tests on PostgreSQL (push) Successful in 4m8s
CI / Unit tests and coverage (Python 3.14) (pull_request) Successful in 13m10s
CI / Checks: lint, migrations, catalogues, settings, built files (pull_request) Successful in 2m35s
CI / Database tests on PostgreSQL (pull_request) Successful in 4m1s
CI / Security audit (pull_request) Successful in 1m19s
CI / Browser tests (Chromium) (pull_request) Successful in 30m49s
0e038068b8
The table in README.md follows each language's translation of the tagline, so
every Weblate pull request turned the unit job red until somebody regenerated
the README by hand on the weblate branch, and Weblate dropped that commit again
on its next rebase.

A README workflow now runs both scripts on every push to main that touches what
the tables are made from, and opens (or updates, or closes when no longer
needed) a pull request with the result, using the bot token so CI runs on it.
It is to be squash-merged, since main requires signed commits. CI no longer
compares the table, only checks that it can still be written; a contributor's
machine still compares it.

Closes #1044

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
tiagoagueda deleted branch 1044-readme-languages 2026-10-24 16:52:50 +00:00
Sign in to join this conversation.
No reviewers
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
Postulo/postulo!1045
No description provided.