Mercurial > public > mercurial-scm > hg-stable
view hgext/remotefilelog/constants.py @ 40545:3a333a582d7b
remotefilelog: import pruned-down remotefilelog extension from hg-experimental
This is remotefilelog as of my recent patches for compatibility with
current tip of hg, minus support for old versions of Mercurial and
some FB-specific features like their treemanifest extension and
fetching linkrev data from a patched phabricator. The file extutil.py
moved from hgext3rd to remotefilelog.
This is not yet ready to be landed, consider it a preview for
now. Planned changes include:
* replace lz4 with zstd
* rename some capabilities, requirements and wireproto commands to mark
them as experimental
* consolidate bits of shallowutil with related functions (eg readfile)
I'm certainly open to other (small) changes, but my rough mission is
to land this largely as-is so we can use it as a model of the
functionality we need going forward for lazy-fetching of file contents
from a server.
# no-check-commit because of a few foo_bar functions
Differential Revision: https://phab.mercurial-scm.org/D4782
author | Augie Fackler <augie@google.com> |
---|---|
date | Thu, 27 Sep 2018 13:03:19 -0400 |
parents | |
children | 354acd0dc637 |
line wrap: on
line source
from __future__ import absolute_import import struct from mercurial.i18n import _ REQUIREMENT = "remotefilelog" FILENAMESTRUCT = '!H' FILENAMESIZE = struct.calcsize(FILENAMESTRUCT) NODESIZE = 20 PACKREQUESTCOUNTSTRUCT = '!I' NODECOUNTSTRUCT = '!I' NODECOUNTSIZE = struct.calcsize(NODECOUNTSTRUCT) PATHCOUNTSTRUCT = '!I' PATHCOUNTSIZE = struct.calcsize(PATHCOUNTSTRUCT) FILEPACK_CATEGORY="" TREEPACK_CATEGORY="manifests" ALL_CATEGORIES = [FILEPACK_CATEGORY, TREEPACK_CATEGORY] # revision metadata keys. must be a single character. METAKEYFLAG = 'f' # revlog flag METAKEYSIZE = 's' # full rawtext size def getunits(category): if category == FILEPACK_CATEGORY: return _("files") if category == TREEPACK_CATEGORY: return _("trees") # Repack options passed to ``markledger``. OPTION_PACKSONLY = 'packsonly'