annotate tests/test-bundle2-format.t @ 29592:37cccad55410

util: implement a deterministic __repr__ on sortdict `hg debugbundle` is calling repr() on bundle2 part params, which are now util.sortdict instances. Unfortunately, repr() doesn't appear to be deterministic for util.sortdict. So, we implement one. We include the type name because that's the common convention for __repr__ implementations. Having the type name in `hg debugbundle` is a bit ugly. But it's a debug command and I don't care enough to fix it.
author Gregory Szorc <gregory.szorc@gmail.com>
date Sun, 17 Jul 2016 15:10:30 -0700
parents 6fb1d3c936d2
children 622782ea9cf3
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
23139
e53f6b72a0e4 spelling: fixes from proofreading of spell checker issues
Mads Kiilerich <madski@unity3d.com>
parents: 23067
diff changeset
1 This test is dedicated to test the bundle2 container format
22323
b31d29b2a7f2 test-bundle2: add obsolescence information to be exchanged
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 22241
diff changeset
2
22660
978cce51cc5f bundle2: split test in two
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 22659
diff changeset
3 It test multiple existing parts to test different feature of the container. You
978cce51cc5f bundle2: split test in two
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 22659
diff changeset
4 probably do not need to touch this test unless you change the binary encoding
978cce51cc5f bundle2: split test in two
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 22659
diff changeset
5 of the bundle2 format itself.
20801
9c5183cb9bca bundle2: very first version of a bundle2 bundler
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
6
9c5183cb9bca bundle2: very first version of a bundle2 bundler
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
7 Create an extension to test bundle2 API
9c5183cb9bca bundle2: very first version of a bundle2 bundler
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
8
9c5183cb9bca bundle2: very first version of a bundle2 bundler
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
9 $ cat > bundle2.py << EOF
9c5183cb9bca bundle2: very first version of a bundle2 bundler
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
10 > """A small extension to test bundle2 implementation
9c5183cb9bca bundle2: very first version of a bundle2 bundler
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
11 >
28238
b57d45ec33b2 test: update test-bundle2-format.t comment
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 27539
diff changeset
12 > This extension allows detailed testing of the various bundle2 API and
b57d45ec33b2 test: update test-bundle2-format.t comment
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 27539
diff changeset
13 > behaviors.
20801
9c5183cb9bca bundle2: very first version of a bundle2 bundler
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
14 > """
9c5183cb9bca bundle2: very first version of a bundle2 bundler
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
15 >
27539
23541bdd1610 test-bundle2-format: force gc so a GeneratorExit will be thrown
Bryan O'Sullivan <bos@serpentine.com>
parents: 26772
diff changeset
16 > import sys, os, gc
21956
93b804fced5a test-bundle2: move file mode setting after sys import
Matt Mackall <mpm@selenic.com>
parents: 21941
diff changeset
17 > from mercurial import cmdutil
93b804fced5a test-bundle2: move file mode setting after sys import
Matt Mackall <mpm@selenic.com>
parents: 21941
diff changeset
18 > from mercurial import util
93b804fced5a test-bundle2: move file mode setting after sys import
Matt Mackall <mpm@selenic.com>
parents: 21941
diff changeset
19 > from mercurial import bundle2
93b804fced5a test-bundle2: move file mode setting after sys import
Matt Mackall <mpm@selenic.com>
parents: 21941
diff changeset
20 > from mercurial import scmutil
93b804fced5a test-bundle2: move file mode setting after sys import
Matt Mackall <mpm@selenic.com>
parents: 21941
diff changeset
21 > from mercurial import discovery
93b804fced5a test-bundle2: move file mode setting after sys import
Matt Mackall <mpm@selenic.com>
parents: 21941
diff changeset
22 > from mercurial import changegroup
93b804fced5a test-bundle2: move file mode setting after sys import
Matt Mackall <mpm@selenic.com>
parents: 21941
diff changeset
23 > from mercurial import error
22323
b31d29b2a7f2 test-bundle2: add obsolescence information to be exchanged
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 22241
diff changeset
24 > from mercurial import obsolete
b31d29b2a7f2 test-bundle2: add obsolescence information to be exchanged
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 22241
diff changeset
25 >
21956
93b804fced5a test-bundle2: move file mode setting after sys import
Matt Mackall <mpm@selenic.com>
parents: 21941
diff changeset
26 >
21547
565d45919db8 bundle2: make sure standard stream are binary
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21187
diff changeset
27 > try:
565d45919db8 bundle2: make sure standard stream are binary
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21187
diff changeset
28 > import msvcrt
565d45919db8 bundle2: make sure standard stream are binary
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21187
diff changeset
29 > msvcrt.setmode(sys.stdin.fileno(), os.O_BINARY)
565d45919db8 bundle2: make sure standard stream are binary
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21187
diff changeset
30 > msvcrt.setmode(sys.stdout.fileno(), os.O_BINARY)
565d45919db8 bundle2: make sure standard stream are binary
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21187
diff changeset
31 > msvcrt.setmode(sys.stderr.fileno(), os.O_BINARY)
565d45919db8 bundle2: make sure standard stream are binary
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21187
diff changeset
32 > except ImportError:
565d45919db8 bundle2: make sure standard stream are binary
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21187
diff changeset
33 > pass
565d45919db8 bundle2: make sure standard stream are binary
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21187
diff changeset
34 >
20801
9c5183cb9bca bundle2: very first version of a bundle2 bundler
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
35 > cmdtable = {}
9c5183cb9bca bundle2: very first version of a bundle2 bundler
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
36 > command = cmdutil.command(cmdtable)
9c5183cb9bca bundle2: very first version of a bundle2 bundler
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
37 >
20876
ddd56f3eb786 bundle2: support for bundling and unbundling payload
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20864
diff changeset
38 > ELEPHANTSSONG = """Patali Dirapata, Cromda Cromda Ripalo, Pata Pata, Ko Ko Ko
ddd56f3eb786 bundle2: support for bundling and unbundling payload
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20864
diff changeset
39 > Bokoro Dipoulito, Rondi Rondi Pepino, Pata Pata, Ko Ko Ko
ddd56f3eb786 bundle2: support for bundling and unbundling payload
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20864
diff changeset
40 > Emana Karassoli, Loucra Loucra Ponponto, Pata Pata, Ko Ko Ko."""
ddd56f3eb786 bundle2: support for bundling and unbundling payload
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20864
diff changeset
41 > assert len(ELEPHANTSSONG) == 178 # future test say 178 bytes, trust it.
ddd56f3eb786 bundle2: support for bundling and unbundling payload
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20864
diff changeset
42 >
20890
ec7fc110faee bundle2: introduce a `parthandler` decorator
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20889
diff changeset
43 > @bundle2.parthandler('test:song')
20948
329cd74b52bd bundle2: introduce a bundleoperation object
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20947
diff changeset
44 > def songhandler(op, part):
20889
deed5edb72de bundle2: first version of a bundle processing
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20888
diff changeset
45 > """handle a "test:song" bundle2 part, printing the lyrics on stdin"""
20948
329cd74b52bd bundle2: introduce a bundleoperation object
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20947
diff changeset
46 > op.ui.write('The choir starts singing:\n')
20949
571f2903ff1e bundle2: record processing results in the bundleoperation object
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20948
diff changeset
47 > verses = 0
21019
3dc09f831a2e bundle2: lazy unbundle of part payload
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21017
diff changeset
48 > for line in part.read().split('\n'):
20948
329cd74b52bd bundle2: introduce a bundleoperation object
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20947
diff changeset
49 > op.ui.write(' %s\n' % line)
20949
571f2903ff1e bundle2: record processing results in the bundleoperation object
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20948
diff changeset
50 > verses += 1
571f2903ff1e bundle2: record processing results in the bundleoperation object
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20948
diff changeset
51 > op.records.add('song', {'verses': verses})
20889
deed5edb72de bundle2: first version of a bundle processing
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20888
diff changeset
52 >
20997
d7df4b7378ae bundle2: produce a bundle2 reply
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20995
diff changeset
53 > @bundle2.parthandler('test:ping')
d7df4b7378ae bundle2: produce a bundle2 reply
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20995
diff changeset
54 > def pinghandler(op, part):
d7df4b7378ae bundle2: produce a bundle2 reply
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20995
diff changeset
55 > op.ui.write('received ping request (id %i)\n' % part.id)
21135
98fbf3adfd83 bundle2: add capabilities support in `replycaps` part
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21133
diff changeset
56 > if op.reply is not None and 'ping-pong' in op.reply.capabilities:
21133
bef4a2adc532 bundle2: include stderr when capturing handlers output
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21131
diff changeset
57 > op.ui.write_err('replying to ping request (id %i)\n' % part.id)
23590
4440c7cc3728 bundle2.bundlepart: make mandatory part flag explicit in API
Eric Sumner <ericsumner@fb.com>
parents: 23543
diff changeset
58 > op.reply.newpart('test:pong', [('in-reply-to', str(part.id))],
4440c7cc3728 bundle2.bundlepart: make mandatory part flag explicit in API
Eric Sumner <ericsumner@fb.com>
parents: 23543
diff changeset
59 > mandatory=False)
20997
d7df4b7378ae bundle2: produce a bundle2 reply
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20995
diff changeset
60 >
21135
98fbf3adfd83 bundle2: add capabilities support in `replycaps` part
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21133
diff changeset
61 > @bundle2.parthandler('test:debugreply')
98fbf3adfd83 bundle2: add capabilities support in `replycaps` part
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21133
diff changeset
62 > def debugreply(op, part):
98fbf3adfd83 bundle2: add capabilities support in `replycaps` part
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21133
diff changeset
63 > """print data about the capacity of the bundle reply"""
98fbf3adfd83 bundle2: add capabilities support in `replycaps` part
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21133
diff changeset
64 > if op.reply is None:
98fbf3adfd83 bundle2: add capabilities support in `replycaps` part
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21133
diff changeset
65 > op.ui.write('debugreply: no reply\n')
98fbf3adfd83 bundle2: add capabilities support in `replycaps` part
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21133
diff changeset
66 > else:
98fbf3adfd83 bundle2: add capabilities support in `replycaps` part
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21133
diff changeset
67 > op.ui.write('debugreply: capabilities:\n')
98fbf3adfd83 bundle2: add capabilities support in `replycaps` part
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21133
diff changeset
68 > for cap in sorted(op.reply.capabilities):
98fbf3adfd83 bundle2: add capabilities support in `replycaps` part
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21133
diff changeset
69 > op.ui.write('debugreply: %r\n' % cap)
21136
b6fd496e5c72 bundle2: support for capabilities with values
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21135
diff changeset
70 > for val in op.reply.capabilities[cap]:
b6fd496e5c72 bundle2: support for capabilities with values
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21135
diff changeset
71 > op.ui.write('debugreply: %r\n' % val)
b6fd496e5c72 bundle2: support for capabilities with values
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21135
diff changeset
72 >
20804
db9d3991d2c6 bundle2: support bundling simple parameter
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20803
diff changeset
73 > @command('bundle2',
20856
8a6a86c9a5b5 bundle2: support bundling of empty part (with a type)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20844
diff changeset
74 > [('', 'param', [], 'stream level parameter'),
20891
1c6cd23fc221 bundle2: add some distinction between mandatory and advisory part
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20890
diff changeset
75 > ('', 'unknown', False, 'include an unknown mandatory part in the bundle'),
21625
511f5fa63aa2 bundle2: enforce all parameters in a part to be handled
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21618
diff changeset
76 > ('', 'unknownparams', False, 'include an unknown part parameters in the bundle'),
20950
c7ceae0faf69 bundle2: first crude version of bundling changeset with bundle2
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20949
diff changeset
77 > ('', 'parts', False, 'include some arbitrary parts to the bundle'),
21130
1ff06386217f bundle2: introduce `replycaps` part for on-demand reply
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21129
diff changeset
78 > ('', 'reply', False, 'produce a reply bundle'),
21184
28d76afa1568 bundle2: fix raising errors during heads checking
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21183
diff changeset
79 > ('', 'pushrace', False, 'includes a check:head part with unknown nodes'),
23007
03f3af8f4415 bundle2: add a test for exceptions raised during the generation process
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 22955
diff changeset
80 > ('', 'genraise', False, 'includes a part that raise an exception during generation'),
26144
4bc3707f3e67 bundle2: don't try to recover from a GeneratorExit (issue4785)
Augie Fackler <augie@google.com>
parents: 25495
diff changeset
81 > ('', 'timeout', False, 'emulate a timeout during bundle generation'),
26404
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
82 > ('r', 'rev', [], 'includes those changeset in the bundle'),
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
83 > ('', 'compress', '', 'compress the stream'),],
20841
cff562fe77a0 bundle2: add ability to write to a file to the test
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20814
diff changeset
84 > '[OUTPUTFILE]')
cff562fe77a0 bundle2: add ability to write to a file to the test
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20814
diff changeset
85 > def cmdbundle2(ui, repo, path=None, **opts):
23543
4dd8a6a1240d spelling: fixes from proofreading of spell checker issues
Mads Kiilerich <madski@unity3d.com>
parents: 23139
diff changeset
86 > """write a bundle2 container on standard output"""
20842
938718d72624 bundle2: print debug information during bundling
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20841
diff changeset
87 > bundler = bundle2.bundle20(ui)
20804
db9d3991d2c6 bundle2: support bundling simple parameter
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20803
diff changeset
88 > for p in opts['param']:
20809
b93bb639451a bundle2: support for bundling parameter value
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20805
diff changeset
89 > p = p.split('=', 1)
20813
8c74b3ce5b70 bundle2: refuse empty parameter name
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20812
diff changeset
90 > try:
8c74b3ce5b70 bundle2: refuse empty parameter name
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20812
diff changeset
91 > bundler.addparam(*p)
8c74b3ce5b70 bundle2: refuse empty parameter name
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20812
diff changeset
92 > except ValueError, exc:
26587
56b2bcea2529 error: get Abort from 'error' instead of 'util'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26539
diff changeset
93 > raise error.Abort('%s' % exc)
20809
b93bb639451a bundle2: support for bundling parameter value
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20805
diff changeset
94 >
26404
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
95 > if opts['compress']:
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
96 > bundler.setcompression(opts['compress'])
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
97 >
21130
1ff06386217f bundle2: introduce `replycaps` part for on-demand reply
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21129
diff changeset
98 > if opts['reply']:
21137
341a083603a5 bundle2: protect capabilities name and values with url quoting
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21136
diff changeset
99 > capsstring = 'ping-pong\nelephants=babar,celeste\ncity%3D%21=celeste%2Cville'
24686
e0e28e910fa3 bundle2: rename format, parts and config to final names
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 24641
diff changeset
100 > bundler.newpart('replycaps', data=capsstring)
21130
1ff06386217f bundle2: introduce `replycaps` part for on-demand reply
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21129
diff changeset
101 >
21184
28d76afa1568 bundle2: fix raising errors during heads checking
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21183
diff changeset
102 > if opts['pushrace']:
21604
c399bf961cb9 bundle2: the ability to set ``data`` attribute of the part is now official
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21600
diff changeset
103 > # also serve to test the assignement of data outside of init
24686
e0e28e910fa3 bundle2: rename format, parts and config to final names
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 24641
diff changeset
104 > part = bundler.newpart('check:heads')
21604
c399bf961cb9 bundle2: the ability to set ``data`` attribute of the part is now official
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21600
diff changeset
105 > part.data = '01234567890123456789'
21184
28d76afa1568 bundle2: fix raising errors during heads checking
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21183
diff changeset
106 >
20950
c7ceae0faf69 bundle2: first crude version of bundling changeset with bundle2
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20949
diff changeset
107 > revs = opts['rev']
c7ceae0faf69 bundle2: first crude version of bundling changeset with bundle2
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20949
diff changeset
108 > if 'rev' in opts:
c7ceae0faf69 bundle2: first crude version of bundling changeset with bundle2
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20949
diff changeset
109 > revs = scmutil.revrange(repo, opts['rev'])
c7ceae0faf69 bundle2: first crude version of bundling changeset with bundle2
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20949
diff changeset
110 > if revs:
c7ceae0faf69 bundle2: first crude version of bundling changeset with bundle2
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20949
diff changeset
111 > # very crude version of a changegroup part creation
c7ceae0faf69 bundle2: first crude version of bundling changeset with bundle2
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20949
diff changeset
112 > bundled = repo.revs('%ld::%ld', revs, revs)
c7ceae0faf69 bundle2: first crude version of bundling changeset with bundle2
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20949
diff changeset
113 > headmissing = [c.node() for c in repo.set('heads(%ld)', revs)]
c7ceae0faf69 bundle2: first crude version of bundling changeset with bundle2
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20949
diff changeset
114 > headcommon = [c.node() for c in repo.set('parents(%ld) - %ld', revs, revs)]
c7ceae0faf69 bundle2: first crude version of bundling changeset with bundle2
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20949
diff changeset
115 > outgoing = discovery.outgoing(repo.changelog, headcommon, headmissing)
22390
e2806b8613ca changegroup: rename bundle-related functions and classes
Sune Foldager <cryo@cyanite.org>
parents: 22354
diff changeset
116 > cg = changegroup.getlocalchangegroup(repo, 'test:bundle2', outgoing, None)
24686
e0e28e910fa3 bundle2: rename format, parts and config to final names
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 24641
diff changeset
117 > bundler.newpart('changegroup', data=cg.getchunks(),
23590
4440c7cc3728 bundle2.bundlepart: make mandatory part flag explicit in API
Eric Sumner <ericsumner@fb.com>
parents: 23543
diff changeset
118 > mandatory=False)
20950
c7ceae0faf69 bundle2: first crude version of bundling changeset with bundle2
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20949
diff changeset
119 >
20856
8a6a86c9a5b5 bundle2: support bundling of empty part (with a type)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20844
diff changeset
120 > if opts['parts']:
23590
4440c7cc3728 bundle2.bundlepart: make mandatory part flag explicit in API
Eric Sumner <ericsumner@fb.com>
parents: 23543
diff changeset
121 > bundler.newpart('test:empty', mandatory=False)
20856
8a6a86c9a5b5 bundle2: support bundling of empty part (with a type)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20844
diff changeset
122 > # add a second one to make sure we handle multiple parts
23590
4440c7cc3728 bundle2.bundlepart: make mandatory part flag explicit in API
Eric Sumner <ericsumner@fb.com>
parents: 23543
diff changeset
123 > bundler.newpart('test:empty', mandatory=False)
4440c7cc3728 bundle2.bundlepart: make mandatory part flag explicit in API
Eric Sumner <ericsumner@fb.com>
parents: 23543
diff changeset
124 > bundler.newpart('test:song', data=ELEPHANTSSONG, mandatory=False)
4440c7cc3728 bundle2.bundlepart: make mandatory part flag explicit in API
Eric Sumner <ericsumner@fb.com>
parents: 23543
diff changeset
125 > bundler.newpart('test:debugreply', mandatory=False)
21605
f9dabfceb259 bundle2: introduce a ``addparam`` method on part
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21604
diff changeset
126 > mathpart = bundler.newpart('test:math')
f9dabfceb259 bundle2: introduce a ``addparam`` method on part
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21604
diff changeset
127 > mathpart.addparam('pi', '3.14')
f9dabfceb259 bundle2: introduce a ``addparam`` method on part
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21604
diff changeset
128 > mathpart.addparam('e', '2.72')
f9dabfceb259 bundle2: introduce a ``addparam`` method on part
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21604
diff changeset
129 > mathpart.addparam('cooking', 'raw', mandatory=False)
f9dabfceb259 bundle2: introduce a ``addparam`` method on part
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21604
diff changeset
130 > mathpart.data = '42'
23590
4440c7cc3728 bundle2.bundlepart: make mandatory part flag explicit in API
Eric Sumner <ericsumner@fb.com>
parents: 23543
diff changeset
131 > mathpart.mandatory = False
21626
985d139c8e8f bundle2: ignore advisory part with unknown parameters
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21625
diff changeset
132 > # advisory known part with unknown mandatory param
23590
4440c7cc3728 bundle2.bundlepart: make mandatory part flag explicit in API
Eric Sumner <ericsumner@fb.com>
parents: 23543
diff changeset
133 > bundler.newpart('test:song', [('randomparam','')], mandatory=False)
20891
1c6cd23fc221 bundle2: add some distinction between mandatory and advisory part
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20890
diff changeset
134 > if opts['unknown']:
23591
414374cfb531 bundle2: lowercase part types
Eric Sumner <ericsumner@fb.com>
parents: 23590
diff changeset
135 > bundler.newpart('test:unknown', data='some random content')
21625
511f5fa63aa2 bundle2: enforce all parameters in a part to be handled
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21618
diff changeset
136 > if opts['unknownparams']:
23591
414374cfb531 bundle2: lowercase part types
Eric Sumner <ericsumner@fb.com>
parents: 23590
diff changeset
137 > bundler.newpart('test:song', [('randomparams', '')])
20997
d7df4b7378ae bundle2: produce a bundle2 reply
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20995
diff changeset
138 > if opts['parts']:
23590
4440c7cc3728 bundle2.bundlepart: make mandatory part flag explicit in API
Eric Sumner <ericsumner@fb.com>
parents: 23543
diff changeset
139 > bundler.newpart('test:ping', mandatory=False)
23007
03f3af8f4415 bundle2: add a test for exceptions raised during the generation process
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 22955
diff changeset
140 > if opts['genraise']:
03f3af8f4415 bundle2: add a test for exceptions raised during the generation process
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 22955
diff changeset
141 > def genraise():
03f3af8f4415 bundle2: add a test for exceptions raised during the generation process
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 22955
diff changeset
142 > yield 'first line\n'
03f3af8f4415 bundle2: add a test for exceptions raised during the generation process
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 22955
diff changeset
143 > raise RuntimeError('Someone set up us the bomb!')
24686
e0e28e910fa3 bundle2: rename format, parts and config to final names
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 24641
diff changeset
144 > bundler.newpart('output', data=genraise(), mandatory=False)
20856
8a6a86c9a5b5 bundle2: support bundling of empty part (with a type)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20844
diff changeset
145 >
20841
cff562fe77a0 bundle2: add ability to write to a file to the test
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20814
diff changeset
146 > if path is None:
cff562fe77a0 bundle2: add ability to write to a file to the test
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20814
diff changeset
147 > file = sys.stdout
cff562fe77a0 bundle2: add ability to write to a file to the test
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20814
diff changeset
148 > else:
22089
1e392c63fb76 tests: more bundle2 non-binary file test fixes
Matt Mackall <mpm@selenic.com>
parents: 21964
diff changeset
149 > file = open(path, 'wb')
20841
cff562fe77a0 bundle2: add ability to write to a file to the test
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20814
diff changeset
150 >
26144
4bc3707f3e67 bundle2: don't try to recover from a GeneratorExit (issue4785)
Augie Fackler <augie@google.com>
parents: 25495
diff changeset
151 > if opts['timeout']:
4bc3707f3e67 bundle2: don't try to recover from a GeneratorExit (issue4785)
Augie Fackler <augie@google.com>
parents: 25495
diff changeset
152 > bundler.newpart('test:song', data=ELEPHANTSSONG, mandatory=False)
4bc3707f3e67 bundle2: don't try to recover from a GeneratorExit (issue4785)
Augie Fackler <augie@google.com>
parents: 25495
diff changeset
153 > for idx, junk in enumerate(bundler.getchunks()):
4bc3707f3e67 bundle2: don't try to recover from a GeneratorExit (issue4785)
Augie Fackler <augie@google.com>
parents: 25495
diff changeset
154 > ui.write('%d chunk\n' % idx)
4bc3707f3e67 bundle2: don't try to recover from a GeneratorExit (issue4785)
Augie Fackler <augie@google.com>
parents: 25495
diff changeset
155 > if idx > 4:
4bc3707f3e67 bundle2: don't try to recover from a GeneratorExit (issue4785)
Augie Fackler <augie@google.com>
parents: 25495
diff changeset
156 > # This throws a GeneratorExit inside the generator, which
4bc3707f3e67 bundle2: don't try to recover from a GeneratorExit (issue4785)
Augie Fackler <augie@google.com>
parents: 25495
diff changeset
157 > # can cause problems if the exception-recovery code is
4bc3707f3e67 bundle2: don't try to recover from a GeneratorExit (issue4785)
Augie Fackler <augie@google.com>
parents: 25495
diff changeset
158 > # too zealous. It's important for this test that the break
4bc3707f3e67 bundle2: don't try to recover from a GeneratorExit (issue4785)
Augie Fackler <augie@google.com>
parents: 25495
diff changeset
159 > # occur while we're in the middle of a part.
4bc3707f3e67 bundle2: don't try to recover from a GeneratorExit (issue4785)
Augie Fackler <augie@google.com>
parents: 25495
diff changeset
160 > break
27539
23541bdd1610 test-bundle2-format: force gc so a GeneratorExit will be thrown
Bryan O'Sullivan <bos@serpentine.com>
parents: 26772
diff changeset
161 > gc.collect()
26144
4bc3707f3e67 bundle2: don't try to recover from a GeneratorExit (issue4785)
Augie Fackler <augie@google.com>
parents: 25495
diff changeset
162 > ui.write('fake timeout complete.\n')
4bc3707f3e67 bundle2: don't try to recover from a GeneratorExit (issue4785)
Augie Fackler <augie@google.com>
parents: 25495
diff changeset
163 > return
23007
03f3af8f4415 bundle2: add a test for exceptions raised during the generation process
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 22955
diff changeset
164 > try:
03f3af8f4415 bundle2: add a test for exceptions raised during the generation process
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 22955
diff changeset
165 > for chunk in bundler.getchunks():
03f3af8f4415 bundle2: add a test for exceptions raised during the generation process
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 22955
diff changeset
166 > file.write(chunk)
03f3af8f4415 bundle2: add a test for exceptions raised during the generation process
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 22955
diff changeset
167 > except RuntimeError, exc:
26587
56b2bcea2529 error: get Abort from 'error' instead of 'util'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26539
diff changeset
168 > raise error.Abort(exc)
28612
6fb1d3c936d2 tests: explicitly flush output streams
Jun Wu <quark@fb.com>
parents: 28238
diff changeset
169 > finally:
6fb1d3c936d2 tests: explicitly flush output streams
Jun Wu <quark@fb.com>
parents: 28238
diff changeset
170 > file.flush()
20802
520df53ad26a bundle2: a very first version of bundle2 unbundler
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20801
diff changeset
171 >
20889
deed5edb72de bundle2: first version of a bundle processing
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20888
diff changeset
172 > @command('unbundle2', [], '')
20997
d7df4b7378ae bundle2: produce a bundle2 reply
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20995
diff changeset
173 > def cmdunbundle2(ui, repo, replypath=None):
20889
deed5edb72de bundle2: first version of a bundle processing
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20888
diff changeset
174 > """process a bundle2 stream from stdin on the current repo"""
20891
1c6cd23fc221 bundle2: add some distinction between mandatory and advisory part
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20890
diff changeset
175 > try:
20952
b24ee5076b94 bundle2: make it possible have a global transaction for the unbundling
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20951
diff changeset
176 > tr = None
20946
e910336539f7 bundle2: lock the repo during unbundle test
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20892
diff changeset
177 > lock = repo.lock()
20952
b24ee5076b94 bundle2: make it possible have a global transaction for the unbundling
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20951
diff changeset
178 > tr = repo.transaction('processbundle')
20892
6fe95448596d bundle2: read the whole bundle from stream on abort
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20891
diff changeset
179 > try:
24641
60fecc5b14a4 unbundle20: retrieve unbundler instances through a factory function
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 23891
diff changeset
180 > unbundler = bundle2.getunbundler(ui, sys.stdin)
20952
b24ee5076b94 bundle2: make it possible have a global transaction for the unbundling
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20951
diff changeset
181 > op = bundle2.processbundle(repo, unbundler, lambda: tr)
b24ee5076b94 bundle2: make it possible have a global transaction for the unbundling
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20951
diff changeset
182 > tr.close()
21618
7568f5c1c801 bundle2: move exception classes into the error module
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21617
diff changeset
183 > except error.BundleValueError, exc:
26587
56b2bcea2529 error: get Abort from 'error' instead of 'util'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26539
diff changeset
184 > raise error.Abort('missing support for %s' % exc)
21184
28d76afa1568 bundle2: fix raising errors during heads checking
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21183
diff changeset
185 > except error.PushRaced, exc:
26587
56b2bcea2529 error: get Abort from 'error' instead of 'util'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26539
diff changeset
186 > raise error.Abort('push race: %s' % exc)
20892
6fe95448596d bundle2: read the whole bundle from stream on abort
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20891
diff changeset
187 > finally:
20952
b24ee5076b94 bundle2: make it possible have a global transaction for the unbundling
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20951
diff changeset
188 > if tr is not None:
b24ee5076b94 bundle2: make it possible have a global transaction for the unbundling
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20951
diff changeset
189 > tr.release()
20946
e910336539f7 bundle2: lock the repo during unbundle test
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20892
diff changeset
190 > lock.release()
20892
6fe95448596d bundle2: read the whole bundle from stream on abort
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20891
diff changeset
191 > remains = sys.stdin.read()
6fe95448596d bundle2: read the whole bundle from stream on abort
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20891
diff changeset
192 > ui.write('%i unread bytes\n' % len(remains))
20949
571f2903ff1e bundle2: record processing results in the bundleoperation object
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20948
diff changeset
193 > if op.records['song']:
571f2903ff1e bundle2: record processing results in the bundleoperation object
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20948
diff changeset
194 > totalverses = sum(r['verses'] for r in op.records['song'])
571f2903ff1e bundle2: record processing results in the bundleoperation object
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20948
diff changeset
195 > ui.write('%i total verses sung\n' % totalverses)
20950
c7ceae0faf69 bundle2: first crude version of bundling changeset with bundle2
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20949
diff changeset
196 > for rec in op.records['changegroup']:
c7ceae0faf69 bundle2: first crude version of bundling changeset with bundle2
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20949
diff changeset
197 > ui.write('addchangegroup return: %i\n' % rec['return'])
20997
d7df4b7378ae bundle2: produce a bundle2 reply
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20995
diff changeset
198 > if op.reply is not None and replypath is not None:
28612
6fb1d3c936d2 tests: explicitly flush output streams
Jun Wu <quark@fb.com>
parents: 28238
diff changeset
199 > with open(replypath, 'wb') as file:
6fb1d3c936d2 tests: explicitly flush output streams
Jun Wu <quark@fb.com>
parents: 28238
diff changeset
200 > for chunk in op.reply.getchunks():
6fb1d3c936d2 tests: explicitly flush output streams
Jun Wu <quark@fb.com>
parents: 28238
diff changeset
201 > file.write(chunk)
20889
deed5edb72de bundle2: first version of a bundle processing
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20888
diff changeset
202 >
20888
0b0d3800c248 bundle2: rename unbundle2 test command to statbundle2
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20877
diff changeset
203 > @command('statbundle2', [], '')
0b0d3800c248 bundle2: rename unbundle2 test command to statbundle2
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20877
diff changeset
204 > def cmdstatbundle2(ui, repo):
0b0d3800c248 bundle2: rename unbundle2 test command to statbundle2
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20877
diff changeset
205 > """print statistic on the bundle2 container read from stdin"""
24641
60fecc5b14a4 unbundle20: retrieve unbundler instances through a factory function
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 23891
diff changeset
206 > unbundler = bundle2.getunbundler(ui, sys.stdin)
20844
2631204d7305 bundle2: implement the mandatory/advisory logic for parameter
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20843
diff changeset
207 > try:
2631204d7305 bundle2: implement the mandatory/advisory logic for parameter
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20843
diff changeset
208 > params = unbundler.params
21628
7c5a85619dca bundle2: raise BundleValueError error for stream level unsupported params
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21626
diff changeset
209 > except error.BundleValueError, exc:
26587
56b2bcea2529 error: get Abort from 'error' instead of 'util'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26539
diff changeset
210 > raise error.Abort('unknown parameters: %s' % exc)
20844
2631204d7305 bundle2: implement the mandatory/advisory logic for parameter
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20843
diff changeset
211 > ui.write('options count: %i\n' % len(params))
2631204d7305 bundle2: implement the mandatory/advisory logic for parameter
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20843
diff changeset
212 > for key in sorted(params):
20805
c5aaeca0cfbf bundle2: support for unbundling simple parameter
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20804
diff changeset
213 > ui.write('- %s\n' % key)
20844
2631204d7305 bundle2: implement the mandatory/advisory logic for parameter
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20843
diff changeset
214 > value = params[key]
20810
47293877b54c bundle2: support for unbundling parameter value
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20809
diff changeset
215 > if value is not None:
47293877b54c bundle2: support for unbundling parameter value
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20809
diff changeset
216 > ui.write(' %s\n' % value)
21017
8de8187e6f48 bundle2: lazily iterate over bundle parts in the test
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21005
diff changeset
217 > count = 0
21129
07bcbf326c8d bundle2: use an official iterparts method to unbundle parts
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21075
diff changeset
218 > for p in unbundler.iterparts():
21017
8de8187e6f48 bundle2: lazily iterate over bundle parts in the test
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21005
diff changeset
219 > count += 1
20864
9a75d2559cff bundle2: support unbundling empty part
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20856
diff changeset
220 > ui.write(' :%s:\n' % p.type)
20877
9e9e3a4e9261 bundle2: part params
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20876
diff changeset
221 > ui.write(' mandatory: %i\n' % len(p.mandatoryparams))
9e9e3a4e9261 bundle2: part params
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20876
diff changeset
222 > ui.write(' advisory: %i\n' % len(p.advisoryparams))
21019
3dc09f831a2e bundle2: lazy unbundle of part payload
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21017
diff changeset
223 > ui.write(' payload: %i bytes\n' % len(p.read()))
21017
8de8187e6f48 bundle2: lazily iterate over bundle parts in the test
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21005
diff changeset
224 > ui.write('parts count: %i\n' % count)
20801
9c5183cb9bca bundle2: very first version of a bundle2 bundler
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
225 > EOF
9c5183cb9bca bundle2: very first version of a bundle2 bundler
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
226 $ cat >> $HGRCPATH << EOF
9c5183cb9bca bundle2: very first version of a bundle2 bundler
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
227 > [extensions]
9c5183cb9bca bundle2: very first version of a bundle2 bundler
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
228 > bundle2=$TESTTMP/bundle2.py
21147
2a246e737f92 bundle2: move bundle2 config option to section "experimental"
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21146
diff changeset
229 > [experimental]
2a246e737f92 bundle2: move bundle2 config option to section "experimental"
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21146
diff changeset
230 > bundle2-exp=True
22955
fab9dda0f2a3 obsolete: update tests to use obsolete options
Durham Goode <durham@fb.com>
parents: 22660
diff changeset
231 > evolution=createmarkers
21069
0a9cae236738 bundle2: allow bundle2 for pulling over the wire
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21062
diff changeset
232 > [ui]
25495
c63bf97cf7c7 tests: restore 'python' and '$TESTDIR/' for dummyssh invocation
Matt Harbison <matt_harbison@yahoo.com>
parents: 25476
diff changeset
233 > ssh=python "$TESTDIR/dummyssh"
22241
3dc3cf8d0e73 test-bundle2: add bookmark movement to the push test
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 22090
diff changeset
234 > logtemplate={rev}:{node|short} {phase} {author} {bookmarks} {desc|firstline}
21075
438803e4bd97 bundle2: support for push over the wire
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21069
diff changeset
235 > [web]
438803e4bd97 bundle2: support for push over the wire
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21069
diff changeset
236 > push_ssl = false
438803e4bd97 bundle2: support for push over the wire
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21069
diff changeset
237 > allow_push = *
21648
c26a11cdafeb bundle2: use non-publishing repo in test
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21647
diff changeset
238 > [phases]
c26a11cdafeb bundle2: use non-publishing repo in test
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21647
diff changeset
239 > publish=False
20801
9c5183cb9bca bundle2: very first version of a bundle2 bundler
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
240 > EOF
9c5183cb9bca bundle2: very first version of a bundle2 bundler
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
241
9c5183cb9bca bundle2: very first version of a bundle2 bundler
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
242 The extension requires a repo (currently unused)
9c5183cb9bca bundle2: very first version of a bundle2 bundler
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
243
9c5183cb9bca bundle2: very first version of a bundle2 bundler
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
244 $ hg init main
9c5183cb9bca bundle2: very first version of a bundle2 bundler
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
245 $ cd main
20803
88db3e615319 bundle2: make sure the unbundler refuse non bundle2 stream
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20802
diff changeset
246 $ touch a
88db3e615319 bundle2: make sure the unbundler refuse non bundle2 stream
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20802
diff changeset
247 $ hg add a
88db3e615319 bundle2: make sure the unbundler refuse non bundle2 stream
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20802
diff changeset
248 $ hg commit -m 'a'
20801
9c5183cb9bca bundle2: very first version of a bundle2 bundler
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
249
20804
db9d3991d2c6 bundle2: support bundling simple parameter
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20803
diff changeset
250
db9d3991d2c6 bundle2: support bundling simple parameter
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20803
diff changeset
251 Empty bundle
db9d3991d2c6 bundle2: support bundling simple parameter
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20803
diff changeset
252 =================
db9d3991d2c6 bundle2: support bundling simple parameter
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20803
diff changeset
253
db9d3991d2c6 bundle2: support bundling simple parameter
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20803
diff changeset
254 - no option
db9d3991d2c6 bundle2: support bundling simple parameter
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20803
diff changeset
255 - no parts
db9d3991d2c6 bundle2: support bundling simple parameter
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20803
diff changeset
256
db9d3991d2c6 bundle2: support bundling simple parameter
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20803
diff changeset
257 Test bundling
20801
9c5183cb9bca bundle2: very first version of a bundle2 bundler
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
258
26403
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
259 $ hg bundle2 | f --hexdump
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
260
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
261 0000: 48 47 32 30 00 00 00 00 00 00 00 00 |HG20........|
20802
520df53ad26a bundle2: a very first version of bundle2 unbundler
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20801
diff changeset
262
26144
4bc3707f3e67 bundle2: don't try to recover from a GeneratorExit (issue4785)
Augie Fackler <augie@google.com>
parents: 25495
diff changeset
263 Test timeouts during bundling
4bc3707f3e67 bundle2: don't try to recover from a GeneratorExit (issue4785)
Augie Fackler <augie@google.com>
parents: 25495
diff changeset
264 $ hg bundle2 --timeout --debug --config devel.bundle2.debug=yes
4bc3707f3e67 bundle2: don't try to recover from a GeneratorExit (issue4785)
Augie Fackler <augie@google.com>
parents: 25495
diff changeset
265 bundle2-output-bundle: "HG20", 1 parts total
4bc3707f3e67 bundle2: don't try to recover from a GeneratorExit (issue4785)
Augie Fackler <augie@google.com>
parents: 25495
diff changeset
266 bundle2-output: start emission of HG20 stream
4bc3707f3e67 bundle2: don't try to recover from a GeneratorExit (issue4785)
Augie Fackler <augie@google.com>
parents: 25495
diff changeset
267 0 chunk
4bc3707f3e67 bundle2: don't try to recover from a GeneratorExit (issue4785)
Augie Fackler <augie@google.com>
parents: 25495
diff changeset
268 bundle2-output: bundle parameter:
4bc3707f3e67 bundle2: don't try to recover from a GeneratorExit (issue4785)
Augie Fackler <augie@google.com>
parents: 25495
diff changeset
269 1 chunk
4bc3707f3e67 bundle2: don't try to recover from a GeneratorExit (issue4785)
Augie Fackler <augie@google.com>
parents: 25495
diff changeset
270 bundle2-output: start of parts
4bc3707f3e67 bundle2: don't try to recover from a GeneratorExit (issue4785)
Augie Fackler <augie@google.com>
parents: 25495
diff changeset
271 bundle2-output: bundle part: "test:song"
4bc3707f3e67 bundle2: don't try to recover from a GeneratorExit (issue4785)
Augie Fackler <augie@google.com>
parents: 25495
diff changeset
272 bundle2-output-part: "test:song" (advisory) 178 bytes payload
4bc3707f3e67 bundle2: don't try to recover from a GeneratorExit (issue4785)
Augie Fackler <augie@google.com>
parents: 25495
diff changeset
273 bundle2-output: part 0: "test:song"
4bc3707f3e67 bundle2: don't try to recover from a GeneratorExit (issue4785)
Augie Fackler <augie@google.com>
parents: 25495
diff changeset
274 bundle2-output: header chunk size: 16
4bc3707f3e67 bundle2: don't try to recover from a GeneratorExit (issue4785)
Augie Fackler <augie@google.com>
parents: 25495
diff changeset
275 2 chunk
4bc3707f3e67 bundle2: don't try to recover from a GeneratorExit (issue4785)
Augie Fackler <augie@google.com>
parents: 25495
diff changeset
276 3 chunk
4bc3707f3e67 bundle2: don't try to recover from a GeneratorExit (issue4785)
Augie Fackler <augie@google.com>
parents: 25495
diff changeset
277 bundle2-output: payload chunk size: 178
4bc3707f3e67 bundle2: don't try to recover from a GeneratorExit (issue4785)
Augie Fackler <augie@google.com>
parents: 25495
diff changeset
278 4 chunk
4bc3707f3e67 bundle2: don't try to recover from a GeneratorExit (issue4785)
Augie Fackler <augie@google.com>
parents: 25495
diff changeset
279 5 chunk
4bc3707f3e67 bundle2: don't try to recover from a GeneratorExit (issue4785)
Augie Fackler <augie@google.com>
parents: 25495
diff changeset
280 bundle2-generatorexit
4bc3707f3e67 bundle2: don't try to recover from a GeneratorExit (issue4785)
Augie Fackler <augie@google.com>
parents: 25495
diff changeset
281 fake timeout complete.
4bc3707f3e67 bundle2: don't try to recover from a GeneratorExit (issue4785)
Augie Fackler <augie@google.com>
parents: 25495
diff changeset
282
20804
db9d3991d2c6 bundle2: support bundling simple parameter
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20803
diff changeset
283 Test unbundling
20802
520df53ad26a bundle2: a very first version of bundle2 unbundler
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20801
diff changeset
284
20888
0b0d3800c248 bundle2: rename unbundle2 test command to statbundle2
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20877
diff changeset
285 $ hg bundle2 | hg statbundle2
20802
520df53ad26a bundle2: a very first version of bundle2 unbundler
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20801
diff changeset
286 options count: 0
520df53ad26a bundle2: a very first version of bundle2 unbundler
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20801
diff changeset
287 parts count: 0
20803
88db3e615319 bundle2: make sure the unbundler refuse non bundle2 stream
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20802
diff changeset
288
88db3e615319 bundle2: make sure the unbundler refuse non bundle2 stream
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20802
diff changeset
289 Test old style bundle are detected and refused
88db3e615319 bundle2: make sure the unbundler refuse non bundle2 stream
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20802
diff changeset
290
26772
d9a0cf97651e test: enforce v1 type in 'test-bundle2-format.t'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26587
diff changeset
291 $ hg bundle --all --type v1 ../bundle.hg
20803
88db3e615319 bundle2: make sure the unbundler refuse non bundle2 stream
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20802
diff changeset
292 1 changesets found
20888
0b0d3800c248 bundle2: rename unbundle2 test command to statbundle2
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20877
diff changeset
293 $ hg statbundle2 < ../bundle.hg
20803
88db3e615319 bundle2: make sure the unbundler refuse non bundle2 stream
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20802
diff changeset
294 abort: unknown bundle version 10
88db3e615319 bundle2: make sure the unbundler refuse non bundle2 stream
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20802
diff changeset
295 [255]
20804
db9d3991d2c6 bundle2: support bundling simple parameter
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20803
diff changeset
296
db9d3991d2c6 bundle2: support bundling simple parameter
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20803
diff changeset
297 Test parameters
db9d3991d2c6 bundle2: support bundling simple parameter
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20803
diff changeset
298 =================
db9d3991d2c6 bundle2: support bundling simple parameter
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20803
diff changeset
299
db9d3991d2c6 bundle2: support bundling simple parameter
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20803
diff changeset
300 - some options
db9d3991d2c6 bundle2: support bundling simple parameter
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20803
diff changeset
301 - no parts
db9d3991d2c6 bundle2: support bundling simple parameter
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20803
diff changeset
302
db9d3991d2c6 bundle2: support bundling simple parameter
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20803
diff changeset
303 advisory parameters, no value
db9d3991d2c6 bundle2: support bundling simple parameter
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20803
diff changeset
304 -------------------------------
db9d3991d2c6 bundle2: support bundling simple parameter
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20803
diff changeset
305
db9d3991d2c6 bundle2: support bundling simple parameter
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20803
diff changeset
306 Simplest possible parameters form
db9d3991d2c6 bundle2: support bundling simple parameter
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20803
diff changeset
307
20805
c5aaeca0cfbf bundle2: support for unbundling simple parameter
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20804
diff changeset
308 Test generation simple option
20804
db9d3991d2c6 bundle2: support bundling simple parameter
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20803
diff changeset
309
26403
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
310 $ hg bundle2 --param 'caution' | f --hexdump
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
311
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
312 0000: 48 47 32 30 00 00 00 07 63 61 75 74 69 6f 6e 00 |HG20....caution.|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
313 0010: 00 00 00 |...|
20804
db9d3991d2c6 bundle2: support bundling simple parameter
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20803
diff changeset
314
20805
c5aaeca0cfbf bundle2: support for unbundling simple parameter
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20804
diff changeset
315 Test unbundling
c5aaeca0cfbf bundle2: support for unbundling simple parameter
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20804
diff changeset
316
20888
0b0d3800c248 bundle2: rename unbundle2 test command to statbundle2
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20877
diff changeset
317 $ hg bundle2 --param 'caution' | hg statbundle2
20805
c5aaeca0cfbf bundle2: support for unbundling simple parameter
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20804
diff changeset
318 options count: 1
c5aaeca0cfbf bundle2: support for unbundling simple parameter
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20804
diff changeset
319 - caution
c5aaeca0cfbf bundle2: support for unbundling simple parameter
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20804
diff changeset
320 parts count: 0
c5aaeca0cfbf bundle2: support for unbundling simple parameter
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20804
diff changeset
321
20804
db9d3991d2c6 bundle2: support bundling simple parameter
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20803
diff changeset
322 Test generation multiple option
db9d3991d2c6 bundle2: support bundling simple parameter
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20803
diff changeset
323
26403
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
324 $ hg bundle2 --param 'caution' --param 'meal' | f --hexdump
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
325
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
326 0000: 48 47 32 30 00 00 00 0c 63 61 75 74 69 6f 6e 20 |HG20....caution |
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
327 0010: 6d 65 61 6c 00 00 00 00 |meal....|
20805
c5aaeca0cfbf bundle2: support for unbundling simple parameter
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20804
diff changeset
328
c5aaeca0cfbf bundle2: support for unbundling simple parameter
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20804
diff changeset
329 Test unbundling
c5aaeca0cfbf bundle2: support for unbundling simple parameter
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20804
diff changeset
330
20888
0b0d3800c248 bundle2: rename unbundle2 test command to statbundle2
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20877
diff changeset
331 $ hg bundle2 --param 'caution' --param 'meal' | hg statbundle2
20805
c5aaeca0cfbf bundle2: support for unbundling simple parameter
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20804
diff changeset
332 options count: 2
c5aaeca0cfbf bundle2: support for unbundling simple parameter
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20804
diff changeset
333 - caution
c5aaeca0cfbf bundle2: support for unbundling simple parameter
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20804
diff changeset
334 - meal
c5aaeca0cfbf bundle2: support for unbundling simple parameter
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20804
diff changeset
335 parts count: 0
c5aaeca0cfbf bundle2: support for unbundling simple parameter
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20804
diff changeset
336
20809
b93bb639451a bundle2: support for bundling parameter value
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20805
diff changeset
337 advisory parameters, with value
b93bb639451a bundle2: support for bundling parameter value
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20805
diff changeset
338 -------------------------------
b93bb639451a bundle2: support for bundling parameter value
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20805
diff changeset
339
b93bb639451a bundle2: support for bundling parameter value
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20805
diff changeset
340 Test generation
b93bb639451a bundle2: support for bundling parameter value
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20805
diff changeset
341
26403
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
342 $ hg bundle2 --param 'caution' --param 'meal=vegan' --param 'elephants' | f --hexdump
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
343
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
344 0000: 48 47 32 30 00 00 00 1c 63 61 75 74 69 6f 6e 20 |HG20....caution |
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
345 0010: 6d 65 61 6c 3d 76 65 67 61 6e 20 65 6c 65 70 68 |meal=vegan eleph|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
346 0020: 61 6e 74 73 00 00 00 00 |ants....|
20809
b93bb639451a bundle2: support for bundling parameter value
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20805
diff changeset
347
20810
47293877b54c bundle2: support for unbundling parameter value
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20809
diff changeset
348 Test unbundling
47293877b54c bundle2: support for unbundling parameter value
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20809
diff changeset
349
20888
0b0d3800c248 bundle2: rename unbundle2 test command to statbundle2
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20877
diff changeset
350 $ hg bundle2 --param 'caution' --param 'meal=vegan' --param 'elephants' | hg statbundle2
20810
47293877b54c bundle2: support for unbundling parameter value
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20809
diff changeset
351 options count: 3
47293877b54c bundle2: support for unbundling parameter value
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20809
diff changeset
352 - caution
47293877b54c bundle2: support for unbundling parameter value
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20809
diff changeset
353 - elephants
47293877b54c bundle2: support for unbundling parameter value
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20809
diff changeset
354 - meal
47293877b54c bundle2: support for unbundling parameter value
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20809
diff changeset
355 vegan
47293877b54c bundle2: support for unbundling parameter value
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20809
diff changeset
356 parts count: 0
20811
9785c3f8f598 bundle2: urlquote stream parameter name and value
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20810
diff changeset
357
9785c3f8f598 bundle2: urlquote stream parameter name and value
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20810
diff changeset
358 parameter with special char in value
9785c3f8f598 bundle2: urlquote stream parameter name and value
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20810
diff changeset
359 ---------------------------------------------------
9785c3f8f598 bundle2: urlquote stream parameter name and value
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20810
diff changeset
360
9785c3f8f598 bundle2: urlquote stream parameter name and value
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20810
diff changeset
361 Test generation
9785c3f8f598 bundle2: urlquote stream parameter name and value
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20810
diff changeset
362
26403
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
363 $ hg bundle2 --param 'e|! 7/=babar%#==tutu' --param simple | f --hexdump
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
364
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
365 0000: 48 47 32 30 00 00 00 29 65 25 37 43 25 32 31 25 |HG20...)e%7C%21%|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
366 0010: 32 30 37 2f 3d 62 61 62 61 72 25 32 35 25 32 33 |207/=babar%25%23|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
367 0020: 25 33 44 25 33 44 74 75 74 75 20 73 69 6d 70 6c |%3D%3Dtutu simpl|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
368 0030: 65 00 00 00 00 |e....|
20812
e2f908773754 bundle2: urlunquote stream parameter name and value during unbundling
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20811
diff changeset
369
e2f908773754 bundle2: urlunquote stream parameter name and value during unbundling
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20811
diff changeset
370 Test unbundling
e2f908773754 bundle2: urlunquote stream parameter name and value during unbundling
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20811
diff changeset
371
20888
0b0d3800c248 bundle2: rename unbundle2 test command to statbundle2
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20877
diff changeset
372 $ hg bundle2 --param 'e|! 7/=babar%#==tutu' --param simple | hg statbundle2
20812
e2f908773754 bundle2: urlunquote stream parameter name and value during unbundling
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20811
diff changeset
373 options count: 2
e2f908773754 bundle2: urlunquote stream parameter name and value during unbundling
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20811
diff changeset
374 - e|! 7/
e2f908773754 bundle2: urlunquote stream parameter name and value during unbundling
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20811
diff changeset
375 babar%#==tutu
e2f908773754 bundle2: urlunquote stream parameter name and value during unbundling
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20811
diff changeset
376 - simple
e2f908773754 bundle2: urlunquote stream parameter name and value during unbundling
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20811
diff changeset
377 parts count: 0
20813
8c74b3ce5b70 bundle2: refuse empty parameter name
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20812
diff changeset
378
20844
2631204d7305 bundle2: implement the mandatory/advisory logic for parameter
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20843
diff changeset
379 Test unknown mandatory option
2631204d7305 bundle2: implement the mandatory/advisory logic for parameter
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20843
diff changeset
380 ---------------------------------------------------
2631204d7305 bundle2: implement the mandatory/advisory logic for parameter
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20843
diff changeset
381
20888
0b0d3800c248 bundle2: rename unbundle2 test command to statbundle2
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20877
diff changeset
382 $ hg bundle2 --param 'Gravity' | hg statbundle2
21628
7c5a85619dca bundle2: raise BundleValueError error for stream level unsupported params
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21626
diff changeset
383 abort: unknown parameters: Stream Parameter - Gravity
20844
2631204d7305 bundle2: implement the mandatory/advisory logic for parameter
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20843
diff changeset
384 [255]
2631204d7305 bundle2: implement the mandatory/advisory logic for parameter
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20843
diff changeset
385
20841
cff562fe77a0 bundle2: add ability to write to a file to the test
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20814
diff changeset
386 Test debug output
cff562fe77a0 bundle2: add ability to write to a file to the test
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20814
diff changeset
387 ---------------------------------------------------
cff562fe77a0 bundle2: add ability to write to a file to the test
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20814
diff changeset
388
20843
0641b41b0b49 bundle2: print debug information during unbundling
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20842
diff changeset
389 bundling debug
0641b41b0b49 bundle2: print debug information during unbundling
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20842
diff changeset
390
25336
7c60a42265fb bundle2: hide bundle2 stream debug under a config flag
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25334
diff changeset
391 $ hg bundle2 --debug --param 'e|! 7/=babar%#==tutu' --param simple ../out.hg2 --config progress.debug=true --config devel.bundle2.debug=true
25322
1f7c0403f8be bundle2: add generic debug output regarding generated bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25321
diff changeset
392 bundle2-output-bundle: "HG20", (2 params) 0 parts total
25314
18c2bcc2c9d5 bundle2: prefix all bundling debug messages with 'bundle2-ouput:'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25125
diff changeset
393 bundle2-output: start emission of HG20 stream
18c2bcc2c9d5 bundle2: prefix all bundling debug messages with 'bundle2-ouput:'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25125
diff changeset
394 bundle2-output: bundle parameter: e%7C%21%207/=babar%25%23%3D%3Dtutu simple
18c2bcc2c9d5 bundle2: prefix all bundling debug messages with 'bundle2-ouput:'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25125
diff changeset
395 bundle2-output: start of parts
18c2bcc2c9d5 bundle2: prefix all bundling debug messages with 'bundle2-ouput:'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25125
diff changeset
396 bundle2-output: end of bundle
20841
cff562fe77a0 bundle2: add ability to write to a file to the test
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20814
diff changeset
397
cff562fe77a0 bundle2: add ability to write to a file to the test
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20814
diff changeset
398 file content is ok
cff562fe77a0 bundle2: add ability to write to a file to the test
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20814
diff changeset
399
26403
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
400 $ f --hexdump ../out.hg2
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
401 ../out.hg2:
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
402 0000: 48 47 32 30 00 00 00 29 65 25 37 43 25 32 31 25 |HG20...)e%7C%21%|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
403 0010: 32 30 37 2f 3d 62 61 62 61 72 25 32 35 25 32 33 |207/=babar%25%23|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
404 0020: 25 33 44 25 33 44 74 75 74 75 20 73 69 6d 70 6c |%3D%3Dtutu simpl|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
405 0030: 65 00 00 00 00 |e....|
20841
cff562fe77a0 bundle2: add ability to write to a file to the test
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20814
diff changeset
406
20843
0641b41b0b49 bundle2: print debug information during unbundling
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20842
diff changeset
407 unbundling debug
0641b41b0b49 bundle2: print debug information during unbundling
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20842
diff changeset
408
25336
7c60a42265fb bundle2: hide bundle2 stream debug under a config flag
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25334
diff changeset
409 $ hg statbundle2 --debug --config progress.debug=true --config devel.bundle2.debug=true < ../out.hg2
25319
c3ef4f3b8680 bundle2: prefix all unbundling debug message with 'bundle2-input:'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25314
diff changeset
410 bundle2-input: start processing of HG20 stream
c3ef4f3b8680 bundle2: prefix all unbundling debug message with 'bundle2-input:'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25314
diff changeset
411 bundle2-input: reading bundle2 stream parameters
c3ef4f3b8680 bundle2: prefix all unbundling debug message with 'bundle2-input:'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25314
diff changeset
412 bundle2-input: ignoring unknown parameter 'e|! 7/'
c3ef4f3b8680 bundle2: prefix all unbundling debug message with 'bundle2-input:'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25314
diff changeset
413 bundle2-input: ignoring unknown parameter 'simple'
20843
0641b41b0b49 bundle2: print debug information during unbundling
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20842
diff changeset
414 options count: 2
0641b41b0b49 bundle2: print debug information during unbundling
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20842
diff changeset
415 - e|! 7/
0641b41b0b49 bundle2: print debug information during unbundling
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20842
diff changeset
416 babar%#==tutu
0641b41b0b49 bundle2: print debug information during unbundling
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20842
diff changeset
417 - simple
25319
c3ef4f3b8680 bundle2: prefix all unbundling debug message with 'bundle2-input:'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25314
diff changeset
418 bundle2-input: start extraction of bundle2 parts
c3ef4f3b8680 bundle2: prefix all unbundling debug message with 'bundle2-input:'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25314
diff changeset
419 bundle2-input: part header size: 0
c3ef4f3b8680 bundle2: prefix all unbundling debug message with 'bundle2-input:'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25314
diff changeset
420 bundle2-input: end of bundle2 stream
20843
0641b41b0b49 bundle2: print debug information during unbundling
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20842
diff changeset
421 parts count: 0
0641b41b0b49 bundle2: print debug information during unbundling
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20842
diff changeset
422
0641b41b0b49 bundle2: print debug information during unbundling
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20842
diff changeset
423
20813
8c74b3ce5b70 bundle2: refuse empty parameter name
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20812
diff changeset
424 Test buggy input
8c74b3ce5b70 bundle2: refuse empty parameter name
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20812
diff changeset
425 ---------------------------------------------------
8c74b3ce5b70 bundle2: refuse empty parameter name
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20812
diff changeset
426
8c74b3ce5b70 bundle2: refuse empty parameter name
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20812
diff changeset
427 empty parameter name
8c74b3ce5b70 bundle2: refuse empty parameter name
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20812
diff changeset
428
8c74b3ce5b70 bundle2: refuse empty parameter name
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20812
diff changeset
429 $ hg bundle2 --param '' --quiet
8c74b3ce5b70 bundle2: refuse empty parameter name
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20812
diff changeset
430 abort: empty parameter name
8c74b3ce5b70 bundle2: refuse empty parameter name
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20812
diff changeset
431 [255]
20814
8532f5e1b9df bundle2: force the first char of parameter to be an letter.
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20813
diff changeset
432
8532f5e1b9df bundle2: force the first char of parameter to be an letter.
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20813
diff changeset
433 bad parameter name
8532f5e1b9df bundle2: force the first char of parameter to be an letter.
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20813
diff changeset
434
8532f5e1b9df bundle2: force the first char of parameter to be an letter.
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20813
diff changeset
435 $ hg bundle2 --param 42babar
8532f5e1b9df bundle2: force the first char of parameter to be an letter.
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20813
diff changeset
436 abort: non letter first character: '42babar'
8532f5e1b9df bundle2: force the first char of parameter to be an letter.
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20813
diff changeset
437 [255]
20856
8a6a86c9a5b5 bundle2: support bundling of empty part (with a type)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20844
diff changeset
438
8a6a86c9a5b5 bundle2: support bundling of empty part (with a type)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20844
diff changeset
439
8a6a86c9a5b5 bundle2: support bundling of empty part (with a type)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20844
diff changeset
440 Test part
8a6a86c9a5b5 bundle2: support bundling of empty part (with a type)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20844
diff changeset
441 =================
8a6a86c9a5b5 bundle2: support bundling of empty part (with a type)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20844
diff changeset
442
25336
7c60a42265fb bundle2: hide bundle2 stream debug under a config flag
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25334
diff changeset
443 $ hg bundle2 --parts ../parts.hg2 --debug --config progress.debug=true --config devel.bundle2.debug=true
25322
1f7c0403f8be bundle2: add generic debug output regarding generated bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25321
diff changeset
444 bundle2-output-bundle: "HG20", 7 parts total
25314
18c2bcc2c9d5 bundle2: prefix all bundling debug messages with 'bundle2-ouput:'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25125
diff changeset
445 bundle2-output: start emission of HG20 stream
18c2bcc2c9d5 bundle2: prefix all bundling debug messages with 'bundle2-ouput:'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25125
diff changeset
446 bundle2-output: bundle parameter:
18c2bcc2c9d5 bundle2: prefix all bundling debug messages with 'bundle2-ouput:'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25125
diff changeset
447 bundle2-output: start of parts
18c2bcc2c9d5 bundle2: prefix all bundling debug messages with 'bundle2-ouput:'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25125
diff changeset
448 bundle2-output: bundle part: "test:empty"
25323
21a25fb81d2c bundle2: add generic debug output regarding generated parts
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25322
diff changeset
449 bundle2-output-part: "test:empty" (advisory) empty payload
25321
b44ee346211f bundle2: add debug output for part generation
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25319
diff changeset
450 bundle2-output: part 0: "test:empty"
b44ee346211f bundle2: add debug output for part generation
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25319
diff changeset
451 bundle2-output: header chunk size: 17
b44ee346211f bundle2: add debug output for part generation
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25319
diff changeset
452 bundle2-output: closing payload chunk
25314
18c2bcc2c9d5 bundle2: prefix all bundling debug messages with 'bundle2-ouput:'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25125
diff changeset
453 bundle2-output: bundle part: "test:empty"
25323
21a25fb81d2c bundle2: add generic debug output regarding generated parts
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25322
diff changeset
454 bundle2-output-part: "test:empty" (advisory) empty payload
25321
b44ee346211f bundle2: add debug output for part generation
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25319
diff changeset
455 bundle2-output: part 1: "test:empty"
b44ee346211f bundle2: add debug output for part generation
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25319
diff changeset
456 bundle2-output: header chunk size: 17
b44ee346211f bundle2: add debug output for part generation
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25319
diff changeset
457 bundle2-output: closing payload chunk
25314
18c2bcc2c9d5 bundle2: prefix all bundling debug messages with 'bundle2-ouput:'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25125
diff changeset
458 bundle2-output: bundle part: "test:song"
25323
21a25fb81d2c bundle2: add generic debug output regarding generated parts
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25322
diff changeset
459 bundle2-output-part: "test:song" (advisory) 178 bytes payload
25321
b44ee346211f bundle2: add debug output for part generation
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25319
diff changeset
460 bundle2-output: part 2: "test:song"
b44ee346211f bundle2: add debug output for part generation
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25319
diff changeset
461 bundle2-output: header chunk size: 16
b44ee346211f bundle2: add debug output for part generation
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25319
diff changeset
462 bundle2-output: payload chunk size: 178
b44ee346211f bundle2: add debug output for part generation
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25319
diff changeset
463 bundle2-output: closing payload chunk
25314
18c2bcc2c9d5 bundle2: prefix all bundling debug messages with 'bundle2-ouput:'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25125
diff changeset
464 bundle2-output: bundle part: "test:debugreply"
25323
21a25fb81d2c bundle2: add generic debug output regarding generated parts
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25322
diff changeset
465 bundle2-output-part: "test:debugreply" (advisory) empty payload
25321
b44ee346211f bundle2: add debug output for part generation
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25319
diff changeset
466 bundle2-output: part 3: "test:debugreply"
b44ee346211f bundle2: add debug output for part generation
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25319
diff changeset
467 bundle2-output: header chunk size: 22
b44ee346211f bundle2: add debug output for part generation
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25319
diff changeset
468 bundle2-output: closing payload chunk
25314
18c2bcc2c9d5 bundle2: prefix all bundling debug messages with 'bundle2-ouput:'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25125
diff changeset
469 bundle2-output: bundle part: "test:math"
25323
21a25fb81d2c bundle2: add generic debug output regarding generated parts
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25322
diff changeset
470 bundle2-output-part: "test:math" (advisory) (params: 2 mandatory 2 advisory) 2 bytes payload
25321
b44ee346211f bundle2: add debug output for part generation
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25319
diff changeset
471 bundle2-output: part 4: "test:math"
b44ee346211f bundle2: add debug output for part generation
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25319
diff changeset
472 bundle2-output: header chunk size: 43
b44ee346211f bundle2: add debug output for part generation
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25319
diff changeset
473 bundle2-output: payload chunk size: 2
b44ee346211f bundle2: add debug output for part generation
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25319
diff changeset
474 bundle2-output: closing payload chunk
25314
18c2bcc2c9d5 bundle2: prefix all bundling debug messages with 'bundle2-ouput:'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25125
diff changeset
475 bundle2-output: bundle part: "test:song"
25323
21a25fb81d2c bundle2: add generic debug output regarding generated parts
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25322
diff changeset
476 bundle2-output-part: "test:song" (advisory) (params: 1 mandatory) empty payload
25321
b44ee346211f bundle2: add debug output for part generation
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25319
diff changeset
477 bundle2-output: part 5: "test:song"
b44ee346211f bundle2: add debug output for part generation
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25319
diff changeset
478 bundle2-output: header chunk size: 29
b44ee346211f bundle2: add debug output for part generation
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25319
diff changeset
479 bundle2-output: closing payload chunk
25314
18c2bcc2c9d5 bundle2: prefix all bundling debug messages with 'bundle2-ouput:'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25125
diff changeset
480 bundle2-output: bundle part: "test:ping"
25323
21a25fb81d2c bundle2: add generic debug output regarding generated parts
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25322
diff changeset
481 bundle2-output-part: "test:ping" (advisory) empty payload
25321
b44ee346211f bundle2: add debug output for part generation
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25319
diff changeset
482 bundle2-output: part 6: "test:ping"
b44ee346211f bundle2: add debug output for part generation
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25319
diff changeset
483 bundle2-output: header chunk size: 16
b44ee346211f bundle2: add debug output for part generation
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25319
diff changeset
484 bundle2-output: closing payload chunk
25314
18c2bcc2c9d5 bundle2: prefix all bundling debug messages with 'bundle2-ouput:'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25125
diff changeset
485 bundle2-output: end of bundle
20856
8a6a86c9a5b5 bundle2: support bundling of empty part (with a type)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20844
diff changeset
486
26403
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
487 $ f --hexdump ../parts.hg2
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
488 ../parts.hg2:
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
489 0000: 48 47 32 30 00 00 00 00 00 00 00 11 0a 74 65 73 |HG20.........tes|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
490 0010: 74 3a 65 6d 70 74 79 00 00 00 00 00 00 00 00 00 |t:empty.........|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
491 0020: 00 00 00 00 11 0a 74 65 73 74 3a 65 6d 70 74 79 |......test:empty|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
492 0030: 00 00 00 01 00 00 00 00 00 00 00 00 00 10 09 74 |...............t|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
493 0040: 65 73 74 3a 73 6f 6e 67 00 00 00 02 00 00 00 00 |est:song........|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
494 0050: 00 b2 50 61 74 61 6c 69 20 44 69 72 61 70 61 74 |..Patali Dirapat|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
495 0060: 61 2c 20 43 72 6f 6d 64 61 20 43 72 6f 6d 64 61 |a, Cromda Cromda|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
496 0070: 20 52 69 70 61 6c 6f 2c 20 50 61 74 61 20 50 61 | Ripalo, Pata Pa|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
497 0080: 74 61 2c 20 4b 6f 20 4b 6f 20 4b 6f 0a 42 6f 6b |ta, Ko Ko Ko.Bok|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
498 0090: 6f 72 6f 20 44 69 70 6f 75 6c 69 74 6f 2c 20 52 |oro Dipoulito, R|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
499 00a0: 6f 6e 64 69 20 52 6f 6e 64 69 20 50 65 70 69 6e |ondi Rondi Pepin|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
500 00b0: 6f 2c 20 50 61 74 61 20 50 61 74 61 2c 20 4b 6f |o, Pata Pata, Ko|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
501 00c0: 20 4b 6f 20 4b 6f 0a 45 6d 61 6e 61 20 4b 61 72 | Ko Ko.Emana Kar|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
502 00d0: 61 73 73 6f 6c 69 2c 20 4c 6f 75 63 72 61 20 4c |assoli, Loucra L|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
503 00e0: 6f 75 63 72 61 20 50 6f 6e 70 6f 6e 74 6f 2c 20 |oucra Ponponto, |
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
504 00f0: 50 61 74 61 20 50 61 74 61 2c 20 4b 6f 20 4b 6f |Pata Pata, Ko Ko|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
505 0100: 20 4b 6f 2e 00 00 00 00 00 00 00 16 0f 74 65 73 | Ko..........tes|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
506 0110: 74 3a 64 65 62 75 67 72 65 70 6c 79 00 00 00 03 |t:debugreply....|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
507 0120: 00 00 00 00 00 00 00 00 00 2b 09 74 65 73 74 3a |.........+.test:|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
508 0130: 6d 61 74 68 00 00 00 04 02 01 02 04 01 04 07 03 |math............|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
509 0140: 70 69 33 2e 31 34 65 32 2e 37 32 63 6f 6f 6b 69 |pi3.14e2.72cooki|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
510 0150: 6e 67 72 61 77 00 00 00 02 34 32 00 00 00 00 00 |ngraw....42.....|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
511 0160: 00 00 1d 09 74 65 73 74 3a 73 6f 6e 67 00 00 00 |....test:song...|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
512 0170: 05 01 00 0b 00 72 61 6e 64 6f 6d 70 61 72 61 6d |.....randomparam|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
513 0180: 00 00 00 00 00 00 00 10 09 74 65 73 74 3a 70 69 |.........test:pi|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
514 0190: 6e 67 00 00 00 06 00 00 00 00 00 00 00 00 00 00 |ng..............|
20856
8a6a86c9a5b5 bundle2: support bundling of empty part (with a type)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20844
diff changeset
515
8a6a86c9a5b5 bundle2: support bundling of empty part (with a type)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20844
diff changeset
516
20888
0b0d3800c248 bundle2: rename unbundle2 test command to statbundle2
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20877
diff changeset
517 $ hg statbundle2 < ../parts.hg2
20864
9a75d2559cff bundle2: support unbundling empty part
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20856
diff changeset
518 options count: 0
20876
ddd56f3eb786 bundle2: support for bundling and unbundling payload
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20864
diff changeset
519 :test:empty:
20877
9e9e3a4e9261 bundle2: part params
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20876
diff changeset
520 mandatory: 0
9e9e3a4e9261 bundle2: part params
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20876
diff changeset
521 advisory: 0
20876
ddd56f3eb786 bundle2: support for bundling and unbundling payload
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20864
diff changeset
522 payload: 0 bytes
20864
9a75d2559cff bundle2: support unbundling empty part
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20856
diff changeset
523 :test:empty:
20877
9e9e3a4e9261 bundle2: part params
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20876
diff changeset
524 mandatory: 0
9e9e3a4e9261 bundle2: part params
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20876
diff changeset
525 advisory: 0
20876
ddd56f3eb786 bundle2: support for bundling and unbundling payload
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20864
diff changeset
526 payload: 0 bytes
ddd56f3eb786 bundle2: support for bundling and unbundling payload
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20864
diff changeset
527 :test:song:
20877
9e9e3a4e9261 bundle2: part params
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20876
diff changeset
528 mandatory: 0
9e9e3a4e9261 bundle2: part params
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20876
diff changeset
529 advisory: 0
20876
ddd56f3eb786 bundle2: support for bundling and unbundling payload
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20864
diff changeset
530 payload: 178 bytes
21135
98fbf3adfd83 bundle2: add capabilities support in `replycaps` part
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21133
diff changeset
531 :test:debugreply:
98fbf3adfd83 bundle2: add capabilities support in `replycaps` part
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21133
diff changeset
532 mandatory: 0
98fbf3adfd83 bundle2: add capabilities support in `replycaps` part
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21133
diff changeset
533 advisory: 0
98fbf3adfd83 bundle2: add capabilities support in `replycaps` part
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21133
diff changeset
534 payload: 0 bytes
20877
9e9e3a4e9261 bundle2: part params
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20876
diff changeset
535 :test:math:
9e9e3a4e9261 bundle2: part params
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20876
diff changeset
536 mandatory: 2
9e9e3a4e9261 bundle2: part params
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20876
diff changeset
537 advisory: 1
9e9e3a4e9261 bundle2: part params
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20876
diff changeset
538 payload: 2 bytes
21626
985d139c8e8f bundle2: ignore advisory part with unknown parameters
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21625
diff changeset
539 :test:song:
985d139c8e8f bundle2: ignore advisory part with unknown parameters
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21625
diff changeset
540 mandatory: 1
985d139c8e8f bundle2: ignore advisory part with unknown parameters
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21625
diff changeset
541 advisory: 0
985d139c8e8f bundle2: ignore advisory part with unknown parameters
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21625
diff changeset
542 payload: 0 bytes
20997
d7df4b7378ae bundle2: produce a bundle2 reply
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20995
diff changeset
543 :test:ping:
d7df4b7378ae bundle2: produce a bundle2 reply
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20995
diff changeset
544 mandatory: 0
d7df4b7378ae bundle2: produce a bundle2 reply
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20995
diff changeset
545 advisory: 0
d7df4b7378ae bundle2: produce a bundle2 reply
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20995
diff changeset
546 payload: 0 bytes
21626
985d139c8e8f bundle2: ignore advisory part with unknown parameters
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21625
diff changeset
547 parts count: 7
20864
9a75d2559cff bundle2: support unbundling empty part
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20856
diff changeset
548
25336
7c60a42265fb bundle2: hide bundle2 stream debug under a config flag
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25334
diff changeset
549 $ hg statbundle2 --debug --config progress.debug=true --config devel.bundle2.debug=true < ../parts.hg2
25319
c3ef4f3b8680 bundle2: prefix all unbundling debug message with 'bundle2-input:'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25314
diff changeset
550 bundle2-input: start processing of HG20 stream
c3ef4f3b8680 bundle2: prefix all unbundling debug message with 'bundle2-input:'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25314
diff changeset
551 bundle2-input: reading bundle2 stream parameters
20864
9a75d2559cff bundle2: support unbundling empty part
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20856
diff changeset
552 options count: 0
25319
c3ef4f3b8680 bundle2: prefix all unbundling debug message with 'bundle2-input:'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25314
diff changeset
553 bundle2-input: start extraction of bundle2 parts
c3ef4f3b8680 bundle2: prefix all unbundling debug message with 'bundle2-input:'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25314
diff changeset
554 bundle2-input: part header size: 17
c3ef4f3b8680 bundle2: prefix all unbundling debug message with 'bundle2-input:'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25314
diff changeset
555 bundle2-input: part type: "test:empty"
c3ef4f3b8680 bundle2: prefix all unbundling debug message with 'bundle2-input:'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25314
diff changeset
556 bundle2-input: part id: "0"
c3ef4f3b8680 bundle2: prefix all unbundling debug message with 'bundle2-input:'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25314
diff changeset
557 bundle2-input: part parameters: 0
21017
8de8187e6f48 bundle2: lazily iterate over bundle parts in the test
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21005
diff changeset
558 :test:empty:
8de8187e6f48 bundle2: lazily iterate over bundle parts in the test
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21005
diff changeset
559 mandatory: 0
8de8187e6f48 bundle2: lazily iterate over bundle parts in the test
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21005
diff changeset
560 advisory: 0
25319
c3ef4f3b8680 bundle2: prefix all unbundling debug message with 'bundle2-input:'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25314
diff changeset
561 bundle2-input: payload chunk size: 0
21017
8de8187e6f48 bundle2: lazily iterate over bundle parts in the test
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21005
diff changeset
562 payload: 0 bytes
25319
c3ef4f3b8680 bundle2: prefix all unbundling debug message with 'bundle2-input:'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25314
diff changeset
563 bundle2-input: part header size: 17
c3ef4f3b8680 bundle2: prefix all unbundling debug message with 'bundle2-input:'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25314
diff changeset
564 bundle2-input: part type: "test:empty"
c3ef4f3b8680 bundle2: prefix all unbundling debug message with 'bundle2-input:'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25314
diff changeset
565 bundle2-input: part id: "1"
c3ef4f3b8680 bundle2: prefix all unbundling debug message with 'bundle2-input:'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25314
diff changeset
566 bundle2-input: part parameters: 0
21017
8de8187e6f48 bundle2: lazily iterate over bundle parts in the test
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21005
diff changeset
567 :test:empty:
8de8187e6f48 bundle2: lazily iterate over bundle parts in the test
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21005
diff changeset
568 mandatory: 0
8de8187e6f48 bundle2: lazily iterate over bundle parts in the test
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21005
diff changeset
569 advisory: 0
25319
c3ef4f3b8680 bundle2: prefix all unbundling debug message with 'bundle2-input:'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25314
diff changeset
570 bundle2-input: payload chunk size: 0
21017
8de8187e6f48 bundle2: lazily iterate over bundle parts in the test
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21005
diff changeset
571 payload: 0 bytes
25319
c3ef4f3b8680 bundle2: prefix all unbundling debug message with 'bundle2-input:'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25314
diff changeset
572 bundle2-input: part header size: 16
c3ef4f3b8680 bundle2: prefix all unbundling debug message with 'bundle2-input:'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25314
diff changeset
573 bundle2-input: part type: "test:song"
c3ef4f3b8680 bundle2: prefix all unbundling debug message with 'bundle2-input:'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25314
diff changeset
574 bundle2-input: part id: "2"
c3ef4f3b8680 bundle2: prefix all unbundling debug message with 'bundle2-input:'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25314
diff changeset
575 bundle2-input: part parameters: 0
21017
8de8187e6f48 bundle2: lazily iterate over bundle parts in the test
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21005
diff changeset
576 :test:song:
8de8187e6f48 bundle2: lazily iterate over bundle parts in the test
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21005
diff changeset
577 mandatory: 0
8de8187e6f48 bundle2: lazily iterate over bundle parts in the test
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21005
diff changeset
578 advisory: 0
25319
c3ef4f3b8680 bundle2: prefix all unbundling debug message with 'bundle2-input:'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25314
diff changeset
579 bundle2-input: payload chunk size: 178
c3ef4f3b8680 bundle2: prefix all unbundling debug message with 'bundle2-input:'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25314
diff changeset
580 bundle2-input: payload chunk size: 0
25334
76cba1ecf55f bundle2: add generic debug output regarding processed part payload
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25333
diff changeset
581 bundle2-input-part: total payload size 178
21017
8de8187e6f48 bundle2: lazily iterate over bundle parts in the test
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21005
diff changeset
582 payload: 178 bytes
25319
c3ef4f3b8680 bundle2: prefix all unbundling debug message with 'bundle2-input:'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25314
diff changeset
583 bundle2-input: part header size: 22
c3ef4f3b8680 bundle2: prefix all unbundling debug message with 'bundle2-input:'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25314
diff changeset
584 bundle2-input: part type: "test:debugreply"
c3ef4f3b8680 bundle2: prefix all unbundling debug message with 'bundle2-input:'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25314
diff changeset
585 bundle2-input: part id: "3"
c3ef4f3b8680 bundle2: prefix all unbundling debug message with 'bundle2-input:'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25314
diff changeset
586 bundle2-input: part parameters: 0
21135
98fbf3adfd83 bundle2: add capabilities support in `replycaps` part
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21133
diff changeset
587 :test:debugreply:
98fbf3adfd83 bundle2: add capabilities support in `replycaps` part
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21133
diff changeset
588 mandatory: 0
98fbf3adfd83 bundle2: add capabilities support in `replycaps` part
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21133
diff changeset
589 advisory: 0
25319
c3ef4f3b8680 bundle2: prefix all unbundling debug message with 'bundle2-input:'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25314
diff changeset
590 bundle2-input: payload chunk size: 0
21135
98fbf3adfd83 bundle2: add capabilities support in `replycaps` part
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21133
diff changeset
591 payload: 0 bytes
25319
c3ef4f3b8680 bundle2: prefix all unbundling debug message with 'bundle2-input:'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25314
diff changeset
592 bundle2-input: part header size: 43
c3ef4f3b8680 bundle2: prefix all unbundling debug message with 'bundle2-input:'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25314
diff changeset
593 bundle2-input: part type: "test:math"
c3ef4f3b8680 bundle2: prefix all unbundling debug message with 'bundle2-input:'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25314
diff changeset
594 bundle2-input: part id: "4"
c3ef4f3b8680 bundle2: prefix all unbundling debug message with 'bundle2-input:'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25314
diff changeset
595 bundle2-input: part parameters: 3
21017
8de8187e6f48 bundle2: lazily iterate over bundle parts in the test
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21005
diff changeset
596 :test:math:
8de8187e6f48 bundle2: lazily iterate over bundle parts in the test
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21005
diff changeset
597 mandatory: 2
8de8187e6f48 bundle2: lazily iterate over bundle parts in the test
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21005
diff changeset
598 advisory: 1
25319
c3ef4f3b8680 bundle2: prefix all unbundling debug message with 'bundle2-input:'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25314
diff changeset
599 bundle2-input: payload chunk size: 2
c3ef4f3b8680 bundle2: prefix all unbundling debug message with 'bundle2-input:'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25314
diff changeset
600 bundle2-input: payload chunk size: 0
25334
76cba1ecf55f bundle2: add generic debug output regarding processed part payload
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25333
diff changeset
601 bundle2-input-part: total payload size 2
21017
8de8187e6f48 bundle2: lazily iterate over bundle parts in the test
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21005
diff changeset
602 payload: 2 bytes
25319
c3ef4f3b8680 bundle2: prefix all unbundling debug message with 'bundle2-input:'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25314
diff changeset
603 bundle2-input: part header size: 29
c3ef4f3b8680 bundle2: prefix all unbundling debug message with 'bundle2-input:'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25314
diff changeset
604 bundle2-input: part type: "test:song"
c3ef4f3b8680 bundle2: prefix all unbundling debug message with 'bundle2-input:'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25314
diff changeset
605 bundle2-input: part id: "5"
c3ef4f3b8680 bundle2: prefix all unbundling debug message with 'bundle2-input:'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25314
diff changeset
606 bundle2-input: part parameters: 1
21626
985d139c8e8f bundle2: ignore advisory part with unknown parameters
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21625
diff changeset
607 :test:song:
985d139c8e8f bundle2: ignore advisory part with unknown parameters
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21625
diff changeset
608 mandatory: 1
985d139c8e8f bundle2: ignore advisory part with unknown parameters
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21625
diff changeset
609 advisory: 0
25319
c3ef4f3b8680 bundle2: prefix all unbundling debug message with 'bundle2-input:'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25314
diff changeset
610 bundle2-input: payload chunk size: 0
21626
985d139c8e8f bundle2: ignore advisory part with unknown parameters
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21625
diff changeset
611 payload: 0 bytes
25319
c3ef4f3b8680 bundle2: prefix all unbundling debug message with 'bundle2-input:'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25314
diff changeset
612 bundle2-input: part header size: 16
c3ef4f3b8680 bundle2: prefix all unbundling debug message with 'bundle2-input:'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25314
diff changeset
613 bundle2-input: part type: "test:ping"
c3ef4f3b8680 bundle2: prefix all unbundling debug message with 'bundle2-input:'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25314
diff changeset
614 bundle2-input: part id: "6"
c3ef4f3b8680 bundle2: prefix all unbundling debug message with 'bundle2-input:'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25314
diff changeset
615 bundle2-input: part parameters: 0
20997
d7df4b7378ae bundle2: produce a bundle2 reply
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20995
diff changeset
616 :test:ping:
d7df4b7378ae bundle2: produce a bundle2 reply
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20995
diff changeset
617 mandatory: 0
d7df4b7378ae bundle2: produce a bundle2 reply
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20995
diff changeset
618 advisory: 0
25319
c3ef4f3b8680 bundle2: prefix all unbundling debug message with 'bundle2-input:'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25314
diff changeset
619 bundle2-input: payload chunk size: 0
20997
d7df4b7378ae bundle2: produce a bundle2 reply
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20995
diff changeset
620 payload: 0 bytes
25319
c3ef4f3b8680 bundle2: prefix all unbundling debug message with 'bundle2-input:'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25314
diff changeset
621 bundle2-input: part header size: 0
c3ef4f3b8680 bundle2: prefix all unbundling debug message with 'bundle2-input:'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25314
diff changeset
622 bundle2-input: end of bundle2 stream
21626
985d139c8e8f bundle2: ignore advisory part with unknown parameters
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21625
diff changeset
623 parts count: 7
20889
deed5edb72de bundle2: first version of a bundle processing
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20888
diff changeset
624
20950
c7ceae0faf69 bundle2: first crude version of bundling changeset with bundle2
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20949
diff changeset
625 Test actual unbundling of test part
c7ceae0faf69 bundle2: first crude version of bundling changeset with bundle2
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20949
diff changeset
626 =======================================
20889
deed5edb72de bundle2: first version of a bundle processing
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20888
diff changeset
627
deed5edb72de bundle2: first version of a bundle processing
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20888
diff changeset
628 Process the bundle
deed5edb72de bundle2: first version of a bundle processing
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20888
diff changeset
629
25336
7c60a42265fb bundle2: hide bundle2 stream debug under a config flag
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25334
diff changeset
630 $ hg unbundle2 --debug --config progress.debug=true --config devel.bundle2.debug=true < ../parts.hg2
25319
c3ef4f3b8680 bundle2: prefix all unbundling debug message with 'bundle2-input:'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25314
diff changeset
631 bundle2-input: start processing of HG20 stream
c3ef4f3b8680 bundle2: prefix all unbundling debug message with 'bundle2-input:'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25314
diff changeset
632 bundle2-input: reading bundle2 stream parameters
25331
53ca47ef645d bundle2: add generic debug output regarding processed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25323
diff changeset
633 bundle2-input-bundle: with-transaction
25319
c3ef4f3b8680 bundle2: prefix all unbundling debug message with 'bundle2-input:'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25314
diff changeset
634 bundle2-input: start extraction of bundle2 parts
c3ef4f3b8680 bundle2: prefix all unbundling debug message with 'bundle2-input:'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25314
diff changeset
635 bundle2-input: part header size: 17
c3ef4f3b8680 bundle2: prefix all unbundling debug message with 'bundle2-input:'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25314
diff changeset
636 bundle2-input: part type: "test:empty"
c3ef4f3b8680 bundle2: prefix all unbundling debug message with 'bundle2-input:'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25314
diff changeset
637 bundle2-input: part id: "0"
c3ef4f3b8680 bundle2: prefix all unbundling debug message with 'bundle2-input:'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25314
diff changeset
638 bundle2-input: part parameters: 0
c3ef4f3b8680 bundle2: prefix all unbundling debug message with 'bundle2-input:'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25314
diff changeset
639 bundle2-input: ignoring unsupported advisory part test:empty
25333
5bfffdbdc907 bundle2: add generic debug output regarding processed part
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25332
diff changeset
640 bundle2-input-part: "test:empty" (advisory) unsupported-type
25319
c3ef4f3b8680 bundle2: prefix all unbundling debug message with 'bundle2-input:'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25314
diff changeset
641 bundle2-input: payload chunk size: 0
c3ef4f3b8680 bundle2: prefix all unbundling debug message with 'bundle2-input:'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25314
diff changeset
642 bundle2-input: part header size: 17
c3ef4f3b8680 bundle2: prefix all unbundling debug message with 'bundle2-input:'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25314
diff changeset
643 bundle2-input: part type: "test:empty"
c3ef4f3b8680 bundle2: prefix all unbundling debug message with 'bundle2-input:'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25314
diff changeset
644 bundle2-input: part id: "1"
c3ef4f3b8680 bundle2: prefix all unbundling debug message with 'bundle2-input:'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25314
diff changeset
645 bundle2-input: part parameters: 0
c3ef4f3b8680 bundle2: prefix all unbundling debug message with 'bundle2-input:'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25314
diff changeset
646 bundle2-input: ignoring unsupported advisory part test:empty
25333
5bfffdbdc907 bundle2: add generic debug output regarding processed part
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25332
diff changeset
647 bundle2-input-part: "test:empty" (advisory) unsupported-type
25319
c3ef4f3b8680 bundle2: prefix all unbundling debug message with 'bundle2-input:'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25314
diff changeset
648 bundle2-input: payload chunk size: 0
c3ef4f3b8680 bundle2: prefix all unbundling debug message with 'bundle2-input:'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25314
diff changeset
649 bundle2-input: part header size: 16
c3ef4f3b8680 bundle2: prefix all unbundling debug message with 'bundle2-input:'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25314
diff changeset
650 bundle2-input: part type: "test:song"
c3ef4f3b8680 bundle2: prefix all unbundling debug message with 'bundle2-input:'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25314
diff changeset
651 bundle2-input: part id: "2"
c3ef4f3b8680 bundle2: prefix all unbundling debug message with 'bundle2-input:'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25314
diff changeset
652 bundle2-input: part parameters: 0
c3ef4f3b8680 bundle2: prefix all unbundling debug message with 'bundle2-input:'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25314
diff changeset
653 bundle2-input: found a handler for part 'test:song'
25333
5bfffdbdc907 bundle2: add generic debug output regarding processed part
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25332
diff changeset
654 bundle2-input-part: "test:song" (advisory) supported
21019
3dc09f831a2e bundle2: lazy unbundle of part payload
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21017
diff changeset
655 The choir starts singing:
25319
c3ef4f3b8680 bundle2: prefix all unbundling debug message with 'bundle2-input:'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25314
diff changeset
656 bundle2-input: payload chunk size: 178
c3ef4f3b8680 bundle2: prefix all unbundling debug message with 'bundle2-input:'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25314
diff changeset
657 bundle2-input: payload chunk size: 0
25334
76cba1ecf55f bundle2: add generic debug output regarding processed part payload
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25333
diff changeset
658 bundle2-input-part: total payload size 178
20889
deed5edb72de bundle2: first version of a bundle processing
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20888
diff changeset
659 Patali Dirapata, Cromda Cromda Ripalo, Pata Pata, Ko Ko Ko
deed5edb72de bundle2: first version of a bundle processing
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20888
diff changeset
660 Bokoro Dipoulito, Rondi Rondi Pepino, Pata Pata, Ko Ko Ko
deed5edb72de bundle2: first version of a bundle processing
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20888
diff changeset
661 Emana Karassoli, Loucra Loucra Ponponto, Pata Pata, Ko Ko Ko.
25319
c3ef4f3b8680 bundle2: prefix all unbundling debug message with 'bundle2-input:'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25314
diff changeset
662 bundle2-input: part header size: 22
c3ef4f3b8680 bundle2: prefix all unbundling debug message with 'bundle2-input:'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25314
diff changeset
663 bundle2-input: part type: "test:debugreply"
c3ef4f3b8680 bundle2: prefix all unbundling debug message with 'bundle2-input:'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25314
diff changeset
664 bundle2-input: part id: "3"
c3ef4f3b8680 bundle2: prefix all unbundling debug message with 'bundle2-input:'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25314
diff changeset
665 bundle2-input: part parameters: 0
c3ef4f3b8680 bundle2: prefix all unbundling debug message with 'bundle2-input:'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25314
diff changeset
666 bundle2-input: found a handler for part 'test:debugreply'
25333
5bfffdbdc907 bundle2: add generic debug output regarding processed part
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25332
diff changeset
667 bundle2-input-part: "test:debugreply" (advisory) supported
21135
98fbf3adfd83 bundle2: add capabilities support in `replycaps` part
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21133
diff changeset
668 debugreply: no reply
25319
c3ef4f3b8680 bundle2: prefix all unbundling debug message with 'bundle2-input:'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25314
diff changeset
669 bundle2-input: payload chunk size: 0
c3ef4f3b8680 bundle2: prefix all unbundling debug message with 'bundle2-input:'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25314
diff changeset
670 bundle2-input: part header size: 43
c3ef4f3b8680 bundle2: prefix all unbundling debug message with 'bundle2-input:'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25314
diff changeset
671 bundle2-input: part type: "test:math"
c3ef4f3b8680 bundle2: prefix all unbundling debug message with 'bundle2-input:'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25314
diff changeset
672 bundle2-input: part id: "4"
c3ef4f3b8680 bundle2: prefix all unbundling debug message with 'bundle2-input:'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25314
diff changeset
673 bundle2-input: part parameters: 3
c3ef4f3b8680 bundle2: prefix all unbundling debug message with 'bundle2-input:'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25314
diff changeset
674 bundle2-input: ignoring unsupported advisory part test:math
25333
5bfffdbdc907 bundle2: add generic debug output regarding processed part
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25332
diff changeset
675 bundle2-input-part: "test:math" (advisory) (params: 2 mandatory 2 advisory) unsupported-type
25319
c3ef4f3b8680 bundle2: prefix all unbundling debug message with 'bundle2-input:'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25314
diff changeset
676 bundle2-input: payload chunk size: 2
c3ef4f3b8680 bundle2: prefix all unbundling debug message with 'bundle2-input:'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25314
diff changeset
677 bundle2-input: payload chunk size: 0
25334
76cba1ecf55f bundle2: add generic debug output regarding processed part payload
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25333
diff changeset
678 bundle2-input-part: total payload size 2
25319
c3ef4f3b8680 bundle2: prefix all unbundling debug message with 'bundle2-input:'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25314
diff changeset
679 bundle2-input: part header size: 29
c3ef4f3b8680 bundle2: prefix all unbundling debug message with 'bundle2-input:'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25314
diff changeset
680 bundle2-input: part type: "test:song"
c3ef4f3b8680 bundle2: prefix all unbundling debug message with 'bundle2-input:'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25314
diff changeset
681 bundle2-input: part id: "5"
c3ef4f3b8680 bundle2: prefix all unbundling debug message with 'bundle2-input:'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25314
diff changeset
682 bundle2-input: part parameters: 1
c3ef4f3b8680 bundle2: prefix all unbundling debug message with 'bundle2-input:'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25314
diff changeset
683 bundle2-input: found a handler for part 'test:song'
c3ef4f3b8680 bundle2: prefix all unbundling debug message with 'bundle2-input:'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25314
diff changeset
684 bundle2-input: ignoring unsupported advisory part test:song - randomparam
25333
5bfffdbdc907 bundle2: add generic debug output regarding processed part
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25332
diff changeset
685 bundle2-input-part: "test:song" (advisory) (params: 1 mandatory) unsupported-params (['randomparam'])
25319
c3ef4f3b8680 bundle2: prefix all unbundling debug message with 'bundle2-input:'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25314
diff changeset
686 bundle2-input: payload chunk size: 0
c3ef4f3b8680 bundle2: prefix all unbundling debug message with 'bundle2-input:'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25314
diff changeset
687 bundle2-input: part header size: 16
c3ef4f3b8680 bundle2: prefix all unbundling debug message with 'bundle2-input:'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25314
diff changeset
688 bundle2-input: part type: "test:ping"
c3ef4f3b8680 bundle2: prefix all unbundling debug message with 'bundle2-input:'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25314
diff changeset
689 bundle2-input: part id: "6"
c3ef4f3b8680 bundle2: prefix all unbundling debug message with 'bundle2-input:'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25314
diff changeset
690 bundle2-input: part parameters: 0
c3ef4f3b8680 bundle2: prefix all unbundling debug message with 'bundle2-input:'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25314
diff changeset
691 bundle2-input: found a handler for part 'test:ping'
25333
5bfffdbdc907 bundle2: add generic debug output regarding processed part
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25332
diff changeset
692 bundle2-input-part: "test:ping" (advisory) supported
21626
985d139c8e8f bundle2: ignore advisory part with unknown parameters
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21625
diff changeset
693 received ping request (id 6)
25319
c3ef4f3b8680 bundle2: prefix all unbundling debug message with 'bundle2-input:'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25314
diff changeset
694 bundle2-input: payload chunk size: 0
c3ef4f3b8680 bundle2: prefix all unbundling debug message with 'bundle2-input:'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25314
diff changeset
695 bundle2-input: part header size: 0
c3ef4f3b8680 bundle2: prefix all unbundling debug message with 'bundle2-input:'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25314
diff changeset
696 bundle2-input: end of bundle2 stream
25332
0cdd1c811705 bundle2: add generic debug output at the end of bundle processing
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25331
diff changeset
697 bundle2-input-bundle: 6 parts total
20892
6fe95448596d bundle2: read the whole bundle from stream on abort
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20891
diff changeset
698 0 unread bytes
20949
571f2903ff1e bundle2: record processing results in the bundleoperation object
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20948
diff changeset
699 3 total verses sung
20891
1c6cd23fc221 bundle2: add some distinction between mandatory and advisory part
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20890
diff changeset
700
20997
d7df4b7378ae bundle2: produce a bundle2 reply
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20995
diff changeset
701 Unbundle with an unknown mandatory part
d7df4b7378ae bundle2: produce a bundle2 reply
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20995
diff changeset
702 (should abort)
20891
1c6cd23fc221 bundle2: add some distinction between mandatory and advisory part
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20890
diff changeset
703
1c6cd23fc221 bundle2: add some distinction between mandatory and advisory part
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20890
diff changeset
704 $ hg bundle2 --parts --unknown ../unknown.hg2
1c6cd23fc221 bundle2: add some distinction between mandatory and advisory part
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20890
diff changeset
705
1c6cd23fc221 bundle2: add some distinction between mandatory and advisory part
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20890
diff changeset
706 $ hg unbundle2 < ../unknown.hg2
20951
f977c732bf34 tests: fix test output typo
Matt Mackall <mpm@selenic.com>
parents: 20950
diff changeset
707 The choir starts singing:
20891
1c6cd23fc221 bundle2: add some distinction between mandatory and advisory part
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20890
diff changeset
708 Patali Dirapata, Cromda Cromda Ripalo, Pata Pata, Ko Ko Ko
1c6cd23fc221 bundle2: add some distinction between mandatory and advisory part
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20890
diff changeset
709 Bokoro Dipoulito, Rondi Rondi Pepino, Pata Pata, Ko Ko Ko
1c6cd23fc221 bundle2: add some distinction between mandatory and advisory part
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20890
diff changeset
710 Emana Karassoli, Loucra Loucra Ponponto, Pata Pata, Ko Ko Ko.
21135
98fbf3adfd83 bundle2: add capabilities support in `replycaps` part
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21133
diff changeset
711 debugreply: no reply
20892
6fe95448596d bundle2: read the whole bundle from stream on abort
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20891
diff changeset
712 0 unread bytes
21617
0cfda08afd24 bundle2: rename UnknownPartError to BundleValueError
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21605
diff changeset
713 abort: missing support for test:unknown
20891
1c6cd23fc221 bundle2: add some distinction between mandatory and advisory part
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20890
diff changeset
714 [255]
20950
c7ceae0faf69 bundle2: first crude version of bundling changeset with bundle2
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20949
diff changeset
715
21625
511f5fa63aa2 bundle2: enforce all parameters in a part to be handled
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21618
diff changeset
716 Unbundle with an unknown mandatory part parameters
511f5fa63aa2 bundle2: enforce all parameters in a part to be handled
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21618
diff changeset
717 (should abort)
511f5fa63aa2 bundle2: enforce all parameters in a part to be handled
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21618
diff changeset
718
511f5fa63aa2 bundle2: enforce all parameters in a part to be handled
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21618
diff changeset
719 $ hg bundle2 --unknownparams ../unknown.hg2
511f5fa63aa2 bundle2: enforce all parameters in a part to be handled
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21618
diff changeset
720
511f5fa63aa2 bundle2: enforce all parameters in a part to be handled
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21618
diff changeset
721 $ hg unbundle2 < ../unknown.hg2
511f5fa63aa2 bundle2: enforce all parameters in a part to be handled
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21618
diff changeset
722 0 unread bytes
511f5fa63aa2 bundle2: enforce all parameters in a part to be handled
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21618
diff changeset
723 abort: missing support for test:song - randomparams
511f5fa63aa2 bundle2: enforce all parameters in a part to be handled
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21618
diff changeset
724 [255]
511f5fa63aa2 bundle2: enforce all parameters in a part to be handled
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21618
diff changeset
725
20997
d7df4b7378ae bundle2: produce a bundle2 reply
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20995
diff changeset
726 unbundle with a reply
d7df4b7378ae bundle2: produce a bundle2 reply
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20995
diff changeset
727
21130
1ff06386217f bundle2: introduce `replycaps` part for on-demand reply
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21129
diff changeset
728 $ hg bundle2 --parts --reply ../parts-reply.hg2
1ff06386217f bundle2: introduce `replycaps` part for on-demand reply
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21129
diff changeset
729 $ hg unbundle2 ../reply.hg2 < ../parts-reply.hg2
20997
d7df4b7378ae bundle2: produce a bundle2 reply
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20995
diff changeset
730 0 unread bytes
d7df4b7378ae bundle2: produce a bundle2 reply
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20995
diff changeset
731 3 total verses sung
d7df4b7378ae bundle2: produce a bundle2 reply
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20995
diff changeset
732
d7df4b7378ae bundle2: produce a bundle2 reply
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20995
diff changeset
733 The reply is a bundle
d7df4b7378ae bundle2: produce a bundle2 reply
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20995
diff changeset
734
26403
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
735 $ f --hexdump ../reply.hg2
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
736 ../reply.hg2:
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
737 0000: 48 47 32 30 00 00 00 00 00 00 00 1b 06 6f 75 74 |HG20.........out|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
738 0010: 70 75 74 00 00 00 00 00 01 0b 01 69 6e 2d 72 65 |put........in-re|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
739 0020: 70 6c 79 2d 74 6f 33 00 00 00 d9 54 68 65 20 63 |ply-to3....The c|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
740 0030: 68 6f 69 72 20 73 74 61 72 74 73 20 73 69 6e 67 |hoir starts sing|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
741 0040: 69 6e 67 3a 0a 20 20 20 20 50 61 74 61 6c 69 20 |ing:. Patali |
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
742 0050: 44 69 72 61 70 61 74 61 2c 20 43 72 6f 6d 64 61 |Dirapata, Cromda|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
743 0060: 20 43 72 6f 6d 64 61 20 52 69 70 61 6c 6f 2c 20 | Cromda Ripalo, |
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
744 0070: 50 61 74 61 20 50 61 74 61 2c 20 4b 6f 20 4b 6f |Pata Pata, Ko Ko|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
745 0080: 20 4b 6f 0a 20 20 20 20 42 6f 6b 6f 72 6f 20 44 | Ko. Bokoro D|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
746 0090: 69 70 6f 75 6c 69 74 6f 2c 20 52 6f 6e 64 69 20 |ipoulito, Rondi |
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
747 00a0: 52 6f 6e 64 69 20 50 65 70 69 6e 6f 2c 20 50 61 |Rondi Pepino, Pa|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
748 00b0: 74 61 20 50 61 74 61 2c 20 4b 6f 20 4b 6f 20 4b |ta Pata, Ko Ko K|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
749 00c0: 6f 0a 20 20 20 20 45 6d 61 6e 61 20 4b 61 72 61 |o. Emana Kara|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
750 00d0: 73 73 6f 6c 69 2c 20 4c 6f 75 63 72 61 20 4c 6f |ssoli, Loucra Lo|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
751 00e0: 75 63 72 61 20 50 6f 6e 70 6f 6e 74 6f 2c 20 50 |ucra Ponponto, P|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
752 00f0: 61 74 61 20 50 61 74 61 2c 20 4b 6f 20 4b 6f 20 |ata Pata, Ko Ko |
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
753 0100: 4b 6f 2e 0a 00 00 00 00 00 00 00 1b 06 6f 75 74 |Ko...........out|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
754 0110: 70 75 74 00 00 00 01 00 01 0b 01 69 6e 2d 72 65 |put........in-re|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
755 0120: 70 6c 79 2d 74 6f 34 00 00 00 c9 64 65 62 75 67 |ply-to4....debug|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
756 0130: 72 65 70 6c 79 3a 20 63 61 70 61 62 69 6c 69 74 |reply: capabilit|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
757 0140: 69 65 73 3a 0a 64 65 62 75 67 72 65 70 6c 79 3a |ies:.debugreply:|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
758 0150: 20 20 20 20 20 27 63 69 74 79 3d 21 27 0a 64 65 | 'city=!'.de|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
759 0160: 62 75 67 72 65 70 6c 79 3a 20 20 20 20 20 20 20 |bugreply: |
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
760 0170: 20 20 27 63 65 6c 65 73 74 65 2c 76 69 6c 6c 65 | 'celeste,ville|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
761 0180: 27 0a 64 65 62 75 67 72 65 70 6c 79 3a 20 20 20 |'.debugreply: |
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
762 0190: 20 20 27 65 6c 65 70 68 61 6e 74 73 27 0a 64 65 | 'elephants'.de|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
763 01a0: 62 75 67 72 65 70 6c 79 3a 20 20 20 20 20 20 20 |bugreply: |
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
764 01b0: 20 20 27 62 61 62 61 72 27 0a 64 65 62 75 67 72 | 'babar'.debugr|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
765 01c0: 65 70 6c 79 3a 20 20 20 20 20 20 20 20 20 27 63 |eply: 'c|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
766 01d0: 65 6c 65 73 74 65 27 0a 64 65 62 75 67 72 65 70 |eleste'.debugrep|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
767 01e0: 6c 79 3a 20 20 20 20 20 27 70 69 6e 67 2d 70 6f |ly: 'ping-po|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
768 01f0: 6e 67 27 0a 00 00 00 00 00 00 00 1e 09 74 65 73 |ng'..........tes|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
769 0200: 74 3a 70 6f 6e 67 00 00 00 02 01 00 0b 01 69 6e |t:pong........in|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
770 0210: 2d 72 65 70 6c 79 2d 74 6f 37 00 00 00 00 00 00 |-reply-to7......|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
771 0220: 00 1b 06 6f 75 74 70 75 74 00 00 00 03 00 01 0b |...output.......|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
772 0230: 01 69 6e 2d 72 65 70 6c 79 2d 74 6f 37 00 00 00 |.in-reply-to7...|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
773 0240: 3d 72 65 63 65 69 76 65 64 20 70 69 6e 67 20 72 |=received ping r|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
774 0250: 65 71 75 65 73 74 20 28 69 64 20 37 29 0a 72 65 |equest (id 7).re|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
775 0260: 70 6c 79 69 6e 67 20 74 6f 20 70 69 6e 67 20 72 |plying to ping r|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
776 0270: 65 71 75 65 73 74 20 28 69 64 20 37 29 0a 00 00 |equest (id 7)...|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
777 0280: 00 00 00 00 00 00 |......|
20997
d7df4b7378ae bundle2: produce a bundle2 reply
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20995
diff changeset
778
d7df4b7378ae bundle2: produce a bundle2 reply
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20995
diff changeset
779 The reply is valid
d7df4b7378ae bundle2: produce a bundle2 reply
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20995
diff changeset
780
d7df4b7378ae bundle2: produce a bundle2 reply
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20995
diff changeset
781 $ hg statbundle2 < ../reply.hg2
d7df4b7378ae bundle2: produce a bundle2 reply
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20995
diff changeset
782 options count: 0
24686
e0e28e910fa3 bundle2: rename format, parts and config to final names
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 24641
diff changeset
783 :output:
21131
b7435117d951 bundle2: capture remote stdout while unbundling
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21130
diff changeset
784 mandatory: 0
b7435117d951 bundle2: capture remote stdout while unbundling
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21130
diff changeset
785 advisory: 1
b7435117d951 bundle2: capture remote stdout while unbundling
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21130
diff changeset
786 payload: 217 bytes
24686
e0e28e910fa3 bundle2: rename format, parts and config to final names
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 24641
diff changeset
787 :output:
21135
98fbf3adfd83 bundle2: add capabilities support in `replycaps` part
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21133
diff changeset
788 mandatory: 0
98fbf3adfd83 bundle2: add capabilities support in `replycaps` part
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21133
diff changeset
789 advisory: 1
21137
341a083603a5 bundle2: protect capabilities name and values with url quoting
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21136
diff changeset
790 payload: 201 bytes
20997
d7df4b7378ae bundle2: produce a bundle2 reply
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20995
diff changeset
791 :test:pong:
d7df4b7378ae bundle2: produce a bundle2 reply
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20995
diff changeset
792 mandatory: 1
d7df4b7378ae bundle2: produce a bundle2 reply
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20995
diff changeset
793 advisory: 0
d7df4b7378ae bundle2: produce a bundle2 reply
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20995
diff changeset
794 payload: 0 bytes
24686
e0e28e910fa3 bundle2: rename format, parts and config to final names
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 24641
diff changeset
795 :output:
21131
b7435117d951 bundle2: capture remote stdout while unbundling
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21130
diff changeset
796 mandatory: 0
b7435117d951 bundle2: capture remote stdout while unbundling
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21130
diff changeset
797 advisory: 1
21133
bef4a2adc532 bundle2: include stderr when capturing handlers output
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21131
diff changeset
798 payload: 61 bytes
21135
98fbf3adfd83 bundle2: add capabilities support in `replycaps` part
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21133
diff changeset
799 parts count: 4
21131
b7435117d951 bundle2: capture remote stdout while unbundling
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21130
diff changeset
800
b7435117d951 bundle2: capture remote stdout while unbundling
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21130
diff changeset
801 Unbundle the reply to get the output:
b7435117d951 bundle2: capture remote stdout while unbundling
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21130
diff changeset
802
b7435117d951 bundle2: capture remote stdout while unbundling
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21130
diff changeset
803 $ hg unbundle2 < ../reply.hg2
b7435117d951 bundle2: capture remote stdout while unbundling
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21130
diff changeset
804 remote: The choir starts singing:
b7435117d951 bundle2: capture remote stdout while unbundling
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21130
diff changeset
805 remote: Patali Dirapata, Cromda Cromda Ripalo, Pata Pata, Ko Ko Ko
b7435117d951 bundle2: capture remote stdout while unbundling
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21130
diff changeset
806 remote: Bokoro Dipoulito, Rondi Rondi Pepino, Pata Pata, Ko Ko Ko
b7435117d951 bundle2: capture remote stdout while unbundling
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21130
diff changeset
807 remote: Emana Karassoli, Loucra Loucra Ponponto, Pata Pata, Ko Ko Ko.
21135
98fbf3adfd83 bundle2: add capabilities support in `replycaps` part
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21133
diff changeset
808 remote: debugreply: capabilities:
21137
341a083603a5 bundle2: protect capabilities name and values with url quoting
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21136
diff changeset
809 remote: debugreply: 'city=!'
341a083603a5 bundle2: protect capabilities name and values with url quoting
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21136
diff changeset
810 remote: debugreply: 'celeste,ville'
21135
98fbf3adfd83 bundle2: add capabilities support in `replycaps` part
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21133
diff changeset
811 remote: debugreply: 'elephants'
21136
b6fd496e5c72 bundle2: support for capabilities with values
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21135
diff changeset
812 remote: debugreply: 'babar'
b6fd496e5c72 bundle2: support for capabilities with values
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21135
diff changeset
813 remote: debugreply: 'celeste'
21135
98fbf3adfd83 bundle2: add capabilities support in `replycaps` part
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21133
diff changeset
814 remote: debugreply: 'ping-pong'
21626
985d139c8e8f bundle2: ignore advisory part with unknown parameters
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21625
diff changeset
815 remote: received ping request (id 7)
985d139c8e8f bundle2: ignore advisory part with unknown parameters
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21625
diff changeset
816 remote: replying to ping request (id 7)
21131
b7435117d951 bundle2: capture remote stdout while unbundling
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21130
diff changeset
817 0 unread bytes
20997
d7df4b7378ae bundle2: produce a bundle2 reply
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20995
diff changeset
818
21184
28d76afa1568 bundle2: fix raising errors during heads checking
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21183
diff changeset
819 Test push race detection
28d76afa1568 bundle2: fix raising errors during heads checking
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21183
diff changeset
820
28d76afa1568 bundle2: fix raising errors during heads checking
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21183
diff changeset
821 $ hg bundle2 --pushrace ../part-race.hg2
28d76afa1568 bundle2: fix raising errors during heads checking
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21183
diff changeset
822
28d76afa1568 bundle2: fix raising errors during heads checking
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21183
diff changeset
823 $ hg unbundle2 < ../part-race.hg2
28d76afa1568 bundle2: fix raising errors during heads checking
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21183
diff changeset
824 0 unread bytes
21185
5b3717e1a3ea bundle2: add an error message to push race error
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21184
diff changeset
825 abort: push race: repository changed while pushing - please try again
21184
28d76afa1568 bundle2: fix raising errors during heads checking
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21183
diff changeset
826 [255]
28d76afa1568 bundle2: fix raising errors during heads checking
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21183
diff changeset
827
20950
c7ceae0faf69 bundle2: first crude version of bundling changeset with bundle2
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20949
diff changeset
828 Support for changegroup
c7ceae0faf69 bundle2: first crude version of bundling changeset with bundle2
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20949
diff changeset
829 ===================================
c7ceae0faf69 bundle2: first crude version of bundling changeset with bundle2
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20949
diff changeset
830
c7ceae0faf69 bundle2: first crude version of bundling changeset with bundle2
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20949
diff changeset
831 $ hg unbundle $TESTDIR/bundles/rebase.hg
c7ceae0faf69 bundle2: first crude version of bundling changeset with bundle2
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20949
diff changeset
832 adding changesets
c7ceae0faf69 bundle2: first crude version of bundling changeset with bundle2
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20949
diff changeset
833 adding manifests
c7ceae0faf69 bundle2: first crude version of bundling changeset with bundle2
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20949
diff changeset
834 adding file changes
c7ceae0faf69 bundle2: first crude version of bundling changeset with bundle2
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20949
diff changeset
835 added 8 changesets with 7 changes to 7 files (+3 heads)
c7ceae0faf69 bundle2: first crude version of bundling changeset with bundle2
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20949
diff changeset
836 (run 'hg heads' to see heads, 'hg merge' to merge)
c7ceae0faf69 bundle2: first crude version of bundling changeset with bundle2
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20949
diff changeset
837
c7ceae0faf69 bundle2: first crude version of bundling changeset with bundle2
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20949
diff changeset
838 $ hg log -G
22241
3dc3cf8d0e73 test-bundle2: add bookmark movement to the push test
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 22090
diff changeset
839 o 8:02de42196ebe draft Nicolas Dumazet <nicdumz.commits@gmail.com> H
20950
c7ceae0faf69 bundle2: first crude version of bundling changeset with bundle2
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20949
diff changeset
840 |
22241
3dc3cf8d0e73 test-bundle2: add bookmark movement to the push test
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 22090
diff changeset
841 | o 7:eea13746799a draft Nicolas Dumazet <nicdumz.commits@gmail.com> G
21647
1a6909f4ebb0 bundle2: use a smarter template for test
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21628
diff changeset
842 |/|
22241
3dc3cf8d0e73 test-bundle2: add bookmark movement to the push test
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 22090
diff changeset
843 o | 6:24b6387c8c8c draft Nicolas Dumazet <nicdumz.commits@gmail.com> F
20950
c7ceae0faf69 bundle2: first crude version of bundling changeset with bundle2
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20949
diff changeset
844 | |
22241
3dc3cf8d0e73 test-bundle2: add bookmark movement to the push test
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 22090
diff changeset
845 | o 5:9520eea781bc draft Nicolas Dumazet <nicdumz.commits@gmail.com> E
21647
1a6909f4ebb0 bundle2: use a smarter template for test
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21628
diff changeset
846 |/
22241
3dc3cf8d0e73 test-bundle2: add bookmark movement to the push test
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 22090
diff changeset
847 | o 4:32af7686d403 draft Nicolas Dumazet <nicdumz.commits@gmail.com> D
20950
c7ceae0faf69 bundle2: first crude version of bundling changeset with bundle2
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20949
diff changeset
848 | |
22241
3dc3cf8d0e73 test-bundle2: add bookmark movement to the push test
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 22090
diff changeset
849 | o 3:5fddd98957c8 draft Nicolas Dumazet <nicdumz.commits@gmail.com> C
21647
1a6909f4ebb0 bundle2: use a smarter template for test
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21628
diff changeset
850 | |
22241
3dc3cf8d0e73 test-bundle2: add bookmark movement to the push test
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 22090
diff changeset
851 | o 2:42ccdea3bb16 draft Nicolas Dumazet <nicdumz.commits@gmail.com> B
21647
1a6909f4ebb0 bundle2: use a smarter template for test
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21628
diff changeset
852 |/
22241
3dc3cf8d0e73 test-bundle2: add bookmark movement to the push test
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 22090
diff changeset
853 o 1:cd010b8cd998 draft Nicolas Dumazet <nicdumz.commits@gmail.com> A
20950
c7ceae0faf69 bundle2: first crude version of bundling changeset with bundle2
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20949
diff changeset
854
22241
3dc3cf8d0e73 test-bundle2: add bookmark movement to the push test
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 22090
diff changeset
855 @ 0:3903775176ed draft test a
20950
c7ceae0faf69 bundle2: first crude version of bundling changeset with bundle2
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20949
diff changeset
856
c7ceae0faf69 bundle2: first crude version of bundling changeset with bundle2
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20949
diff changeset
857
25336
7c60a42265fb bundle2: hide bundle2 stream debug under a config flag
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25334
diff changeset
858 $ hg bundle2 --debug --config progress.debug=true --config devel.bundle2.debug=true --rev '8+7+5+4' ../rev.hg2
20950
c7ceae0faf69 bundle2: first crude version of bundling changeset with bundle2
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20949
diff changeset
859 4 changesets found
c7ceae0faf69 bundle2: first crude version of bundling changeset with bundle2
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20949
diff changeset
860 list of changesets:
c7ceae0faf69 bundle2: first crude version of bundling changeset with bundle2
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20949
diff changeset
861 32af7686d403cf45b5d95f2d70cebea587ac806a
c7ceae0faf69 bundle2: first crude version of bundling changeset with bundle2
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20949
diff changeset
862 9520eea781bcca16c1e15acc0ba14335a0e8e5ba
c7ceae0faf69 bundle2: first crude version of bundling changeset with bundle2
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20949
diff changeset
863 eea13746799a9e0bfd88f29d3c2e9dc9389f524f
c7ceae0faf69 bundle2: first crude version of bundling changeset with bundle2
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20949
diff changeset
864 02de42196ebee42ef284b6780a87cdc96e8eaab6
25322
1f7c0403f8be bundle2: add generic debug output regarding generated bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25321
diff changeset
865 bundle2-output-bundle: "HG20", 1 parts total
25314
18c2bcc2c9d5 bundle2: prefix all bundling debug messages with 'bundle2-ouput:'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25125
diff changeset
866 bundle2-output: start emission of HG20 stream
18c2bcc2c9d5 bundle2: prefix all bundling debug messages with 'bundle2-ouput:'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25125
diff changeset
867 bundle2-output: bundle parameter:
18c2bcc2c9d5 bundle2: prefix all bundling debug messages with 'bundle2-ouput:'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25125
diff changeset
868 bundle2-output: start of parts
18c2bcc2c9d5 bundle2: prefix all bundling debug messages with 'bundle2-ouput:'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25125
diff changeset
869 bundle2-output: bundle part: "changegroup"
25323
21a25fb81d2c bundle2: add generic debug output regarding generated parts
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25322
diff changeset
870 bundle2-output-part: "changegroup" (advisory) streamed payload
25321
b44ee346211f bundle2: add debug output for part generation
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25319
diff changeset
871 bundle2-output: part 0: "changegroup"
b44ee346211f bundle2: add debug output for part generation
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25319
diff changeset
872 bundle2-output: header chunk size: 18
20950
c7ceae0faf69 bundle2: first crude version of bundling changeset with bundle2
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20949
diff changeset
873 bundling: 1/4 changesets (25.00%)
c7ceae0faf69 bundle2: first crude version of bundling changeset with bundle2
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20949
diff changeset
874 bundling: 2/4 changesets (50.00%)
c7ceae0faf69 bundle2: first crude version of bundling changeset with bundle2
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20949
diff changeset
875 bundling: 3/4 changesets (75.00%)
c7ceae0faf69 bundle2: first crude version of bundling changeset with bundle2
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20949
diff changeset
876 bundling: 4/4 changesets (100.00%)
c7ceae0faf69 bundle2: first crude version of bundling changeset with bundle2
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20949
diff changeset
877 bundling: 1/4 manifests (25.00%)
c7ceae0faf69 bundle2: first crude version of bundling changeset with bundle2
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20949
diff changeset
878 bundling: 2/4 manifests (50.00%)
c7ceae0faf69 bundle2: first crude version of bundling changeset with bundle2
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20949
diff changeset
879 bundling: 3/4 manifests (75.00%)
c7ceae0faf69 bundle2: first crude version of bundling changeset with bundle2
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20949
diff changeset
880 bundling: 4/4 manifests (100.00%)
c7ceae0faf69 bundle2: first crude version of bundling changeset with bundle2
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20949
diff changeset
881 bundling: D 1/3 files (33.33%)
c7ceae0faf69 bundle2: first crude version of bundling changeset with bundle2
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20949
diff changeset
882 bundling: E 2/3 files (66.67%)
c7ceae0faf69 bundle2: first crude version of bundling changeset with bundle2
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20949
diff changeset
883 bundling: H 3/3 files (100.00%)
25321
b44ee346211f bundle2: add debug output for part generation
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25319
diff changeset
884 bundle2-output: payload chunk size: 1555
b44ee346211f bundle2: add debug output for part generation
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25319
diff changeset
885 bundle2-output: closing payload chunk
25314
18c2bcc2c9d5 bundle2: prefix all bundling debug messages with 'bundle2-ouput:'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25125
diff changeset
886 bundle2-output: end of bundle
20950
c7ceae0faf69 bundle2: first crude version of bundling changeset with bundle2
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20949
diff changeset
887
26403
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
888 $ f --hexdump ../rev.hg2
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
889 ../rev.hg2:
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
890 0000: 48 47 32 30 00 00 00 00 00 00 00 12 0b 63 68 61 |HG20.........cha|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
891 0010: 6e 67 65 67 72 6f 75 70 00 00 00 00 00 00 00 00 |ngegroup........|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
892 0020: 06 13 00 00 00 a4 32 af 76 86 d4 03 cf 45 b5 d9 |......2.v....E..|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
893 0030: 5f 2d 70 ce be a5 87 ac 80 6a 5f dd d9 89 57 c8 |_-p......j_...W.|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
894 0040: a5 4a 4d 43 6d fe 1d a9 d8 7f 21 a1 b9 7b 00 00 |.JMCm.....!..{..|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
895 0050: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
896 0060: 00 00 32 af 76 86 d4 03 cf 45 b5 d9 5f 2d 70 ce |..2.v....E.._-p.|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
897 0070: be a5 87 ac 80 6a 00 00 00 00 00 00 00 29 00 00 |.....j.......)..|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
898 0080: 00 29 36 65 31 66 34 63 34 37 65 63 62 35 33 33 |.)6e1f4c47ecb533|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
899 0090: 66 66 64 30 63 38 65 35 32 63 64 63 38 38 61 66 |ffd0c8e52cdc88af|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
900 00a0: 62 36 63 64 33 39 65 32 30 63 0a 00 00 00 66 00 |b6cd39e20c....f.|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
901 00b0: 00 00 68 00 00 00 02 44 0a 00 00 00 69 00 00 00 |..h....D....i...|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
902 00c0: 6a 00 00 00 01 44 00 00 00 a4 95 20 ee a7 81 bc |j....D..... ....|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
903 00d0: ca 16 c1 e1 5a cc 0b a1 43 35 a0 e8 e5 ba cd 01 |....Z...C5......|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
904 00e0: 0b 8c d9 98 f3 98 1a 5a 81 15 f9 4f 8d a4 ab 50 |.......Z...O...P|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
905 00f0: 60 89 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |`...............|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
906 0100: 00 00 00 00 00 00 95 20 ee a7 81 bc ca 16 c1 e1 |....... ........|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
907 0110: 5a cc 0b a1 43 35 a0 e8 e5 ba 00 00 00 00 00 00 |Z...C5..........|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
908 0120: 00 29 00 00 00 29 34 64 65 63 65 39 63 38 32 36 |.)...)4dece9c826|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
909 0130: 66 36 39 34 39 30 35 30 37 62 39 38 63 36 33 38 |f69490507b98c638|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
910 0140: 33 61 33 30 30 39 62 32 39 35 38 33 37 64 0a 00 |3a3009b295837d..|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
911 0150: 00 00 66 00 00 00 68 00 00 00 02 45 0a 00 00 00 |..f...h....E....|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
912 0160: 69 00 00 00 6a 00 00 00 01 45 00 00 00 a2 ee a1 |i...j....E......|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
913 0170: 37 46 79 9a 9e 0b fd 88 f2 9d 3c 2e 9d c9 38 9f |7Fy.......<...8.|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
914 0180: 52 4f 24 b6 38 7c 8c 8c ae 37 17 88 80 f3 fa 95 |RO$.8|...7......|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
915 0190: de d3 cb 1c f7 85 95 20 ee a7 81 bc ca 16 c1 e1 |....... ........|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
916 01a0: 5a cc 0b a1 43 35 a0 e8 e5 ba ee a1 37 46 79 9a |Z...C5......7Fy.|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
917 01b0: 9e 0b fd 88 f2 9d 3c 2e 9d c9 38 9f 52 4f 00 00 |......<...8.RO..|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
918 01c0: 00 00 00 00 00 29 00 00 00 29 33 36 35 62 39 33 |.....)...)365b93|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
919 01d0: 64 35 37 66 64 66 34 38 31 34 65 32 62 35 39 31 |d57fdf4814e2b591|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
920 01e0: 31 64 36 62 61 63 66 66 32 62 31 32 30 31 34 34 |1d6bacff2b120144|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
921 01f0: 34 31 0a 00 00 00 66 00 00 00 68 00 00 00 00 00 |41....f...h.....|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
922 0200: 00 00 69 00 00 00 6a 00 00 00 01 47 00 00 00 a4 |..i...j....G....|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
923 0210: 02 de 42 19 6e be e4 2e f2 84 b6 78 0a 87 cd c9 |..B.n......x....|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
924 0220: 6e 8e aa b6 24 b6 38 7c 8c 8c ae 37 17 88 80 f3 |n...$.8|...7....|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
925 0230: fa 95 de d3 cb 1c f7 85 00 00 00 00 00 00 00 00 |................|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
926 0240: 00 00 00 00 00 00 00 00 00 00 00 00 02 de 42 19 |..............B.|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
927 0250: 6e be e4 2e f2 84 b6 78 0a 87 cd c9 6e 8e aa b6 |n......x....n...|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
928 0260: 00 00 00 00 00 00 00 29 00 00 00 29 38 62 65 65 |.......)...)8bee|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
929 0270: 34 38 65 64 63 37 33 31 38 35 34 31 66 63 30 30 |48edc7318541fc00|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
930 0280: 31 33 65 65 34 31 62 30 38 39 32 37 36 61 38 63 |13ee41b089276a8c|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
931 0290: 32 34 62 66 0a 00 00 00 66 00 00 00 66 00 00 00 |24bf....f...f...|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
932 02a0: 02 48 0a 00 00 00 67 00 00 00 68 00 00 00 01 48 |.H....g...h....H|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
933 02b0: 00 00 00 00 00 00 00 8b 6e 1f 4c 47 ec b5 33 ff |........n.LG..3.|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
934 02c0: d0 c8 e5 2c dc 88 af b6 cd 39 e2 0c 66 a5 a0 18 |...,.....9..f...|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
935 02d0: 17 fd f5 23 9c 27 38 02 b5 b7 61 8d 05 1c 89 e4 |...#.'8...a.....|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
936 02e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
937 02f0: 00 00 00 00 32 af 76 86 d4 03 cf 45 b5 d9 5f 2d |....2.v....E.._-|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
938 0300: 70 ce be a5 87 ac 80 6a 00 00 00 81 00 00 00 81 |p......j........|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
939 0310: 00 00 00 2b 44 00 63 33 66 31 63 61 32 39 32 34 |...+D.c3f1ca2924|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
940 0320: 63 31 36 61 31 39 62 30 36 35 36 61 38 34 39 30 |c16a19b0656a8490|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
941 0330: 30 65 35 30 34 65 35 62 30 61 65 63 32 64 0a 00 |0e504e5b0aec2d..|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
942 0340: 00 00 8b 4d ec e9 c8 26 f6 94 90 50 7b 98 c6 38 |...M...&...P{..8|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
943 0350: 3a 30 09 b2 95 83 7d 00 7d 8c 9d 88 84 13 25 f5 |:0....}.}.....%.|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
944 0360: c6 b0 63 71 b3 5b 4e 8a 2b 1a 83 00 00 00 00 00 |..cq.[N.+.......|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
945 0370: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 95 |................|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
946 0380: 20 ee a7 81 bc ca 16 c1 e1 5a cc 0b a1 43 35 a0 | ........Z...C5.|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
947 0390: e8 e5 ba 00 00 00 2b 00 00 00 ac 00 00 00 2b 45 |......+.......+E|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
948 03a0: 00 39 63 36 66 64 30 33 35 30 61 36 63 30 64 30 |.9c6fd0350a6c0d0|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
949 03b0: 63 34 39 64 34 61 39 63 35 30 31 37 63 66 30 37 |c49d4a9c5017cf07|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
950 03c0: 30 34 33 66 35 34 65 35 38 0a 00 00 00 8b 36 5b |043f54e58.....6[|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
951 03d0: 93 d5 7f df 48 14 e2 b5 91 1d 6b ac ff 2b 12 01 |....H.....k..+..|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
952 03e0: 44 41 28 a5 84 c6 5e f1 21 f8 9e b6 6a b7 d0 bc |DA(...^.!...j...|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
953 03f0: 15 3d 80 99 e7 ce 4d ec e9 c8 26 f6 94 90 50 7b |.=....M...&...P{|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
954 0400: 98 c6 38 3a 30 09 b2 95 83 7d ee a1 37 46 79 9a |..8:0....}..7Fy.|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
955 0410: 9e 0b fd 88 f2 9d 3c 2e 9d c9 38 9f 52 4f 00 00 |......<...8.RO..|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
956 0420: 00 56 00 00 00 56 00 00 00 2b 46 00 32 32 62 66 |.V...V...+F.22bf|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
957 0430: 63 66 64 36 32 61 32 31 61 33 32 38 37 65 64 62 |cfd62a21a3287edb|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
958 0440: 64 34 64 36 35 36 32 31 38 64 30 66 35 32 35 65 |d4d656218d0f525e|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
959 0450: 64 37 36 61 0a 00 00 00 97 8b ee 48 ed c7 31 85 |d76a.......H..1.|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
960 0460: 41 fc 00 13 ee 41 b0 89 27 6a 8c 24 bf 28 a5 84 |A....A..'j.$.(..|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
961 0470: c6 5e f1 21 f8 9e b6 6a b7 d0 bc 15 3d 80 99 e7 |.^.!...j....=...|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
962 0480: ce 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
963 0490: 00 00 00 00 00 02 de 42 19 6e be e4 2e f2 84 b6 |.......B.n......|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
964 04a0: 78 0a 87 cd c9 6e 8e aa b6 00 00 00 2b 00 00 00 |x....n......+...|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
965 04b0: 56 00 00 00 00 00 00 00 81 00 00 00 81 00 00 00 |V...............|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
966 04c0: 2b 48 00 38 35 30 30 31 38 39 65 37 34 61 39 65 |+H.8500189e74a9e|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
967 04d0: 30 34 37 35 65 38 32 32 30 39 33 62 63 37 64 62 |0475e822093bc7db|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
968 04e0: 30 64 36 33 31 61 65 62 30 62 34 0a 00 00 00 00 |0d631aeb0b4.....|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
969 04f0: 00 00 00 05 44 00 00 00 62 c3 f1 ca 29 24 c1 6a |....D...b...)$.j|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
970 0500: 19 b0 65 6a 84 90 0e 50 4e 5b 0a ec 2d 00 00 00 |..ej...PN[..-...|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
971 0510: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
972 0520: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
973 0530: 00 00 00 00 00 32 af 76 86 d4 03 cf 45 b5 d9 5f |.....2.v....E.._|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
974 0540: 2d 70 ce be a5 87 ac 80 6a 00 00 00 00 00 00 00 |-p......j.......|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
975 0550: 00 00 00 00 02 44 0a 00 00 00 00 00 00 00 05 45 |.....D.........E|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
976 0560: 00 00 00 62 9c 6f d0 35 0a 6c 0d 0c 49 d4 a9 c5 |...b.o.5.l..I...|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
977 0570: 01 7c f0 70 43 f5 4e 58 00 00 00 00 00 00 00 00 |.|.pC.NX........|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
978 0580: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
979 0590: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
980 05a0: 95 20 ee a7 81 bc ca 16 c1 e1 5a cc 0b a1 43 35 |. ........Z...C5|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
981 05b0: a0 e8 e5 ba 00 00 00 00 00 00 00 00 00 00 00 02 |................|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
982 05c0: 45 0a 00 00 00 00 00 00 00 05 48 00 00 00 62 85 |E.........H...b.|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
983 05d0: 00 18 9e 74 a9 e0 47 5e 82 20 93 bc 7d b0 d6 31 |...t..G^. ..}..1|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
984 05e0: ae b0 b4 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
985 05f0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
986 0600: 00 00 00 00 00 00 00 00 00 00 00 02 de 42 19 6e |.............B.n|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
987 0610: be e4 2e f2 84 b6 78 0a 87 cd c9 6e 8e aa b6 00 |......x....n....|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
988 0620: 00 00 00 00 00 00 00 00 00 00 02 48 0a 00 00 00 |...........H....|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
989 0630: 00 00 00 00 00 00 00 00 00 00 00 00 00 |.............|
20950
c7ceae0faf69 bundle2: first crude version of bundling changeset with bundle2
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20949
diff changeset
990
23888
6d8bebf4d6d4 commands.debugbundle: bundle2 support
Eric Sumner <ericsumner@fb.com>
parents: 23591
diff changeset
991 $ hg debugbundle ../rev.hg2
6d8bebf4d6d4 commands.debugbundle: bundle2 support
Eric Sumner <ericsumner@fb.com>
parents: 23591
diff changeset
992 Stream params: {}
29592
37cccad55410 util: implement a deterministic __repr__ on sortdict
Gregory Szorc <gregory.szorc@gmail.com>
parents: 28612
diff changeset
993 changegroup -- 'sortdict()'
23888
6d8bebf4d6d4 commands.debugbundle: bundle2 support
Eric Sumner <ericsumner@fb.com>
parents: 23591
diff changeset
994 32af7686d403cf45b5d95f2d70cebea587ac806a
6d8bebf4d6d4 commands.debugbundle: bundle2 support
Eric Sumner <ericsumner@fb.com>
parents: 23591
diff changeset
995 9520eea781bcca16c1e15acc0ba14335a0e8e5ba
6d8bebf4d6d4 commands.debugbundle: bundle2 support
Eric Sumner <ericsumner@fb.com>
parents: 23591
diff changeset
996 eea13746799a9e0bfd88f29d3c2e9dc9389f524f
6d8bebf4d6d4 commands.debugbundle: bundle2 support
Eric Sumner <ericsumner@fb.com>
parents: 23591
diff changeset
997 02de42196ebee42ef284b6780a87cdc96e8eaab6
23891
5827ad0b849e unbundle: support bundle2 files
Eric Sumner <ericsumner@fb.com>
parents: 23888
diff changeset
998 $ hg unbundle ../rev.hg2
20950
c7ceae0faf69 bundle2: first crude version of bundling changeset with bundle2
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20949
diff changeset
999 adding changesets
c7ceae0faf69 bundle2: first crude version of bundling changeset with bundle2
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20949
diff changeset
1000 adding manifests
c7ceae0faf69 bundle2: first crude version of bundling changeset with bundle2
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20949
diff changeset
1001 adding file changes
c7ceae0faf69 bundle2: first crude version of bundling changeset with bundle2
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20949
diff changeset
1002 added 0 changesets with 0 changes to 3 files
26539
1956026e4db2 unbundle: properly read head modification result from bundle2
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26421
diff changeset
1003 (run 'hg update' to get a working copy)
20955
12f161f08d74 bundle2: allow pulling changegroups using bundle2
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20952
diff changeset
1004
21130
1ff06386217f bundle2: introduce `replycaps` part for on-demand reply
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21129
diff changeset
1005 with reply
1ff06386217f bundle2: introduce `replycaps` part for on-demand reply
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21129
diff changeset
1006
1ff06386217f bundle2: introduce `replycaps` part for on-demand reply
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21129
diff changeset
1007 $ hg bundle2 --rev '8+7+5+4' --reply ../rev-rr.hg2
1ff06386217f bundle2: introduce `replycaps` part for on-demand reply
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21129
diff changeset
1008 $ hg unbundle2 ../rev-reply.hg2 < ../rev-rr.hg2
1ff06386217f bundle2: introduce `replycaps` part for on-demand reply
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21129
diff changeset
1009 0 unread bytes
1ff06386217f bundle2: introduce `replycaps` part for on-demand reply
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21129
diff changeset
1010 addchangegroup return: 1
1ff06386217f bundle2: introduce `replycaps` part for on-demand reply
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21129
diff changeset
1011
26403
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
1012 $ f --hexdump ../rev-reply.hg2
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
1013 ../rev-reply.hg2:
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
1014 0000: 48 47 32 30 00 00 00 00 00 00 00 2f 11 72 65 70 |HG20......./.rep|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
1015 0010: 6c 79 3a 63 68 61 6e 67 65 67 72 6f 75 70 00 00 |ly:changegroup..|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
1016 0020: 00 00 00 02 0b 01 06 01 69 6e 2d 72 65 70 6c 79 |........in-reply|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
1017 0030: 2d 74 6f 31 72 65 74 75 72 6e 31 00 00 00 00 00 |-to1return1.....|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
1018 0040: 00 00 1b 06 6f 75 74 70 75 74 00 00 00 01 00 01 |....output......|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
1019 0050: 0b 01 69 6e 2d 72 65 70 6c 79 2d 74 6f 31 00 00 |..in-reply-to1..|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
1020 0060: 00 64 61 64 64 69 6e 67 20 63 68 61 6e 67 65 73 |.dadding changes|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
1021 0070: 65 74 73 0a 61 64 64 69 6e 67 20 6d 61 6e 69 66 |ets.adding manif|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
1022 0080: 65 73 74 73 0a 61 64 64 69 6e 67 20 66 69 6c 65 |ests.adding file|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
1023 0090: 20 63 68 61 6e 67 65 73 0a 61 64 64 65 64 20 30 | changes.added 0|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
1024 00a0: 20 63 68 61 6e 67 65 73 65 74 73 20 77 69 74 68 | changesets with|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
1025 00b0: 20 30 20 63 68 61 6e 67 65 73 20 74 6f 20 33 20 | 0 changes to 3 |
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
1026 00c0: 66 69 6c 65 73 0a 00 00 00 00 00 00 00 00 |files.........|
20998
93a3c5b58635 bundle2: use reply part to return result of addchangegroup
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20997
diff changeset
1027
23007
03f3af8f4415 bundle2: add a test for exceptions raised during the generation process
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 22955
diff changeset
1028 Check handling of exception during generation.
03f3af8f4415 bundle2: add a test for exceptions raised during the generation process
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 22955
diff changeset
1029 ----------------------------------------------
03f3af8f4415 bundle2: add a test for exceptions raised during the generation process
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 22955
diff changeset
1030
03f3af8f4415 bundle2: add a test for exceptions raised during the generation process
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 22955
diff changeset
1031 $ hg bundle2 --genraise > ../genfailed.hg2
03f3af8f4415 bundle2: add a test for exceptions raised during the generation process
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 22955
diff changeset
1032 abort: Someone set up us the bomb!
03f3af8f4415 bundle2: add a test for exceptions raised during the generation process
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 22955
diff changeset
1033 [255]
03f3af8f4415 bundle2: add a test for exceptions raised during the generation process
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 22955
diff changeset
1034
03f3af8f4415 bundle2: add a test for exceptions raised during the generation process
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 22955
diff changeset
1035 Should still be a valid bundle
03f3af8f4415 bundle2: add a test for exceptions raised during the generation process
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 22955
diff changeset
1036
26403
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
1037 $ f --hexdump ../genfailed.hg2
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
1038 ../genfailed.hg2:
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
1039 0000: 48 47 32 30 00 00 00 00 00 00 00 0d 06 6f 75 74 |HG20.........out|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
1040 0010: 70 75 74 00 00 00 00 00 00 ff ff ff ff 00 00 00 |put.............|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
1041 0020: 48 0b 65 72 72 6f 72 3a 61 62 6f 72 74 00 00 00 |H.error:abort...|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
1042 0030: 00 01 00 07 2d 6d 65 73 73 61 67 65 75 6e 65 78 |....-messageunex|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
1043 0040: 70 65 63 74 65 64 20 65 72 72 6f 72 3a 20 53 6f |pected error: So|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
1044 0050: 6d 65 6f 6e 65 20 73 65 74 20 75 70 20 75 73 20 |meone set up us |
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
1045 0060: 74 68 65 20 62 6f 6d 62 21 00 00 00 00 00 00 00 |the bomb!.......|
d19f67dc9c95 test-bundle2: dump bundle content using f --hexdump
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26144
diff changeset
1046 0070: 00 |.|
23007
03f3af8f4415 bundle2: add a test for exceptions raised during the generation process
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 22955
diff changeset
1047
03f3af8f4415 bundle2: add a test for exceptions raised during the generation process
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 22955
diff changeset
1048 And its handling on the other size raise a clean exception
03f3af8f4415 bundle2: add a test for exceptions raised during the generation process
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 22955
diff changeset
1049
03f3af8f4415 bundle2: add a test for exceptions raised during the generation process
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 22955
diff changeset
1050 $ cat ../genfailed.hg2 | hg unbundle2
03f3af8f4415 bundle2: add a test for exceptions raised during the generation process
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 22955
diff changeset
1051 0 unread bytes
23067
420a051616ce bundle2: transmit exception during part generation
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 23009
diff changeset
1052 abort: unexpected error: Someone set up us the bomb!
23007
03f3af8f4415 bundle2: add a test for exceptions raised during the generation process
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 22955
diff changeset
1053 [255]
03f3af8f4415 bundle2: add a test for exceptions raised during the generation process
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 22955
diff changeset
1054
26404
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1055 Test compression
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1056 ================
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1057
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1058 Simple case where it just work: GZ
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1059 ----------------------------------
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1060
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1061 $ hg bundle2 --compress GZ --rev '8+7+5+4' ../rev.hg2.bz
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1062 $ f --hexdump ../rev.hg2.bz
26406
2cac6126329f tests: fix test-bundle2-format output
Matt Mackall <mpm@selenic.com>
parents: 26404
diff changeset
1063 ../rev.hg2.bz:
26404
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1064 0000: 48 47 32 30 00 00 00 0e 43 6f 6d 70 72 65 73 73 |HG20....Compress|
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1065 0010: 69 6f 6e 3d 47 5a 78 9c 95 94 7d 68 95 55 1c c7 |ion=GZx...}h.U..|
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1066 0020: 9f 3b 31 e8 ce fa c3 65 be a0 a4 b4 52 b9 29 e7 |.;1....e....R.).|
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1067 0030: f5 79 ce 89 fa 63 ed 5e 77 8b 9c c3 3f 2a 1c 68 |.y...c.^w...?*.h|
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1068 0040: cf 79 9b dd 6a ae b0 28 74 b8 e5 96 5b bb 86 61 |.y..j..(t...[..a|
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1069 0050: a3 15 6e 3a 71 c8 6a e8 a5 da 95 64 28 22 ce 69 |..n:q.j....d(".i|
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1070 0060: cd 06 59 34 28 2b 51 2a 58 c3 17 56 2a 9a 9d 67 |..Y4(+Q*X..V*..g|
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1071 0070: dc c6 35 9e c4 1d f8 9e 87 f3 9c f3 3b bf 0f bf |..5.........;...|
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1072 0080: 97 e3 38 ce f4 42 b9 d6 af ae d2 55 af ae 7b ad |..8..B.....U..{.|
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1073 0090: c6 c9 8d bb 8a ec b4 07 ed 7f fd ed d3 53 be 4e |.............S.N|
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1074 00a0: f4 0e af 59 52 73 ea 50 d7 96 9e ba d4 9a 1f 87 |...YRs.P........|
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1075 00b0: 9b 9f 1d e8 7a 6a 79 e9 cb 7f cf eb fe 7e d3 82 |....zjy......~..|
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1076 00c0: ce 2f 36 38 21 23 cc 36 b7 b5 38 90 ab a1 21 92 |./68!#.6..8...!.|
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1077 00d0: 78 5a 0a 8a b1 31 0a 48 a6 29 92 4a 32 e6 1b e1 |xZ...1.H.).J2...|
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1078 00e0: 4a 85 b9 46 40 46 ed 61 63 b5 d6 aa 20 1e ac 5e |J..F@F.ac... ..^|
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1079 00f0: b0 0a ae 8a c4 03 c6 d6 f9 a3 7b eb fb 4e de 7f |..........{..N..|
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1080 0100: e4 97 55 5f 15 76 96 d2 5d bf 9d 3f 38 18 29 4c |..U_.v..]..?8.)L|
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1081 0110: 0f b7 5d 6e 9b b3 aa 7e c6 d5 15 5b f7 7c 52 f1 |..]n...~...[.|R.|
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1082 0120: 7c 73 18 63 98 6d 3e 23 51 5a 6a 2e 19 72 8d cb ||s.c.m>#QZj..r..|
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1083 0130: 09 07 14 78 82 33 e9 62 86 7d 0c 00 17 88 53 86 |...x.3.b.}....S.|
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1084 0140: 3d 75 0b 63 e2 16 c6 84 9d 76 8f 76 7a cb de fc |=u.c.....v.vz...|
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1085 0150: a8 a3 f0 46 d3 a5 f6 c7 96 b6 9f 60 3b 57 ae 28 |...F.......`;W.(|
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1086 0160: ce b2 8d e9 f4 3e 6f 66 53 dd e5 6b ad 67 be f9 |.....>ofS..k.g..|
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1087 0170: 72 ee 5f 8d 61 3c 61 b6 f9 8c d8 a5 82 63 45 3d |r._.a<a......cE=|
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1088 0180: a3 0c 61 90 68 24 28 87 50 b9 c2 97 c6 20 01 11 |..a.h$(.P.... ..|
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1089 0190: 80 84 10 98 cf e8 e4 13 96 05 51 2c 38 f3 c4 ec |..........Q,8...|
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1090 01a0: ea 43 e7 96 5e 6a c8 be 11 dd 32 78 a2 fa dd 8f |.C..^j....2x....|
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1091 01b0: b3 61 84 61 51 0c b3 cd 27 64 42 6b c2 b4 92 1e |.a.aQ...'dBk....|
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1092 01c0: 86 8c 12 68 24 00 10 db 7f 50 00 c6 91 e7 fa 4c |...h$....P.....L|
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1093 01d0: 22 22 cc bf 84 81 0a 92 c1 aa 2a c7 1b 49 e6 ee |""........*..I..|
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1094 01e0: 6b a9 7e e0 e9 b2 91 5e 7c 73 68 e0 fc 23 3f 34 |k.~....^|sh..#?4|
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1095 01f0: ed cf 0e f2 b3 d3 4c d7 ae 59 33 6f 8c 3d b8 63 |......L..Y3o.=.c|
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1096 0200: 21 2b e8 3d e0 6f 9d 3a b7 f9 dc 24 2a b2 3e a7 |!+.=.o.:...$*.>.|
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1097 0210: 58 dc 91 d8 40 e9 23 8e 88 84 ae 0f b9 00 2e b5 |X...@.#.........|
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1098 0220: 74 36 f3 40 53 40 34 15 c0 d7 12 8d e7 bb 65 f9 |t6.@S@4.......e.|
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1099 0230: c8 ef 03 0f ff f9 fe b6 8a 0d 6d fd ec 51 70 f7 |..........m..Qp.|
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1100 0240: a7 ad 9b 6b 9d da 74 7b 53 43 d1 43 63 fd 19 f9 |...k..t{SC.Cc...|
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1101 0250: ca 67 95 e5 ef c4 e6 6c 9e 44 e1 c5 ac 7a 82 6f |.g.....l.D...z.o|
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1102 0260: c2 e1 d2 b5 2d 81 29 f0 5d 09 6c 6f 10 ae 88 cf |....-.).].lo....|
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1103 0270: 25 05 d0 93 06 78 80 60 43 2d 10 1b 47 71 2b b7 |%....x.`C-..Gq+.|
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1104 0280: 7f bb e9 a7 e4 7d 67 7b df 9b f7 62 cf cd d8 f4 |.....}g{...b....|
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1105 0290: 48 bc 64 51 57 43 ff ea 8b 0b ae 74 64 53 07 86 |H.dQWC.....tdS..|
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1106 02a0: fa 66 3c 5e f7 e1 af a7 c2 90 ff a7 be 9e c9 29 |.f<^...........)|
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1107 02b0: b6 cc 41 48 18 69 94 8b 7c 04 7d 8c 98 a7 95 50 |..AH.i..|.}....P|
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1108 02c0: 44 d9 d0 20 c8 14 30 14 51 ad 6c 16 03 94 0f 5a |D.. ..0.Q.l....Z|
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1109 02d0: 46 93 7f 1c 87 8d 25 d7 9d a2 d1 92 4c f3 c2 54 |F.....%.....L..T|
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1110 02e0: ba f8 70 18 ca 24 0a 29 96 43 71 f2 93 95 74 18 |..p..$.).Cq...t.|
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1111 02f0: b5 65 c4 b8 f6 6c 5c 34 20 1e d5 0c 21 c0 b1 90 |.e...l\4 ...!...|
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1112 0300: 9e 12 40 b9 18 fa 5a 00 41 a2 39 d3 a9 c1 73 21 |..@...Z.A.9...s!|
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1113 0310: 8e 5e 3c b9 b8 f8 48 6a 76 46 a7 1a b6 dd 5b 51 |.^<...HjvF....[Q|
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1114 0320: 5e 19 1d 59 12 c6 32 89 02 9a c0 8f 4f b8 0a ba |^..Y..2.....O...|
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1115 0330: 5e ec 58 37 44 a3 2f dd 33 ed c9 d3 dd c7 22 1b |^.X7D./.3.....".|
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1116 0340: 2f d4 94 8e 95 3f 77 a7 ae 6e f3 32 8d bb 4a 4c |/....?w..n.2..JL|
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1117 0350: b8 0a 5a 43 34 3a b3 3a d6 77 ff 5c b6 fa ad f9 |..ZC4:.:.w.\....|
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1118 0360: db fb 6a 33 df c1 7d 99 cf ef d4 d5 6d da 77 7c |..j3..}.....m.w||
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1119 0370: 3b 19 fd af c5 3f f1 60 c3 17 |;....?.`..|
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1120 $ hg debugbundle ../rev.hg2.bz
29592
37cccad55410 util: implement a deterministic __repr__ on sortdict
Gregory Szorc <gregory.szorc@gmail.com>
parents: 28612
diff changeset
1121 Stream params: sortdict([('Compression', 'GZ')])
37cccad55410 util: implement a deterministic __repr__ on sortdict
Gregory Szorc <gregory.szorc@gmail.com>
parents: 28612
diff changeset
1122 changegroup -- 'sortdict()'
26404
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1123 32af7686d403cf45b5d95f2d70cebea587ac806a
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1124 9520eea781bcca16c1e15acc0ba14335a0e8e5ba
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1125 eea13746799a9e0bfd88f29d3c2e9dc9389f524f
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1126 02de42196ebee42ef284b6780a87cdc96e8eaab6
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1127 $ hg unbundle ../rev.hg2.bz
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1128 adding changesets
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1129 adding manifests
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1130 adding file changes
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1131 added 0 changesets with 0 changes to 3 files
26539
1956026e4db2 unbundle: properly read head modification result from bundle2
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26421
diff changeset
1132 (run 'hg update' to get a working copy)
26404
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1133 Simple case where it just work: BZ
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1134 ----------------------------------
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1135
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1136 $ hg bundle2 --compress BZ --rev '8+7+5+4' ../rev.hg2.bz
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1137 $ f --hexdump ../rev.hg2.bz
26406
2cac6126329f tests: fix test-bundle2-format output
Matt Mackall <mpm@selenic.com>
parents: 26404
diff changeset
1138 ../rev.hg2.bz:
26404
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1139 0000: 48 47 32 30 00 00 00 0e 43 6f 6d 70 72 65 73 73 |HG20....Compress|
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1140 0010: 69 6f 6e 3d 42 5a 42 5a 68 39 31 41 59 26 53 59 |ion=BZBZh91AY&SY|
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1141 0020: a3 4b 18 3d 00 00 1a 7f ff ff bf 5f f6 ef ef 7f |.K.=......._....|
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1142 0030: f6 3f f7 d1 d9 ff ff f7 6e ff ff 6e f7 f6 bd df |.?......n..n....|
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1143 0040: b5 ab ff cf 67 f6 e7 7b f7 c0 02 d7 33 82 8b 51 |....g..{....3..Q|
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1144 0050: 04 a5 53 d5 3d 27 a0 99 18 4d 0d 34 00 d1 a1 e8 |..S.='...M.4....|
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1145 0060: 80 c8 7a 87 a9 a3 43 6a 3d 46 86 26 80 34 3d 40 |..z...Cj=F.&.4=@|
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1146 0070: c8 c9 b5 34 f4 8f 48 0f 51 ea 34 34 fd 4d aa 19 |...4..H.Q.44.M..|
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1147 0080: 03 40 0c 08 da 86 43 d4 f5 0f 42 1e a0 f3 54 33 |.@....C...B...T3|
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1148 0090: 54 d3 13 4d 03 40 32 00 00 32 03 26 80 0d 00 0d |T..M.@2..2.&....|
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1149 00a0: 00 68 c8 c8 03 20 32 30 98 8c 80 00 00 03 4d 00 |.h... 20......M.|
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1150 00b0: c8 00 00 0d 00 00 22 99 a1 34 c2 64 a6 d5 34 1a |......"..4.d..4.|
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1151 00c0: 00 00 06 86 83 4d 07 a8 d1 a0 68 01 a0 00 00 00 |.....M....h.....|
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1152 00d0: 00 0d 06 80 00 00 00 0d 00 03 40 00 00 04 a4 a1 |..........@.....|
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1153 00e0: 4d a9 89 89 b4 9a 32 0c 43 46 86 87 a9 8d 41 9a |M.....2.CF....A.|
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1154 00f0: 98 46 9a 0d 31 32 1a 34 0d 0c 8d a2 0c 98 4d 06 |.F..12.4......M.|
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1155 0100: 8c 40 c2 60 8d 0d 0c 20 c9 89 fa a0 d0 d3 21 a1 |.@.`... ......!.|
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1156 0110: ea 34 d3 68 9e a6 d1 74 05 33 cb 66 96 93 28 64 |.4.h...t.3.f..(d|
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1157 0120: 40 91 22 ac 55 9b ea 40 7b 38 94 e2 f8 06 00 cb |@.".U..@{8......|
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1158 0130: 28 02 00 4d ab 40 24 10 43 18 cf 64 b4 06 83 0c |(..M.@$.C..d....|
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1159 0140: 34 6c b4 a3 d4 0a 0a e4 a8 5c 4e 23 c0 c9 7a 31 |4l.......\N#..z1|
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1160 0150: 97 87 77 7a 64 88 80 8e 60 97 20 93 0f 8e eb c4 |..wzd...`. .....|
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1161 0160: 62 a4 44 a3 52 20 b2 99 a9 2e e1 d7 29 4a 54 ac |b.D.R ......)JT.|
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1162 0170: 44 7a bb cc 04 3d e0 aa bd 6a 33 5e 9b a2 57 36 |Dz...=...j3^..W6|
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1163 0180: fa cb 45 bb 6d 3e c1 d9 d9 f5 83 69 8a d0 e0 e2 |..E.m>.....i....|
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1164 0190: e7 ae 90 55 24 da 3f ab 78 c0 4c b4 56 a3 9e a4 |...U$.?.x.L.V...|
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1165 01a0: af 9c 65 74 86 ec 6d dc 62 dc 33 ca c8 50 dd 9d |..et..m.b.3..P..|
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1166 01b0: 98 8e 9e 59 20 f3 f0 42 91 4a 09 f5 75 8d 3d a5 |...Y ..B.J..u.=.|
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1167 01c0: a5 15 cb 8d 10 63 b0 c2 2e b2 81 f7 c1 76 0e 53 |.....c.......v.S|
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1168 01d0: 6c 0e 46 73 b5 ae 67 f9 4c 0b 45 6b a8 32 2a 2f |l.Fs..g.L.Ek.2*/|
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1169 01e0: a2 54 a4 44 05 20 a1 38 d1 a4 c6 09 a8 2b 08 99 |.T.D. .8.....+..|
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1170 01f0: a4 14 ae 8d a3 e3 aa 34 27 d8 44 ca c3 5d 21 8b |.......4'.D..]!.|
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1171 0200: 1a 1e 97 29 71 2b 09 4a 4a 55 55 94 58 65 b2 bc |...)q+.JJUU.Xe..|
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1172 0210: f3 a5 90 26 36 76 67 7a 51 98 d6 8a 4a 99 50 b5 |...&6vgzQ...J.P.|
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1173 0220: 99 8f 94 21 17 a9 8b f3 ad 4c 33 d4 2e 40 c8 0c |...!.....L3..@..|
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1174 0230: 3b 90 53 39 db 48 02 34 83 48 d6 b3 99 13 d2 58 |;.S9.H.4.H.....X|
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1175 0240: 65 8e 71 ac a9 06 95 f2 c4 8e b4 08 6b d3 0c ae |e.q.........k...|
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1176 0250: d9 90 56 71 43 a7 a2 62 16 3e 50 63 d3 57 3c 2d |..VqC..b.>Pc.W<-|
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1177 0260: 9f 0f 34 05 08 d8 a6 4b 59 31 54 66 3a 45 0c 8a |..4....KY1Tf:E..|
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1178 0270: c7 90 3a f0 6a 83 1b f5 ca fb 80 2b 50 06 fb 51 |..:.j......+P..Q|
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1179 0280: 7e a6 a4 d4 81 44 82 21 54 00 5b 1a 30 83 62 a3 |~....D.!T.[.0.b.|
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1180 0290: 18 b6 24 19 1e 45 df 4d 5c db a6 af 5b ac 90 fa |..$..E.M\...[...|
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1181 02a0: 3e ed f9 ec 4c ba 36 ee d8 60 20 a7 c7 3b cb d1 |>...L.6..` ..;..|
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1182 02b0: 90 43 7d 27 16 50 5d ad f4 14 07 0b 90 5c cc 6b |.C}'.P]......\.k|
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1183 02c0: 8d 3f a6 88 f4 34 37 a8 cf 14 63 36 19 f7 3e 28 |.?...47...c6..>(|
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1184 02d0: de 99 e8 16 a4 9d 0d 40 a1 a7 24 52 14 a6 72 62 |.......@..$R..rb|
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1185 02e0: 59 5a ca 2d e5 51 90 78 88 d9 c6 c7 21 d0 f7 46 |YZ.-.Q.x....!..F|
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1186 02f0: b2 04 46 44 4e 20 9c 12 b1 03 4e 25 e0 a9 0c 58 |..FDN ....N%...X|
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1187 0300: 5b 1d 3c 93 20 01 51 de a9 1c 69 23 32 46 14 b4 |[.<. .Q...i#2F..|
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1188 0310: 90 db 17 98 98 50 03 90 29 aa 40 b0 13 d8 43 d2 |.....P..).@...C.|
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1189 0320: 5f c5 9d eb f3 f2 ad 41 e8 7a a9 ed a1 58 84 a6 |_......A.z...X..|
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1190 0330: 42 bf d6 fc 24 82 c1 20 32 26 4a 15 a6 1d 29 7f |B...$.. 2&J...).|
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1191 0340: 7e f4 3d 07 bc 62 9a 5b ec 44 3d 72 1d 41 8b 5c |~.=..b.[.D=r.A.\|
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1192 0350: 80 de 0e 62 9a 2e f8 83 00 d5 07 a0 9c c6 74 98 |...b..........t.|
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1193 0360: 11 b2 5e a9 38 02 03 ee fd 86 5c f4 86 b3 ae da |..^.8.....\.....|
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1194 0370: 05 94 01 c5 c6 ea 18 e6 ba 2a ba b3 04 5c 96 89 |.........*...\..|
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1195 0380: 72 63 5b 10 11 f6 67 34 98 cb e4 c0 4e fa e6 99 |rc[...g4....N...|
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1196 0390: 19 6e 50 e8 26 8d 0c 17 e0 be ef e1 8e 02 6f 32 |.nP.&.........o2|
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1197 03a0: 82 dc 26 f8 a1 08 f3 8a 0d f3 c4 75 00 48 73 b8 |..&........u.Hs.|
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1198 03b0: be 3b 0d 7f d0 fd c7 78 96 ec e0 03 80 68 4d 8d |.;.....x.....hM.|
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1199 03c0: 43 8c d7 68 58 f9 50 f0 18 cb 21 58 1b 60 cd 1f |C..hX.P...!X.`..|
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1200 03d0: 84 36 2e 16 1f 0a f7 4e 8f eb df 01 2d c2 79 0b |.6.....N....-.y.|
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1201 03e0: f7 24 ea 0d e8 59 86 51 6e 1c 30 a3 ad 2f ee 8c |.$...Y.Qn.0../..|
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1202 03f0: 90 c8 84 d5 e8 34 c1 95 b2 c9 f6 4d 87 1c 7d 19 |.....4.....M..}.|
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1203 0400: d6 41 58 56 7a e0 6c ba 10 c7 e8 33 39 36 96 e7 |.AXVz.l....396..|
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1204 0410: d2 f9 59 9a 08 95 48 38 e7 0b b7 0a 24 67 c4 39 |..Y...H8....$g.9|
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1205 0420: 8b 43 88 57 9c 01 f5 61 b5 e1 27 41 7e af 83 fe |.C.W...a..'A~...|
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1206 0430: 2e e4 8a 70 a1 21 46 96 30 7a |...p.!F.0z|
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1207 $ hg debugbundle ../rev.hg2.bz
29592
37cccad55410 util: implement a deterministic __repr__ on sortdict
Gregory Szorc <gregory.szorc@gmail.com>
parents: 28612
diff changeset
1208 Stream params: sortdict([('Compression', 'BZ')])
37cccad55410 util: implement a deterministic __repr__ on sortdict
Gregory Szorc <gregory.szorc@gmail.com>
parents: 28612
diff changeset
1209 changegroup -- 'sortdict()'
26404
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1210 32af7686d403cf45b5d95f2d70cebea587ac806a
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1211 9520eea781bcca16c1e15acc0ba14335a0e8e5ba
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1212 eea13746799a9e0bfd88f29d3c2e9dc9389f524f
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1213 02de42196ebee42ef284b6780a87cdc96e8eaab6
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1214 $ hg unbundle ../rev.hg2.bz
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1215 adding changesets
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1216 adding manifests
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1217 adding file changes
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1218 added 0 changesets with 0 changes to 3 files
26539
1956026e4db2 unbundle: properly read head modification result from bundle2
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26421
diff changeset
1219 (run 'hg update' to get a working copy)
26404
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1220
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1221 unknown compression while unbundling
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1222 -----------------------------
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1223
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1224 $ hg bundle2 --param Compression=FooBarUnknown --rev '8+7+5+4' ../rev.hg2.bz
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1225 $ cat ../rev.hg2.bz | hg statbundle2
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1226 abort: unknown parameters: Stream Parameter - Compression='FooBarUnknown'
795f02a24b87 bundle2: allow compressed bundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26403
diff changeset
1227 [255]
26410
4c4b3c37776c unbundle: test and fix for clean abort on unknown bundle2 feature
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26406
diff changeset
1228 $ hg unbundle ../rev.hg2.bz
4c4b3c37776c unbundle: test and fix for clean abort on unknown bundle2 feature
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26406
diff changeset
1229 abort: ../rev.hg2.bz: unknown bundle feature, Stream Parameter - Compression='FooBarUnknown'
26421
4b0fc75f9403 urls: bulk-change primary website URLs
Matt Mackall <mpm@selenic.com>
parents: 26410
diff changeset
1230 (see https://mercurial-scm.org/wiki/BundleFeature for more information)
26410
4c4b3c37776c unbundle: test and fix for clean abort on unknown bundle2 feature
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26406
diff changeset
1231 [255]
23007
03f3af8f4415 bundle2: add a test for exceptions raised during the generation process
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 22955
diff changeset
1232
22323
b31d29b2a7f2 test-bundle2: add obsolescence information to be exchanged
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 22241
diff changeset
1233 $ cd ..