comparison tests/test-narrow.t @ 37415:c2c8962a9465

simplestore: use a custom store for the simple store repo Before, we used the default store, which was based on fncache and dotencode. After attempting to port tests to work with the simple store, I realized that fncache was more trouble than it is worth. This commit implements a proper store type for the simple repo - one that isn't based off fncache. This causes a number of new test failures because of tests expecting the full fncache store filename encoding. I may extend the store format in a subsequent commit to take the filename encoding parts of fncache that we can take (basically everything except hash encoding, since that isn't reversible). But for now, let's use encoded store. As part of this, we implement proper requirements support for repos created with the simple store. This should have been done from the beginning, as a requirement is needed to lock out clients that don't understand a storage format. A new hghave feature advertising the presence of fncache in repos has been added. Most tests touching the fncache are now conditional on that feature. Other tests have added the optional repo requirement to output. Differential Revision: https://phab.mercurial-scm.org/D3095
author Gregory Szorc <gregory.szorc@gmail.com>
date Wed, 04 Apr 2018 14:09:02 -0700
parents e82a59bfc5e8
children 5ebfb7cc6f2c
comparison
equal deleted inserted replaced
37414:2d965bfeb8f6 37415:c2c8962a9465
126 looking for local changes to affected paths 126 looking for local changes to affected paths
127 The following changeset(s) or their ancestors have local changes not on the remote: 127 The following changeset(s) or their ancestors have local changes not on the remote:
128 * (glob) 128 * (glob)
129 saved backup bundle to $TESTTMP/narrow-local-changes/.hg/strip-backup/*-narrow.hg (glob) 129 saved backup bundle to $TESTTMP/narrow-local-changes/.hg/strip-backup/*-narrow.hg (glob)
130 deleting data/d0/f.i (reporevlogstore !) 130 deleting data/d0/f.i (reporevlogstore !)
131 deleting meta/d0/00manifest.i (tree !)
131 deleting data/d0/f/362fef284ce2ca02aecc8de6d5e8a1c3af0556fe (reposimplestore !) 132 deleting data/d0/f/362fef284ce2ca02aecc8de6d5e8a1c3af0556fe (reposimplestore !)
132 deleting data/d0/f/4374b5650fc5ae54ac857c0f0381971fdde376f7 (reposimplestore !) 133 deleting data/d0/f/4374b5650fc5ae54ac857c0f0381971fdde376f7 (reposimplestore !)
133 deleting data/d0/f/index (reposimplestore !) 134 deleting data/d0/f/index (reposimplestore !)
134 deleting meta/d0/00manifest.i (tree !)
135 135
136 $ hg log -T "{node|short}: {desc} {outsidenarrow}\n" 136 $ hg log -T "{node|short}: {desc} {outsidenarrow}\n"
137 *: local change to d3 (glob) 137 *: local change to d3 (glob)
138 *: add d10/f outsidenarrow (glob) 138 *: add d10/f outsidenarrow (glob)
139 *: add d6/f (glob) 139 *: add d6/f (glob)
157 comparing with ssh://user@dummy/master 157 comparing with ssh://user@dummy/master
158 searching for changes 158 searching for changes
159 looking for local changes to affected paths 159 looking for local changes to affected paths
160 saved backup bundle to $TESTTMP/narrow-local-changes/.hg/strip-backup/*-narrow.hg (glob) 160 saved backup bundle to $TESTTMP/narrow-local-changes/.hg/strip-backup/*-narrow.hg (glob)
161 deleting data/d0/f.i (reporevlogstore !) 161 deleting data/d0/f.i (reporevlogstore !)
162 deleting meta/d0/00manifest.i (tree !)
162 deleting data/d0/f/362fef284ce2ca02aecc8de6d5e8a1c3af0556fe (reposimplestore !) 163 deleting data/d0/f/362fef284ce2ca02aecc8de6d5e8a1c3af0556fe (reposimplestore !)
163 deleting data/d0/f/4374b5650fc5ae54ac857c0f0381971fdde376f7 (reposimplestore !) 164 deleting data/d0/f/4374b5650fc5ae54ac857c0f0381971fdde376f7 (reposimplestore !)
164 deleting data/d0/f/index (reposimplestore !) 165 deleting data/d0/f/index (reposimplestore !)
165 deleting meta/d0/00manifest.i (tree !)
166 166
167 Updates off of stripped commit if necessary 167 Updates off of stripped commit if necessary
168 $ hg co -r 'desc("local change to d3")' -q 168 $ hg co -r 'desc("local change to d3")' -q
169 $ echo local change >> d6/f 169 $ echo local change >> d6/f
170 $ hg ci -m 'local change to d6' 170 $ hg ci -m 'local change to d6'
176 * (glob) 176 * (glob)
177 * (glob) 177 * (glob)
178 2 files updated, 0 files merged, 0 files removed, 0 files unresolved 178 2 files updated, 0 files merged, 0 files removed, 0 files unresolved
179 saved backup bundle to $TESTTMP/narrow-local-changes/.hg/strip-backup/*-narrow.hg (glob) 179 saved backup bundle to $TESTTMP/narrow-local-changes/.hg/strip-backup/*-narrow.hg (glob)
180 deleting data/d3/f.i (reporevlogstore !) 180 deleting data/d3/f.i (reporevlogstore !)
181 deleting meta/d3/00manifest.i (tree !)
181 deleting data/d3/f/2661d26c649684b482d10f91960cc3db683c38b4 (reposimplestore !) 182 deleting data/d3/f/2661d26c649684b482d10f91960cc3db683c38b4 (reposimplestore !)
182 deleting data/d3/f/99fa7136105a15e2045ce3d9152e4837c5349e4d (reposimplestore !) 183 deleting data/d3/f/99fa7136105a15e2045ce3d9152e4837c5349e4d (reposimplestore !)
183 deleting data/d3/f/index (reposimplestore !) 184 deleting data/d3/f/index (reposimplestore !)
184 deleting meta/d3/00manifest.i (tree !)
185 $ hg log -T '{desc}\n' -r . 185 $ hg log -T '{desc}\n' -r .
186 add d10/f 186 add d10/f
187 Updates to nullid if necessary 187 Updates to nullid if necessary
188 $ hg tracked --addinclude d3 -q 188 $ hg tracked --addinclude d3 -q
189 $ hg co null -q 189 $ hg co null -q
199 The following changeset(s) or their ancestors have local changes not on the remote: 199 The following changeset(s) or their ancestors have local changes not on the remote:
200 * (glob) 200 * (glob)
201 0 files updated, 0 files merged, 1 files removed, 0 files unresolved 201 0 files updated, 0 files merged, 1 files removed, 0 files unresolved
202 saved backup bundle to $TESTTMP/narrow-local-changes/.hg/strip-backup/*-narrow.hg (glob) 202 saved backup bundle to $TESTTMP/narrow-local-changes/.hg/strip-backup/*-narrow.hg (glob)
203 deleting data/d3/f.i (reporevlogstore !) 203 deleting data/d3/f.i (reporevlogstore !)
204 deleting meta/d3/00manifest.i (tree !)
204 deleting data/d3/f/2661d26c649684b482d10f91960cc3db683c38b4 (reposimplestore !) 205 deleting data/d3/f/2661d26c649684b482d10f91960cc3db683c38b4 (reposimplestore !)
205 deleting data/d3/f/5ce0767945cbdbca3b924bb9fbf5143f72ab40ac (reposimplestore !) 206 deleting data/d3/f/5ce0767945cbdbca3b924bb9fbf5143f72ab40ac (reposimplestore !)
206 deleting data/d3/f/index (reposimplestore !) 207 deleting data/d3/f/index (reposimplestore !)
207 deleting meta/d3/00manifest.i (tree !)
208 $ hg id 208 $ hg id
209 000000000000 209 000000000000
210 $ cd .. 210 $ cd ..
211 211
212 Can remove last include, making repo empty 212 Can remove last include, making repo empty
222 $ hg tracked --removeinclude d0 222 $ hg tracked --removeinclude d0
223 comparing with ssh://user@dummy/master 223 comparing with ssh://user@dummy/master
224 searching for changes 224 searching for changes
225 looking for local changes to affected paths 225 looking for local changes to affected paths
226 deleting data/d0/f.i (reporevlogstore !) 226 deleting data/d0/f.i (reporevlogstore !)
227 deleting meta/d0/00manifest.i (tree !)
227 deleting data/d0/f/362fef284ce2ca02aecc8de6d5e8a1c3af0556fe (reposimplestore !) 228 deleting data/d0/f/362fef284ce2ca02aecc8de6d5e8a1c3af0556fe (reposimplestore !)
228 deleting data/d0/f/index (reposimplestore !) 229 deleting data/d0/f/index (reposimplestore !)
229 deleting meta/d0/00manifest.i (tree !)
230 $ hg tracked 230 $ hg tracked
231 $ hg files 231 $ hg files
232 [1] 232 [1]
233 $ test -d d0 233 $ test -d d0
234 [1] 234 [1]
280 $ hg tracked --removeinclude d6 280 $ hg tracked --removeinclude d6
281 comparing with ssh://user@dummy/master 281 comparing with ssh://user@dummy/master
282 searching for changes 282 searching for changes
283 looking for local changes to affected paths 283 looking for local changes to affected paths
284 deleting data/d6/f.i (reporevlogstore !) 284 deleting data/d6/f.i (reporevlogstore !)
285 deleting meta/d6/00manifest.i (tree !)
285 deleting data/d6/f/7339d30678f451ac8c3f38753beeb4cf2e1655c7 (reposimplestore !) 286 deleting data/d6/f/7339d30678f451ac8c3f38753beeb4cf2e1655c7 (reposimplestore !)
286 deleting data/d6/f/index (reposimplestore !) 287 deleting data/d6/f/index (reposimplestore !)
287 deleting meta/d6/00manifest.i (tree !)
288 $ hg tracked 288 $ hg tracked
289 I path:d0 289 I path:d0
290 I path:d3 290 I path:d3
291 I path:d9 291 I path:d9
292 #if repofncache
292 $ hg debugrebuildfncache 293 $ hg debugrebuildfncache
293 fncache already up to date 294 fncache already up to date
295 #endif
294 $ find * 296 $ find *
295 d0 297 d0
296 d0/f 298 d0/f
297 d3 299 d3
298 d3/f 300 d3/f
302 $ hg tracked --addexclude d3/f 304 $ hg tracked --addexclude d3/f
303 comparing with ssh://user@dummy/master 305 comparing with ssh://user@dummy/master
304 searching for changes 306 searching for changes
305 looking for local changes to affected paths 307 looking for local changes to affected paths
306 deleting data/d3/f.i (reporevlogstore !) 308 deleting data/d3/f.i (reporevlogstore !)
309 deleting data/d3/f/2661d26c649684b482d10f91960cc3db683c38b4 (reposimplestore !)
310 deleting data/d3/f/index (reposimplestore !)
307 $ hg tracked 311 $ hg tracked
308 I path:d0 312 I path:d0
309 I path:d3 313 I path:d3
310 I path:d9 314 I path:d9
311 X path:d3/f 315 X path:d3/f
316 #if repofncache
312 $ hg debugrebuildfncache 317 $ hg debugrebuildfncache
313 fncache already up to date 318 fncache already up to date
319 #endif
314 $ find * 320 $ find *
315 d0 321 d0
316 d0/f 322 d0/f
317 d9 323 d9
318 d9/f 324 d9/f
321 comparing with ssh://user@dummy/master 327 comparing with ssh://user@dummy/master
322 searching for changes 328 searching for changes
323 looking for local changes to affected paths 329 looking for local changes to affected paths
324 deleting data/d0/f.i (reporevlogstore !) 330 deleting data/d0/f.i (reporevlogstore !)
325 deleting meta/d0/00manifest.i (tree !) 331 deleting meta/d0/00manifest.i (tree !)
332 deleting data/d0/f/362fef284ce2ca02aecc8de6d5e8a1c3af0556fe (reposimplestore !)
333 deleting data/d0/f/index (reposimplestore !)
326 $ hg tracked 334 $ hg tracked
327 I path:d3 335 I path:d3
328 I path:d9 336 I path:d9
329 X path:d0 337 X path:d0
330 X path:d3/f 338 X path:d3/f
339 #if repofncache
331 $ hg debugrebuildfncache 340 $ hg debugrebuildfncache
332 fncache already up to date 341 fncache already up to date
342 #endif
333 $ find * 343 $ find *
334 d9 344 d9
335 d9/f 345 d9/f
336 346
337 Make a 15 of changes to d9 to test the path without --verbose 347 Make a 15 of changes to d9 to test the path without --verbose