Repository navigation
UI: Fix Portuguese and Hungarian labels that show a raw placeholder - #75964
Merged
bbovenzi merged 2 commits intoOct 30, 2026
Merged
Conversation
Pushkal-Gupta
requested review from
bbovenzi,
choo121600,
guan404ming,
pierrejeambrun,
ryanahamilton,
shubhamraj-git and
vatsrahul1001
as code owners
October 29, 2026 13:36
bbovenzi
approved these changes
Oct 30, 2026
Contributor
Backport successfully created: v3-4-testNote: As of Merging PRs targeted for Airflow 3.X In matter of doubt please ask in #release-management Slack channel.
|
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.
Five translated strings interpolate a variable that the English original does not have. Nothing ever passes that variable, so i18next leaves the placeholder in and the user sees it.
In the Portuguese log settings menu, the shortcut hint beside Expandir reads
Pressione {{hotkey}} para expandir ou recolherwhere it should just reade.What is wrong
common.jsonkeeps the log viewer's shortcut letter under<action>.hotkeyand the sentence explaining it under<action>.tooltip. The letter is the key you press, so it is the same in every language. German and Spanish keep that split:Portuguese has the sentence in both slots, so
hotkeyholds a{{hotkey}}of its own:TaskLogHeader.tsxrenders that value as the small hint on the right of the menu item and passes no variables, because the English value needs none. It affectsexpand,source,timestampandwrap.download.hotkeyin the same file is alreadyd, which is what makes this look like a copy-paste slip rather than a decision.Hungarian has the same shape in
hitl.json:response.responded_by_user_nameisVálaszolta: {{userName}}, where English hasResponded by (User Name)and German hasBeantwortet von (Benutzername).Pressione {{hotkey}} para ...e/s/t/wVálaszolta: {{userName}}Válaszolta (felhasználónév)The fix
The four Portuguese values become the letters, taken from
SHORTCUTS.logsinsrc/context/keyboardShortcuts/shortcuts.ts, so the hint matches the binding that actually works. Portuguese keeps its owntooltipsentences, so no wording is lost.For Hungarian I kept the translator's verb and only dropped the placeholder. I do not speak Hungarian, so please re-word it if
Válaszolta (felhasználónév)reads badly.The test
locales.test.tsgains one check: for every locale and key, the{{variables}}have to match the English original. Invent one and you get a raw{{...}}on screen; drop one and the value disappears silently.Two things it has to get right, or it reports strings that are fine. Plural categories differ by language, so a translated
foo_manyoften has no English key of its own category and has to compare against whichever form English does define. Andcountis exempt on plural forms, because i18next only reaches a plural form whencountwas passed. Without that, Italian and Portugueseerror_manyget reported for using{{count, number}}where English spellserror_oneas a plain1 Error.Checks
locales.test.tson its own: 28 passeslint,prettierandtscclean, and prek rewrites nothing for these three filesDagsFilters.test.tsx, which is already broken onmainand is not touched hereNo newsfragment: a translation fix with no behaviour change.
Was generative AI tooling used to co-author this PR?