aboutsummaryrefslogtreecommitdiff
path: root/contrib/devtools
diff options
context:
space:
mode:
authorMax Kaplan <kaplanmaxe3@gmail.com>2018-06-02 13:43:46 -0400
committerMax Kaplan <kaplanmaxe3@gmail.com>2018-06-05 07:49:21 -0400
commit85f0135eaefe3d9f696689a7e83606c579da40a8 (patch)
treea204e33f5d6bbd87c4ecebb060abcce96f459697 /contrib/devtools
parente24bf1ce184bc8d5bba70a3f3e9c43c2df07f4d3 (diff)
utils: checking for bitcoin addresses in translations
Checking for and removing any bitcoin addresses in translations
Diffstat (limited to 'contrib/devtools')
-rwxr-xr-xcontrib/devtools/update-translations.py10
1 files changed, 9 insertions, 1 deletions
diff --git a/contrib/devtools/update-translations.py b/contrib/devtools/update-translations.py
index b36e6968bf..f0098cfcdf 100755
--- a/contrib/devtools/update-translations.py
+++ b/contrib/devtools/update-translations.py
@@ -30,6 +30,8 @@ SOURCE_LANG = 'bitcoin_en.ts'
LOCALE_DIR = 'src/qt/locale'
# Minimum number of messages for translation to be considered at all
MIN_NUM_MESSAGES = 10
+# Regexp to check for Bitcoin addresses
+ADDRESS_REGEXP = re.compile('([13]|bc1)[a-zA-Z0-9]{30,}')
def check_at_repository_root():
if not os.path.exists('.git'):
@@ -122,6 +124,12 @@ def escape_cdata(text):
text = text.replace('"', '&quot;')
return text
+def contains_bitcoin_addr(text, errors):
+ if text != None and ADDRESS_REGEXP.search(text) != None:
+ errors.append('Translation "%s" contains a bitcoin address. This will be removed.' % (text))
+ return True
+ return False
+
def postprocess_translations(reduce_diff_hacks=False):
print('Checking and postprocessing...')
@@ -160,7 +168,7 @@ def postprocess_translations(reduce_diff_hacks=False):
if translation is None:
continue
errors = []
- valid = check_format_specifiers(source, translation, errors, numerus)
+ valid = check_format_specifiers(source, translation, errors, numerus) and not contains_bitcoin_addr(translation, errors)
for error in errors:
print('%s: %s' % (filename, error))