tests/test-bundle2-remote-changegroup.t
author Gregory Szorc <gregory.szorc@gmail.com>
Wed, 28 Mar 2018 10:40:41 -0700
changeset 37295 45b39c69fae0
parent 36217 1ee1a42bfdae
child 37310 5da299dabdc1
permissions -rw-r--r--
wireproto: separate commands tables for version 1 and 2 commands We can't easily reuse existing command handlers for version 2 commands because the response types will be different. e.g. many commands return nodes encoded as hex. Our new wire protocol is binary safe, so we'll wish to encode nodes as binary. We /could/ teach each command handler to look at the protocol handler and change behavior based on the version in use. However, this would make logic a bit unwieldy over time and would make it harder to design a unified protocol handler interface. I think it's better to create a clean break between version 1 and version 2 of commands on the server. What I imagine happening is we will have separate @wireprotocommand functions for each protocol generation. Those functions will parse the request, dispatch to a common function to process it, then generate the response in its own, transport-specific manner. This commit establishes a separate table for tracking version 1 commands from version 2 commands. The HTTP server pieces have been updated to use this new table. Most commands are marked as both version 1 and version 2, so there is little practical impact to this change. A side-effect of this change is we now rely on transport registration in wireprototypes.TRANSPORTS and certain properties of the protocol interface. So a test had to be updated to conform. Differential Revision: https://phab.mercurial-scm.org/D2982
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
23029
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
     1
#require killdaemons
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
     2
36217
1ee1a42bfdae tests: test using both versions of SSH protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34661
diff changeset
     3
#testcases sshv1 sshv2
1ee1a42bfdae tests: test using both versions of SSH protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34661
diff changeset
     4
1ee1a42bfdae tests: test using both versions of SSH protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34661
diff changeset
     5
#if sshv2
1ee1a42bfdae tests: test using both versions of SSH protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34661
diff changeset
     6
  $ cat >> $HGRCPATH << EOF
1ee1a42bfdae tests: test using both versions of SSH protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34661
diff changeset
     7
  > [experimental]
1ee1a42bfdae tests: test using both versions of SSH protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34661
diff changeset
     8
  > sshpeer.advertise-v2 = true
1ee1a42bfdae tests: test using both versions of SSH protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34661
diff changeset
     9
  > sshserver.support-v2 = true
1ee1a42bfdae tests: test using both versions of SSH protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34661
diff changeset
    10
  > EOF
1ee1a42bfdae tests: test using both versions of SSH protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34661
diff changeset
    11
#endif
1ee1a42bfdae tests: test using both versions of SSH protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34661
diff changeset
    12
23029
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
    13
Create an extension to test bundle2 remote-changegroup parts
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
    14
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
    15
  $ cat > bundle2.py << EOF
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
    16
  > """A small extension to test bundle2 remote-changegroup parts.
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
    17
  > 
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
    18
  > Current bundle2 implementation doesn't provide a way to generate those
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
    19
  > parts, so they must be created by extensions.
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
    20
  > """
29807
d4e026341e16 getchangegroup: take an 'outgoing' object as argument (API)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 29672
diff changeset
    21
  > from mercurial import bundle2, changegroup, discovery, exchange, util
23029
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
    22
  > 
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
    23
  > def _getbundlechangegrouppart(bundler, repo, source, bundlecaps=None,
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
    24
  >                               b2caps=None, heads=None, common=None,
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
    25
  >                               **kwargs):
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
    26
  >     """this function replaces the changegroup part handler for getbundle.
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
    27
  >     It allows to create a set of arbitrary parts containing changegroups
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
    28
  >     and remote-changegroups, as described in a bundle2maker file in the
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
    29
  >     repository .hg/ directory.
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
    30
  > 
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
    31
  >     Each line of that bundle2maker file contain a description of the
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
    32
  >     part to add:
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
    33
  >       - changegroup common_revset heads_revset
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
    34
  >           Creates a changegroup part based, using common_revset and
29807
d4e026341e16 getchangegroup: take an 'outgoing' object as argument (API)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 29672
diff changeset
    35
  >           heads_revset for outgoing
23029
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
    36
  >       - remote-changegroup url file
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
    37
  >           Creates a remote-changegroup part for a bundle at the given
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
    38
  >           url. Size and digest, as required by the client, are computed
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
    39
  >           from the given file.
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
    40
  >       - raw-remote-changegroup <python expression>
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
    41
  >           Creates a remote-changegroup part with the data given in the
33261
be49f3fdcd10 tests: capitalize Python when it's not used as a command name
Augie Fackler <augie@google.com>
parents: 32940
diff changeset
    42
  >           Python expression as parameters. The Python expression is
23029
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
    43
  >           evaluated with eval, and is expected to be a dict.
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
    44
  >     """
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
    45
  >     def newpart(name, data=''):
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
    46
  >         """wrapper around bundler.newpart adding an extra part making the
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
    47
  >         client output information about each processed part"""
24686
e0e28e910fa3 bundle2: rename format, parts and config to final names
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 23591
diff changeset
    48
  >         bundler.newpart('output', data=name)
23029
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
    49
  >         part = bundler.newpart(name, data=data)
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
    50
  >         return part
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
    51
  > 
