##// END OF EJS Templates
requirements: introduce a set of working directory specific requirements...
Pulkit Goyal -
r45934:bd56597b default
parent child Browse files
Show More
@@ -1,46 +1,51 b''
1 1 # requirements.py - objects and functions related to repository requirements
2 2 #
3 3 # Copyright 2005-2007 Matt Mackall <mpm@selenic.com>
4 4 #
5 5 # This software may be used and distributed according to the terms of the
6 6 # GNU General Public License version 2 or any later version.
7 7
8 8 from __future__ import absolute_import
9 9
10 10 # When narrowing is finalized and no longer subject to format changes,
11 11 # we should move this to just "narrow" or similar.
12 12 NARROW_REQUIREMENT = b'narrowhg-experimental'
13 13
14 14 # Enables sparse working directory usage
15 15 SPARSE_REQUIREMENT = b'exp-sparse'
16 16
17 17 # Enables the internal phase which is used to hide changesets instead
18 18 # of stripping them
19 19 INTERNAL_PHASE_REQUIREMENT = b'internal-phase'
20 20
21 21 # Stores manifest in Tree structure
22 22 TREEMANIFEST_REQUIREMENT = b'treemanifest'
23 23
24 24 # Increment the sub-version when the revlog v2 format changes to lock out old
25 25 # clients.
26 26 REVLOGV2_REQUIREMENT = b'exp-revlogv2.1'
27 27
28 28 # A repository with the sparserevlog feature will have delta chains that
29 29 # can spread over a larger span. Sparse reading cuts these large spans into
30 30 # pieces, so that each piece isn't too big.
31 31 # Without the sparserevlog capability, reading from the repository could use
32 32 # huge amounts of memory, because the whole span would be read at once,
33 33 # including all the intermediate revisions that aren't pertinent for the chain.
34 34 # This is why once a repository has enabled sparse-read, it becomes required.
35 35 SPARSEREVLOG_REQUIREMENT = b'sparserevlog'
36 36
37 37 # A repository with the sidedataflag requirement will allow to store extra
38 38 # information for revision without altering their original hashes.
39 39 SIDEDATA_REQUIREMENT = b'exp-sidedata-flag'
40 40
41 41 # A repository with the the copies-sidedata-changeset requirement will store
42 42 # copies related information in changeset's sidedata.
43 43 COPIESSDC_REQUIREMENT = b'exp-copies-sidedata-changeset'
44 44
45 45 # The repository use persistent nodemap for the changelog and the manifest.
46 46 NODEMAP_REQUIREMENT = b'persistent-nodemap'
47
48 # List of requirements which are working directory specific
49 # These requirements cannot be shared between repositories if they
50 # share the same store
51 WORKING_DIR_REQUIREMENTS = {SPARSE_REQUIREMENT}
General Comments 0
You need to be logged in to leave comments. Login now