Mercurial > p > roundup > code
annotate tools/migrate-queries.py @ 7052:4b6a6b794dfa
Fix errors in po files.
Trying to get translation files in shape for translationproject.org.
Not sure it wil happen but this checkin fixes errors in .po files found
by msgfmt -cv.
Recreated template and merged into .po files.
Also adds potest to makefile targets and improves diff target.
Fixes:
Project-Id-Version changed to 2.3.0. I can't find doc on what this
is supposed to be. I assume it is to match the .po file to the
release since there are other fields for recording the last
update to the translations.
Language header, is often blank. Added Language-Team value where missing.
Plural-Forms header for a couple of languages per:
https://www.gnu.org/software/gettext/manual/html_node/Plural-forms.html
Japanese still has an issue. There are plural forms defined in the
file, but according to the above, there should only be one form.
I don't know Japanese, so am not qualified to remove the plural
forms or change the Plural-Forms header to the expected:
nplurals=1; plural=0;
So I have left it with: nplurals=2; plural=0;\n"
Which will always choose the first plural form (index 0).
Added Last-Translator, Language and Content-Transfer-Encoding for
en.po.
| author | John Rouillard <rouilj@ieee.org> |
|---|---|
| date | Sun, 20 Nov 2022 11:29:31 -0500 |
| parents | 64b05e24dbd8 |
| children | fed0f839c260 |
| rev | line source |
|---|---|
|
3346
a133f03df238
consistency in file formats
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
1850
diff
changeset
|
1 #! /usr/bin/env python |
|
a133f03df238
consistency in file formats
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
1850
diff
changeset
|
2 ''' |
|
a133f03df238
consistency in file formats
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
1850
diff
changeset
|
3 migrate-queries <instance-home> [<instance-home> *] |
|
a133f03df238
consistency in file formats
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
1850
diff
changeset
|
4 |
|
a133f03df238
consistency in file formats
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
1850
diff
changeset
|
5 Migrate old queries in the specified instances to Roundup 0.6.0+ by |
|
a133f03df238
consistency in file formats
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
1850
diff
changeset
|
6 removing the leading ? from their URLs. 0.6.0+ queries do not carry a |
|
a133f03df238
consistency in file formats
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
1850
diff
changeset
|
7 leading ?; it is added by the 0.6.0 templating, so old queries lead |
|
a133f03df238
consistency in file formats
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
1850
diff
changeset
|
8 to query URLs with a double leading ?? and a consequent 404 Not Found. |
|
a133f03df238
consistency in file formats
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
1850
diff
changeset
|
9 ''' |
|
5376
64b05e24dbd8
Python 3 preparation: convert print to a function.
Joseph Myers <jsm@polyomino.org.uk>
parents:
4781
diff
changeset
|
10 from __future__ import print_function |
|
3346
a133f03df238
consistency in file formats
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
1850
diff
changeset
|
11 __author__ = 'James Kew <jkew@mediabright.co.uk>' |
|
a133f03df238
consistency in file formats
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
1850
diff
changeset
|
12 |
|
a133f03df238
consistency in file formats
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
1850
diff
changeset
|
13 import sys |
|
a133f03df238
consistency in file formats
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
1850
diff
changeset
|
14 import roundup.instance |
|
a133f03df238
consistency in file formats
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
1850
diff
changeset
|
15 |
|
a133f03df238
consistency in file formats
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
1850
diff
changeset
|
16 if len(sys.argv) == 1: |
|
5376
64b05e24dbd8
Python 3 preparation: convert print to a function.
Joseph Myers <jsm@polyomino.org.uk>
parents:
4781
diff
changeset
|
17 print(__doc__) |
|
3346
a133f03df238
consistency in file formats
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
1850
diff
changeset
|
18 sys.exit(1) |
|
a133f03df238
consistency in file formats
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
1850
diff
changeset
|
19 |
|
a133f03df238
consistency in file formats
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
1850
diff
changeset
|
20 # Iterate over all instance homes specified in argv. |
|
a133f03df238
consistency in file formats
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
1850
diff
changeset
|
21 for home in sys.argv[1:]: |
|
a133f03df238
consistency in file formats
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
1850
diff
changeset
|
22 # Do some basic exception handling to catch bad arguments. |
|
a133f03df238
consistency in file formats
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
1850
diff
changeset
|
23 try: |
|
a133f03df238
consistency in file formats
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
1850
diff
changeset
|
24 instance = roundup.instance.open(home) |
|
a133f03df238
consistency in file formats
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
1850
diff
changeset
|
25 except: |
|
5376
64b05e24dbd8
Python 3 preparation: convert print to a function.
Joseph Myers <jsm@polyomino.org.uk>
parents:
4781
diff
changeset
|
26 print('Cannot open instance home directory %s!' % home) |
|
3346
a133f03df238
consistency in file formats
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
1850
diff
changeset
|
27 continue |
|
a133f03df238
consistency in file formats
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
1850
diff
changeset
|
28 |
|
a133f03df238
consistency in file formats
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
1850
diff
changeset
|
29 db = instance.open('admin') |
| 4781 | 30 db.tx_Source = "cli" |
|
3346
a133f03df238
consistency in file formats
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
1850
diff
changeset
|
31 |
|
5376
64b05e24dbd8
Python 3 preparation: convert print to a function.
Joseph Myers <jsm@polyomino.org.uk>
parents:
4781
diff
changeset
|
32 print('Migrating active queries in %s (%s):'%( |
|
64b05e24dbd8
Python 3 preparation: convert print to a function.
Joseph Myers <jsm@polyomino.org.uk>
parents:
4781
diff
changeset
|
33 instance.config.TRACKER_NAME, home)) |
|
3346
a133f03df238
consistency in file formats
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
1850
diff
changeset
|
34 for query in db.query.list(): |
|
a133f03df238
consistency in file formats
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
1850
diff
changeset
|
35 url = db.query.get(query, 'url') |
|
a133f03df238
consistency in file formats
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
1850
diff
changeset
|
36 if url[0] == '?': |
|
a133f03df238
consistency in file formats
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
1850
diff
changeset
|
37 url = url[1:] |
|
5376
64b05e24dbd8
Python 3 preparation: convert print to a function.
Joseph Myers <jsm@polyomino.org.uk>
parents:
4781
diff
changeset
|
38 print(' Migrating query%s (%s)'%(query, |
|
64b05e24dbd8
Python 3 preparation: convert print to a function.
Joseph Myers <jsm@polyomino.org.uk>
parents:
4781
diff
changeset
|
39 db.query.get(query, 'name'))) |
|
3346
a133f03df238
consistency in file formats
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
1850
diff
changeset
|
40 db.query.set(query, url=url) |
|
a133f03df238
consistency in file formats
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
1850
diff
changeset
|
41 |
|
a133f03df238
consistency in file formats
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
1850
diff
changeset
|
42 db.commit() |
|
a133f03df238
consistency in file formats
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
1850
diff
changeset
|
43 db.close() |
|
a133f03df238
consistency in file formats
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
1850
diff
changeset
|
44 |