31326
f28f2ac65c66 test-bundle2-remote-changegroup: directly use repo.vfs.join
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 29807
diff changeset
    52
  >     for line in open(repo.vfs.join('bundle2maker'), 'r'):
23029
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
    53
  >         line = line.strip()
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
    54
  >         try:
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
    55
  >             verb, args = line.split(None, 1)
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
    56
  >         except ValueError:
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
    57
  >             verb, args = line, ''
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
    58
  >         if verb == 'remote-changegroup':
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
    59
  >            url, file = args.split()
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
    60
  >            bundledata = open(file, 'rb').read()
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
    61
  >            digest = util.digester.preferred(b2caps['digests'])
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
    62
  >            d = util.digester([digest], bundledata)
24686
e0e28e910fa3 bundle2: rename format, parts and config to final names
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 23591
diff changeset
    63
  >            part = newpart('remote-changegroup')
23029
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
    64
  >            part.addparam('url', url)
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
    65
  >            part.addparam('size', str(len(bundledata)))
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
    66
  >            part.addparam('digests', digest)
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
    67
  >            part.addparam('digest:%s' % digest, d[digest])
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
    68
  >         elif verb == 'raw-remote-changegroup':
24686
e0e28e910fa3 bundle2: rename format, parts and config to final names
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 23591
diff changeset
    69
  >            part = newpart('remote-changegroup')
23029
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
    70
  >            for k, v in eval(args).items():
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
    71
  >                part.addparam(k, str(v))
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
    72
  >         elif verb == 'changegroup':
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
    73
  >             _common, heads = args.split()
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
    74
  >             common.extend(repo.lookup(r) for r in repo.revs(_common))
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
    75
  >             heads = [repo.lookup(r) for r in repo.revs(heads)]
29807
d4e026341e16 getchangegroup: take an 'outgoing' object as argument (API)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 29672
diff changeset
    76
  >             outgoing = discovery.outgoing(repo, common, heads)
34101
5ede882c249c changegroup: replace getchangegroup with makechangegroup
Durham Goode <durham@fb.com>
parents: 33286
diff changeset
    77
  >             cg = changegroup.makechangegroup(repo, outgoing, '01',
5ede882c249c changegroup: replace getchangegroup with makechangegroup
Durham Goode <durham@fb.com>
parents: 33286
diff changeset
    78
  >                                              'changegroup')
24686
e0e28e910fa3 bundle2: rename format, parts and config to final names
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 23591
diff changeset
    79
  >             newpart('changegroup', cg.getchunks())
23029
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
    80
  >         else:
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
    81
  >             raise Exception('unknown verb')
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
    82
  > 
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
    83
  > exchange.getbundle2partsmapping['changegroup'] = _getbundlechangegrouppart
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
    84
  > EOF
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
    85
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
    86
Start a simple HTTP server to serve bundles
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
    87
32940
75be14993fda cleanup: use $PYTHON to run python in many more tests
Augie Fackler <augie@google.com>
parents: 31326
diff changeset
    88
  $ $PYTHON "$TESTDIR/dumbhttp.py" -p $HGPORT --pid dumb.pid
23029
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
    89
  $ cat dumb.pid >> $DAEMON_PIDS
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
    90
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
    91
  $ cat >> $HGRCPATH << EOF
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
    92
  > [ui]
33286
2428e8ec0793 tests: clean up even more direct `python` calls with $PYTHON
Augie Fackler <augie@google.com>
parents: 33261
diff changeset
    93
  > ssh=$PYTHON "$TESTDIR/dummyssh"
23029
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
    94
  > logtemplate={rev}:{node|short} {phase} {author} {bookmarks} {desc|firstline}
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
    95
  > EOF
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
    96
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
    97
  $ hg init repo
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
    98
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
    99
  $ hg -R repo unbundle $TESTDIR/bundles/rebase.hg
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   100
  adding changesets
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   101
  adding manifests
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   102
  adding file changes
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   103
  added 8 changesets with 7 changes to 7 files (+2 heads)
34661
eb586ed5d8ce transaction-summary: show the range of new revisions upon pull/unbundle (BC)
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 34101
diff changeset
   104
  new changesets cd010b8cd998:02de42196ebe
23029
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   105
  (run 'hg heads' to see heads, 'hg merge' to merge)
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   106
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   107
  $ hg -R repo log -G
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   108
  o  7:02de42196ebe draft Nicolas Dumazet <nicdumz.commits@gmail.com>  H
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   109
  |
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   110
  | o  6:eea13746799a draft Nicolas Dumazet <nicdumz.commits@gmail.com>  G
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   111
  |/|
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   112
  o |  5:24b6387c8c8c draft Nicolas Dumazet <nicdumz.commits@gmail.com>  F
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   113
  | |
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   114
  | o  4:9520eea781bc draft Nicolas Dumazet <nicdumz.commits@gmail.com>  E
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   115
  |/
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   116
  | o  3:32af7686d403 draft Nicolas Dumazet <nicdumz.commits@gmail.com>  D
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   117
  | |
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   118
  | o  2:5fddd98957c8 draft Nicolas Dumazet <nicdumz.commits@gmail.com>  C
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   119
  | |
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   120
  | o  1:42ccdea3bb16 draft Nicolas Dumazet <nicdumz.commits@gmail.com>  B
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   121
  |/
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   122
  o  0:cd010b8cd998 draft Nicolas Dumazet <nicdumz.commits@gmail.com>  A
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   123
  
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   124
  $ hg clone repo orig
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   125
  updating to branch default
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   126
  3 files updated, 0 files merged, 0 files removed, 0 files unresolved
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   127
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   128
  $ cat > repo/.hg/hgrc << EOF
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   129
  > [extensions]
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   130
  > bundle2=$TESTTMP/bundle2.py
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   131
  > EOF
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   132
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   133
Test a pull with an remote-changegroup
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   134
26773
ec7e0dbe56d5 test: enforce v1 type in 'test-bundle2-remote-changegroup.t'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25495
diff changeset
   135
  $ hg bundle -R repo --type v1 --base '0:4' -r '5:7' bundle.hg
