Mercurial > hg
annotate tests/test-mq-subrepo-svn.t @ 42415:c767e655ffda
narrow: use narrow_widen wireproto command to widen in case of ellipses
Few releases ago, we introduce narrow_widen wireproto command to be used to widen
narrow repositories. Before this patch, that was used in non-ellipses cases
only. In ellipses cases, we still do exchange.pull() which can pull more data
than required.
After this patch, the client will first check whether server supports doing
ellipses widening using wireproto command or not by checking server's wireproto
capability. If the server is upto date and support latest ellipses capability,
we call the wireproto command. Otherwise we fallback to exchange.pull() like
before.
The compat code make sure that things works even if one of the client or server
is old. The initial version of this patch does not had this compat code. It's
added to help Google release things smoothly internally. I plan to drop the
compat code before the upcoming major release.
Due to change to wireproto command, the code looks a bit dirty, next patches
will clean that up.
Differential Revision: https://phab.mercurial-scm.org/D6436
author | Pulkit Goyal <7895pulkit@gmail.com> |
---|---|
date | Wed, 22 May 2019 02:59:48 +0530 |
parents | e095a9688a31 |
children | 075a553028e2 |
rev | line source |
---|---|
22046
7a9cbb315d84
tests: replace exit 80 with #require
Matt Mackall <mpm@selenic.com>
parents:
17033
diff
changeset
|
1 #require svn13 |
13300
23bbb5b888ea
subrepo: separate out mq+svn subrepo tests
Kevin Bullock <kbullock@ringworld.org>
parents:
diff
changeset
|
2 |
23172
e955549cd045
tests: write hgrc of more than two lines by using shell heredoc
Yuya Nishihara <yuya@tcha.org>
parents:
22947
diff
changeset
|
3 $ cat <<EOF >> $HGRCPATH |
e955549cd045
tests: write hgrc of more than two lines by using shell heredoc
Yuya Nishihara <yuya@tcha.org>
parents:
22947
diff
changeset
|
4 > [extensions] |
e955549cd045
tests: write hgrc of more than two lines by using shell heredoc
Yuya Nishihara <yuya@tcha.org>
parents:
22947
diff
changeset
|
5 > mq = |
e955549cd045
tests: write hgrc of more than two lines by using shell heredoc
Yuya Nishihara <yuya@tcha.org>
parents:
22947
diff
changeset
|
6 > [diff] |
e955549cd045
tests: write hgrc of more than two lines by using shell heredoc
Yuya Nishihara <yuya@tcha.org>
parents:
22947
diff
changeset
|
7 > nodates = 1 |
34987
846942fd6d15
subrepo: disable git and svn subrepos by default (BC) (SEC)
Yuya Nishihara <yuya@tcha.org>
parents:
33365
diff
changeset
|
8 > [subrepos] |
34989
1a314176da9c
subrepo: use per-type config options to enable subrepos
Gregory Szorc <gregory.szorc@gmail.com>
parents:
34987
diff
changeset
|
9 > allowed = true |
1a314176da9c
subrepo: use per-type config options to enable subrepos
Gregory Szorc <gregory.szorc@gmail.com>
parents:
34987
diff
changeset
|
10 > svn:allowed = true |
23172
e955549cd045
tests: write hgrc of more than two lines by using shell heredoc
Yuya Nishihara <yuya@tcha.org>
parents:
22947
diff
changeset
|
11 > EOF |
13300
23bbb5b888ea
subrepo: separate out mq+svn subrepo tests
Kevin Bullock <kbullock@ringworld.org>
parents:
diff
changeset
|
12 |
13326
535a891284da
test-subrepo-mq-svn.t: correct comment
Kevin Bullock <kbullock@ringworld.org>
parents:
13300
diff
changeset
|
13 fn to create new repository, and cd into it |
13300
23bbb5b888ea
subrepo: separate out mq+svn subrepo tests
Kevin Bullock <kbullock@ringworld.org>
parents:
diff
changeset
|
14 $ mkrepo() { |
23bbb5b888ea
subrepo: separate out mq+svn subrepo tests
Kevin Bullock <kbullock@ringworld.org>
parents:
diff
changeset
|
15 > hg init $1 |
23bbb5b888ea
subrepo: separate out mq+svn subrepo tests
Kevin Bullock <kbullock@ringworld.org>
parents:
diff
changeset
|
16 > cd $1 |
23bbb5b888ea
subrepo: separate out mq+svn subrepo tests
Kevin Bullock <kbullock@ringworld.org>
parents:
diff
changeset
|
17 > hg qinit |
23bbb5b888ea
subrepo: separate out mq+svn subrepo tests
Kevin Bullock <kbullock@ringworld.org>
parents:
diff
changeset
|
18 > } |
23bbb5b888ea
subrepo: separate out mq+svn subrepo tests
Kevin Bullock <kbullock@ringworld.org>
parents:
diff
changeset
|
19 |
23bbb5b888ea
subrepo: separate out mq+svn subrepo tests
Kevin Bullock <kbullock@ringworld.org>
parents:
diff
changeset
|
20 |
23bbb5b888ea
subrepo: separate out mq+svn subrepo tests
Kevin Bullock <kbullock@ringworld.org>
parents:
diff
changeset
|
21 handle svn subrepos safely |
23bbb5b888ea
subrepo: separate out mq+svn subrepo tests
Kevin Bullock <kbullock@ringworld.org>
parents:
diff
changeset
|
22 |
23bbb5b888ea
subrepo: separate out mq+svn subrepo tests
Kevin Bullock <kbullock@ringworld.org>
parents:
diff
changeset
|
23 $ svnadmin create svn-repo-2499 |
17033
0413f68da85c
tests: cleanup of svn url handling
Mads Kiilerich <mads@kiilerich.com>
parents:
16913
diff
changeset
|
24 |
0413f68da85c
tests: cleanup of svn url handling
Mads Kiilerich <mads@kiilerich.com>
parents:
16913
diff
changeset
|
25 $ SVNREPOPATH=`pwd`/svn-repo-2499/project |
41496
e095a9688a31
tests: quote $PYTHON for py3 support on Windows
Matt Harbison <matt_harbison@yahoo.com>
parents:
41480
diff
changeset
|
26 $ SVNREPOURL="`"$PYTHON" $TESTDIR/svnurlof.py \"$SVNREPOPATH\"`" |
17033
0413f68da85c
tests: cleanup of svn url handling
Mads Kiilerich <mads@kiilerich.com>
parents:
16913
diff
changeset
|
27 |
13300
23bbb5b888ea
subrepo: separate out mq+svn subrepo tests
Kevin Bullock <kbullock@ringworld.org>
parents:
diff
changeset
|
28 $ mkdir -p svn-project-2499/trunk |
26374
048e41e9a6ac
tests: suppress verbose output of svn transaction
Yuya Nishihara <yuya@tcha.org>
parents:
24471
diff
changeset
|
29 $ svn import -qm 'init project' svn-project-2499 "$SVNREPOURL" |
13300
23bbb5b888ea
subrepo: separate out mq+svn subrepo tests
Kevin Bullock <kbullock@ringworld.org>
parents:
diff
changeset
|
30 |
23bbb5b888ea
subrepo: separate out mq+svn subrepo tests
Kevin Bullock <kbullock@ringworld.org>
parents:
diff
changeset
|
31 qnew on repo w/svn subrepo |
23bbb5b888ea
subrepo: separate out mq+svn subrepo tests
Kevin Bullock <kbullock@ringworld.org>
parents:
diff
changeset
|
32 $ mkrepo repo-2499-svn-subrepo |
17033
0413f68da85c
tests: cleanup of svn url handling
Mads Kiilerich <mads@kiilerich.com>
parents:
16913
diff
changeset
|
33 $ svn co "$SVNREPOURL"/trunk sub |
13300
23bbb5b888ea
subrepo: separate out mq+svn subrepo tests
Kevin Bullock <kbullock@ringworld.org>
parents:
diff
changeset
|
34 Checked out revision 1. |
23bbb5b888ea
subrepo: separate out mq+svn subrepo tests
Kevin Bullock <kbullock@ringworld.org>
parents:
diff
changeset
|
35 $ echo 'sub = [svn]sub' >> .hgsub |
23bbb5b888ea
subrepo: separate out mq+svn subrepo tests
Kevin Bullock <kbullock@ringworld.org>
parents:
diff
changeset
|
36 $ hg add .hgsub |
13410
1f2b2c33d386
tests: fixes for svn 1.4.2
Matt Mackall <mpm@selenic.com>
parents:
13326
diff
changeset
|
37 $ hg status -S -X '**/format' |
13300
23bbb5b888ea
subrepo: separate out mq+svn subrepo tests
Kevin Bullock <kbullock@ringworld.org>
parents:
diff
changeset
|
38 A .hgsub |
23bbb5b888ea
subrepo: separate out mq+svn subrepo tests
Kevin Bullock <kbullock@ringworld.org>
parents:
diff
changeset
|
39 $ hg qnew -m0 0.diff |
23bbb5b888ea
subrepo: separate out mq+svn subrepo tests
Kevin Bullock <kbullock@ringworld.org>
parents:
diff
changeset
|
40 $ cd sub |
23bbb5b888ea
subrepo: separate out mq+svn subrepo tests
Kevin Bullock <kbullock@ringworld.org>
parents:
diff
changeset
|
41 $ echo a > a |
23bbb5b888ea
subrepo: separate out mq+svn subrepo tests
Kevin Bullock <kbullock@ringworld.org>
parents:
diff
changeset
|
42 $ svn add a |
23bbb5b888ea
subrepo: separate out mq+svn subrepo tests
Kevin Bullock <kbullock@ringworld.org>
parents:
diff
changeset
|
43 A a |
23bbb5b888ea
subrepo: separate out mq+svn subrepo tests
Kevin Bullock <kbullock@ringworld.org>
parents:
diff
changeset
|
44 $ svn st |
13410
1f2b2c33d386
tests: fixes for svn 1.4.2
Matt Mackall <mpm@selenic.com>
parents:
13326
diff
changeset
|
45 A* a (glob) |
13300
23bbb5b888ea
subrepo: separate out mq+svn subrepo tests
Kevin Bullock <kbullock@ringworld.org>
parents:
diff
changeset
|
46 $ cd .. |
23bbb5b888ea
subrepo: separate out mq+svn subrepo tests
Kevin Bullock <kbullock@ringworld.org>
parents:
diff
changeset
|
47 $ hg status -S # doesn't show status for svn subrepos (yet) |
23bbb5b888ea
subrepo: separate out mq+svn subrepo tests
Kevin Bullock <kbullock@ringworld.org>
parents:
diff
changeset
|
48 $ hg qnew -m1 1.diff |
33365
6d88468d435b
subrepo: make the output references to subrepositories consistent
Matt Harbison <matt_harbison@yahoo.com>
parents:
26374
diff
changeset
|
49 abort: uncommitted changes in subrepository "sub" |
13300
23bbb5b888ea
subrepo: separate out mq+svn subrepo tests
Kevin Bullock <kbullock@ringworld.org>
parents:
diff
changeset
|
50 [255] |
16913
f2719b387380
tests: add missing trailing 'cd ..'
Mads Kiilerich <mads@kiilerich.com>
parents:
16894
diff
changeset
|
51 |
f2719b387380
tests: add missing trailing 'cd ..'
Mads Kiilerich <mads@kiilerich.com>
parents:
16894
diff
changeset
|
52 $ cd .. |