← Back to team overview

openerp-community team mailing list archive

Re: a new Community Team


Hello All,

Olivier Dony wrote:
On 02/02/10 12:49, Jan Verlaan - Veritos wrote:
Hi Julien, community,

Hi Jan,

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.
Yes LP translation syncronization works fine with all stable and trunk branches. And yes for the problem specified in bug(https://bugs.launchpad.net/openobject-addons/+bug/439241)from borja (stable code get "es.po" from LP and branch has "es_ES.po" file already) so in this case if you really wants updated LP transaltions string from LP then you can use " msgmerge [option] def.po ref.pot " command to merge both the file and get latest update po file.

See: http://www.gnu.org/software/gettext/manual/gettext.html#msgmerge-Invocation

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
the translations.

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.
I update the statement here: when loading the translations for a language, openerp first see if the lang code and country code both are same (fr_FR) then it will find "fr.po" but in case of different lang code and country code then it will find its original name (with underscore format) "fr_BE.po" ..

* 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
same way.
 * 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
tried it.

I hope this clarifies thing a little bit.

/Thanks & regards,
Mustufa Rangwala
Sr. Application  Engineer./

Follow ups