[PATCH] encoding: use i.startswith() instead of i[0] to eliminate py2/3 divergence

Yuya Nishihara yuya at tcha.org
Tue May 16 15:16:37 UTC 2017


# HG changeset patch
# User Yuya Nishihara <yuya at tcha.org>
# Date 1494945398 -32400
#      Tue May 16 23:36:38 2017 +0900
# Node ID 13f44d66157096e3bf9c7f30bd4df802c38b971e
# Parent  288f218a3641333bd64aac807d0b81205049c047
encoding: use i.startswith() instead of i[0] to eliminate py2/3 divergence

diff --git a/mercurial/encoding.py b/mercurial/encoding.py
--- a/mercurial/encoding.py
+++ b/mercurial/encoding.py
@@ -29,10 +29,7 @@ if pycompat.ispy3:
            "200c 200d 200e 200f 202a 202b 202c 202d 202e "
            "206a 206b 206c 206d 206e 206f feff".split()]
 # verify the next function will work
-if pycompat.ispy3:
-    assert set(i[0] for i in _ignore) == {ord(b'\xe2'), ord(b'\xef')}
-else:
-    assert set(i[0] for i in _ignore) == {"\xe2", "\xef"}
+assert all(i.startswith(("\xe2", "\xef")) for i in _ignore)
 
 def hfsignoreclean(s):
     """Remove codepoints ignored by HFS+ from s.


More information about the Mercurial-devel mailing list