mirror of
https://github.com/facebook/sapling.git
synced 2024-10-11 17:27:53 +03:00
0e2c18e2cd
Summary: Make the unpacked file format to include the revlog flag information, and make the getfile(s) protocol support it. Note: The `getpackv1` protocol and packfile format is not changed yet. Test Plan: Run existing tests. Stronger tests and lfs integration test will be added when this area is more complete. Reviewers: #mercurial, rmcelroy, durham Reviewed By: durham Subscribers: rmcelroy, mjpieters Differential Revision: https://phabricator.intern.facebook.com/D4903772 Signature: t1:4903772:1493152451:ab393b0208f0eee199ffc4c8fcfdfd5dd6d0f3ac
31 lines
668 B
Python
31 lines
668 B
Python
from mercurial.i18n import _
|
|
|
|
import struct
|
|
|
|
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"
|
|
|
|
# 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")
|