23029
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   136
  3 changesets found
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   137
  $ cat > repo/.hg/bundle2maker << EOF
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   138
  > remote-changegroup http://localhost:$HGPORT/bundle.hg bundle.hg
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   139
  > EOF
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   140
  $ hg clone orig clone -r 3 -r 4
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   141
  adding changesets
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   142
  adding manifests
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   143
  adding file changes
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   144
  added 5 changesets with 5 changes to 5 files (+1 heads)
34661
eb586ed5d8ce transaction-summary: show the range of new revisions upon pull/unbundle (BC)
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 34101
diff changeset
   145
  new changesets cd010b8cd998:9520eea781bc
23029
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   146
  updating to branch default
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   147
  4 files updated, 0 files merged, 0 files removed, 0 files unresolved
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   148
  $ hg pull -R clone ssh://user@dummy/repo
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   149
  pulling from ssh://user@dummy/repo
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   150
  searching for changes
24686
e0e28e910fa3 bundle2: rename format, parts and config to final names
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 23591
diff changeset
   151
  remote: remote-changegroup
23029
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   152
  adding changesets
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   153
  adding manifests
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   154
  adding file changes
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   155
  added 3 changesets with 2 changes to 2 files (+1 heads)
34661
eb586ed5d8ce transaction-summary: show the range of new revisions upon pull/unbundle (BC)
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 34101
diff changeset
   156
  new changesets 24b6387c8c8c:02de42196ebe
23029
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   157
  (run 'hg heads .' to see heads, 'hg merge' to merge)
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   158
  $ hg -R clone log -G
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   159
  o  7:02de42196ebe public Nicolas Dumazet <nicdumz.commits@gmail.com>  H
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   160
  |
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   161
  | o  6:eea13746799a public Nicolas Dumazet <nicdumz.commits@gmail.com>  G
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   162
  |/|
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   163
  o |  5:24b6387c8c8c public Nicolas Dumazet <nicdumz.commits@gmail.com>  F
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   164
  | |
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   165
  | o  4:9520eea781bc public Nicolas Dumazet <nicdumz.commits@gmail.com>  E
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   166
  |/
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   167
  | @  3:32af7686d403 public Nicolas Dumazet <nicdumz.commits@gmail.com>  D
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   168
  | |
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   169
  | o  2:5fddd98957c8 public Nicolas Dumazet <nicdumz.commits@gmail.com>  C
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   170
  | |
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   171
  | o  1:42ccdea3bb16 public Nicolas Dumazet <nicdumz.commits@gmail.com>  B
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   172
  |/
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   173
  o  0:cd010b8cd998 public Nicolas Dumazet <nicdumz.commits@gmail.com>  A
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   174
  
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   175
  $ rm -rf clone
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   176
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   177
Test a pull with an remote-changegroup and a following changegroup
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   178
26773
ec7e0dbe56d5 test: enforce v1 type in 'test-bundle2-remote-changegroup.t'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25495
diff changeset
   179
  $ hg bundle -R repo --type v1 --base 2 -r '3:4' bundle2.hg
23029
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   180
  2 changesets found
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   181
  $ cat > repo/.hg/bundle2maker << EOF
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   182
  > remote-changegroup http://localhost:$HGPORT/bundle2.hg bundle2.hg
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   183
  > changegroup 0:4 5:7
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   184
  > EOF
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   185
  $ hg clone orig clone -r 2
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   186
  adding changesets
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   187
  adding manifests
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   188
  adding file changes
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   189
  added 3 changesets with 3 changes to 3 files
34661
eb586ed5d8ce transaction-summary: show the range of new revisions upon pull/unbundle (BC)
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 34101
diff changeset
   190
  new changesets cd010b8cd998:5fddd98957c8
23029
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   191
  updating to branch default
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   192
  3 files updated, 0 files merged, 0 files removed, 0 files unresolved
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   193
  $ hg pull -R clone ssh://user@dummy/repo
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   194
  pulling from ssh://user@dummy/repo
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   195
  searching for changes
24686
e0e28e910fa3 bundle2: rename format, parts and config to final names
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 23591
diff changeset
   196
  remote: remote-changegroup
23029
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   197
  adding changesets
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   198
  adding manifests
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   199
  adding file changes
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   200
  added 2 changesets with 2 changes to 2 files (+1 heads)
24686
e0e28e910fa3 bundle2: rename format, parts and config to final names
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 23591
diff changeset
   201
  remote: changegroup
