# HG changeset patch # User timeless # Date 2016-05-11 01:46:11 # Node ID c641b8dfb98c2ade6995ba3aa341fe4d7b154827 # Parent f8b87a779c87586aa043bcd6030369715edfc9c1 check-code: handle py3 open divergence open() really wants an encoding attribute diff --git a/contrib/check-code.py b/contrib/check-code.py --- a/contrib/check-code.py +++ b/contrib/check-code.py @@ -26,6 +26,11 @@ import optparse import os import re import sys +if sys.version_info[0] < 3: + opentext = open +else: + def opentext(f): + return open(f, encoding='ascii') try: xrange except NameError: @@ -491,8 +496,12 @@ def checkfile(f, logfunc=_defaultlogger. result = True try: - with open(f) as fp: - pre = post = fp.read() + with opentext(f) as fp: + try: + pre = post = fp.read() + except UnicodeDecodeError as e: + print("%s while reading %s" % (e, f)) + return result except IOError as e: print("Skipping %s, %s" % (f, str(e).split(':', 1)[0])) return result