mirror of
https://github.com/facebook/sapling.git
synced 2024-10-07 07:17:55 +03:00
[fb-hgext] use hashlib to compute sha1 hashes
Summary: hg-crew's c27dc3c3122 and c27dc3c3122^ were breaking our extensions: ``` $ hg log -r c27dc3c3122^ changeset: 9010734b79911d2d2e7405d91a4df479b35b3841 user: Augie Fackler <raf@durin42.com> date: Thu, 09 Jun 2016 21:12:33 -0700 s.ummary: cleanup: replace uses of util.(md5|sha1|sha256|sha512) with hashlib.\1 ``` ``` $ hg log -r c27dc3c3122 changeset: 0d55a7b8d07bf948c935822e6eea85b044383f00 user: Augie Fackler <raf@durin42.com> date: Thu, 09 Jun 2016 21:13:23 -0700 s.ummary: util: drop local aliases for md5, sha1, sha256, and sha512 ``` I did a grep over facebook-hg-rpms to see what was affected: ``` $ grep "util.\(md5\|sha1\|sha256\|sha512\)" -r ~/facebook-hg-rpms /home/jeroenv/facebook-hg-rpms/remotefilelog/remotefilelog/basestore.py: sha = util.sha1(filename).digest() /home/jeroenv/facebook-hg-rpms/remotefilelog/remotefilelog/basestore.py: sha = util.sha1(filename).digest() /home/jeroenv/facebook-hg-rpms/remotefilelog/remotefilelog/shallowutil.py: pathhash = util.sha1(file).hexdigest() /home/jeroenv/facebook-hg-rpms/remotefilelog/remotefilelog/shallowutil.py: pathhash = util.sha1(file).hexdigest() /home/jeroenv/facebook-hg-rpms/remotefilelog/remotefilelog/debugcommands.py: filekey = util.sha1(file).hexdigest() /home/jeroenv/facebook-hg-rpms/remotefilelog/remotefilelog/historypack.py: namehash = util.sha1(name).digest() /home/jeroenv/facebook-hg-rpms/remotefilelog/remotefilelog/historypack.py: node = util.sha1(filename).digest() /home/jeroenv/facebook-hg-rpms/remotefilelog/remotefilelog/historypack.py: files = ((util.sha1(filename).digest(), offset, size) /home/jeroenv/facebook-hg-rpms/remotefilelog/remotefilelog/fileserverclient.py: pathhash = util.sha1(file).hexdigest() /home/jeroenv/facebook-hg-rpms/remotefilelog/remotefilelog/fileserverclient.py: pathhash = util.sha1(file).hexdigest() /home/jeroenv/facebook-hg-rpms/remotefilelog/remotefilelog/basepack.py: self.sha = util.sha1() /home/jeroenv/facebook-hg-rpms/remotefilelog/tests/test-datapack.py: return util.sha1(content).digest() /home/jeroenv/facebook-hg-rpms/remotefilelog/tests/test-histpack.py: return util.sha1(content).digest() Binary file /home/jeroenv/facebook-hg-rpms/hg-crew/.hg/store/data/mercurial/revlog.py.i matches Binary file /home/jeroenv/facebook-hg-rpms/hg-crew/.hg/store/data/contrib/mercurial.spec.i matches /home/jeroenv/facebook-hg-rpms/hg-crew/contrib/mercurial.spec:%global docutilsmd5 4622263b62c5c771c03502afa3157768 /home/jeroenv/facebook-hg-rpms/hg-crew/contrib/buildrpm: DOCUTILSMD5=`sed -ne "s/^%global docutilsmd5 //p" $specfile` /home/jeroenv/facebook-hg-rpms/fb-hgext/sparse.py: return util.sha1(fh.read()).hexdigest() /home/jeroenv/facebook-hg-rpms/fb-hgext/sparse.py: sha1 = util.sha1() /home/jeroenv/facebook-hg-rpms/fb-hgext/sparse.py: sha1 = util.sha1() /home/jeroenv/facebook-hg-rpms/fb-hgext/sparse.py: sha1 = util.sha1() /home/jeroenv/facebook-hg-rpms/fb-hgext/sparse.py: sha1 = util.sha1() /home/jeroenv/facebook-hg-rpms/mutable-history/hgext/simple4server.py: sha = util.sha1() /home/jeroenv/facebook-hg-rpms/mutable-history/hgext/evolve.py: sha = util.sha1() ``` This diff is part of the fix. Test Plan: Ran the tests. ``` $MERCURIALRUNTEST -S -j 48 --with-hg ~/local/facebook-hg-rpms/hg-crew/hg ``` There was still one failure, but that's due to the fact that my locally built hg does not have lz4revlog. Reviewers: #sourcecontrol, durham, ttung Reviewed By: ttung Subscribers: mjpieters Differential Revision: https://phabricator.intern.facebook.com/D3438597 Tasks: 11762191 Signature: t1:3438597:1466016473:d33de5a2c772d17724429d3607e2400c85618c71
This commit is contained in:
parent
b9e78ae8c1
commit
f10fd61efd
12
sparse.py
12
sparse.py
@ -14,7 +14,7 @@ from mercurial import match as matchmod
|
||||
from mercurial import merge as mergemod
|
||||
from mercurial.node import nullid
|
||||
from mercurial.i18n import _
|
||||
import errno, os, re, collections
|
||||
import errno, os, re, collections, hashlib
|
||||
|
||||
cmdtable = {}
|
||||
command = cmdutil.command(cmdtable)
|
||||
@ -442,7 +442,7 @@ def _wraprepo(ui, repo):
|
||||
|
||||
def sparsechecksum(self, filepath):
|
||||
fh = open(filepath)
|
||||
return util.sha1(fh.read()).hexdigest()
|
||||
return hashlib.sha1(fh.read()).hexdigest()
|
||||
|
||||
def _sparsesignature(self, includetemp=True):
|
||||
"""Returns the signature string representing the contents of the
|
||||
@ -874,7 +874,7 @@ class forceincludematcher(object):
|
||||
return False
|
||||
|
||||
def hash(self):
|
||||
sha1 = util.sha1()
|
||||
sha1 = hashlib.sha1()
|
||||
sha1.update(_hashmatcher(self._matcher))
|
||||
for include in sorted(self._includes):
|
||||
sha1.update(include + '\0')
|
||||
@ -907,7 +907,7 @@ class unionmatcher(object):
|
||||
return False
|
||||
|
||||
def hash(self):
|
||||
sha1 = util.sha1()
|
||||
sha1 = hashlib.sha1()
|
||||
for m in self._matchers:
|
||||
sha1.update(_hashmatcher(m))
|
||||
return sha1.hexdigest()
|
||||
@ -932,7 +932,7 @@ class negatematcher(object):
|
||||
return True
|
||||
|
||||
def hash(self):
|
||||
sha1 = util.sha1()
|
||||
sha1 = hashlib.sha1()
|
||||
sha1.update('negate')
|
||||
sha1.update(_hashmatcher(self._matcher))
|
||||
return sha1.hexdigest()
|
||||
@ -941,7 +941,7 @@ def _hashmatcher(matcher):
|
||||
if util.safehasattr(matcher, 'hash'):
|
||||
return matcher.hash()
|
||||
|
||||
sha1 = util.sha1()
|
||||
sha1 = hashlib.sha1()
|
||||
if util.safehasattr(matcher, 'includepat'):
|
||||
sha1.update(matcher.includepat)
|
||||
sha1.update('\0\0')
|
||||
|
Loading…
Reference in New Issue
Block a user