Repository navigation
fix(l10n): every required locale translates every source string - #1765
Merged
Merged
Conversation
test:l10n:parity failed on development: nl missed 79 strings, de/fr/es/it 1,477, 19 other locales 1,625, and 12 required locales (cs, sk, sl, sv, sr, bs, mk, uk, be, ca, lb, rm) had no catalogue at all. The missing strings are now translated in l10n/<locale>.json and l10n/<locale>.js is regenerated with l10n:build, so test:l10n:parity, check:l10n-js and test:l10n exit 0. Assisted-by: ClaudeCode:claude-opus-5-5
rubenvdlinde
requested review from
Rem-Dam,
SudoThijn,
WilcoLouwerse,
bbrands02,
remko48 and
rjzondervan
as code owners
October 16, 2026 18:24
Contributor
Quality Report — ConductionNL/decidiq @
|
| Check | PHP | Vue | Security | License | Tests |
|---|---|---|---|---|---|
| lint | ✅ | ||||
| phpcs | ✅ | ||||
| phpmd | ✅ | ||||
| psalm | ✅ | ||||
| phpstan | ✅ | ||||
| phpmetrics | ✅ | ||||
| eslint | ✅ | ||||
| stylelint | ✅ | ||||
| build | ✅ | ||||
| check-manifest | ✅ | ||||
| check-nav-ceiling | ✅ | ||||
| test-l10n | ✅ | ||||
| format | ❌ | ||||
| check-l10n-js | ✅ | ||||
| check-schema-l10n | ✅ | ||||
| composer | ✅ | ✅ 107/107 | |||
| npm | ✅ | ✅ 652/652 | |||
| app:check-code | ⏭️ | ||||
| info.xml | ✅ | ||||
| REUSE | ❌ | ||||
| lockfile sync | ✅ | ||||
| PHPUnit | ✅ 2691/2691 · 8 skipped | ||||
| Newman | ✅ 363/363 · 1 skipped | ||||
| Playwright | ⏭️ deferred: E2E runs locally and on the promotion path only. This pull request targets development, so the suite is asked once per promotion into beta and main rather than once per push per open pull request. Run it locally with npx playwright test, or from the Actions tab on a branch with no open pull request into development. |
||||
| Hydra gates | ❌ |
Quality workflow — 2026-10-16 18:30 UTC
Download the full PDF report from the workflow artifacts.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
npm run test:l10n:paritywas red on development (exit 1). It now exits 0.What was missing
What changed
l10n/<locale>.json: the missing strings are added at the end of each existing catalogue, and the 12 new catalogues are created.l10n/<locale>.js: regenerated withnpm run l10n:build.Only l10n/ is touched: 48 files, +73,843 / -50. The -50 are the trailing-comma line of each existing file, plus the keys
2026and2027in nl.json, which a JSON rewrite moves to the top.Dutch is written by hand. The other locales are machine translated, reuse the terms already in each existing catalogue, and use a fixed glossary for the new ones. The merge script checked that every placeholder (
%s,%n,%1$d,{name}) is kept in every string. No translated value contains an em-dash.Verified locally
npm run test:l10n:parity: exit 1 before, exit 0 afternpm run check:l10n-js: 0npm run test:l10n: 0npm run check:schema-l10n: 0npx prettier --check l10n/: 0composer check:strictwas not run.Known limits
_in %n open vote_::_in %n open votes_) has 2 forms in every locale. That matches the defaultnplurals=2the build declares, but Slavic and Baltic languages, Romanian and Irish use more forms.test:l10n:parityis still not a CI leg (seecode-quality.yml). With the backlog cleared it could be one.This PR was prepared with AI assistance (Claude Code).
🤖 Generated with Claude Code