23029
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   202
  adding changesets
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   203
  adding manifests
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   204
  adding file changes
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   205
  added 3 changesets with 2 changes to 2 files (+1 heads)
34661
eb586ed5d8ce transaction-summary: show the range of new revisions upon pull/unbundle (BC)
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 34101
diff changeset
   206
  new changesets 32af7686d403:02de42196ebe
23029
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   207
  (run 'hg heads' to see heads, 'hg merge' to merge)
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   208
  $ hg -R clone log -G
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   209
  o  7:02de42196ebe public Nicolas Dumazet <nicdumz.commits@gmail.com>  H
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   210
  |
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   211
  | o  6:eea13746799a public Nicolas Dumazet <nicdumz.commits@gmail.com>  G
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   212
  |/|
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   213
  o |  5:24b6387c8c8c public Nicolas Dumazet <nicdumz.commits@gmail.com>  F
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   214
  | |
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   215
  | o  4:9520eea781bc public Nicolas Dumazet <nicdumz.commits@gmail.com>  E
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   216
  |/
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   217
  | o  3:32af7686d403 public Nicolas Dumazet <nicdumz.commits@gmail.com>  D
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   218
  | |
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   219
  | @  2:5fddd98957c8 public Nicolas Dumazet <nicdumz.commits@gmail.com>  C
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   220
  | |
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   221
  | o  1:42ccdea3bb16 public Nicolas Dumazet <nicdumz.commits@gmail.com>  B
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   222
  |/
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   223
  o  0:cd010b8cd998 public Nicolas Dumazet <nicdumz.commits@gmail.com>  A
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   224
  
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   225
  $ rm -rf clone
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   226
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   227
Test a pull with a changegroup followed by an remote-changegroup
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   228
26773
ec7e0dbe56d5 test: enforce v1 type in 'test-bundle2-remote-changegroup.t'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25495
diff changeset
   229
  $ hg bundle -R repo --type v1 --base '0:4' -r '5:7' bundle3.hg
23029
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   230
  3 changesets found
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   231
  $ cat > repo/.hg/bundle2maker << EOF
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   232
  > changegroup 000000000000 :4
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   233
  > remote-changegroup http://localhost:$HGPORT/bundle3.hg bundle3.hg
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   234
  > EOF
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   235
  $ hg clone orig clone -r 2
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   236
  adding changesets
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   237
  adding manifests
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   238
  adding file changes
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   239
  added 3 changesets with 3 changes to 3 files
34661
eb586ed5d8ce transaction-summary: show the range of new revisions upon pull/unbundle (BC)
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 34101
diff changeset
   240
  new changesets cd010b8cd998:5fddd98957c8
23029
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   241
  updating to branch default
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   242
  3 files updated, 0 files merged, 0 files removed, 0 files unresolved
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   243
  $ hg pull -R clone ssh://user@dummy/repo
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   244
  pulling from ssh://user@dummy/repo
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   245
  searching for changes
24686
e0e28e910fa3 bundle2: rename format, parts and config to final names
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 23591
diff changeset
   246
  remote: changegroup
23029
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   247
  adding changesets
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   248
  adding manifests
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   249
  adding file changes
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   250
  added 2 changesets with 2 changes to 2 files (+1 heads)
24686
e0e28e910fa3 bundle2: rename format, parts and config to final names
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 23591
diff changeset
   251
  remote: remote-changegroup
23029
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   252
  adding changesets
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   253
  adding manifests
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   254
  adding file changes
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   255
  added 3 changesets with 2 changes to 2 files (+1 heads)
34661
eb586ed5d8ce transaction-summary: show the range of new revisions upon pull/unbundle (BC)
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 34101
diff changeset
   256
  new changesets 32af7686d403:02de42196ebe
23029
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   257
  (run 'hg heads' to see heads, 'hg merge' to merge)
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   258
  $ hg -R clone log -G
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   259
  o  7:02de42196ebe public Nicolas Dumazet <nicdumz.commits@gmail.com>  H
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   260
  |
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   261
  | o  6:eea13746799a public Nicolas Dumazet <nicdumz.commits@gmail.com>  G
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   262
  |/|
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   263
  o |  5:24b6387c8c8c public Nicolas Dumazet <nicdumz.commits@gmail.com>  F
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   264
  | |
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   265
  | o  4:9520eea781bc public Nicolas Dumazet <nicdumz.commits@gmail.com>  E
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   266
  |/
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   267
  | o  3:32af7686d403 public Nicolas Dumazet <nicdumz.commits@gmail.com>  D
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   268
  | |
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   269
  | @  2:5fddd98957c8 public Nicolas Dumazet <nicdumz.commits@gmail.com>  C
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   270
  | |
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   271
  | o  1:42ccdea3bb16 public Nicolas Dumazet <nicdumz.commits@gmail.com>  B
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   272
  |/
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   273
  o  0:cd010b8cd998 public Nicolas Dumazet <nicdumz.commits@gmail.com>  A
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   274
  
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   275
  $ rm -rf clone
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   276
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   277
Test a pull with two remote-changegroups and a changegroup
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   278
26773
ec7e0dbe56d5 test: enforce v1 type in 'test-bundle2-remote-changegroup.t'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25495
diff changeset
   279
  $ hg bundle -R repo --type v1 --base 2 -r '3:4' bundle4.hg
