Refs #30116 -- Simplified stdout/stderr decoding with subprocess.run()'s encoding argument.

The encoding argument has been available since Python 3.6.
https://docs.python.org/3/library/subprocess.html#subprocess.run
This commit is contained in:
Jon Dufresne 2019-11-02 08:00:10 -07:00 committed by Mariusz Felisiak
parent 5a856669bf
commit e0e88ceaaa
2 changed files with 10 additions and 7 deletions

View file

@ -124,14 +124,17 @@ def lang_stats(resources=None, languages=None):
p = run(
['msgfmt', '-vc', '-o', '/dev/null', po_path],
stdout=PIPE, stderr=PIPE,
env={'LANG': 'C'}
env={'LANG': 'C'},
encoding='utf-8',
)
if p.returncode == 0:
# msgfmt output stats on stderr
print("%s: %s" % (lang, p.stderr.decode().strip()))
print('%s: %s' % (lang, p.stderr.strip()))
else:
print("Errors happened when checking %s translation for %s:\n%s" % (
lang, name, p.stderr.decode()))
print(
'Errors happened when checking %s translation for %s:\n%s'
% (lang, name, p.stderr)
)
def fetch(resources=None, languages=None):