= Automatic upstream translations import into Ubuntu =
''Translations in Launchpad upstream projects should be automatically used in Ubuntu whenever possible.''
'''On Launchpad:''' [[https://blueprints.edge.launchpad.net/rosetta/+spec/import-upstream-translations-into-ubuntu|import-upstream-translations-into-ubuntu]]
''As an Ubuntu developer/translator,<
>
I want to see upstream project translations in Launchpad automatically used in Ubuntu using the general upstream import rules,<
>
so I don't have to manually activate them using global suggestions.''<
>
Since we want to have all upstream projects' translations imported into Launchpad anyway, we are focusing on only how we share translations between upstreams in Launchpad (both hosted and imported) and Ubuntu.
== Rationale ==
This is a critical step towards bridging the gap between upstream and Ubuntu translations: once upstream translations are in Launchpad, we need to get them into Ubuntu as well.
What do we get with this?
* Better Ubuntu translations: they get imported from upstream very soon after they are done (less than 3 days)
* Less work for Ubuntu translators: they can focus on Ubuntu-specific strings
* Happier upstream translators: their translations get to Ubuntu users (at all, and faster)
* Less duplicate work: because of a smaller time difference since last import from upstream (currently it's based on packaged translations in upstream tarballs), it's less likely to get duplicate same translations happening both upstream and in Ubuntu
What is this basis for?
* Sending changes from Ubuntu upstream in a form usable by upstreams.
* Knowing what are Ubuntu-specific strings so we can speed up translation of Ubuntu-specifics and report status on it.
== Stakeholders ==
=== Ubuntu Translators Community ===
David:
* Mostly fine
* Precedence: keeping it as today, but. What happens with Canonical-internal projects like indicator-session which had their translations done privately while they happened in Ubuntu in parallel.
* Would like the delay (from upstream getting a translation committed to it getting into Ubuntu) to be less than 1 day ("hours"). Ideal: instantaneous.
* Importing upstream branches for series?
''What's "precedence" in this context?" -- jml [<>]
(input summarised by Danilo)
=== Canonical OEM ===
Kyle:
* Biggest concern: privately done translations for upstream projects should have lower precedence than Ubuntu provided translations. Would like a button to explicitely "merge" either way.
* Possibility of needing another distribution support: "maybe".
(input summarised by Danilo)
=== Ubuntu upstreams ===
GNOME, KDE, Debian, Open``Office.org, Firefox, Free``Desktop, GNU (Translation Project). More info on [[https://wiki.ubuntu.com/Translations/Upstream|Ubuntu's upstreams]].
== Constraints ==
This feature must implement ''no-action-required'' import of translations from an upstream LP project into Ubuntu sourcepackage when there is a link between the two: automatic sharing of translations.
It should not implement import from sources other than Launchpad upstream projects. It should provide no other features such as detection of template differences between upstream and Ubuntu templates.
== Subfeatures ==
Will depend on the actual implementation plan chosen.
== Workflows ==
This should neatly integrate into existing workflows. There should be no change in user behaviour except that they won't have to do some things (like manually translate in two places, or download upstream PO files and upload them to Launchpad).
''Won't there be ''some'' visual change?'' -- jml, [<>]
== Success ==
'''Bugs are at:''' [[https://launchpad.net/launchpad-project/+bugs?field.tag=upstream-translations-sharing|Bugs for upstream translations sharing with Ubuntu]]
We know we are done, when upstream translations from a project in Launchpad are imported into Ubuntu sourcepackage translations at most 1 day later. Pre-requisite for this is that we have at least 90% of all Ubuntu upstreams imported into Launchpad translations.
Things we need to keep track of to know that this feature is working:
* Number of new 'changed in LP' translations should approach zero
* We'll either see better statistics for Ubuntu translations, or less karma awarded for them (i.e. people doing less work to achieve the same result)
== Release Note ==
Ubuntu now gets direct translation imports from upstreams: there is no user action required. This eliminates duplicate work between Ubuntu and upstream translations, and should improve Ubuntu translations, along with getting upstream translations to users faster.
== Thoughts? ==
We are currently discussing following approaches to solving the problem:
* [[/FallbackPOTMsgSet|FallbackPOTMsgSet]]
* [[/FixingIsImported|Fixing is_imported and using existing message sharing]]
* [[/ImportingDirectly|Importing directly into Ubuntu]]
* [[/MessageSharingWithNewFlag|Message sharing with a new way of indicating upstream or Ubuntu current translations]]
* [[/HandlingAtUpdateTranslation|Handling at updateTranslation level]]