Late import of c-format flag causes inconsistent data
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Launchpad itself |
Triaged
|
High
|
Unassigned |
Bug Description
For translatable messages that represent (for example) C format strings, the formatting conversions in the translation must be compatible with those of the original message. As long as the c-format flag is set to indicate that the message is a C format string, you can't translate msgid "Blah" with msgstr "Foo %d". Neither gettext nor Launchpad will accept it.
But if the c-format flag is omitted when the mistake is first made, and then a later template update sets the c-format flag without changing the msgid, we end up with inconsistent data. The message is now in that state in which neither gettext nor Launchpad would accept it.
A good way to deal with this would be to demote the translation to a suggestion with validation_status == UNKNOWN_ERROR.
We need to watch for interactions with super-fast-imports.
Bug 312130 might be mildly related (at least in the practical sense, not much code-wise).
Changed in rosetta: | |
importance: | Undecided → High |
status: | New → Triaged |
description: | updated |
Changed in rosetta: | |
assignee: | Jeroen T. Vermeulen (jtv) → nobody |
Jeroen has been working on cleaning up the data, fixing the bug properly will require a lot more attention (like how not to avoid slowing down entire LP).