--- a/mercurial/revlog.py Thu Jul 12 12:11:20 2018 -0700
+++ b/mercurial/revlog.py Thu Aug 16 02:08:13 2018 +0200
@@ -36,6 +36,26 @@
wdirrev,
)
from .i18n import _
+from .revlogutils.constants import (
+ FLAG_GENERALDELTA,
+ FLAG_INLINE_DATA,
+ LIMIT_DELTA2TEXT,
+ REVIDX_DEFAULT_FLAGS,
+ REVIDX_ELLIPSIS,
+ REVIDX_EXTSTORED,
+ REVIDX_FLAGS_ORDER,
+ REVIDX_ISCENSORED,
+ REVIDX_KNOWN_FLAGS,
+ REVIDX_RAWTEXT_CHANGING_FLAGS,
+ REVLOGV0,
+ REVLOGV1,
+ REVLOGV1_FLAGS,
+ REVLOGV2,
+ REVLOGV2_FLAGS,
+ REVLOG_DEFAULT_FLAGS,
+ REVLOG_DEFAULT_FORMAT,
+ REVLOG_DEFAULT_VERSION,
+)
from .thirdparty import (
attr,
)
@@ -54,40 +74,31 @@
stringutil,
)
+# blanked usage of all the name to prevent pyflakes constraints
+# We need these name available in the module for extensions.
+REVLOGV0
+REVLOGV1
+REVLOGV2
+FLAG_INLINE_DATA
+FLAG_GENERALDELTA
+REVLOG_DEFAULT_FLAGS
+REVLOG_DEFAULT_FORMAT
+REVLOG_DEFAULT_VERSION
+REVLOGV1_FLAGS
+REVLOGV2_FLAGS
+REVIDX_ISCENSORED
+REVIDX_ELLIPSIS
+REVIDX_EXTSTORED
+REVIDX_DEFAULT_FLAGS
+REVIDX_FLAGS_ORDER
+REVIDX_KNOWN_FLAGS
+REVIDX_RAWTEXT_CHANGING_FLAGS
+
parsers = policy.importmod(r'parsers')
# Aliased for performance.
_zlibdecompress = zlib.decompress
-# revlog header flags
-REVLOGV0 = 0
-REVLOGV1 = 1
-# Dummy value until file format is finalized.
-# Reminder: change the bounds check in revlog.__init__ when this is changed.
-REVLOGV2 = 0xDEAD
-FLAG_INLINE_DATA = (1 << 16)
-FLAG_GENERALDELTA = (1 << 17)
-REVLOG_DEFAULT_FLAGS = FLAG_INLINE_DATA
-REVLOG_DEFAULT_FORMAT = REVLOGV1
-REVLOG_DEFAULT_VERSION = REVLOG_DEFAULT_FORMAT | REVLOG_DEFAULT_FLAGS
-REVLOGV1_FLAGS = FLAG_INLINE_DATA | FLAG_GENERALDELTA
-REVLOGV2_FLAGS = REVLOGV1_FLAGS
-
-# revlog index flags
-REVIDX_ISCENSORED = (1 << 15) # revision has censor metadata, must be verified
-REVIDX_ELLIPSIS = (1 << 14) # revision hash does not match data (narrowhg)
-REVIDX_EXTSTORED = (1 << 13) # revision data is stored externally
-REVIDX_DEFAULT_FLAGS = 0
-# stable order in which flags need to be processed and their processors applied
-REVIDX_FLAGS_ORDER = [
- REVIDX_ISCENSORED,
- REVIDX_ELLIPSIS,
- REVIDX_EXTSTORED,
-]
-REVIDX_KNOWN_FLAGS = util.bitsfrom(REVIDX_FLAGS_ORDER)
-# bitmark for flags that could cause rawdata content change
-REVIDX_RAWTEXT_CHANGING_FLAGS = REVIDX_ISCENSORED | REVIDX_EXTSTORED
-
# max size of revlog with inline data
_maxinline = 131072
_chunksize = 1048576
@@ -854,9 +865,6 @@
return (0, 0, 0, -1, -1, -1, -1, nullid)
return list.__getitem__(self, i)
-# maximum <delta-chain-data>/<revision-text-length> ratio
-LIMIT_DELTA2TEXT = 2
-
class revlogoldio(object):
def __init__(self):
self.size = indexformatv0.size