##// END OF EJS Templates
narrow: fix flaky behavior described in issue6150...
narrow: fix flaky behavior described in issue6150 This has been plaguing the CI for a good while, and it doesn't appear to have an easy fix proposed yet. The solution in this change is to always do an unambiguous (but expensive) lookup in case of comparison. This should always be correct, albeit suboptimal. Differential Revision: https://phab.mercurial-scm.org/D10034

File last commit:

r46434:c102b704 default
r47280:b994db7c stable
Show More
md5sum.py
39 lines | 946 B | text/x-python | PythonLexer
Gregory Szorc
global: use python3 in shebangs...
r46434 #!/usr/bin/env python3
Peter van Dijk
clarify license on md5sum.py
r1928 #
# Based on python's Tools/scripts/md5sum.py
#
# This software may be used and distributed according to the terms
# of the PYTHON SOFTWARE FOUNDATION LICENSE VERSION 2, which is
# GPL-compatible.
Pulkit Goyal
py3: make files use absolute_import and print_function...
r29485 from __future__ import absolute_import
Augie Fackler
md5sum: assume hashlib exists now that we're 2.7 only
r33875 import hashlib
Pulkit Goyal
py3: make files use absolute_import and print_function...
r29485 import os
import sys
Dirkjan Ochtman
python 2.6 compatibility: compatibility wrappers for hash functions
r6470
try:
Patrick Mezard
tests: Windows compatibility fixes...
r7080 import msvcrt
Augie Fackler
formatting: blacken the codebase...
r43346
Patrick Mezard
tests: Windows compatibility fixes...
r7080 msvcrt.setmode(sys.stdout.fileno(), os.O_BINARY)
msvcrt.setmode(sys.stderr.fileno(), os.O_BINARY)
except ImportError:
pass
Peter van Dijk
add md5sum.py required by fix in previous changeset
r1924 for filename in sys.argv[1:]:
try:
fp = open(filename, 'rb')
Gregory Szorc
global: mass rewrite to use modern exception syntax...
r25660 except IOError as msg:
Peter van Dijk
add md5sum.py required by fix in previous changeset
r1924 sys.stderr.write('%s: Can\'t open: %s\n' % (filename, msg))
sys.exit(1)
Thomas Arendsen Hein
Whitespace/Tab cleanup
r3223
Augie Fackler
md5sum: assume hashlib exists now that we're 2.7 only
r33875 m = hashlib.md5()
Peter van Dijk
add md5sum.py required by fix in previous changeset
r1924 try:
Augie Fackler
md5sum: adapt for python 3 support
r32852 for data in iter(lambda: fp.read(8192), b''):
Peter van Dijk
add md5sum.py required by fix in previous changeset
r1924 m.update(data)
Gregory Szorc
global: mass rewrite to use modern exception syntax...
r25660 except IOError as msg:
Peter van Dijk
add md5sum.py required by fix in previous changeset
r1924 sys.stderr.write('%s: I/O error: %s\n' % (filename, msg))
sys.exit(1)
sys.stdout.write('%s %s\n' % (m.hexdigest(), filename))
sys.exit(0)