[PATCH 1 of 2 STABLE] i18n: do not abuse msgstr of "DEPRECATED" to check for bad translation
Yuya Nishihara
yuya at tcha.org
Tue Nov 3 14:58:59 UTC 2015
# HG changeset patch
# User Yuya Nishihara <yuya at tcha.org>
# Date 1446557966 -32400
# Tue Nov 03 22:39:26 2015 +0900
# Branch stable
# Node ID 179436b029f4d59c4437280bb2ddf4b2dbe7c029
# Parent 58b7f3e93bbab749ab16c09df12aae5ba7880708
i18n: do not abuse msgstr of "DEPRECATED" to check for bad translation
Because 44cc9f63a2f1 requires the msgstr of "(DEPRECATED)", old *.po files
must be blamed. Using "DEPRECATED" would just hide the error.
For example, "LANG=da_DK.UTF-8 hg help serve" fails to hide deprecated
options right now, but check-translation.py couldn't detect it because
da.po has outdated translation of "DEPRECATED".
diff --git a/i18n/check-translation.py b/i18n/check-translation.py
--- a/i18n/check-translation.py
+++ b/i18n/check-translation.py
@@ -71,9 +71,7 @@ def promptchoice(pe):
deprecatedpe = None
@scanner()
def deprecatedsetup(pofile):
- pes = [p for p in pofile
- if ((p.msgid == 'DEPRECATED' or p.msgid == '(DEPRECATED)') and
- p.msgstr)]
+ pes = [p for p in pofile if p.msgid == '(DEPRECATED)' and p.msgstr]
if len(pes):
global deprecatedpe
deprecatedpe = pes[0]
@@ -82,8 +80,8 @@ def deprecatedsetup(pofile):
def deprecated(pe):
"""Check for DEPRECATED
>>> ped = polib.POEntry(
- ... msgid = 'DEPRECATED',
- ... msgstr= 'DETACERPED')
+ ... msgid = '(DEPRECATED)',
+ ... msgstr= '(DETACERPED)')
>>> deprecatedsetup([ped])
>>> pe = polib.POEntry(
... msgid = 'Something (DEPRECATED)',
More information about the Mercurial-devel
mailing list