23029
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   280
  2 changesets found
26773
ec7e0dbe56d5 test: enforce v1 type in 'test-bundle2-remote-changegroup.t'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25495
diff changeset
   281
  $ hg bundle -R repo --type v1 --base '3:4' -r '5:6' bundle5.hg
23029
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   282
  2 changesets found
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   283
  $ cat > repo/.hg/bundle2maker << EOF
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   284
  > remote-changegroup http://localhost:$HGPORT/bundle4.hg bundle4.hg
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   285
  > remote-changegroup http://localhost:$HGPORT/bundle5.hg bundle5.hg
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   286
  > changegroup 0:6 7
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   287
  > EOF
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   288
  $ hg clone orig clone -r 2
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   289
  adding changesets
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   290
  adding manifests
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   291
  adding file changes
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   292
  added 3 changesets with 3 changes to 3 files
34661
eb586ed5d8ce transaction-summary: show the range of new revisions upon pull/unbundle (BC)
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 34101
diff changeset
   293
  new changesets cd010b8cd998:5fddd98957c8
23029
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   294
  updating to branch default
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   295
  3 files updated, 0 files merged, 0 files removed, 0 files unresolved
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   296
  $ hg pull -R clone ssh://user@dummy/repo
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   297
  pulling from ssh://user@dummy/repo
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   298
  searching for changes
24686
e0e28e910fa3 bundle2: rename format, parts and config to final names
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 23591
diff changeset
   299
  remote: remote-changegroup
23029
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   300
  adding changesets
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   301
  adding manifests
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   302
  adding file changes
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   303
  added 2 changesets with 2 changes to 2 files (+1 heads)
24686
e0e28e910fa3 bundle2: rename format, parts and config to final names
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 23591
diff changeset
   304
  remote: remote-changegroup
23029
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   305
  adding changesets
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   306
  adding manifests
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   307
  adding file changes
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   308
  added 2 changesets with 1 changes to 1 files
24686
e0e28e910fa3 bundle2: rename format, parts and config to final names
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 23591
diff changeset
   309
  remote: changegroup
23029
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   310
  adding changesets
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   311
  adding manifests
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   312
  adding file changes
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   313
  added 1 changesets with 1 changes to 1 files (+1 heads)
34661
eb586ed5d8ce transaction-summary: show the range of new revisions upon pull/unbundle (BC)
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 34101
diff changeset
   314
  new changesets 32af7686d403:02de42196ebe
23029
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   315
  (run 'hg heads' to see heads, 'hg merge' to merge)
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   316
  $ hg -R clone log -G
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   317
  o  7:02de42196ebe public Nicolas Dumazet <nicdumz.commits@gmail.com>  H
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   318
  |
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   319
  | o  6:eea13746799a public Nicolas Dumazet <nicdumz.commits@gmail.com>  G
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   320
  |/|
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   321
  o |  5:24b6387c8c8c public Nicolas Dumazet <nicdumz.commits@gmail.com>  F
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   322
  | |
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   323
  | o  4:9520eea781bc public Nicolas Dumazet <nicdumz.commits@gmail.com>  E
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   324
  |/
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   325
  | o  3:32af7686d403 public Nicolas Dumazet <nicdumz.commits@gmail.com>  D
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   326
  | |
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   327
  | @  2:5fddd98957c8 public Nicolas Dumazet <nicdumz.commits@gmail.com>  C
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   328
  | |
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   329
  | o  1:42ccdea3bb16 public Nicolas Dumazet <nicdumz.commits@gmail.com>  B
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   330
  |/
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   331
  o  0:cd010b8cd998 public Nicolas Dumazet <nicdumz.commits@gmail.com>  A
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   332
  
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   333
  $ rm -rf clone
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   334
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   335
Hash digest tests
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   336
26773
ec7e0dbe56d5 test: enforce v1 type in 'test-bundle2-remote-changegroup.t'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25495
diff changeset
   337
  $ hg bundle -R repo --type v1 -a bundle6.hg
23029
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   338
  8 changesets found
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   339
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   340
  $ cat > repo/.hg/bundle2maker << EOF
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   341
  > raw-remote-changegroup {'url': 'http://localhost:$HGPORT/bundle6.hg', 'size': 1663, 'digests': 'sha1', 'digest:sha1': '2c880cfec23cff7d8f80c2f12958d1563cbdaba6'}
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   342
  > EOF
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   343
  $ hg clone ssh://user@dummy/repo clone
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   344
  requesting all changes
24686
e0e28e910fa3 bundle2: rename format, parts and config to final names
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 23591
diff changeset
   345
  remote: remote-changegroup
23029
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   346
  adding changesets
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   347
  adding manifests
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   348
  adding file changes
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   349
  added 8 changesets with 7 changes to 7 files (+2 heads)
34661
eb586ed5d8ce transaction-summary: show the range of new revisions upon pull/unbundle (BC)
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 34101
diff changeset
   350
  new changesets cd010b8cd998:02de42196ebe
