Mercurial > public > mercurial-scm > hg-stable
diff mercurial/utils/storageutil.py @ 43076:2372284d9457
formatting: blacken the codebase
This is using my patch to black
(https://github.com/psf/black/pull/826) so we don't un-wrap collection
literals.
Done with:
hg files 'set:**.py - mercurial/thirdparty/** - "contrib/python-zstandard/**"' | xargs black -S
# skip-blame mass-reformatting only
# no-check-commit reformats foo_bar functions
Differential Revision: https://phab.mercurial-scm.org/D6971
author | Augie Fackler <augie@google.com> |
---|---|
date | Sun, 06 Oct 2019 09:45:02 -0400 |
parents | 268662aac075 |
children | 687b865b95ad |
line wrap: on
line diff
--- a/mercurial/utils/storageutil.py Sat Oct 05 10:29:34 2019 -0400 +++ b/mercurial/utils/storageutil.py Sun Oct 06 09:45:02 2019 -0400 @@ -27,6 +27,7 @@ _nullhash = hashlib.sha1(nullid) + def hashrevisionsha1(text, p1, p2): """Compute the SHA-1 for revision data and its parents. @@ -52,8 +53,10 @@ s.update(text) return s.digest() + METADATA_RE = re.compile(b'\x01\n') + def parsemeta(text): """Parse metadata header from revision data. @@ -71,16 +74,19 @@ meta[k] = v return meta, s + 2 + def packmeta(meta, text): """Add metadata to fulltext to produce revision text.""" keys = sorted(meta) metatext = b''.join(b'%s: %s\n' % (k, meta[k]) for k in keys) return b'\x01\n%s\x01\n%s' % (metatext, text) + def iscensoredtext(text): meta = parsemeta(text)[0] return meta and b'censored' in meta + def filtermetadata(text): """Extract just the revision data from source text. @@ -91,7 +97,8 @@ return text offset = text.index(b'\x01\n', 2) - return text[offset + 2:] + return text[offset + 2 :] + def filerevisioncopied(store, node): """Resolve file revision copy metadata. @@ -112,6 +119,7 @@ return False + def filedataequivalent(store, node, filedata): """Determines whether file data is equivalent to a stored node. @@ -148,6 +156,7 @@ return False + def iterrevs(storelen, start=0, stop=None): """Iterate over revision numbers in a store.""" step = 1 @@ -163,6 +172,7 @@ return pycompat.xrange(start, stop, step) + def fileidlookup(store, fileid, identifier): """Resolve the file node for a value. @@ -184,8 +194,9 @@ try: return store.node(fileid) except IndexError: - raise error.LookupError('%d' % fileid, identifier, - _('no match found')) + raise error.LookupError( + '%d' % fileid, identifier, _('no match found') + ) if len(fileid) == 20: try: @@ -217,6 +228,7 @@ raise error.LookupError(fileid, identifier, _('no match found')) + def resolvestripinfo(minlinkrev, tiprev, headrevs, linkrevfn, parentrevsfn): """Resolve information needed to strip revisions. @@ -268,10 +280,21 @@ return strippoint, brokenrevs -def emitrevisions(store, nodes, nodesorder, resultcls, deltaparentfn=None, - candeltafn=None, rawsizefn=None, revdifffn=None, flagsfn=None, - deltamode=repository.CG_DELTAMODE_STD, - revisiondata=False, assumehaveparentrevisions=False): + +def emitrevisions( + store, + nodes, + nodesorder, + resultcls, + deltaparentfn=None, + candeltafn=None, + rawsizefn=None, + revdifffn=None, + flagsfn=None, + deltamode=repository.CG_DELTAMODE_STD, + revisiondata=False, + assumehaveparentrevisions=False, +): """Generic implementation of ifiledata.emitrevisions(). Emitting revision data is subtly complex. This function attempts to @@ -343,7 +366,7 @@ elif nodesorder == 'linear': revs = set(frev(n) for n in nodes) revs = dagop.linearize(revs, store.parentrevs) - else: # storage and default + else: # storage and default revs = sorted(frev(n) for n in nodes) prevrev = None @@ -388,8 +411,7 @@ # Base revision is a parent that hasn't been emitted already. # Use it if we can assume the receiver has the parent revision. - elif (assumehaveparentrevisions - and deltaparentrev in (p1rev, p2rev)): + elif assumehaveparentrevisions and deltaparentrev in (p1rev, p2rev): baserev = deltaparentrev # No guarantee the receiver has the delta parent. Send delta @@ -432,16 +454,18 @@ else: baserevisionsize = len(store.rawdata(baserev)) - elif (baserev == nullrev - and deltamode != repository.CG_DELTAMODE_PREV): + elif ( + baserev == nullrev and deltamode != repository.CG_DELTAMODE_PREV + ): revision = store.rawdata(node) available.add(rev) else: if revdifffn: delta = revdifffn(baserev, rev) else: - delta = mdiff.textdiff(store.rawdata(baserev), - store.rawdata(rev)) + delta = mdiff.textdiff( + store.rawdata(baserev), store.rawdata(rev) + ) available.add(rev) @@ -453,10 +477,12 @@ flags=flagsfn(rev) if flagsfn else 0, baserevisionsize=baserevisionsize, revision=revision, - delta=delta) + delta=delta, + ) prevrev = rev + def deltaiscensored(delta, baserev, baselenfn): """Determine if a delta represents censored revision data. @@ -483,4 +509,4 @@ add = "\1\ncensored:" addlen = len(add) - return newlen >= addlen and delta[hlen:hlen + addlen] == add + return newlen >= addlen and delta[hlen : hlen + addlen] == add