[PATCH 5 of 5] check-code: handle py3 open divergence
timeless
timeless at fmr.im
Wed May 11 00:12:50 EDT 2016
# HG changeset patch
# User timeless <timeless at mozdev.org>
# Date 1462931171 0
# Wed May 11 01:46:11 2016 +0000
# Node ID c5dfd864d81f5d1f435ff376ea44b3ea82b12575
# Parent ed2dbfec165a0de79c93d7fa1ea9cb5f36b10c29
# EXP-Topic runtests
# Available At bb://timeless/mercurial-crew
# hg pull bb://timeless/mercurial-crew -r c5dfd864d81f
check-code: handle py3 open divergence
open() really wants an encoding attribute
diff -r ed2dbfec165a -r c5dfd864d81f contrib/check-code.py
--- a/contrib/check-code.py Wed May 11 01:44:39 2016 +0000
+++ b/contrib/check-code.py Wed May 11 01:46:11 2016 +0000
@@ -26,6 +26,11 @@
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:
@@ -493,8 +498,12 @@
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
More information about the Mercurial-devel
mailing list