23029
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   351
  updating to branch default
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   352
  3 files updated, 0 files merged, 0 files removed, 0 files unresolved
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   353
  $ rm -rf clone
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   354
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   355
  $ cat > repo/.hg/bundle2maker << EOF
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   356
  > raw-remote-changegroup {'url': 'http://localhost:$HGPORT/bundle6.hg', 'size': 1663, 'digests': 'md5', 'digest:md5': 'e22172c2907ef88794b7bea6642c2394'}
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   357
  > EOF
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   358
  $ hg clone ssh://user@dummy/repo clone
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   359
  requesting all changes
24686
e0e28e910fa3 bundle2: rename format, parts and config to final names
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 23591
diff changeset
   360
  remote: remote-changegroup
23029
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   361
  adding changesets
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   362
  adding manifests
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   363
  adding file changes
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   364
  added 8 changesets with 7 changes to 7 files (+2 heads)
34661
eb586ed5d8ce transaction-summary: show the range of new revisions upon pull/unbundle (BC)
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 34101
diff changeset
   365
  new changesets cd010b8cd998:02de42196ebe
23029
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   366
  updating to branch default
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   367
  3 files updated, 0 files merged, 0 files removed, 0 files unresolved
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   368
  $ rm -rf clone
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   369
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   370
Hash digest mismatch throws an error
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   371
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   372
  $ cat > repo/.hg/bundle2maker << EOF
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   373
  > raw-remote-changegroup {'url': 'http://localhost:$HGPORT/bundle6.hg', 'size': 1663, 'digests': 'sha1', 'digest:sha1': '0' * 40}
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   374
  > EOF
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   375
  $ hg clone ssh://user@dummy/repo clone
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   376
  requesting all changes
24686
e0e28e910fa3 bundle2: rename format, parts and config to final names
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 23591
diff changeset
   377
  remote: remote-changegroup
23029
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   378
  adding changesets
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   379
  adding manifests
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   380
  adding file changes
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   381
  added 8 changesets with 7 changes to 7 files (+2 heads)
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   382
  transaction abort!
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   383
  rollback completed
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   384
  abort: bundle at http://localhost:$HGPORT/bundle6.hg is corrupted:
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   385
  sha1 mismatch: expected 0000000000000000000000000000000000000000, got 2c880cfec23cff7d8f80c2f12958d1563cbdaba6
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   386
  [255]
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   387
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   388
Multiple hash digests can be given
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   389
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   390
  $ cat > repo/.hg/bundle2maker << EOF
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   391
  > raw-remote-changegroup {'url': 'http://localhost:$HGPORT/bundle6.hg', 'size': 1663, 'digests': 'md5 sha1', 'digest:md5': 'e22172c2907ef88794b7bea6642c2394', 'digest:sha1': '2c880cfec23cff7d8f80c2f12958d1563cbdaba6'}
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   392
  > EOF
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   393
  $ hg clone ssh://user@dummy/repo clone
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   394
  requesting all changes
24686
e0e28e910fa3 bundle2: rename format, parts and config to final names
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 23591
diff changeset
   395
  remote: remote-changegroup
23029
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   396
  adding changesets
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   397
  adding manifests
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   398
  adding file changes
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   399
  added 8 changesets with 7 changes to 7 files (+2 heads)
34661
eb586ed5d8ce transaction-summary: show the range of new revisions upon pull/unbundle (BC)
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 34101
diff changeset
   400
  new changesets cd010b8cd998:02de42196ebe
23029
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   401
  updating to branch default
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   402
  3 files updated, 0 files merged, 0 files removed, 0 files unresolved
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   403
  $ rm -rf clone
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   404
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   405
If either of the multiple hash digests mismatches, an error is thrown
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   406
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   407
  $ cat > repo/.hg/bundle2maker << EOF
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   408
  > raw-remote-changegroup {'url': 'http://localhost:$HGPORT/bundle6.hg', 'size': 1663, 'digests': 'md5 sha1', 'digest:md5': '0' * 32, 'digest:sha1': '2c880cfec23cff7d8f80c2f12958d1563cbdaba6'}
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   409
  > EOF
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   410
  $ hg clone ssh://user@dummy/repo clone
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   411
  requesting all changes
24686
e0e28e910fa3 bundle2: rename format, parts and config to final names
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 23591
diff changeset
   412
  remote: remote-changegroup
23029
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   413
  adding changesets
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   414
  adding manifests
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   415
  adding file changes
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   416
  added 8 changesets with 7 changes to 7 files (+2 heads)
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   417
  transaction abort!
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   418
  rollback completed
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   419
  abort: bundle at http://localhost:$HGPORT/bundle6.hg is corrupted:
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   420
  md5 mismatch: expected 00000000000000000000000000000000, got e22172c2907ef88794b7bea6642c2394
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   421
  [255]
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   422
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   423
  $ cat > repo/.hg/bundle2maker << EOF
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   424
  > raw-remote-changegroup {'url': 'http://localhost:$HGPORT/bundle6.hg', 'size': 1663, 'digests': 'md5 sha1', 'digest:md5': 'e22172c2907ef88794b7bea6642c2394', 'digest:sha1': '0' * 40}
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   425
  > EOF
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   426
  $ hg clone ssh://user@dummy/repo clone
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   427
  requesting all changes
24686
e0e28e910fa3 bundle2: rename format, parts and config to final names
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 23591
diff changeset
   428
  remote: remote-changegroup
