Merge #13374: utils and libraries: checking for bitcoin address in translations
85f0135eae
utils: checking for bitcoin addresses in translations (Max Kaplan)
Pull request description:
Closes #13363
Tree-SHA512: 8509b4ab004139942c847b93d7b44096a13df8e429dd05459b430a1cf7eaef16c4906ab9dc854f4e635312e1ebb064cfab1bad97fec914c7e926c83ad45cc99b
This commit is contained in:
commit
56f69360dc
1 changed files with 9 additions and 1 deletions
|
@ -30,6 +30,8 @@ SOURCE_LANG = 'bitcoin_en.ts'
|
||||||
LOCALE_DIR = 'src/qt/locale'
|
LOCALE_DIR = 'src/qt/locale'
|
||||||
# Minimum number of messages for translation to be considered at all
|
# Minimum number of messages for translation to be considered at all
|
||||||
MIN_NUM_MESSAGES = 10
|
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():
|
def check_at_repository_root():
|
||||||
if not os.path.exists('.git'):
|
if not os.path.exists('.git'):
|
||||||
|
@ -122,6 +124,12 @@ def escape_cdata(text):
|
||||||
text = text.replace('"', '"')
|
text = text.replace('"', '"')
|
||||||
return text
|
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):
|
def postprocess_translations(reduce_diff_hacks=False):
|
||||||
print('Checking and postprocessing...')
|
print('Checking and postprocessing...')
|
||||||
|
|
||||||
|
@ -160,7 +168,7 @@ def postprocess_translations(reduce_diff_hacks=False):
|
||||||
if translation is None:
|
if translation is None:
|
||||||
continue
|
continue
|
||||||
errors = []
|
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:
|
for error in errors:
|
||||||
print('%s: %s' % (filename, error))
|
print('%s: %s' % (filename, error))
|
||||||
|
|
Loading…
Reference in a new issue