Repository navigation
Read .po catalogs with #~| obsolete entries (gettext-parser 9) - #117
Merged
Merged
Conversation
- gettext-parser 8.0.0 rejected the whole file on #~| lines, which msgmerge --previous (Django makemessages' default) writes for obsolete entries - Upgrade to 9.1.1; it drops readable-stream, so ten transitive dependencies go - Requires Node 20 (the Action runs 22, init's manual setup uses 20)
arvida
force-pushed
the
fix/828-gettext-parser-9
branch
from
October 8, 2026 08:20
2942fe2 to
4d5cbef
Compare
Merged
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.
Fixes localheroai/localhero-ai#828.
msgmerge writes
#~| msgid "..."for obsolete entries when run with--previous, which Django'smakemessagesdoes by default. gettext-parser 8.0.0 throwsInvalid key name "|"on those lines, so the whole catalog was unreadable:checkreported the language as not checked and exited 0, andtranslate(sameparsePoFileviafiles.ts) could not read it. Hit zulip, bookwyrm and zammad in a 40-repo run.Upgrades to gettext-parser 9.1.1, which parses
#~|(added in 9.1.0). 9.x needs Node 20, soenginesmoves from>=18to>=20; the Localhero Action runs Node 22 andinit's manual workflow uses Node 20. The upgrade also dropsreadable-streamand 9 other transitive dependencies.Verified
translationson 8.0.0, 9.1.0 and 9.1.1, and byte-identical output after parse +po.compilewithfoldLength: 0(the call inpo-utils.ts).#~|added; stray|still throws as before); lockfile changes only gettext-parser and the removed stream deps, integrity hash checked.#~|catalog is checked instead of skipped.