On 2018-Dec-06, Tom Lane wrote:
> Alvaro Herrera <alvherre@2ndquadrant.com> writes:
> > On 2018-Nov-17, Tom Lane wrote:
> >> I poked at that to the extent of testing every string in 11.1's tr.po
> >> against our implementation of snprintf, and what I find is this:
> >> msgid "column %s of %s"
> >> msgstr "%2$s'nin %1$ sütunu"
>
> > I fixed this string in tr.po. At least it'll be correct in 11.2.
>
> Thanks! I'm also just about to push code changes for the easy parts
> of what I recommended earlier (have psprintf report the bogus format
> string, and make snprintf.c throw EINVAL for more error cases).
Great.
> Is anybody interested in the idea of making our own validator for
> the .po files? I might be willing to code it up, if I knew what
> its API ought to be, but I don't know the workflow in that area.
I think it's definitely worthwhile to avoid introducing bogus files in
the Pg repo.
The work is done by these scripts:
https://git.postgresql.org/gitweb/?p=pgtranslation/admin.git;a=tree;h=refs/heads/master;hb=refs/heads/master
cp-po does some validation while copying the file from the pgtranslation
repo back to Postgres, but I think that's the wrong time (at release
time). The good one I think is wwwtools/pg-make-po, which runs a few
times daily and produces the error file that ends up in the status table
in babel.postgresql.org. We'd want something that produces output that
can be appended to the $outdir/$catalogname-$lang.po.err file (lines
103ff of that script).
Peter is the authority on this, of course.
--
Álvaro Herrera https://www.2ndQuadrant.com/
PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services