##// END OF EJS Templates
exchange: move disabling of rev-branch-cache bundle part out of narrow...
exchange: move disabling of rev-branch-cache bundle part out of narrow I'm attempting to refactor changegroup code in order to better support alternate storage backends. The narrow extension is performing a lot of monkeypatching to this code and it is making it difficult to reason about how everything works. I'm reasonably certain I would be unable to abstract storage without requiring extensive rework of narrow. I believe it is less effort to move narrow code into core so it can be accounted for when changegroup code is refactored. So I'll be doing that. The first part of this is integrating the disabling of the cache:rev-branch-cache bundle2 part into core. This doesn't seem like it is related to changegroup, but narrow's modifications to changegroup are invasive and also require taking its code for bundle generation and exchange into core in order for the changegroup code to work. Differential Revision: https://phab.mercurial-scm.org/D4007

File last commit:

r38268:d0abd794 @34 default
r38813:ab765bc4 default
Show More
test-treediscovery-legacy.t
372 lines | 9.1 KiB | text/troff | Tads3Lexer
/ tests / test-treediscovery-legacy.t
Peter Arrenbrecht
tests: add tests for discovery/pull without cgsubset
r14411 Tests discovery against servers without getbundle support:
$ cat >> $HGRCPATH <<EOF
> [ui]
> logtemplate="{rev} {node|short}: {desc} {branches}\n"
> EOF
$ cp $HGRCPATH $HGRCPATH-withcap
Pierre-Yves David
test-discovery-legacy: disable bundle2 for legacy test...
r25117 $ CAP="getbundle known changegroupsubset bundle2"
Peter Arrenbrecht
tests: add tests for discovery/pull without cgsubset
r14411 $ . "$TESTDIR/notcapable"
$ cp $HGRCPATH $HGRCPATH-nocap
$ cp $HGRCPATH-withcap $HGRCPATH
Joshua Redstone
discovery: convert legacy part of checkheads to revs from nodes...
r17011 Prep for test server without branchmap support
$ CAP="branchmap"
$ . "$TESTDIR/notcapable"
$ cp $HGRCPATH $HGRCPATH-nocap-branchmap
$ cp $HGRCPATH-withcap $HGRCPATH
Peter Arrenbrecht
tests: add tests for discovery/pull without cgsubset
r14411 Setup HTTP server control:
$ remote=http://localhost:$HGPORT/
$ export remote
Jim Hague
treediscovery: rename stop() in tests to fix failures on AIX....
r14831 $ tstart() {
Peter Arrenbrecht
tests: add tests for discovery/pull without cgsubset
r14411 > echo '[web]' > $1/.hg/hgrc
> echo 'push_ssl = false' >> $1/.hg/hgrc
> echo 'allow_push = *' >> $1/.hg/hgrc
> cp $HGRCPATH-nocap $HGRCPATH
> hg serve -R $1 -p $HGPORT -d --pid-file=hg.pid -E errors.log
> cat hg.pid >> $DAEMON_PIDS
> }
Jim Hague
treediscovery: rename stop() in tests to fix failures on AIX....
r14831 $ tstop() {
Matt Mackall
tests: drop DAEMON_PIDS from killdaemons calls
r25474 > killdaemons.py
Peter Arrenbrecht
tests: add tests for discovery/pull without cgsubset
r14411 > cp $HGRCPATH-withcap $HGRCPATH
> }
Both are empty:
$ hg init empty1
$ hg init empty2
Jim Hague
treediscovery: rename stop() in tests to fix failures on AIX....
r14831 $ tstart empty2
Peter Arrenbrecht
tests: add tests for discovery/pull without cgsubset
r14411 $ hg incoming -R empty1 $remote
comparing with http://localhost:$HGPORT/
no changes found
[1]
$ hg outgoing -R empty1 $remote
comparing with http://localhost:$HGPORT/
no changes found
[1]
$ hg pull -R empty1 $remote
pulling from http://localhost:$HGPORT/
no changes found
$ hg push -R empty1 $remote
pushing to http://localhost:$HGPORT/
no changes found
Matt Mackall
push: return 1 if no changes found (issue3228)...
r16023 [1]
Jim Hague
treediscovery: rename stop() in tests to fix failures on AIX....
r14831 $ tstop
Peter Arrenbrecht
tests: add tests for discovery/pull without cgsubset
r14411
Base repo:
$ hg init main
$ cd main
$ hg debugbuilddag -mo '+2:tbase @name1 +3:thead1 <tbase @name2 +4:thead2 @both /thead1 +2:tmaintip'
Martin Geisler
tests: don't load unnecessary graphlog extension...
r20117 $ hg log -G
Peter Arrenbrecht
tests: add tests for discovery/pull without cgsubset
r14411 o 11 a19bfa7e7328: r11 both
|
o 10 8b6bad1512e1: r10 both
|
o 9 025829e08038: r9 both
|\
| o 8 d8f638ac69e9: r8 name2
| |
| o 7 b6b4d315a2ac: r7 name2
| |
| o 6 6c6f5d5f3c11: r6 name2
| |
| o 5 70314b29987d: r5 name2
| |
o | 4 e71dbbc70e03: r4 name1
| |
o | 3 2c8d5d5ec612: r3 name1
| |
o | 2 a7892891da29: r2 name1
|/
o 1 0019a3b924fd: r1
|
o 0 d57206cc072a: r0
$ cd ..
Jim Hague
treediscovery: rename stop() in tests to fix failures on AIX....
r14831 $ tstart main
Peter Arrenbrecht
tests: add tests for discovery/pull without cgsubset
r14411
Full clone:
$ hg clone main full
updating to branch default
2 files updated, 0 files merged, 0 files removed, 0 files unresolved
$ cd full
$ hg incoming $remote
comparing with http://localhost:$HGPORT/
searching for changes
no changes found
[1]
$ hg outgoing $remote
comparing with http://localhost:$HGPORT/
searching for changes
no changes found
[1]
$ hg pull $remote
pulling from http://localhost:$HGPORT/
searching for changes
no changes found
$ hg push $remote
pushing to http://localhost:$HGPORT/
searching for changes
no changes found
Matt Mackall
push: return 1 if no changes found (issue3228)...
r16023 [1]
Peter Arrenbrecht
tests: add tests for discovery/pull without cgsubset
r14411 $ cd ..
Local is empty:
$ cd empty1
$ hg incoming $remote --rev name1
comparing with http://localhost:$HGPORT/
abort: cannot look up remote changes; remote repository does not support the 'changegroupsubset' capability!
[255]
$ hg incoming $remote
comparing with http://localhost:$HGPORT/
0 d57206cc072a: r0
1 0019a3b924fd: r1
2 a7892891da29: r2 name1
3 2c8d5d5ec612: r3 name1
4 e71dbbc70e03: r4 name1
5 70314b29987d: r5 name2
6 6c6f5d5f3c11: r6 name2
7 b6b4d315a2ac: r7 name2
8 d8f638ac69e9: r8 name2
9 025829e08038: r9 both
10 8b6bad1512e1: r10 both
11 a19bfa7e7328: r11 both
$ hg outgoing $remote
comparing with http://localhost:$HGPORT/
no changes found
[1]
$ hg push $remote
pushing to http://localhost:$HGPORT/
no changes found
Matt Mackall
push: return 1 if no changes found (issue3228)...
r16023 [1]
Peter Arrenbrecht
tests: add tests for discovery/pull without cgsubset
r14411 $ hg pull $remote
pulling from http://localhost:$HGPORT/
requesting all changes
adding changesets
adding manifests
adding file changes
added 12 changesets with 24 changes to 2 files
Denis Laxalde
transaction-summary: show the range of new revisions upon pull/unbundle (BC)...
r34662 new changesets d57206cc072a:a19bfa7e7328
Peter Arrenbrecht
tests: add tests for discovery/pull without cgsubset
r14411 (run 'hg update' to get a working copy)
$ hg incoming $remote
comparing with http://localhost:$HGPORT/
searching for changes
no changes found
[1]
$ cd ..
Local is subset:
$ cp $HGRCPATH-withcap $HGRCPATH
$ hg clone main subset --rev name2 ; cd subset
adding changesets
adding manifests
adding file changes
added 6 changesets with 12 changes to 2 files
Denis Laxalde
transaction-summary: show the range of new revisions upon pull/unbundle (BC)...
r34662 new changesets d57206cc072a:d8f638ac69e9
Peter Arrenbrecht
tests: add tests for discovery/pull without cgsubset
r14411 updating to branch name2
2 files updated, 0 files merged, 0 files removed, 0 files unresolved
$ cp $HGRCPATH-nocap $HGRCPATH
$ hg incoming $remote
comparing with http://localhost:$HGPORT/
searching for changes
6 a7892891da29: r2 name1
7 2c8d5d5ec612: r3 name1
8 e71dbbc70e03: r4 name1
9 025829e08038: r9 both
10 8b6bad1512e1: r10 both
11 a19bfa7e7328: r11 both
$ hg outgoing $remote
comparing with http://localhost:$HGPORT/
searching for changes
no changes found
[1]
$ hg push $remote
pushing to http://localhost:$HGPORT/
searching for changes
no changes found
Matt Mackall
push: return 1 if no changes found (issue3228)...
r16023 [1]
Peter Arrenbrecht
tests: add tests for discovery/pull without cgsubset
r14411 $ hg pull $remote
pulling from http://localhost:$HGPORT/
searching for changes
adding changesets
adding manifests
adding file changes
added 6 changesets with 12 changes to 2 files
Denis Laxalde
transaction-summary: show the range of new revisions upon pull/unbundle (BC)...
r34662 new changesets a7892891da29:a19bfa7e7328
Peter Arrenbrecht
tests: add tests for discovery/pull without cgsubset
r14411 (run 'hg update' to get a working copy)
$ hg incoming $remote
comparing with http://localhost:$HGPORT/
searching for changes
no changes found
[1]
$ cd ..
Remote is empty:
Jim Hague
treediscovery: rename stop() in tests to fix failures on AIX....
r14831 $ tstop ; tstart empty2
Peter Arrenbrecht
tests: add tests for discovery/pull without cgsubset
r14411 $ cd main
$ hg incoming $remote
comparing with http://localhost:$HGPORT/
searching for changes
no changes found
[1]
$ hg outgoing $remote
comparing with http://localhost:$HGPORT/
searching for changes
0 d57206cc072a: r0
1 0019a3b924fd: r1
2 a7892891da29: r2 name1
3 2c8d5d5ec612: r3 name1
4 e71dbbc70e03: r4 name1
5 70314b29987d: r5 name2
6 6c6f5d5f3c11: r6 name2
7 b6b4d315a2ac: r7 name2
8 d8f638ac69e9: r8 name2
9 025829e08038: r9 both
10 8b6bad1512e1: r10 both
11 a19bfa7e7328: r11 both
$ hg pull $remote
pulling from http://localhost:$HGPORT/
searching for changes
no changes found
$ hg push $remote
pushing to http://localhost:$HGPORT/
searching for changes
remote: adding changesets
remote: adding manifests
remote: adding file changes
remote: added 12 changesets with 24 changes to 2 files
$ hg outgoing $remote
comparing with http://localhost:$HGPORT/
searching for changes
no changes found
[1]
$ cd ..
Local is superset:
Jim Hague
treediscovery: rename stop() in tests to fix failures on AIX....
r14831 $ tstop
Peter Arrenbrecht
tests: add tests for discovery/pull without cgsubset
r14411 $ hg clone main subset2 --rev name2
adding changesets
adding manifests
adding file changes
added 6 changesets with 12 changes to 2 files
Denis Laxalde
transaction-summary: show the range of new revisions upon pull/unbundle (BC)...
r34662 new changesets d57206cc072a:d8f638ac69e9
Peter Arrenbrecht
tests: add tests for discovery/pull without cgsubset
r14411 updating to branch name2
2 files updated, 0 files merged, 0 files removed, 0 files unresolved
Jim Hague
treediscovery: rename stop() in tests to fix failures on AIX....
r14831 $ tstart subset2
Peter Arrenbrecht
tests: add tests for discovery/pull without cgsubset
r14411 $ cd main
$ hg incoming $remote
comparing with http://localhost:$HGPORT/
searching for changes
no changes found
[1]
$ hg outgoing $remote
comparing with http://localhost:$HGPORT/
searching for changes
2 a7892891da29: r2 name1
3 2c8d5d5ec612: r3 name1
4 e71dbbc70e03: r4 name1
9 025829e08038: r9 both
10 8b6bad1512e1: r10 both
11 a19bfa7e7328: r11 both
$ hg pull $remote
pulling from http://localhost:$HGPORT/
searching for changes
no changes found
$ hg push $remote
pushing to http://localhost:$HGPORT/
searching for changes
abort: push creates new remote branches: both, name1!
(use 'hg push --new-branch' to create new remote branches)
[255]
$ hg push $remote --new-branch
pushing to http://localhost:$HGPORT/
searching for changes
remote: adding changesets
remote: adding manifests
remote: adding file changes
remote: added 6 changesets with 12 changes to 2 files
$ hg outgoing $remote
comparing with http://localhost:$HGPORT/
searching for changes
no changes found
[1]
$ cd ..
Partial pull:
Jim Hague
treediscovery: rename stop() in tests to fix failures on AIX....
r14831 $ tstop ; tstart main
Peter Arrenbrecht
tests: add tests for discovery/pull without cgsubset
r14411 $ hg clone $remote partial --rev name2
abort: partial pull cannot be done because other repository doesn't support changegroupsubset.
[255]
$ hg init partial; cd partial
$ hg incoming $remote --rev name2
comparing with http://localhost:$HGPORT/
abort: cannot look up remote changes; remote repository does not support the 'changegroupsubset' capability!
[255]
$ hg pull $remote --rev name2
pulling from http://localhost:$HGPORT/
abort: partial pull cannot be done because other repository doesn't support changegroupsubset.
[255]
$ cd ..
Jim Hague
treediscovery: rename stop() in tests to fix failures on AIX....
r14831 $ tstop
Peter Arrenbrecht
tests: add tests for discovery/pull without cgsubset
r14411
Joshua Redstone
discovery: convert legacy part of checkheads to revs from nodes...
r17011 Exercise pushing to server without branchmap capability
$ cp $HGRCPATH-nocap-branchmap $HGRCPATH-nocap
$ hg init rlocal
$ cd rlocal
$ echo A > A
$ hg ci -Am A
adding A
$ cd ..
Mads Kiilerich
check-code: fix check for trailing whitespace on sh command lines...
r17345 $ hg clone rlocal rremote
Joshua Redstone
discovery: convert legacy part of checkheads to revs from nodes...
r17011 updating to branch default
1 files updated, 0 files merged, 0 files removed, 0 files unresolved
$ cd rlocal
$ echo B > B
$ hg ci -Am B
adding B
$ cd ..
$ tstart rremote
$ cd rlocal
Mads Kiilerich
check-code: fix check for trailing whitespace on sh command lines...
r17345 $ hg incoming $remote
Joshua Redstone
discovery: convert legacy part of checkheads to revs from nodes...
r17011 comparing with http://localhost:$HGPORT/
searching for changes
no changes found
[1]
$ hg outgoing $remote
comparing with http://localhost:$HGPORT/
searching for changes
1 27547f69f254: B
$ hg pull $remote
pulling from http://localhost:$HGPORT/
searching for changes
no changes found
Boris Feld
phases: use "published" in the phase movement message...
r38268 1 local changesets published
Joshua Redstone
discovery: convert legacy part of checkheads to revs from nodes...
r17011 $ hg push $remote
pushing to http://localhost:$HGPORT/
searching for changes
remote: adding changesets
remote: adding manifests
remote: adding file changes
remote: added 1 changesets with 1 changes to 1 files
$ hg outgoing $remote
comparing with http://localhost:$HGPORT/
searching for changes
no changes found
[1]
$ cd ..
$ tstop