23029
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   429
  adding changesets
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   430
  adding manifests
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   431
  adding file changes
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   432
  added 8 changesets with 7 changes to 7 files (+2 heads)
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   433
  transaction abort!
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   434
  rollback completed
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   435
  abort: bundle at http://localhost:$HGPORT/bundle6.hg is corrupted:
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   436
  sha1 mismatch: expected 0000000000000000000000000000000000000000, got 2c880cfec23cff7d8f80c2f12958d1563cbdaba6
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   437
  [255]
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   438
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   439
Corruption tests
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   440
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   441
  $ hg clone orig clone -r 2
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   442
  adding changesets
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   443
  adding manifests
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   444
  adding file changes
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   445
  added 3 changesets with 3 changes to 3 files
34661
eb586ed5d8ce transaction-summary: show the range of new revisions upon pull/unbundle (BC)
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 34101
diff changeset
   446
  new changesets cd010b8cd998:5fddd98957c8
23029
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   447
  updating to branch default
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   448
  3 files updated, 0 files merged, 0 files removed, 0 files unresolved
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   449
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   450
  $ cat > repo/.hg/bundle2maker << EOF
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   451
  > remote-changegroup http://localhost:$HGPORT/bundle4.hg bundle4.hg
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   452
  > raw-remote-changegroup {'url': 'http://localhost:$HGPORT/bundle5.hg', 'size': 578, 'digests': 'sha1', 'digest:sha1': '0' * 40}
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   453
  > changegroup 0:6 7
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   454
  > EOF
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   455
  $ hg pull -R clone ssh://user@dummy/repo
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   456
  pulling from ssh://user@dummy/repo
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   457
  searching for changes
24686
e0e28e910fa3 bundle2: rename format, parts and config to final names
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 23591
diff changeset
   458
  remote: remote-changegroup
23029
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   459
  adding changesets
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   460
  adding manifests
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   461
  adding file changes
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   462
  added 2 changesets with 2 changes to 2 files (+1 heads)
24686
e0e28e910fa3 bundle2: rename format, parts and config to final names
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 23591
diff changeset
   463
  remote: remote-changegroup
23029
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   464
  adding changesets
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   465
  adding manifests
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   466
  adding file changes
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   467
  added 2 changesets with 1 changes to 1 files
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   468
  transaction abort!
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   469
  rollback completed
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   470
  abort: bundle at http://localhost:$HGPORT/bundle5.hg is corrupted:
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   471
  sha1 mismatch: expected 0000000000000000000000000000000000000000, got f29485d6bfd37db99983cfc95ecb52f8ca396106
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   472
  [255]
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   473
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   474
The entire transaction has been rolled back in the pull above
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   475
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   476
  $ hg -R clone log -G
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   477
  @  2:5fddd98957c8 public Nicolas Dumazet <nicdumz.commits@gmail.com>  C
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   478
  |
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   479
  o  1:42ccdea3bb16 public Nicolas Dumazet <nicdumz.commits@gmail.com>  B
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   480
  |
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   481
  o  0:cd010b8cd998 public Nicolas Dumazet <nicdumz.commits@gmail.com>  A
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   482
  
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   483
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   484
No params
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   485
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   486
  $ cat > repo/.hg/bundle2maker << EOF
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   487
  > raw-remote-changegroup {}
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   488
  > EOF
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   489
  $ hg pull -R clone ssh://user@dummy/repo
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   490
  pulling from ssh://user@dummy/repo
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   491
  searching for changes
24686
e0e28e910fa3 bundle2: rename format, parts and config to final names
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 23591
diff changeset
   492
  remote: remote-changegroup
23029
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   493
  abort: remote-changegroup: missing "url" param
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   494
  [255]
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   495
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   496
Missing size
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   497
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   498
  $ cat > repo/.hg/bundle2maker << EOF
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   499
  > raw-remote-changegroup {'url': 'http://localhost:$HGPORT/bundle4.hg'}
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   500
  > EOF
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   501
  $ hg pull -R clone ssh://user@dummy/repo
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   502
  pulling from ssh://user@dummy/repo
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   503
  searching for changes
24686
e0e28e910fa3 bundle2: rename format, parts and config to final names
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 23591
diff changeset
   504
  remote: remote-changegroup
23029
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   505
  abort: remote-changegroup: missing "size" param
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   506
  [255]
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   507
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   508
Invalid size
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   509
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   510
  $ cat > repo/.hg/bundle2maker << EOF
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   511
  > raw-remote-changegroup {'url': 'http://localhost:$HGPORT/bundle4.hg', 'size': 'foo'}
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   512
  > EOF
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   513
  $ hg pull -R clone ssh://user@dummy/repo
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   514
  pulling from ssh://user@dummy/repo
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   515
  searching for changes
24686
e0e28e910fa3 bundle2: rename format, parts and config to final names
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 23591
diff changeset
   516
  remote: remote-changegroup
23029
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   517
  abort: remote-changegroup: invalid value for param "size"
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   518
  [255]
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   519
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   520
Size mismatch
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   521
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   522
  $ cat > repo/.hg/bundle2maker << EOF
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   523
  > raw-remote-changegroup {'url': 'http://localhost:$HGPORT/bundle4.hg', 'size': 42}
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   524
  > EOF
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   525
  $ hg pull -R clone ssh://user@dummy/repo
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   526
  pulling from ssh://user@dummy/repo
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   527
  searching for changes
