[PATCH 8 of 8 V2] phase: use a binary phase part to push through bundle2 (BC)
Augie Fackler
raf at durin42.com
Tue Oct 17 11:18:03 EDT 2017
On Tue, Oct 17, 2017 at 03:52:42PM +0200, Boris Feld wrote:
> We think that having this series in 4.4 release is quite important. We
> added the new 'phases' bundle2 capability and associated pull support
> in the 4.4 cycle. Not having push support in the same release (4.4)
> means push support will not be covered by the new capability and we'll
> have to distinct the two kinds of clients in the future. That is more
> cumbersome to manage that we hoped when this series was written.
>
> Also (but not directly related), we have a 14 patches series that
> improves the bookmark exchange by using a binary part (resolving also
> the old regression https://bz.mercurial-scm.org/show_bug.cgi?id=5165)
> but it depends on this one.
>
> I'm not sure we would have time to queue it, should I send it if this
> one is queued?
I'm extremely interested in getting 5165 fixed - how involved are the
patches? Maybe give me a link here and I'll see if we should try and
get the fix in...
>
> On Mon, 2017-10-16 at 20:23 +0200, Boris Feld wrote:
> > # HG changeset patch
> > # User Boris Feld <boris.feld at octobus.net>
> > # Date 1505929086 -7200
> > # Wed Sep 20 19:38:06 2017 +0200
> > # Node ID 76e192debcd8036c6695b56681ca096690322880
> > # Parent 9c084f14df72a2d511d414e0ecf50a086c0a2341
> > # EXP-Topic b2.phases.push
> > # Available At https://bitbucket.org/octobus/mercurial-devel/
> > # hg pull https://bitbucket.org/octobus/mercurial-devel/
> > -r 76e192debcd8
> > phase: use a binary phase part to push through bundle2 (BC)
> >
> > The part we are using for pull is now used for push too. As we no
> > longer use
> > pushkey, pushkey hook are no longer triggered. This is an obvious
> > backward
> > incompatible change. We could artificially trigger the pushkey hook
> > within the
> > bundle2 part, but this seemed too hacky to me.
> >
> > An option would be to disable by default this new mechanism for a
> > couple of
> > versions to help people migrate to `txnclose-phase`. I took the
> > liberal and
> > optimistic path to just turn it on by default directly.
> >
> > .. bc::
> >
> > Push no longer trigger a pushkey hook when updating phases. Use
> > the new
> > `txnclose-phase` and `txnclose-phase` hooks instead.
> > (Apply when both server and client use version 4.4 or above).
> >
> > diff --git a/mercurial/exchange.py b/mercurial/exchange.py
> > --- a/mercurial/exchange.py
> > +++ b/mercurial/exchange.py
> > @@ -806,9 +806,26 @@
> > if 'phases' in pushop.stepsdone:
> > return
> > b2caps = bundle2.bundle2caps(pushop.remote)
> > - if 'pushkey' in b2caps:
> > + ui = pushop.repo.ui
> > +
> > + legacyphase = 'phases' in ui.configlist('devel',
> > 'legacy.exchange')
> > + haspushkey = 'pushkey' in b2caps
> > + hasphaseheads = 'heads' in b2caps.get('phases', ())
> > +
> > + if hasphaseheads and not legacyphase:
> > + _pushb2phaseheads(pushop, bundler)
> > + elif haspushkey:
> > _pushb2phasespushkey(pushop, bundler)
> >
> > +def _pushb2phaseheads(pushop, bundler):
> > + """push phase information through a bundle2 - pushkey part"""
> > + pushop.stepsdone.add('phases')
> > + if pushop.outdatedphases:
> > + updates = [[] for p in phases.allphases]
> > + updates[0].extend(h.node() for h in pushop.outdatedphases)
> > + phasedata = phases.binaryencode(updates)
> > + bundler.newpart('phase-heads', data=phasedata)
> > +
> > def _pushb2phasespushkey(pushop, bundler):
> > """push phase information through a bundle2 - pushkey part"""
> > pushop.stepsdone.add('phases')
> > diff --git a/tests/test-acl.t b/tests/test-acl.t
> > --- a/tests/test-acl.t
> > +++ b/tests/test-acl.t
> > @@ -97,7 +97,7 @@
> > bundle2-output-part: "check:phases" 24 bytes payload
> > bundle2-output-part: "check:heads" streamed payload
> > bundle2-output-part: "changegroup" (params: 1 mandatory) streamed
> > payload
> > - bundle2-output-part: "pushkey" (params: 4 mandatory) empty payload
> > + bundle2-output-part: "phase-heads" 24 bytes payload
> > bundle2-input-bundle: with-transaction
> > bundle2-input-part: "replycaps" supported
> > bundle2-input-part: total payload size 168
> > @@ -117,17 +117,15 @@
> > adding quux/file.py revisions
> > added 3 changesets with 3 changes to 3 files
> > bundle2-input-part: total payload size 1553
> > - bundle2-input-part: "pushkey" (params: 4 mandatory) supported
> > - pushing key for "phases:911600dab2ae7a9baff75958b84fe606851ce955"
> > + bundle2-input-part: "phase-heads" supported
> > + bundle2-input-part: total payload size 24
> > bundle2-input-bundle: 4 parts total
> > updating the branch cache
> > - bundle2-output-bundle: "HG20", 2 parts total
> > + bundle2-output-bundle: "HG20", 1 parts total
> > bundle2-output-part: "reply:changegroup" (advisory) (params: 0
> > advisory) empty payload
> > - bundle2-output-part: "reply:pushkey" (params: 0 advisory) empty
> > payload
> > bundle2-input-bundle: no-transaction
> > bundle2-input-part: "reply:changegroup" (advisory) (params: 0
> > advisory) supported
> > - bundle2-input-part: "reply:pushkey" (params: 0 advisory) supported
> > - bundle2-input-bundle: 1 parts total
> > + bundle2-input-bundle: 0 parts total
> > listing keys for "phases"
> > repository tip rolled back to revision 0 (undo push)
> > 0:6675d58eff77
> > @@ -162,7 +160,7 @@
> > bundle2-output-part: "check:phases" 24 bytes payload
> > bundle2-output-part: "check:heads" streamed payload
> > bundle2-output-part: "changegroup" (params: 1 mandatory) streamed
> > payload
> > - bundle2-output-part: "pushkey" (params: 4 mandatory) empty payload
> > + bundle2-output-part: "phase-heads" 24 bytes payload
> > bundle2-input-bundle: with-transaction
> > bundle2-input-part: "replycaps" supported
> > bundle2-input-part: total payload size 168
> > @@ -184,17 +182,15 @@
> > calling hook pretxnchangegroup.acl: hgext.acl.hook
> > acl: changes have source "push" - skipping
> > bundle2-input-part: total payload size 1553
> > - bundle2-input-part: "pushkey" (params: 4 mandatory) supported
> > - pushing key for "phases:911600dab2ae7a9baff75958b84fe606851ce955"
> > + bundle2-input-part: "phase-heads" supported
> > + bundle2-input-part: total payload size 24
> > bundle2-input-bundle: 4 parts total
> > updating the branch cache
> > - bundle2-output-bundle: "HG20", 2 parts total
> > + bundle2-output-bundle: "HG20", 1 parts total
> > bundle2-output-part: "reply:changegroup" (advisory) (params: 0
> > advisory) empty payload
> > - bundle2-output-part: "reply:pushkey" (params: 0 advisory) empty
> > payload
> > bundle2-input-bundle: no-transaction
> > bundle2-input-part: "reply:changegroup" (advisory) (params: 0
> > advisory) supported
> > - bundle2-input-part: "reply:pushkey" (params: 0 advisory) supported
> > - bundle2-input-bundle: 1 parts total
> > + bundle2-input-bundle: 0 parts total
> > listing keys for "phases"
> > repository tip rolled back to revision 0 (undo push)
> > 0:6675d58eff77
> > @@ -230,7 +226,7 @@
> > bundle2-output-part: "check:phases" 24 bytes payload
> > bundle2-output-part: "check:heads" streamed payload
> > bundle2-output-part: "changegroup" (params: 1 mandatory) streamed
> > payload
> > - bundle2-output-part: "pushkey" (params: 4 mandatory) empty payload
> > + bundle2-output-part: "phase-heads" 24 bytes payload
> > bundle2-input-bundle: with-transaction
> > bundle2-input-part: "replycaps" supported
> > bundle2-input-part: total payload size 168
> > @@ -262,17 +258,15 @@
> > acl: branch access granted: "911600dab2ae" on branch "default"
> > acl: path access granted: "911600dab2ae"
> > bundle2-input-part: total payload size 1553
> > - bundle2-input-part: "pushkey" (params: 4 mandatory) supported
> > - pushing key for "phases:911600dab2ae7a9baff75958b84fe606851ce955"
> > + bundle2-input-part: "phase-heads" supported
> > + bundle2-input-part: total payload size 24
> > bundle2-input-bundle: 4 parts total
> > updating the branch cache
> > - bundle2-output-bundle: "HG20", 2 parts total
> > + bundle2-output-bundle: "HG20", 1 parts total
> > bundle2-output-part: "reply:changegroup" (advisory) (params: 0
> > advisory) empty payload
> > - bundle2-output-part: "reply:pushkey" (params: 0 advisory) empty
> > payload
> > bundle2-input-bundle: no-transaction
> > bundle2-input-part: "reply:changegroup" (advisory) (params: 0
> > advisory) supported
> > - bundle2-input-part: "reply:pushkey" (params: 0 advisory) supported
> > - bundle2-input-bundle: 1 parts total
> > + bundle2-input-bundle: 0 parts total
> > listing keys for "phases"
> > repository tip rolled back to revision 0 (undo push)
> > 0:6675d58eff77
> > @@ -308,7 +302,7 @@
> > bundle2-output-part: "check:phases" 24 bytes payload
> > bundle2-output-part: "check:heads" streamed payload
> > bundle2-output-part: "changegroup" (params: 1 mandatory) streamed
> > payload
> > - bundle2-output-part: "pushkey" (params: 4 mandatory) empty payload
> > + bundle2-output-part: "phase-heads" 24 bytes payload
> > bundle2-input-bundle: with-transaction
> > bundle2-input-part: "replycaps" supported
> > bundle2-input-part: total payload size 168
> > @@ -336,6 +330,7 @@
> > acl: branch access granted: "ef1ea85a6374" on branch "default"
> > error: pretxnchangegroup.acl hook failed: acl: user "fred" not
> > allowed on "foo/file.txt" (changeset "ef1ea85a6374")
> > bundle2-input-part: total payload size 1553
> > + bundle2-input-part: total payload size 24
> > bundle2-input-bundle: 4 parts total
> > transaction abort!
> > rollback completed
> > @@ -375,7 +370,7 @@
> > bundle2-output-part: "check:phases" 24 bytes payload
> > bundle2-output-part: "check:heads" streamed payload
> > bundle2-output-part: "changegroup" (params: 1 mandatory) streamed
> > payload
> > - bundle2-output-part: "pushkey" (params: 4 mandatory) empty payload
> > + bundle2-output-part: "phase-heads" 24 bytes payload
> > bundle2-input-bundle: with-transaction
> > bundle2-input-part: "replycaps" supported
> > bundle2-input-part: total payload size 168
> > @@ -407,6 +402,7 @@
> > acl: branch access granted: "911600dab2ae" on branch "default"
> > error: pretxnchangegroup.acl hook failed: acl: user "fred" not
> > allowed on "quux/file.py" (changeset "911600dab2ae")
> > bundle2-input-part: total payload size 1553
> > + bundle2-input-part: total payload size 24
> > bundle2-input-bundle: 4 parts total
> > transaction abort!
> > rollback completed
> > @@ -447,7 +443,7 @@
> > bundle2-output-part: "check:phases" 24 bytes payload
> > bundle2-output-part: "check:heads" streamed payload
> > bundle2-output-part: "changegroup" (params: 1 mandatory) streamed
> > payload
> > - bundle2-output-part: "pushkey" (params: 4 mandatory) empty payload
> > + bundle2-output-part: "phase-heads" 24 bytes payload
> > bundle2-input-bundle: with-transaction
> > bundle2-input-part: "replycaps" supported
> > bundle2-input-part: total payload size 168
> > @@ -475,6 +471,7 @@
> > acl: branch access granted: "ef1ea85a6374" on branch "default"
> > error: pretxnchangegroup.acl hook failed: acl: user "barney" not
> > allowed on "foo/file.txt" (changeset "ef1ea85a6374")
> > bundle2-input-part: total payload size 1553
> > + bundle2-input-part: total payload size 24
> > bundle2-input-bundle: 4 parts total
> > transaction abort!
> > rollback completed
> > @@ -516,7 +513,7 @@
> > bundle2-output-part: "check:phases" 24 bytes payload
> > bundle2-output-part: "check:heads" streamed payload
> > bundle2-output-part: "changegroup" (params: 1 mandatory) streamed
> > payload
> > - bundle2-output-part: "pushkey" (params: 4 mandatory) empty payload
> > + bundle2-output-part: "phase-heads" 24 bytes payload
> > bundle2-input-bundle: with-transaction
> > bundle2-input-part: "replycaps" supported
> > bundle2-input-part: total payload size 168
> > @@ -548,6 +545,7 @@
> > acl: branch access granted: "911600dab2ae" on branch "default"
> > error: pretxnchangegroup.acl hook failed: acl: user "fred" not
> > allowed on "quux/file.py" (changeset "911600dab2ae")
> > bundle2-input-part: total payload size 1553
> > + bundle2-input-part: total payload size 24
> > bundle2-input-bundle: 4 parts total
> > transaction abort!
> > rollback completed
> > @@ -590,7 +588,7 @@
> > bundle2-output-part: "check:phases" 24 bytes payload
> > bundle2-output-part: "check:heads" streamed payload
> > bundle2-output-part: "changegroup" (params: 1 mandatory) streamed
> > payload
> > - bundle2-output-part: "pushkey" (params: 4 mandatory) empty payload
> > + bundle2-output-part: "phase-heads" 24 bytes payload
> > bundle2-input-bundle: with-transaction
> > bundle2-input-part: "replycaps" supported
> > bundle2-input-part: total payload size 168
> > @@ -620,6 +618,7 @@
> > acl: branch access granted: "f9cafe1212c8" on branch "default"
> > error: pretxnchangegroup.acl hook failed: acl: user "fred" denied
> > on "foo/Bar/file.txt" (changeset "f9cafe1212c8")
> > bundle2-input-part: total payload size 1553
> > + bundle2-input-part: total payload size 24
> > bundle2-input-bundle: 4 parts total
> > transaction abort!
> > rollback completed
> > @@ -661,7 +660,7 @@
> > bundle2-output-part: "check:phases" 24 bytes payload
> > bundle2-output-part: "check:heads" streamed payload
> > bundle2-output-part: "changegroup" (params: 1 mandatory) streamed
> > payload
> > - bundle2-output-part: "pushkey" (params: 4 mandatory) empty payload
> > + bundle2-output-part: "phase-heads" 24 bytes payload
> > bundle2-input-bundle: with-transaction
> > bundle2-input-part: "replycaps" supported
> > bundle2-input-part: total payload size 168
> > @@ -689,6 +688,7 @@
> > acl: branch access granted: "ef1ea85a6374" on branch "default"
> > error: pretxnchangegroup.acl hook failed: acl: user "barney" not
> > allowed on "foo/file.txt" (changeset "ef1ea85a6374")
> > bundle2-input-part: total payload size 1553
> > + bundle2-input-part: total payload size 24
> > bundle2-input-bundle: 4 parts total
> > transaction abort!
> > rollback completed
> > @@ -734,7 +734,7 @@
> > bundle2-output-part: "check:phases" 24 bytes payload
> > bundle2-output-part: "check:heads" streamed payload
> > bundle2-output-part: "changegroup" (params: 1 mandatory) streamed
> > payload
> > - bundle2-output-part: "pushkey" (params: 4 mandatory) empty payload
> > + bundle2-output-part: "phase-heads" 24 bytes payload
> > bundle2-input-bundle: with-transaction
> > bundle2-input-part: "replycaps" supported
> > bundle2-input-part: total payload size 168
> > @@ -766,17 +766,15 @@
> > acl: branch access granted: "911600dab2ae" on branch "default"
> > acl: path access granted: "911600dab2ae"
> > bundle2-input-part: total payload size 1553
> > - bundle2-input-part: "pushkey" (params: 4 mandatory) supported
> > - pushing key for "phases:911600dab2ae7a9baff75958b84fe606851ce955"
> > + bundle2-input-part: "phase-heads" supported
> > + bundle2-input-part: total payload size 24
> > bundle2-input-bundle: 4 parts total
> > updating the branch cache
> > - bundle2-output-bundle: "HG20", 2 parts total
> > + bundle2-output-bundle: "HG20", 1 parts total
> > bundle2-output-part: "reply:changegroup" (advisory) (params: 0
> > advisory) empty payload
> > - bundle2-output-part: "reply:pushkey" (params: 0 advisory) empty
> > payload
> > bundle2-input-bundle: no-transaction
> > bundle2-input-part: "reply:changegroup" (advisory) (params: 0
> > advisory) supported
> > - bundle2-input-part: "reply:pushkey" (params: 0 advisory) supported
> > - bundle2-input-bundle: 1 parts total
> > + bundle2-input-bundle: 0 parts total
> > listing keys for "phases"
> > repository tip rolled back to revision 0 (undo push)
> > 0:6675d58eff77
> > @@ -819,7 +817,7 @@
> > bundle2-output-part: "check:phases" 24 bytes payload
> > bundle2-output-part: "check:heads" streamed payload
> > bundle2-output-part: "changegroup" (params: 1 mandatory) streamed
> > payload
> > - bundle2-output-part: "pushkey" (params: 4 mandatory) empty payload
> > + bundle2-output-part: "phase-heads" 24 bytes payload
> > bundle2-input-bundle: with-transaction
> > bundle2-input-part: "replycaps" supported
> > bundle2-input-part: total payload size 168
> > @@ -851,6 +849,7 @@
> > acl: branch access granted: "911600dab2ae" on branch "default"
> > error: pretxnchangegroup.acl hook failed: acl: user "wilma" not
> > allowed on "quux/file.py" (changeset "911600dab2ae")
> > bundle2-input-part: total payload size 1553
> > + bundle2-input-part: total payload size 24
> > bundle2-input-bundle: 4 parts total
> > transaction abort!
> > rollback completed
> > @@ -899,7 +898,7 @@
> > bundle2-output-part: "check:phases" 24 bytes payload
> > bundle2-output-part: "check:heads" streamed payload
> > bundle2-output-part: "changegroup" (params: 1 mandatory) streamed
> > payload
> > - bundle2-output-part: "pushkey" (params: 4 mandatory) empty payload
> > + bundle2-output-part: "phase-heads" 24 bytes payload
> > bundle2-input-bundle: with-transaction
> > bundle2-input-part: "replycaps" supported
> > bundle2-input-part: total payload size 168
> > @@ -922,6 +921,7 @@
> > acl: checking access for user "barney"
> > error: pretxnchangegroup.acl hook raised an exception: [Errno *] *
> > (glob)
> > bundle2-input-part: total payload size 1553
> > + bundle2-input-part: total payload size 24
> > bundle2-input-bundle: 4 parts total
> > transaction abort!
> > rollback completed
> > @@ -974,7 +974,7 @@
> > bundle2-output-part: "check:phases" 24 bytes payload
> > bundle2-output-part: "check:heads" streamed payload
> > bundle2-output-part: "changegroup" (params: 1 mandatory) streamed
> > payload
> > - bundle2-output-part: "pushkey" (params: 4 mandatory) empty payload
> > + bundle2-output-part: "phase-heads" 24 bytes payload
> > bundle2-input-bundle: with-transaction
> > bundle2-input-part: "replycaps" supported
> > bundle2-input-part: total payload size 168
> > @@ -1006,6 +1006,7 @@
> > acl: branch access granted: "911600dab2ae" on branch "default"
> > error: pretxnchangegroup.acl hook failed: acl: user "betty" not
> > allowed on "quux/file.py" (changeset "911600dab2ae")
> > bundle2-input-part: total payload size 1553
> > + bundle2-input-part: total payload size 24
> > bundle2-input-bundle: 4 parts total
> > transaction abort!
> > rollback completed
> > @@ -1060,7 +1061,7 @@
> > bundle2-output-part: "check:phases" 24 bytes payload
> > bundle2-output-part: "check:heads" streamed payload
> > bundle2-output-part: "changegroup" (params: 1 mandatory) streamed
> > payload
> > - bundle2-output-part: "pushkey" (params: 4 mandatory) empty payload
> > + bundle2-output-part: "phase-heads" 24 bytes payload
> > bundle2-input-bundle: with-transaction
> > bundle2-input-part: "replycaps" supported
> > bundle2-input-part: total payload size 168
> > @@ -1092,17 +1093,15 @@
> > acl: branch access granted: "911600dab2ae" on branch "default"
> > acl: path access granted: "911600dab2ae"
> > bundle2-input-part: total payload size 1553
> > - bundle2-input-part: "pushkey" (params: 4 mandatory) supported
> > - pushing key for "phases:911600dab2ae7a9baff75958b84fe606851ce955"
> > + bundle2-input-part: "phase-heads" supported
> > + bundle2-input-part: total payload size 24
> > bundle2-input-bundle: 4 parts total
> > updating the branch cache
> > - bundle2-output-bundle: "HG20", 2 parts total
> > + bundle2-output-bundle: "HG20", 1 parts total
> > bundle2-output-part: "reply:changegroup" (advisory) (params: 0
> > advisory) empty payload
> > - bundle2-output-part: "reply:pushkey" (params: 0 advisory) empty
> > payload
> > bundle2-input-bundle: no-transaction
> > bundle2-input-part: "reply:changegroup" (advisory) (params: 0
> > advisory) supported
> > - bundle2-input-part: "reply:pushkey" (params: 0 advisory) supported
> > - bundle2-input-bundle: 1 parts total
> > + bundle2-input-bundle: 0 parts total
> > listing keys for "phases"
> > repository tip rolled back to revision 0 (undo push)
> > 0:6675d58eff77
> > @@ -1148,7 +1147,7 @@
> > bundle2-output-part: "check:phases" 24 bytes payload
> > bundle2-output-part: "check:heads" streamed payload
> > bundle2-output-part: "changegroup" (params: 1 mandatory) streamed
> > payload
> > - bundle2-output-part: "pushkey" (params: 4 mandatory) empty payload
> > + bundle2-output-part: "phase-heads" 24 bytes payload
> > bundle2-input-bundle: with-transaction
> > bundle2-input-part: "replycaps" supported
> > bundle2-input-part: total payload size 168
> > @@ -1180,17 +1179,15 @@
> > acl: branch access granted: "911600dab2ae" on branch "default"
> > acl: path access granted: "911600dab2ae"
> > bundle2-input-part: total payload size 1553
> > - bundle2-input-part: "pushkey" (params: 4 mandatory) supported
> > - pushing key for "phases:911600dab2ae7a9baff75958b84fe606851ce955"
> > + bundle2-input-part: "phase-heads" supported
> > + bundle2-input-part: total payload size 24
> > bundle2-input-bundle: 4 parts total
> > updating the branch cache
> > - bundle2-output-bundle: "HG20", 2 parts total
> > + bundle2-output-bundle: "HG20", 1 parts total
> > bundle2-output-part: "reply:changegroup" (advisory) (params: 0
> > advisory) empty payload
> > - bundle2-output-part: "reply:pushkey" (params: 0 advisory) empty
> > payload
> > bundle2-input-bundle: no-transaction
> > bundle2-input-part: "reply:changegroup" (advisory) (params: 0
> > advisory) supported
> > - bundle2-input-part: "reply:pushkey" (params: 0 advisory) supported
> > - bundle2-input-bundle: 1 parts total
> > + bundle2-input-bundle: 0 parts total
> > listing keys for "phases"
> > repository tip rolled back to revision 0 (undo push)
> > 0:6675d58eff77
> > @@ -1232,7 +1229,7 @@
> > bundle2-output-part: "check:phases" 24 bytes payload
> > bundle2-output-part: "check:heads" streamed payload
> > bundle2-output-part: "changegroup" (params: 1 mandatory) streamed
> > payload
> > - bundle2-output-part: "pushkey" (params: 4 mandatory) empty payload
> > + bundle2-output-part: "phase-heads" 24 bytes payload
> > bundle2-input-bundle: with-transaction
> > bundle2-input-part: "replycaps" supported
> > bundle2-input-part: total payload size 168
> > @@ -1262,6 +1259,7 @@
> > acl: branch access granted: "f9cafe1212c8" on branch "default"
> > error: pretxnchangegroup.acl hook failed: acl: user "fred" denied
> > on "foo/Bar/file.txt" (changeset "f9cafe1212c8")
> > bundle2-input-part: total payload size 1553
> > + bundle2-input-part: total payload size 24
> > bundle2-input-bundle: 4 parts total
> > transaction abort!
> > rollback completed
> > @@ -1310,7 +1308,7 @@
> > bundle2-output-part: "check:phases" 24 bytes payload
> > bundle2-output-part: "check:heads" streamed payload
> > bundle2-output-part: "changegroup" (params: 1 mandatory) streamed
> > payload
> > - bundle2-output-part: "pushkey" (params: 4 mandatory) empty payload
> > + bundle2-output-part: "phase-heads" 24 bytes payload
> > bundle2-input-bundle: with-transaction
> > bundle2-input-part: "replycaps" supported
> > bundle2-input-part: total payload size 168
> > @@ -1343,17 +1341,15 @@
> > acl: branch access granted: "911600dab2ae" on branch "default"
> > acl: path access granted: "911600dab2ae"
> > bundle2-input-part: total payload size 1553
> > - bundle2-input-part: "pushkey" (params: 4 mandatory) supported
> > - pushing key for "phases:911600dab2ae7a9baff75958b84fe606851ce955"
> > + bundle2-input-part: "phase-heads" supported
> > + bundle2-input-part: total payload size 24
> > bundle2-input-bundle: 4 parts total
> > updating the branch cache
> > - bundle2-output-bundle: "HG20", 2 parts total
> > + bundle2-output-bundle: "HG20", 1 parts total
> > bundle2-output-part: "reply:changegroup" (advisory) (params: 0
> > advisory) empty payload
> > - bundle2-output-part: "reply:pushkey" (params: 0 advisory) empty
> > payload
> > bundle2-input-bundle: no-transaction
> > bundle2-input-part: "reply:changegroup" (advisory) (params: 0
> > advisory) supported
> > - bundle2-input-part: "reply:pushkey" (params: 0 advisory) supported
> > - bundle2-input-bundle: 1 parts total
> > + bundle2-input-bundle: 0 parts total
> > listing keys for "phases"
> > repository tip rolled back to revision 0 (undo push)
> > 0:6675d58eff77
> > @@ -1395,7 +1391,7 @@
> > bundle2-output-part: "check:phases" 24 bytes payload
> > bundle2-output-part: "check:heads" streamed payload
> > bundle2-output-part: "changegroup" (params: 1 mandatory) streamed
> > payload
> > - bundle2-output-part: "pushkey" (params: 4 mandatory) empty payload
> > + bundle2-output-part: "phase-heads" 24 bytes payload
> > bundle2-input-bundle: with-transaction
> > bundle2-input-part: "replycaps" supported
> > bundle2-input-part: total payload size 168
> > @@ -1427,6 +1423,7 @@
> > acl: branch access granted: "f9cafe1212c8" on branch "default"
> > error: pretxnchangegroup.acl hook failed: acl: user "fred" denied
> > on "foo/Bar/file.txt" (changeset "f9cafe1212c8")
> > bundle2-input-part: total payload size 1553
> > + bundle2-input-part: total payload size 24
> > bundle2-input-bundle: 4 parts total
> > transaction abort!
> > rollback completed
> > @@ -1509,13 +1506,12 @@
> > f9cafe1212c8c6fa1120d14a556e18cc44ff8bdd
> > 911600dab2ae7a9baff75958b84fe606851ce955
> > e8fc755d4d8217ee5b0c2bb41558c40d43b92c01
> > - bundle2-output-bundle: "HG20", 6 parts total
> > + bundle2-output-bundle: "HG20", 5 parts total
> > bundle2-output-part: "replycaps" 168 bytes payload
> > bundle2-output-part: "check:phases" 48 bytes payload
> > bundle2-output-part: "check:heads" streamed payload
> > bundle2-output-part: "changegroup" (params: 1 mandatory) streamed
> > payload
> > - bundle2-output-part: "pushkey" (params: 4 mandatory) empty payload
> > - bundle2-output-part: "pushkey" (params: 4 mandatory) empty payload
> > + bundle2-output-part: "phase-heads" 48 bytes payload
> > bundle2-input-bundle: with-transaction
> > bundle2-input-part: "replycaps" supported
> > bundle2-input-part: total payload size 168
> > @@ -1551,21 +1547,15 @@
> > acl: branch access granted: "e8fc755d4d82" on branch "foobar"
> > acl: path access granted: "e8fc755d4d82"
> > bundle2-input-part: total payload size 2068
> > - bundle2-input-part: "pushkey" (params: 4 mandatory) supported
> > - pushing key for "phases:911600dab2ae7a9baff75958b84fe606851ce955"
> > - bundle2-input-part: "pushkey" (params: 4 mandatory) supported
> > - pushing key for "phases:e8fc755d4d8217ee5b0c2bb41558c40d43b92c01"
> > - bundle2-input-bundle: 5 parts total
> > + bundle2-input-part: "phase-heads" supported
> > + bundle2-input-part: total payload size 48
> > + bundle2-input-bundle: 4 parts total
> > updating the branch cache
> > - bundle2-output-bundle: "HG20", 3 parts total
> > + bundle2-output-bundle: "HG20", 1 parts total
> > bundle2-output-part: "reply:changegroup" (advisory) (params: 0
> > advisory) empty payload
> > - bundle2-output-part: "reply:pushkey" (params: 0 advisory) empty
> > payload
> > - bundle2-output-part: "reply:pushkey" (params: 0 advisory) empty
> > payload
> > bundle2-input-bundle: no-transaction
> > bundle2-input-part: "reply:changegroup" (advisory) (params: 0
> > advisory) supported
> > - bundle2-input-part: "reply:pushkey" (params: 0 advisory) supported
> > - bundle2-input-part: "reply:pushkey" (params: 0 advisory) supported
> > - bundle2-input-bundle: 2 parts total
> > + bundle2-input-bundle: 0 parts total
> > listing keys for "phases"
> > repository tip rolled back to revision 2 (undo push)
> > 2:fb35475503ef
> > @@ -1600,13 +1590,12 @@
> > f9cafe1212c8c6fa1120d14a556e18cc44ff8bdd
> > 911600dab2ae7a9baff75958b84fe606851ce955
> > e8fc755d4d8217ee5b0c2bb41558c40d43b92c01
> > - bundle2-output-bundle: "HG20", 6 parts total
> > + bundle2-output-bundle: "HG20", 5 parts total
> > bundle2-output-part: "replycaps" 168 bytes payload
> > bundle2-output-part: "check:phases" 48 bytes payload
> > bundle2-output-part: "check:heads" streamed payload
> > bundle2-output-part: "changegroup" (params: 1 mandatory) streamed
> > payload
> > - bundle2-output-part: "pushkey" (params: 4 mandatory) empty payload
> > - bundle2-output-part: "pushkey" (params: 4 mandatory) empty payload
> > + bundle2-output-part: "phase-heads" 48 bytes payload
> > bundle2-input-bundle: with-transaction
> > bundle2-input-part: "replycaps" supported
> > bundle2-input-part: total payload size 168
> > @@ -1641,7 +1630,8 @@
> > acl: path access granted: "911600dab2ae"
> > error: pretxnchangegroup.acl hook failed: acl: user "astro" denied
> > on branch "foobar" (changeset "e8fc755d4d82")
> > bundle2-input-part: total payload size 2068
> > - bundle2-input-bundle: 5 parts total
> > + bundle2-input-part: total payload size 48
> > + bundle2-input-bundle: 4 parts total
> > transaction abort!
> > rollback completed
> > abort: acl: user "astro" denied on branch "foobar" (changeset
> > "e8fc755d4d82")
> > @@ -1677,13 +1667,12 @@
> > f9cafe1212c8c6fa1120d14a556e18cc44ff8bdd
> > 911600dab2ae7a9baff75958b84fe606851ce955
> > e8fc755d4d8217ee5b0c2bb41558c40d43b92c01
> > - bundle2-output-bundle: "HG20", 6 parts total
> > + bundle2-output-bundle: "HG20", 5 parts total
> > bundle2-output-part: "replycaps" 168 bytes payload
> > bundle2-output-part: "check:phases" 48 bytes payload
> > bundle2-output-part: "check:heads" streamed payload
> > bundle2-output-part: "changegroup" (params: 1 mandatory) streamed
> > payload
> > - bundle2-output-part: "pushkey" (params: 4 mandatory) empty payload
> > - bundle2-output-part: "pushkey" (params: 4 mandatory) empty payload
> > + bundle2-output-part: "phase-heads" 48 bytes payload
> > bundle2-input-bundle: with-transaction
> > bundle2-input-part: "replycaps" supported
> > bundle2-input-part: total payload size 168
> > @@ -1712,7 +1701,8 @@
> > acl: acl.deny not enabled
> > error: pretxnchangegroup.acl hook failed: acl: user "astro" not
> > allowed on branch "default" (changeset "ef1ea85a6374")
> > bundle2-input-part: total payload size 2068
> > - bundle2-input-bundle: 5 parts total
> > + bundle2-input-part: total payload size 48
> > + bundle2-input-bundle: 4 parts total
> > transaction abort!
> > rollback completed
> > abort: acl: user "astro" not allowed on branch "default"
> > (changeset "ef1ea85a6374")
> > @@ -1750,13 +1740,12 @@
> > f9cafe1212c8c6fa1120d14a556e18cc44ff8bdd
> > 911600dab2ae7a9baff75958b84fe606851ce955
> > e8fc755d4d8217ee5b0c2bb41558c40d43b92c01
> > - bundle2-output-bundle: "HG20", 6 parts total
> > + bundle2-output-bundle: "HG20", 5 parts total
> > bundle2-output-part: "replycaps" 168 bytes payload
> > bundle2-output-part: "check:phases" 48 bytes payload
> > bundle2-output-part: "check:heads" streamed payload
> > bundle2-output-part: "changegroup" (params: 1 mandatory) streamed
> > payload
> > - bundle2-output-part: "pushkey" (params: 4 mandatory) empty payload
> > - bundle2-output-part: "pushkey" (params: 4 mandatory) empty payload
> > + bundle2-output-part: "phase-heads" 48 bytes payload
> > bundle2-input-bundle: with-transaction
> > bundle2-input-part: "replycaps" supported
> > bundle2-input-part: total payload size 168
> > @@ -1785,7 +1774,8 @@
> > acl: acl.deny not enabled
> > error: pretxnchangegroup.acl hook failed: acl: user "astro" not
> > allowed on branch "default" (changeset "ef1ea85a6374")
> > bundle2-input-part: total payload size 2068
> > - bundle2-input-bundle: 5 parts total
> > + bundle2-input-part: total payload size 48
> > + bundle2-input-bundle: 4 parts total
> > transaction abort!
> > rollback completed
> > abort: acl: user "astro" not allowed on branch "default"
> > (changeset "ef1ea85a6374")
> > @@ -1817,13 +1807,12 @@
> > f9cafe1212c8c6fa1120d14a556e18cc44ff8bdd
> > 911600dab2ae7a9baff75958b84fe606851ce955
> > e8fc755d4d8217ee5b0c2bb41558c40d43b92c01
> > - bundle2-output-bundle: "HG20", 6 parts total
> > + bundle2-output-bundle: "HG20", 5 parts total
> > bundle2-output-part: "replycaps" 168 bytes payload
> > bundle2-output-part: "check:phases" 48 bytes payload
> > bundle2-output-part: "check:heads" streamed payload
> > bundle2-output-part: "changegroup" (params: 1 mandatory) streamed
> > payload
> > - bundle2-output-part: "pushkey" (params: 4 mandatory) empty payload
> > - bundle2-output-part: "pushkey" (params: 4 mandatory) empty payload
> > + bundle2-output-part: "phase-heads" 48 bytes payload
> > bundle2-input-bundle: with-transaction
> > bundle2-input-part: "replycaps" supported
> > bundle2-input-part: total payload size 168
> > @@ -1859,21 +1848,15 @@
> > acl: branch access granted: "e8fc755d4d82" on branch "foobar"
> > acl: path access granted: "e8fc755d4d82"
> > bundle2-input-part: total payload size 2068
> > - bundle2-input-part: "pushkey" (params: 4 mandatory) supported
> > - pushing key for "phases:911600dab2ae7a9baff75958b84fe606851ce955"
> > - bundle2-input-part: "pushkey" (params: 4 mandatory) supported
> > - pushing key for "phases:e8fc755d4d8217ee5b0c2bb41558c40d43b92c01"
> > - bundle2-input-bundle: 5 parts total
> > + bundle2-input-part: "phase-heads" supported
> > + bundle2-input-part: total payload size 48
> > + bundle2-input-bundle: 4 parts total
> > updating the branch cache
> > - bundle2-output-bundle: "HG20", 3 parts total
> > + bundle2-output-bundle: "HG20", 1 parts total
> > bundle2-output-part: "reply:changegroup" (advisory) (params: 0
> > advisory) empty payload
> > - bundle2-output-part: "reply:pushkey" (params: 0 advisory) empty
> > payload
> > - bundle2-output-part: "reply:pushkey" (params: 0 advisory) empty
> > payload
> > bundle2-input-bundle: no-transaction
> > bundle2-input-part: "reply:changegroup" (advisory) (params: 0
> > advisory) supported
> > - bundle2-input-part: "reply:pushkey" (params: 0 advisory) supported
> > - bundle2-input-part: "reply:pushkey" (params: 0 advisory) supported
> > - bundle2-input-bundle: 2 parts total
> > + bundle2-input-bundle: 0 parts total
> > listing keys for "phases"
> > repository tip rolled back to revision 2 (undo push)
> > 2:fb35475503ef
> > @@ -1913,13 +1896,12 @@
> > f9cafe1212c8c6fa1120d14a556e18cc44ff8bdd
> > 911600dab2ae7a9baff75958b84fe606851ce955
> > e8fc755d4d8217ee5b0c2bb41558c40d43b92c01
> > - bundle2-output-bundle: "HG20", 6 parts total
> > + bundle2-output-bundle: "HG20", 5 parts total
> > bundle2-output-part: "replycaps" 168 bytes payload
> > bundle2-output-part: "check:phases" 48 bytes payload
> > bundle2-output-part: "check:heads" streamed payload
> > bundle2-output-part: "changegroup" (params: 1 mandatory) streamed
> > payload
> > - bundle2-output-part: "pushkey" (params: 4 mandatory) empty payload
> > - bundle2-output-part: "pushkey" (params: 4 mandatory) empty payload
> > + bundle2-output-part: "phase-heads" 48 bytes payload
> > bundle2-input-bundle: with-transaction
> > bundle2-input-part: "replycaps" supported
> > bundle2-input-part: total payload size 168
> > @@ -1955,21 +1937,15 @@
> > acl: branch access granted: "e8fc755d4d82" on branch "foobar"
> > acl: path access granted: "e8fc755d4d82"
> > bundle2-input-part: total payload size 2068
> > - bundle2-input-part: "pushkey" (params: 4 mandatory) supported
> > - pushing key for "phases:911600dab2ae7a9baff75958b84fe606851ce955"
> > - bundle2-input-part: "pushkey" (params: 4 mandatory) supported
> > - pushing key for "phases:e8fc755d4d8217ee5b0c2bb41558c40d43b92c01"
> > - bundle2-input-bundle: 5 parts total
> > + bundle2-input-part: "phase-heads" supported
> > + bundle2-input-part: total payload size 48
> > + bundle2-input-bundle: 4 parts total
> > updating the branch cache
> > - bundle2-output-bundle: "HG20", 3 parts total
> > + bundle2-output-bundle: "HG20", 1 parts total
> > bundle2-output-part: "reply:changegroup" (advisory) (params: 0
> > advisory) empty payload
> > - bundle2-output-part: "reply:pushkey" (params: 0 advisory) empty
> > payload
> > - bundle2-output-part: "reply:pushkey" (params: 0 advisory) empty
> > payload
> > bundle2-input-bundle: no-transaction
> > bundle2-input-part: "reply:changegroup" (advisory) (params: 0
> > advisory) supported
> > - bundle2-input-part: "reply:pushkey" (params: 0 advisory) supported
> > - bundle2-input-part: "reply:pushkey" (params: 0 advisory) supported
> > - bundle2-input-bundle: 2 parts total
> > + bundle2-input-bundle: 0 parts total
> > listing keys for "phases"
> > repository tip rolled back to revision 2 (undo push)
> > 2:fb35475503ef
> > @@ -2008,13 +1984,12 @@
> > f9cafe1212c8c6fa1120d14a556e18cc44ff8bdd
> > 911600dab2ae7a9baff75958b84fe606851ce955
> > e8fc755d4d8217ee5b0c2bb41558c40d43b92c01
> > - bundle2-output-bundle: "HG20", 6 parts total
> > + bundle2-output-bundle: "HG20", 5 parts total
> > bundle2-output-part: "replycaps" 168 bytes payload
> > bundle2-output-part: "check:phases" 48 bytes payload
> > bundle2-output-part: "check:heads" streamed payload
> > bundle2-output-part: "changegroup" (params: 1 mandatory) streamed
> > payload
> > - bundle2-output-part: "pushkey" (params: 4 mandatory) empty payload
> > - bundle2-output-part: "pushkey" (params: 4 mandatory) empty payload
> > + bundle2-output-part: "phase-heads" 48 bytes payload
> > bundle2-input-bundle: with-transaction
> > bundle2-input-part: "replycaps" supported
> > bundle2-input-part: total payload size 168
> > @@ -2043,7 +2018,8 @@
> > acl: acl.deny not enabled
> > error: pretxnchangegroup.acl hook failed: acl: user "george"
> > denied on branch "default" (changeset "ef1ea85a6374")
> > bundle2-input-part: total payload size 2068
> > - bundle2-input-bundle: 5 parts total
> > + bundle2-input-part: total payload size 48
> > + bundle2-input-bundle: 4 parts total
> > transaction abort!
> > rollback completed
> > abort: acl: user "george" denied on branch "default" (changeset
> > "ef1ea85a6374")
> > @@ -2080,13 +2056,12 @@
> > f9cafe1212c8c6fa1120d14a556e18cc44ff8bdd
> > 911600dab2ae7a9baff75958b84fe606851ce955
> > e8fc755d4d8217ee5b0c2bb41558c40d43b92c01
> > - bundle2-output-bundle: "HG20", 6 parts total
> > + bundle2-output-bundle: "HG20", 5 parts total
> > bundle2-output-part: "replycaps" 168 bytes payload
> > bundle2-output-part: "check:phases" 48 bytes payload
> > bundle2-output-part: "check:heads" streamed payload
> > bundle2-output-part: "changegroup" (params: 1 mandatory) streamed
> > payload
> > - bundle2-output-part: "pushkey" (params: 4 mandatory) empty payload
> > - bundle2-output-part: "pushkey" (params: 4 mandatory) empty payload
> > + bundle2-output-part: "phase-heads" 48 bytes payload
> > bundle2-input-bundle: with-transaction
> > bundle2-input-part: "replycaps" supported
> > bundle2-input-part: total payload size 168
> > @@ -2122,21 +2097,15 @@
> > acl: branch access granted: "e8fc755d4d82" on branch "foobar"
> > acl: path access granted: "e8fc755d4d82"
> > bundle2-input-part: total payload size 2068
> > - bundle2-input-part: "pushkey" (params: 4 mandatory) supported
> > - pushing key for "phases:911600dab2ae7a9baff75958b84fe606851ce955"
> > - bundle2-input-part: "pushkey" (params: 4 mandatory) supported
> > - pushing key for "phases:e8fc755d4d8217ee5b0c2bb41558c40d43b92c01"
> > - bundle2-input-bundle: 5 parts total
> > + bundle2-input-part: "phase-heads" supported
> > + bundle2-input-part: total payload size 48
> > + bundle2-input-bundle: 4 parts total
> > updating the branch cache
> > - bundle2-output-bundle: "HG20", 3 parts total
> > + bundle2-output-bundle: "HG20", 1 parts total
> > bundle2-output-part: "reply:changegroup" (advisory) (params: 0
> > advisory) empty payload
> > - bundle2-output-part: "reply:pushkey" (params: 0 advisory) empty
> > payload
> > - bundle2-output-part: "reply:pushkey" (params: 0 advisory) empty
> > payload
> > bundle2-input-bundle: no-transaction
> > bundle2-input-part: "reply:changegroup" (advisory) (params: 0
> > advisory) supported
> > - bundle2-input-part: "reply:pushkey" (params: 0 advisory) supported
> > - bundle2-input-part: "reply:pushkey" (params: 0 advisory) supported
> > - bundle2-input-bundle: 2 parts total
> > + bundle2-input-bundle: 0 parts total
> > listing keys for "phases"
> > repository tip rolled back to revision 2 (undo push)
> > 2:fb35475503ef
> > @@ -2169,13 +2138,12 @@
> > f9cafe1212c8c6fa1120d14a556e18cc44ff8bdd
> > 911600dab2ae7a9baff75958b84fe606851ce955
> > e8fc755d4d8217ee5b0c2bb41558c40d43b92c01
> > - bundle2-output-bundle: "HG20", 6 parts total
> > + bundle2-output-bundle: "HG20", 5 parts total
> > bundle2-output-part: "replycaps" 168 bytes payload
> > bundle2-output-part: "check:phases" 48 bytes payload
> > bundle2-output-part: "check:heads" streamed payload
> > bundle2-output-part: "changegroup" (params: 1 mandatory) streamed
> > payload
> > - bundle2-output-part: "pushkey" (params: 4 mandatory) empty payload
> > - bundle2-output-part: "pushkey" (params: 4 mandatory) empty payload
> > + bundle2-output-part: "phase-heads" 48 bytes payload
> > bundle2-input-bundle: with-transaction
> > bundle2-input-part: "replycaps" supported
> > bundle2-input-part: total payload size 168
> > @@ -2204,7 +2172,8 @@
> > acl: acl.deny not enabled
> > error: pretxnchangegroup.acl hook failed: acl: user "george"
> > denied on branch "default" (changeset "ef1ea85a6374")
> > bundle2-input-part: total payload size 2068
> > - bundle2-input-bundle: 5 parts total
> > + bundle2-input-part: total payload size 48
> > + bundle2-input-bundle: 4 parts total
> > transaction abort!
> > rollback completed
> > abort: acl: user "george" denied on branch "default" (changeset
> > "ef1ea85a6374")
> > diff --git a/tests/test-bundle2-exchange.t b/tests/test-bundle2-
> > exchange.t
> > --- a/tests/test-bundle2-exchange.t
> > +++ b/tests/test-bundle2-exchange.t
> > @@ -252,9 +252,6 @@
> > remote: added 1 changesets with 0 changes to 0 files (-1 heads)
> > remote: 1 new obsolescence markers
> > remote: pre-close-tip:eea13746799a public book_eea1
> > - remote: pushkey: lock state after "phases"
> > - remote: lock: free
> > - remote: wlock: free
> > remote: pushkey: lock state after "bookmarks"
> > remote: lock: free
> > remote: wlock: free
> > @@ -392,9 +389,6 @@
> > remote: added 1 changesets with 1 changes to 1 files
> > remote: 1 new obsolescence markers
> > remote: pre-close-tip:32af7686d403 public book_32af
> > - remote: pushkey: lock state after "phases"
> > - remote: lock: free
> > - remote: wlock: free
> > remote: pushkey: lock state after "bookmarks"
> > remote: lock: free
> > remote: wlock: free
> > diff --git a/tests/test-push-http.t b/tests/test-push-http.t
> > --- a/tests/test-push-http.t
> > +++ b/tests/test-push-http.t
> > @@ -70,7 +70,6 @@
> > remote: adding manifests
> > remote: adding file changes
> > remote: added 1 changesets with 1 changes to 1 files
> > - remote: pushkey hook: HG_HOOKNAME=pushkey HG_HOOKTYPE=pushkey
> > HG_KEY=ba677d0156c1196c1a699fa53f390dcfc3ce3872 HG_NAMESPACE=phases
> > HG_NEW=0 HG_OLD=1 HG_RET=1
> > remote: phase-move: cb9a9f314b8b07ba71012fcdbc544b5a4d82ff5b: 1
> > -> 0
> > remote: phase-move: ba677d0156c1196c1a699fa53f390dcfc3ce3872: ->
> > 0
> > remote: changegroup hook: HG_BUNDLE2=1 HG_HOOKNAME=changegroup
> > HG_HOOKTYPE=changegroup
> > HG_NODE=ba677d0156c1196c1a699fa53f390dcfc3ce3872
> > HG_NODE_LAST=ba677d0156c1196c1a699fa53f390dcfc3ce3872 HG_SOURCE=serve
> > HG_TXNID=TXN:$ID$ HG_URL=remote:http:$LOCALIP: (glob)
> > @@ -89,7 +88,6 @@
> > remote: adding manifests
> > remote: adding file changes
> > remote: added 1 changesets with 1 changes to 1 files
> > - remote: pushkey hook: HG_HOOKNAME=pushkey HG_HOOKTYPE=pushkey
> > HG_KEY=ba677d0156c1196c1a699fa53f390dcfc3ce3872 HG_NAMESPACE=phases
> > HG_NEW=0 HG_OLD=1 HG_RET=1
> > remote: phase-move: cb9a9f314b8b07ba71012fcdbc544b5a4d82ff5b: 1
> > -> 0
> > remote: phase-move: ba677d0156c1196c1a699fa53f390dcfc3ce3872: ->
> > 0
> > remote: changegroup hook: HG_BUNDLE2=1 HG_HOOKNAME=changegroup
> > HG_HOOKTYPE=changegroup
> > HG_NODE=ba677d0156c1196c1a699fa53f390dcfc3ce3872
> > HG_NODE_LAST=ba677d0156c1196c1a699fa53f390dcfc3ce3872 HG_SOURCE=serve
> > HG_TXNID=TXN:$ID$ HG_URL=remote:http:$LOCALIP: (glob)
> > @@ -108,7 +106,6 @@
> > remote: adding manifests
> > remote: adding file changes
> > remote: added 1 changesets with 1 changes to 1 files
> > - remote: pushkey hook: HG_HOOKNAME=pushkey HG_HOOKTYPE=pushkey
> > HG_KEY=ba677d0156c1196c1a699fa53f390dcfc3ce3872 HG_NAMESPACE=phases
> > HG_NEW=0 HG_OLD=1 HG_RET=1
> > remote: phase-move: cb9a9f314b8b07ba71012fcdbc544b5a4d82ff5b: 1
> > -> 0
> > remote: phase-move: ba677d0156c1196c1a699fa53f390dcfc3ce3872: ->
> > 0
> > remote: changegroup hook: HG_BUNDLE2=1 HG_HOOKNAME=changegroup
> > HG_HOOKTYPE=changegroup
> > HG_NODE=ba677d0156c1196c1a699fa53f390dcfc3ce3872
> > HG_NODE_LAST=ba677d0156c1196c1a699fa53f390dcfc3ce3872 HG_SOURCE=serve
> > HG_TXNID=TXN:$ID$ HG_URL=remote:http:$LOCALIP: (glob)
> > @@ -124,6 +121,8 @@
> > > allow_push = *
> > > [hooks]
> > > prepushkey = sh -c "printenv.py prepushkey 1"
> > + > [devel]
> > + > legacy.exchange=phases
> > > EOF
> > $ req
> > pushing to http://localhost:$HGPORT/
> > @@ -144,6 +143,8 @@
> >
> > $ cat >> .hg/hgrc <<EOF
> > > prepushkey = sh -c "printenv.py prepushkey 0"
> > + > [devel]
> > + > legacy.exchange=
> > > EOF
> > $ req
> > pushing to http://localhost:$HGPORT/
> > @@ -152,7 +153,6 @@
> > remote: adding manifests
> > remote: adding file changes
> > remote: added 1 changesets with 1 changes to 1 files
> > - remote: prepushkey hook: HG_BUNDLE2=1 HG_HOOKNAME=prepushkey
> > HG_HOOKTYPE=prepushkey
> > HG_KEY=ba677d0156c1196c1a699fa53f390dcfc3ce3872 HG_NAMESPACE=phases
> > HG_NEW=0 HG_NODE=ba677d0156c1196c1a699fa53f390dcfc3ce3872
> > HG_NODE_LAST=ba677d0156c1196c1a699fa53f390dcfc3ce3872 HG_OLD=1
> > HG_PENDING=$TESTTMP/test HG_PHASES_MOVED=1 HG_SOURCE=serve
> > HG_TXNID=TXN:$ID$ HG_URL=remote:http:$LOCALIP: (glob)
> > % serve errors
> > $ hg rollback
> > repository tip rolled back to revision 0 (undo serve)
>
> _______________________________________________
> Mercurial-devel mailing list
> Mercurial-devel at mercurial-scm.org
> https://www.mercurial-scm.org/mailman/listinfo/mercurial-devel
More information about the Mercurial-devel
mailing list