Ubuntu upstream translation imports overwrite Ubuntu translations
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Launchpad itself |
Fix Released
|
Critical
|
Henning Eggers |
Bug Description
Ubuntu's upstream translation imports (from Soyuz package builds) are overwriting Ubuntu's own translations.
The design of the Recife translations model change called for the upstream translations of Ubuntu packages (as uploaded by Soyuz) to be imported as upstream translations. Since these translations are still uploaded to the Ubuntu packages, not upstream productseries, they will need special treatment: the "by_maintainer" flag on the upload should cause them to be made current from the upstream perspective, even though they happen on ubuntu templates¹. The Ubuntu translations should track those translations only when appropriate as per the sharing policy².
We never got around to doing this. As a result, the upstream translations that Soyuz uploads when it builds a package are made current from the Ubuntu perspective, not the upstream one, and effectively ignore sharing policy.
—
¹) At least, for packages that have no upstream productseries in Launchpad. We'd want to be careful with packages whose upstream translations do originate in Launchpad, or the "upstream" translations from the package build might revert newer ones by the upstream translators.
²) The sharing policy says that upstream updates should generally also update Ubuntu translations, but not where there is an Ubuntu translation that differs from a pre-existing upstream translation.
Related branches
- Ian Booth (community): Approve (release-critical)
- Jeroen T. Vermeulen (community): Approve (code)
-
Diff: 373 lines (+289/-4)5 files modifiedlib/lp/testing/factory.py (+3/-3)
lib/lp/translations/interfaces/translationmessage.py (+11/-0)
lib/lp/translations/model/potmsgset.py (+73/-0)
lib/lp/translations/model/translationmessage.py (+23/-1)
lib/lp/translations/tests/test_translationmessage.py (+179/-0)
- Jeroen T. Vermeulen (community): Approve (code)
- Ian Booth: Pending (release-critical) requested
-
Diff: 845 lines (+468/-122)10 files modifiedlib/lp/registry/model/distribution.py (+9/-6)
lib/lp/translations/model/potmsgset.py (+6/-4)
lib/lp/translations/scripts/upload_translations.py (+93/-0)
lib/lp/translations/tests/test_translationmessage.py (+157/-80)
lib/lp/translations/tests/test_translationpolicy.py (+38/-8)
lib/lp/translations/utilities/tests/test_file_importer.py (+78/-17)
lib/lp/translations/utilities/tests/test_translation_sharing_info.py (+40/-0)
lib/lp/translations/utilities/translation_import.py (+26/-5)
lib/lp/translations/utilities/translationsharinginfo.py (+2/-2)
scripts/rosetta/upload-translations.py (+19/-0)
tags: |
added: upstream-translations-sharing removed: translations-sharing |
Changed in launchpad: | |
status: | New → Triaged |
assignee: | nobody → Henning Eggers (henninge) |
status: | Triaged → In Progress |
tags: | added: qa-untestable |
Changed in launchpad: | |
milestone: | 11.02 → 11.03 |
milestone: | 11.03 → none |
tags: |
added: qa-ok removed: qa-needstesting |
Changed in launchpad: | |
status: | Fix Committed → Fix Released |
The precedence/sharing policy for Ubuntu, explained:
https:/ /wiki.ubuntu. com/Translation s/KnowledgeBase /TranslationsPr ecedence