96 BOOKMARKS_IN_STORE_REQUIREMENT, |
96 BOOKMARKS_IN_STORE_REQUIREMENT, |
97 ]; |
97 ]; |
98 |
98 |
99 // Copied from mercurial/requirements.py: |
99 // Copied from mercurial/requirements.py: |
100 |
100 |
101 pub(crate) const DIRSTATE_V2_REQUIREMENT: &str = "dirstate-v2"; |
101 pub const DIRSTATE_V2_REQUIREMENT: &str = "dirstate-v2"; |
102 |
102 |
103 /// When narrowing is finalized and no longer subject to format changes, |
103 /// When narrowing is finalized and no longer subject to format changes, |
104 /// we should move this to just "narrow" or similar. |
104 /// we should move this to just "narrow" or similar. |
105 #[allow(unused)] |
105 #[allow(unused)] |
106 pub(crate) const NARROW_REQUIREMENT: &str = "narrowhg-experimental"; |
106 pub const NARROW_REQUIREMENT: &str = "narrowhg-experimental"; |
107 |
107 |
108 /// Bookmarks must be stored in the `store` part of the repository and will be |
108 /// Bookmarks must be stored in the `store` part of the repository and will be |
109 /// share accross shares |
109 /// share accross shares |
110 #[allow(unused)] |
110 #[allow(unused)] |
111 pub(crate) const BOOKMARKS_IN_STORE_REQUIREMENT: &str = "bookmarksinstore"; |
111 pub const BOOKMARKS_IN_STORE_REQUIREMENT: &str = "bookmarksinstore"; |
112 |
112 |
113 /// Enables sparse working directory usage |
113 /// Enables sparse working directory usage |
114 #[allow(unused)] |
114 #[allow(unused)] |
115 pub(crate) const SPARSE_REQUIREMENT: &str = "exp-sparse"; |
115 pub const SPARSE_REQUIREMENT: &str = "exp-sparse"; |
116 |
116 |
117 /// Enables the internal phase which is used to hide changesets instead |
117 /// Enables the internal phase which is used to hide changesets instead |
118 /// of stripping them |
118 /// of stripping them |
119 #[allow(unused)] |
119 #[allow(unused)] |
120 pub(crate) const INTERNAL_PHASE_REQUIREMENT: &str = "internal-phase"; |
120 pub const INTERNAL_PHASE_REQUIREMENT: &str = "internal-phase"; |
121 |
121 |
122 /// Stores manifest in Tree structure |
122 /// Stores manifest in Tree structure |
123 #[allow(unused)] |
123 #[allow(unused)] |
124 pub(crate) const TREEMANIFEST_REQUIREMENT: &str = "treemanifest"; |
124 pub const TREEMANIFEST_REQUIREMENT: &str = "treemanifest"; |
125 |
125 |
126 /// Increment the sub-version when the revlog v2 format changes to lock out old |
126 /// Increment the sub-version when the revlog v2 format changes to lock out old |
127 /// clients. |
127 /// clients. |
128 #[allow(unused)] |
128 #[allow(unused)] |
129 pub(crate) const REVLOGV2_REQUIREMENT: &str = "exp-revlogv2.1"; |
129 pub const REVLOGV2_REQUIREMENT: &str = "exp-revlogv2.1"; |
130 |
130 |
131 /// A repository with the sparserevlog feature will have delta chains that |
131 /// A repository with the sparserevlog feature will have delta chains that |
132 /// can spread over a larger span. Sparse reading cuts these large spans into |
132 /// can spread over a larger span. Sparse reading cuts these large spans into |
133 /// pieces, so that each piece isn't too big. |
133 /// pieces, so that each piece isn't too big. |
134 /// Without the sparserevlog capability, reading from the repository could use |
134 /// Without the sparserevlog capability, reading from the repository could use |
135 /// huge amounts of memory, because the whole span would be read at once, |
135 /// huge amounts of memory, because the whole span would be read at once, |
136 /// including all the intermediate revisions that aren't pertinent for the |
136 /// including all the intermediate revisions that aren't pertinent for the |
137 /// chain. This is why once a repository has enabled sparse-read, it becomes |
137 /// chain. This is why once a repository has enabled sparse-read, it becomes |
138 /// required. |
138 /// required. |
139 #[allow(unused)] |
139 #[allow(unused)] |
140 pub(crate) const SPARSEREVLOG_REQUIREMENT: &str = "sparserevlog"; |
140 pub const SPARSEREVLOG_REQUIREMENT: &str = "sparserevlog"; |
141 |
141 |
142 /// A repository with the the copies-sidedata-changeset requirement will store |
142 /// A repository with the the copies-sidedata-changeset requirement will store |
143 /// copies related information in changeset's sidedata. |
143 /// copies related information in changeset's sidedata. |
144 #[allow(unused)] |
144 #[allow(unused)] |
145 pub(crate) const COPIESSDC_REQUIREMENT: &str = "exp-copies-sidedata-changeset"; |
145 pub const COPIESSDC_REQUIREMENT: &str = "exp-copies-sidedata-changeset"; |
146 |
146 |
147 /// The repository use persistent nodemap for the changelog and the manifest. |
147 /// The repository use persistent nodemap for the changelog and the manifest. |
148 #[allow(unused)] |
148 #[allow(unused)] |
149 pub(crate) const NODEMAP_REQUIREMENT: &str = "persistent-nodemap"; |
149 pub const NODEMAP_REQUIREMENT: &str = "persistent-nodemap"; |
150 |
150 |
151 /// Denotes that the current repository is a share |
151 /// Denotes that the current repository is a share |
152 #[allow(unused)] |
152 #[allow(unused)] |
153 pub(crate) const SHARED_REQUIREMENT: &str = "shared"; |
153 pub const SHARED_REQUIREMENT: &str = "shared"; |
154 |
154 |
155 /// Denotes that current repository is a share and the shared source path is |
155 /// Denotes that current repository is a share and the shared source path is |
156 /// relative to the current repository root path |
156 /// relative to the current repository root path |
157 #[allow(unused)] |
157 #[allow(unused)] |
158 pub(crate) const RELATIVE_SHARED_REQUIREMENT: &str = "relshared"; |
158 pub const RELATIVE_SHARED_REQUIREMENT: &str = "relshared"; |
159 |
159 |
160 /// A repository with share implemented safely. The repository has different |
160 /// A repository with share implemented safely. The repository has different |
161 /// store and working copy requirements i.e. both `.hg/requires` and |
161 /// store and working copy requirements i.e. both `.hg/requires` and |
162 /// `.hg/store/requires` are present. |
162 /// `.hg/store/requires` are present. |
163 #[allow(unused)] |
163 #[allow(unused)] |
164 pub(crate) const SHARESAFE_REQUIREMENT: &str = "share-safe"; |
164 pub const SHARESAFE_REQUIREMENT: &str = "share-safe"; |
165 |
165 |
166 /// A repository that use zstd compression inside its revlog |
166 /// A repository that use zstd compression inside its revlog |
167 #[allow(unused)] |
167 #[allow(unused)] |
168 pub(crate) const REVLOG_COMPRESSION_ZSTD: &str = "revlog-compression-zstd"; |
168 pub const REVLOG_COMPRESSION_ZSTD: &str = "revlog-compression-zstd"; |