On Mon, Aug 20, 2012 at 12:34 PM, Ingo Brückl <ib@wupperonline.de> wrote:
>
> Chris Leonard wrote on Mon, 20 Aug 2012 12:01:03 -0400:
>
>> It seems rather odd that it should choke on the obsoleted strings,
>> whcih was the only candidate I saw for producing this error.
>
> msgmerge uses these "obsoleted strings" when new strings appear in the .pot
> file for msgids matching either exactly or fuzzily, so they aren't obsolete,
> but currently unused, once translated strings (and thus valuable objects).
> This assignment can't be done if the msgid isn't unique.
Yes, I am aware of the potential value of these commented-out strings
as UI decisions are revisited.
These strings are commented out by msgmerge (or possibly pomerge) when
the file is updated by templates and a string is not longer present in
the current template.
For reasons I do not completely understand, on rare occasions, the
commented out strings get duplicated. It does not appear to be a
general flaw with the Pootle "update from templates" process as there
is no problem with the vast majority PO files that have undergone
updates from templates. It happens so rarely (a handful of times over
the past four years or so), that I do not have sufficient information
to track it back to the original source/mechanism of the error. I
have an unconfirmed suspicion that it may have to do with PO files
that are worked on off-line and then uploaded, but that is only
speculation on my part.
From previous experience, the fastest route to fixing this in a given
situation is to simply remove the commented out strings for that
particular PO file, and accept the fact that those obsoleted strings
will not be available in future. It is far too time consuming to
parse out the individual duplicates against the future possibility
that they might be useful.
>> Which script is running a msgmerge and throwing these errors?
>
> update.pl and abi-update-all.sh, but even without these we should maintain
> our .po files error-free.
I'm asking this in hopes of gaining more information about the source
of this error type, because I have so little insight into why this
happens given it's rarity.
There is no obvious way to detect these types of errors using the
pofilter QA checks currently available in Pootle. I suspect that they
may intentionally ignore the commented-out strings. I can talk to
them about implementing a pofilter check that could detect these, but
I suspect that it would be a low priority for them.
I would like to say that I will avoid committing files with duplicate
commented-out strings in future, but being realistic I do not think
that I will be in a position of manually perform a msgformat check on
each file before committing and I would really like to get things to a
situation where I am not the one committing the PO files at all. I
would really like to disintermediate myself from this process and get
to direct commits from Pootle by language administrators.
What I can say is that I will endeavour to be as responsive as
possible when notified that a PO file has such an error and I will
work to correct it immediately.
cjl
Received on Wed, 22 Aug 2012 13:15:45 -0400
This archive was generated by hypermail 2.1.8 : Wed Aug 22 2012 - 19:17:00 CEST