24686
e0e28e910fa3 bundle2: rename format, parts and config to final names
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 23591
diff changeset
   528
  remote: remote-changegroup
23029
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   529
  adding changesets
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   530
  adding manifests
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   531
  adding file changes
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   532
  added 2 changesets with 2 changes to 2 files (+1 heads)
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   533
  transaction abort!
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   534
  rollback completed
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   535
  abort: bundle at http://localhost:$HGPORT/bundle4.hg is corrupted:
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   536
  size mismatch: expected 42, got 581
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   537
  [255]
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   538
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   539
Unknown digest
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   540
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   541
  $ cat > repo/.hg/bundle2maker << EOF
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   542
  > raw-remote-changegroup {'url': 'http://localhost:$HGPORT/bundle4.hg', 'size': 581, 'digests': 'foo', 'digest:foo': 'bar'}
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   543
  > EOF
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   544
  $ hg pull -R clone ssh://user@dummy/repo
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   545
  pulling from ssh://user@dummy/repo
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   546
  searching for changes
24686
e0e28e910fa3 bundle2: rename format, parts and config to final names
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 23591
diff changeset
   547
  remote: remote-changegroup
e0e28e910fa3 bundle2: rename format, parts and config to final names
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 23591
diff changeset
   548
  abort: missing support for remote-changegroup - digest:foo
23029
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   549
  [255]
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   550
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   551
Missing digest
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   552
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   553
  $ cat > repo/.hg/bundle2maker << EOF
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   554
  > raw-remote-changegroup {'url': 'http://localhost:$HGPORT/bundle4.hg', 'size': 581, 'digests': 'sha1'}
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   555
  > EOF
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   556
  $ hg pull -R clone ssh://user@dummy/repo
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   557
  pulling from ssh://user@dummy/repo
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   558
  searching for changes
24686
e0e28e910fa3 bundle2: rename format, parts and config to final names
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 23591
diff changeset
   559
  remote: remote-changegroup
23029
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   560
  abort: remote-changegroup: missing "digest:sha1" param
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   561
  [255]
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   562
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   563
Not an HTTP url
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   564
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   565
  $ cat > repo/.hg/bundle2maker << EOF
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   566
  > raw-remote-changegroup {'url': 'ssh://localhost:$HGPORT/bundle4.hg', 'size': 581}
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   567
  > EOF
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   568
  $ hg pull -R clone ssh://user@dummy/repo
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   569
  pulling from ssh://user@dummy/repo
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   570
  searching for changes
24686
e0e28e910fa3 bundle2: rename format, parts and config to final names
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 23591
diff changeset
   571
  remote: remote-changegroup
23029
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   572
  abort: remote-changegroup does not support ssh urls
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   573
  [255]
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   574
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   575
Not a bundle
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   576
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   577
  $ cat > notbundle.hg << EOF
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   578
  > foo
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   579
  > EOF
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   580
  $ cat > repo/.hg/bundle2maker << EOF
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   581
  > remote-changegroup http://localhost:$HGPORT/notbundle.hg notbundle.hg
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   582
  > EOF
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   583
  $ hg pull -R clone ssh://user@dummy/repo
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   584
  pulling from ssh://user@dummy/repo
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   585
  searching for changes
24686
e0e28e910fa3 bundle2: rename format, parts and config to final names
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 23591
diff changeset
   586
  remote: remote-changegroup
23029
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   587
  abort: http://localhost:$HGPORT/notbundle.hg: not a Mercurial bundle
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   588
  [255]
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   589
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   590
Not a bundle 1.0
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   591
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   592
  $ cat > notbundle10.hg << EOF
24686
e0e28e910fa3 bundle2: rename format, parts and config to final names
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 23591
diff changeset
   593
  > HG20
23029
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   594
  > EOF
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   595
  $ cat > repo/.hg/bundle2maker << EOF
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   596
  > remote-changegroup http://localhost:$HGPORT/notbundle10.hg notbundle10.hg
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   597
  > EOF
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   598
  $ hg pull -R clone ssh://user@dummy/repo
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   599
  pulling from ssh://user@dummy/repo
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   600
  searching for changes
24686
e0e28e910fa3 bundle2: rename format, parts and config to final names
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 23591
diff changeset
   601
  remote: remote-changegroup
23029
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   602
  abort: http://localhost:$HGPORT/notbundle10.hg: not a bundle version 1.0
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   603
  [255]
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   604
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   605
  $ hg -R clone log -G
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   606
  @  2:5fddd98957c8 public Nicolas Dumazet <nicdumz.commits@gmail.com>  C
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   607
  |
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   608
  o  1:42ccdea3bb16 public Nicolas Dumazet <nicdumz.commits@gmail.com>  B
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   609
  |
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   610
  o  0:cd010b8cd998 public Nicolas Dumazet <nicdumz.commits@gmail.com>  A
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   611
  
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   612
  $ rm -rf clone
149fc8a44184 bundle2: client side support for a part to import external bundles
Mike Hommey <mh@glandium.org>
parents:
diff changeset
   613
25474
8c14f87bd0ae tests: drop DAEMON_PIDS from killdaemons calls
Matt Mackall <mpm@selenic.com>
parents: 25472
diff changeset
   614
  $ killdaemons.py