Skip to content

Fix release: download translations one at a time - #249

Merged
bordoni merged 1 commit into
mainfrom
fix/release-i18n
Oct 19, 2026
Merged

bordoni merged 1 commit into
mainfrom
fix/release-i18n

Conversation

@bordoni

@bordoni bordoni commented Oct 19, 2026

Copy link
Copy Markdown
Owner

The 0.10.0 tag build failed at pup i18n three times in a row (run). Nothing was published: the WordPress.org SVN job never started.

pup requests all 71 translation files (the locales at 30% or more) at the same moment, and translate.wordpress.org now answers that burst with 429 Too Many Requests. pup doesn't catch the error, so the step exits 255.

  • .github/scripts/i18n.ts reads the same i18n block from .puprc. It fetches one file at a time with a short pause, backs off on 429 and 5xx (it honours Retry-After), and fails if a file still can't be fetched. File names follow pup's default %textdomain%-%wp_locale%.%format%.
  • zip.yml runs it in place of composer -- pup i18n. The .github/ folder is in .distignore, so the script doesn't ship.
  • Also strips trailing whitespace from zip.yml.

Checked: ran the script locally. It saved all 71 .mo files, the same names as tags/0.9.2/languages/ on SVN, and rode out four 429s along the way.

After merging, the 0.10.0 tag moves to the merge commit and is pushed again to re-run the release.

pup i18n sends all 71 translation requests at once, and translate.wordpress.org now answers with 429 Too Many Requests, which failed the 0.10.0 release build three times. .github/scripts/i18n.ts reads the same .puprc i18n config, fetches one file at a time, and backs off on 429 and 5xx. Also strips trailing whitespace from zip.yml.
@bordoni
bordoni merged commit cdc1da3 into main Oct 19, 2026
5 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant