On 02/02/10 12:49, Jan Verlaan - Veritos wrote:
Hi Julien, community,
See some feedback below...
We determined because of missing one day our translations done.
Ok, a mistake can happen and we will translate again.
I did not follow the implementation of the automatic sync of
translations in LP's Rosetta, but seeing bug 439241 it seems indeed that
there were some mistakes in the process. Probably a mixture of human
errors at Tiny and issues in the LP translation system.
The situation should be stable now, so let's work from there.
Due to the fact that all kind of things changed inhere last month,
having 2 different behaviors for stable and trunk now,
I would appreciate very very much that someone at Tiny will outline the
new situation we have to the community.
e.g. write a small document for translation teams how to technically do
You're right, the process is different in trunk and in stable now, so an
outline of the situation would be useful for everyone.
I will post a news to explain it (see text below), and we'll also make
sure to update the documentation for 5.2.
Right now I'm not sure I do understand how we should translate for
stable and trunk. Which possibilities do we have;
e.g. delivering with module and uploading with lp, downloading po files
and uploading again after translation, translating in webinterface of lp,
automatic synchronizing between trunk and stable? or do we merge manually?
I guess I'm not alone here.
The global process is as follows:
* Trunk *
* In trunk, all translations are automatically synchronized between
LP's translation system and the various *.po files that are located in
the source code.
* Whenever someone commits a change to a .po file, LP sees it and
displays it, and whenever someone changes a translation via LP, it is
commited in bazaar per batch after a while.
* Translators can work term by term in LP, or download/upload multiple
terms at once in a .po format via LP too. The translation interface is
easy to locate, e.g https://translations.launchpad.net/openobject-addons
* Access rights on translations changes and reviews via LP are given
via the various translation teams.
* LP requires PO files to be named with the language code by default,
so all PO were renamed accordingly e.g. from nl_NL.po to nl.po, so that
LP's commits go in the right files.
* When loading the translation for a language, OpenERP (trunk) will try
to find a country-specific PO first (e.g. nl_NL.po) then fallback to the
default language one (e.g. nl.po) if there is none. This is compatible
with LP's strategy and allows per-country specific translations.
* Stable *
* In stable, there is no automatic synchronisation of LP's translations
with the *.po files, because it requires some core changes (partially
outlined above for trunk).
* Even without automatic sync, translations can still be done in LP's
translation interface, but the URL to access it is less obvious.
* During the few months remaining for 5.0, the synchronization is thus
done manually by the Release Manager at Tiny. Before releasing a new
stable release, the Release Manager must import all LP translations and
commit them in stable. Fortunately this manual process will not be
needed as of 5.2.
* Translators can work in the same fashion as for trunk, term by term
or by .po files, and access rights on translations are managed in the
* OpenERP 5.0 requires PO files to be named using the full
language+country code (e.g. nl_NL.po), so the Release Manager imports
the updated translations in the correct files.
Finally, regarding the merge of translations between stable and trunk,
there is nothing available to do it automagically in LP. It must be done
manually during the periodic merges that we perform from stable into trunk.
However since the LP translation database is common between both,
appropriate suggestions should be displayed if a term has been
translated once (it should never be really lost). Perhaps it would be
possible to copy a batch of identical translations between stable and
trunk via import/export of PO files via LP's interface, but I haven't
I hope this clarifies thing a little bit.